Nextcloud Circles API

FederatedEventService extends NCSignature
in package
Uses TNCRequest, TStringTools

Class FederatedEventService

Table of Contents

DATE_HEADER  = 'D, d M Y H:i:s T'
DATE_OBJECT  = 'Y-m-d\\TH:i:s\\Z'
DATE_TTL  = 300
$configService  : ConfigService
$dateHeader  : mixed
$eventService  : EventService
$eventWrapperRequest  : EventWrapperRequest
$interfaceService  : InterfaceService
$memberRequest  : MemberRequest
$remoteRequest  : RemoteRequest
$remoteUpstreamService  : RemoteUpstreamService
$shareLockRequest  : ShareLockRequest
$ttl  : int
__construct()  : mixed
FederatedEventService constructor.
clientService()  : IClientService
confirmInitiator()  : void
This confirmation is optional, method is just here to avoid going too far away on the process
doRequest()  : void
downloadSignatory()  : void
generateKeys()  : mixed
generateRandomSentence()  : string
generateRandomWord()  : string
getDateDiff()  : string
getFederatedItem()  : IFederatedItem
getInstances()  : array<string|int, RemoteInstance>
getKeyOrigin()  : string
getOpenSSLAlgo()  : int
humanReadable()  : string
incomingSignedRequest()  : NCSignedRequest
initBroadcast()  : bool
async the process, generate a local request that will be closed.
manageResults()  : void
should be used to manage results from events, like sending mails on user creation
newEvent()  : array<string|int, mixed>
Called when creating a new Event.
retrieveJson()  : array<string|int, mixed>
retrieveSignatory()  : NCSignatory
return Signatory by its Id from cache or from direct request.
setMaxDownloadSize()  : mixed
signOutgoingRequest()  : NCSignedRequest
signString()  : string
updateSignatory()  : void
verifyString()  : mixed
commonPart()  : string
cut()  : string
feedStringWithParams()  : string
isUuid()  : bool
token()  : string
uuid()  : string
Generate uuid: 2b5a7a87-8db1-445f-a17b-405790f91c80
configureEvent()  : mixed
confirmRequiredCondition()  : mixed
Some event might require additional check
confirmSharedItem()  : void
generationClientOptions()  : mixed
getChosenEncryption()  : string
getUsedEncryption()  : string
parseIncomingSignatureHeader()  : void
setFederatedEventBypass()  : mixed
Some event might need to bypass some checks
setIncomingClearSignature()  : void
setIncomingSignatureHeader()  : void
setOutgoingClearSignature()  : void
setOutgoingSignatureHeader()  : void
setOutgoingSignedSignature()  : void
signingOutgoingRequest()  : void
useClient()  : IResponse
verifyIncomingRequestContent()  : void
verifyIncomingRequestSignature()  : mixed
verifyIncomingRequestTime()  : void
verifySignedRequest()  : mixed

Constants

DATE_HEADER

public mixed DATE_HEADER = 'D, d M Y H:i:s T'

DATE_OBJECT

public mixed DATE_OBJECT = 'Y-m-d\\TH:i:s\\Z'

Properties

$dateHeader

private mixed $dateHeader = self::DATE_HEADER

Methods

__construct()

FederatedEventService constructor.

public __construct(EventWrapperRequest $eventWrapperRequest, RemoteRequest $remoteRequest, MemberRequest $memberRequest, ShareLockRequest $shareLockRequest, RemoteUpstreamService $remoteUpstreamService, EventService $eventService, InterfaceService $interfaceService, ConfigService $configService) : mixed
Parameters
$eventWrapperRequest : EventWrapperRequest
$remoteRequest : RemoteRequest
$memberRequest : MemberRequest
$shareLockRequest : ShareLockRequest
$remoteUpstreamService : RemoteUpstreamService
$eventService : EventService
$interfaceService : InterfaceService
$configService : ConfigService
Return values
mixed

clientService()

public clientService() : IClientService
Return values
IClientService

downloadSignatory()

public downloadSignatory(NCSignatory $signatory[, string $keyId = '' ][, array<string|int, mixed> $params = [] ][, NCRequest|null $request = null ]) : void
Parameters
$signatory : NCSignatory
$keyId : string = ''
$params : array<string|int, mixed> = []
$request : NCRequest|null = null
Tags
throws
SignatoryException
Return values
void

generateKeys()

public generateKeys(NCSignatory $signatory[, string $digest = 'rsa' ][, int $bits = 2048 ][, int $type = OPENSSL_KEYTYPE_RSA ]) : mixed
Parameters
$signatory : NCSignatory
$digest : string = 'rsa'
$bits : int = 2048
$type : int = OPENSSL_KEYTYPE_RSA
Return values
mixed

generateRandomSentence()

public generateRandomSentence([int $words = 5 ]) : string
Parameters
$words : int = 5
Return values
string

generateRandomWord()

public generateRandomWord([int $length = 8 ]) : string
Parameters
$length : int = 8
Return values
string

getDateDiff()

public getDateDiff(int $first, int $second[, bool $short = false ][, array<string|int, mixed> $words = [] ]) : string
Parameters
$first : int
$second : int
$short : bool = false
$words : array<string|int, mixed> = []
Tags
throws
Exception
Return values
string

humanReadable()

public humanReadable(int $bytes) : string
Parameters
$bytes : int
Return values
string

manageResults()

should be used to manage results from events, like sending mails on user creation

public manageResults(string $token) : void
Parameters
$token : string
Return values
void

newEvent()

Called when creating a new Event.

public newEvent(FederatedEvent $event) : array<string|int, mixed>

This method will manage the event locally and upstream the payload if needed.

Parameters
$event : FederatedEvent
Tags
throws
FederatedEventException
throws
FederatedItemException
throws
InitiatorNotConfirmedException
throws
OwnerNotFoundException
throws
RemoteNotFoundException
throws
RemoteResourceNotFoundException
throws
UnknownRemoteException
throws
RemoteInstanceException
throws
RequestBuilderException
Return values
array<string|int, mixed>

retrieveSignatory()

return Signatory by its Id from cache or from direct request.

public retrieveSignatory(string $keyId[, bool $refresh = false ]) : NCSignatory

Should be overwritten.

Parameters
$keyId : string
$refresh : bool = false
Tags
throws
SignatoryException
Return values
NCSignatory

setMaxDownloadSize()

public setMaxDownloadSize(int $size) : mixed
Parameters
$size : int
Return values
mixed

updateSignatory()

public updateSignatory(NCSignatory $signatory, array<string|int, mixed> $json[, string $keyId = '' ]) : void
Parameters
$signatory : NCSignatory
$json : array<string|int, mixed>
$keyId : string = ''
Tags
throws
SignatoryException
Return values
void

verifyString()

public verifyString(string $clear, string $signed, string $publicKey[, string $algo = NCSignatory::SHA256 ]) : mixed
Parameters
$clear : string
$signed : string
$publicKey : string
$algo : string = NCSignatory::SHA256
Tags
throws
SignatureException
Return values
mixed

commonPart()

protected commonPart(string $str1, string $str2[, bool $cs = true ]) : string
Parameters
$str1 : string
$str2 : string
$cs : bool = true

case sensitive ?

Return values
string

cut()

protected cut(string $line, int $length) : string
Parameters
$line : string
$length : int
Return values
string

feedStringWithParams()

protected feedStringWithParams(string $line, array<string|int, mixed> $params) : string
Parameters
$line : string
$params : array<string|int, mixed>
Return values
string

isUuid()

protected isUuid(string $uuid) : bool
Parameters
$uuid : string
Return values
bool

token()

protected token([int $length = 15 ]) : string
Parameters
$length : int = 15
Return values
string

uuid()

Generate uuid: 2b5a7a87-8db1-445f-a17b-405790f91c80

protected uuid(int $length) : string
Parameters
$length : int
Return values
string

generationClientOptions()

private generationClientOptions(NCRequest $request) : mixed
Parameters
$request : NCRequest
Return values
mixed

useClient()

private useClient(NCRequest $request) : IResponse
Parameters
$request : NCRequest
Tags
throws
Exception
Return values
IResponse

Search results