AirLay backend

FeaturesController extends ApiController
in package

Class ApiBaseController.

Table of Contents

$config  : AirlayConfig
$config  : AirlayConfig
$request  : Request
$user  : UserEntity
$status  : StatusPage|null
$tokenHandler  : TokenHandler|null
__destruct()  : mixed
afterExecuteRoute()  : mixed
beforeExecuteRoute()  : mixed
createAction()  : string|false
request([ 'method' => 'POST', 'url' => '/api/v4/features/create' 'params' => [ [ 'name' => 'dataSetId', 'type' => 'ObjectId', 'required' => 'true' ], [ 'name' => 'feature', 'type' => 'json', 'required' => 'true' ] ]) response ([ 'status' = 200, 'message' = FeatureEntity, 'code' = 0 ])
deleteAction()  : string|false
request([ 'method' => 'POST', 'url' => '/api/v4/features/delete' 'params' => [ [ 'name' => 'dataSetId', 'type' => 'ObjectId', 'required' => 'true' ], [ 'name' => 'ids', 'type' => 'json', 'required' => 'true', 'description' => Features ids in json array ] ]) response ([ 'status' = 200, 'message' = 'OK', 'code' = 0 ])
getAction()  : string|false
request([ 'method' => 'GET' | 'POST', 'url' => '/api/v4/features/get' 'params' => [ [ 'name' => 'dataSetId', 'type' => 'ObjectId', 'required' => 'true' ], [ 'name' => 'id', 'type' => 'ObjectId', 'required' => 'false' ], [ 'name' => 'ids', 'type' => 'arrayObjectId', 'required' => 'false' ], [ 'name' => 'uniqueValues', 'type' => 'array', 'required' => 'false' ], [ 'name' => 'bbox', 'type' => 'json', 'required' => 'false' ], [ 'name' => 'filter', 'type' => 'string', 'required' => 'false' ], [ 'name' => 'skip', 'type' => 'int', 'required' => false, 'default' => 0 ], [ 'name' => 'limit', 'type' => 'int', 'required' => false, 'default' => 10000 ] ]) response ([ 'status' = 200, 'message' = FeatureEntity[], 'code' = 0 ])
getMessagesAction()  : string
Get messages.
indexAction()  : mixed
initialize()  : void
sendMessageAction()  : string|false
send push message request( 'method' => 'POST', 'url' => '/api/v4/features/sendMessage', 'params' => [ [ 'name' => 'deviceId', 'type' => 'string', 'description' => 'device id from device properties', 'required' => true ], [ 'name' => 'message', 'type' => 'string', 'description' => 'message', 'required' => true ] ] ) response( '200' => [ 'status' => 200, 'message' => ObjectId, 'code' => 0 ] )
sendMessagesAction()  : string|false
send push messages to set of devices request( 'method' => 'POST', 'url' => '/api/v4/features/sendMessages', 'params' => [ [ 'name' => 'deviceIds', 'type' => 'json', 'description' => 'array devices id', 'required' => true ], [ 'name' => 'message', 'type' => 'string', 'description' => 'message', 'required' => true ] ] ) response( '200' => [ 'status' => 200, 'message' => ObjectId, 'code' => 0 ] )
setMessageStatusAction()  : string|false
set message status request( 'method' => 'POST', 'url' => '/api/v4/features/setMessageStatus', 'params' => [ [ 'name' => 'messageStatuses', 'type' => 'array', 'required' => true 'description' => [ { 'id' => 'string' (objectId in string format), 'status' => 'string' ('delivered', 'read') } ... ]
updateAction()  : string|false
request([ 'method' => 'POST', 'url' => '/api/v4/features/update' 'params' => [ [ 'name' => 'dataSetId', 'type' => 'ObjectId', 'required' => 'true' ], [ 'name' => 'id', 'type' => 'ObjectId', 'required' => 'true' ], [ 'name' => 'feature', 'type' => 'json', 'required' => 'true' ] ]) response ([ 'status' = 200, 'message' = FeatureEntity, 'code' = 0 ])
updateManyAction()  : string|false
request([ 'method' => 'POST', 'url' => '/api/v4/features/updateMany' 'params' => [ [ 'name' => 'dataSetId', 'type' => 'ObjectId', 'required' => 'true' ], [ 'name' => 'features', 'type' => 'json', 'required' => 'true' 'description' => [ 'featureArray', ..., 'featureArray' ] ] ]) response ([ 'status' = 200, 'message' = FeatureEntity[], 'code' = 0 ])
attachTmpFile()  : Response
firesAnRelationUpdateEvents()  : void
getId()  : mixed
getNormalizedUserId()  : int|ObjectId
getTranslator()  : NativeArray
getUserInfo()  : UserEntity
secureData()  : mixed
sendEmail()  : mixed
findPolygonIntersections()  : void
updateCalculatedFields()  : void
updateFeature()  : FeatureEntity
validateSchemeFields()  : void

Properties

Methods

afterExecuteRoute()

public afterExecuteRoute(Dispatcher $dispatcher) : mixed
Parameters
$dispatcher : Dispatcher
Return values
mixed

beforeExecuteRoute()

public beforeExecuteRoute(Dispatcher $dispatcher) : mixed
Parameters
$dispatcher : Dispatcher
Return values
mixed

createAction()

request([ 'method' => 'POST', 'url' => '/api/v4/features/create' 'params' => [ [ 'name' => 'dataSetId', 'type' => 'ObjectId', 'required' => 'true' ], [ 'name' => 'feature', 'type' => 'json', 'required' => 'true' ] ]) response ([ 'status' = 200, 'message' = FeatureEntity, 'code' = 0 ])

public createAction() : string|false
Tags
throws
AirlayException
Return values
string|false

deleteAction()

request([ 'method' => 'POST', 'url' => '/api/v4/features/delete' 'params' => [ [ 'name' => 'dataSetId', 'type' => 'ObjectId', 'required' => 'true' ], [ 'name' => 'ids', 'type' => 'json', 'required' => 'true', 'description' => Features ids in json array ] ]) response ([ 'status' = 200, 'message' = 'OK', 'code' = 0 ])

public deleteAction() : string|false
Tags
throws
AirlayException
Return values
string|false

getAction()

request([ 'method' => 'GET' | 'POST', 'url' => '/api/v4/features/get' 'params' => [ [ 'name' => 'dataSetId', 'type' => 'ObjectId', 'required' => 'true' ], [ 'name' => 'id', 'type' => 'ObjectId', 'required' => 'false' ], [ 'name' => 'ids', 'type' => 'arrayObjectId', 'required' => 'false' ], [ 'name' => 'uniqueValues', 'type' => 'array', 'required' => 'false' ], [ 'name' => 'bbox', 'type' => 'json', 'required' => 'false' ], [ 'name' => 'filter', 'type' => 'string', 'required' => 'false' ], [ 'name' => 'skip', 'type' => 'int', 'required' => false, 'default' => 0 ], [ 'name' => 'limit', 'type' => 'int', 'required' => false, 'default' => 10000 ] ]) response ([ 'status' = 200, 'message' = FeatureEntity[], 'code' = 0 ])

public getAction() : string|false
Tags
throws
AirlayException
Return values
string|false

getMessagesAction()

Get messages.

public getMessagesAction() : string

request([ 'method' => 'GET', 'url' => '/api/v4/features/getMessages', 'params' => [ [ 'name' => 'skip', 'type' => 'int', 'required' => false, 'default => 0, 'description' => count objects to skip ], [ 'name' => 'limit', 'type' => 'int', 'required' => false, 'default => 100, 'description' => count objects to get ], [ 'name' => 'ids', 'type' => 'arrayObjectId', 'required' => false, 'default' => [], 'description' => object ids ] ] ]) response([ 'status' => 'OK', 'message' => FeatureEntity[], 'code' => 0 ])

Return values
string

sendMessageAction()

send push message request( 'method' => 'POST', 'url' => '/api/v4/features/sendMessage', 'params' => [ [ 'name' => 'deviceId', 'type' => 'string', 'description' => 'device id from device properties', 'required' => true ], [ 'name' => 'message', 'type' => 'string', 'description' => 'message', 'required' => true ] ] ) response( '200' => [ 'status' => 200, 'message' => ObjectId, 'code' => 0 ] )

public sendMessageAction() : string|false
Tags
throws
AirlayException
Return values
string|false

sendMessagesAction()

send push messages to set of devices request( 'method' => 'POST', 'url' => '/api/v4/features/sendMessages', 'params' => [ [ 'name' => 'deviceIds', 'type' => 'json', 'description' => 'array devices id', 'required' => true ], [ 'name' => 'message', 'type' => 'string', 'description' => 'message', 'required' => true ] ] ) response( '200' => [ 'status' => 200, 'message' => ObjectId, 'code' => 0 ] )

public sendMessagesAction() : string|false
Tags
throws
AirlayException
Return values
string|false

setMessageStatusAction()

set message status request( 'method' => 'POST', 'url' => '/api/v4/features/setMessageStatus', 'params' => [ [ 'name' => 'messageStatuses', 'type' => 'array', 'required' => true 'description' => [ { 'id' => 'string' (objectId in string format), 'status' => 'string' ('delivered', 'read') } ... ]

public setMessageStatusAction() : string|false

] ] ) response( '200' => [ 'status' => 200, 'message' => 'OK', 'code' => 0 ] )

Tags
throws
AirlayException
Return values
string|false

updateAction()

request([ 'method' => 'POST', 'url' => '/api/v4/features/update' 'params' => [ [ 'name' => 'dataSetId', 'type' => 'ObjectId', 'required' => 'true' ], [ 'name' => 'id', 'type' => 'ObjectId', 'required' => 'true' ], [ 'name' => 'feature', 'type' => 'json', 'required' => 'true' ] ]) response ([ 'status' = 200, 'message' = FeatureEntity, 'code' = 0 ])

public updateAction() : string|false
Tags
throws
AirlayException
Return values
string|false

updateManyAction()

request([ 'method' => 'POST', 'url' => '/api/v4/features/updateMany' 'params' => [ [ 'name' => 'dataSetId', 'type' => 'ObjectId', 'required' => 'true' ], [ 'name' => 'features', 'type' => 'json', 'required' => 'true' 'description' => [ 'featureArray', ..., 'featureArray' ] ] ]) response ([ 'status' = 200, 'message' = FeatureEntity[], 'code' = 0 ])

public updateManyAction() : string|false
Tags
throws
AirlayException
Return values
string|false

firesAnRelationUpdateEvents()

protected firesAnRelationUpdateEvents(array<string|int, mixed> $relations, ObjectId $dataSetId[, DataSetLogEntity|null $log = null ]) : void
Parameters
$relations : array<string|int, mixed>
$dataSetId : ObjectId
$log : DataSetLogEntity|null = null
Return values
void

getTranslator()

protected getTranslator([string|null $language = null ]) : NativeArray
Parameters
$language : string|null = null
Tags
throws
Exception
Return values
NativeArray

secureData()

protected secureData(mixed $data) : mixed
Parameters
$data : mixed
Return values
mixed

sendEmail()

protected sendEmail(string $email, string $name, string $subject, string $body) : mixed
Parameters
$email : string
$name : string
$subject : string
$body : string
Return values
mixed

Search results