\Pydio\Access\WebDAVDriver

AJXP_Plugin to access a DropBox enabled server

Summary

Methods
Properties
Constants
getResourceUrl()
directoryUsage()
redirectActionsToMethod()
disableArchiveBrowsingContributions()
addSlugToPath()
createResourceAction()
uploadAction()
downloadAction()
switchAction()
parseLsOptions()
loadNodeInfo()
localizeNodeInfo()
countChildren()
date_modif()
extractArchiveItemPreCallback()
extractArchiveItemPostCallback()
extractArchive()
copyOrMove()
rename()
autoRenameForDest()
mkDir()
createEmptyFile()
delete()
simpleCopy()
isWriteable()
isReadable()
chmod()
nodeChanged()
nodeWillChange()
makeZip()
recursivePurge()
setHiddenAttribute()
makePublicletOptions()
makeSharedRepositoryOptions()
init()
accessPreprocess()
crossRepositoryCopy()
fixPermissions()
filterUserSelectionToHidden()
filterNodeName()
filterFile()
filterFolder()
__construct()
__clone()
getWorkDirForPluginId()
performChecks()
isEnabled()
loadManifest()
getManifestLabel()
getManifestDescription()
serialize()
unserialize()
getManifestRawContent()
getRegistryContributions()
updateDependencies()
dependsOn()
getActiveDependencies()
getConfigsDefinitions()
loadConfigs()
getConfigs()
getClassFile()
missingExtensions()
hasMissingExtensions()
manifestLoaded()
getId()
getName()
getType()
getBaseDir()
getDependencies()
logDebug()
logInfo()
logNotice()
logWarning()
logError()
detectStreamWrapper()
getPluginInformation()
getPluginInformationHTML()
reloadXPath()
hasMixin()
convertPath()
convertTime()
$repository
$driverConf
$driverType
$loadingState
PROTOCOL
RESOURCES_PATH
RESOURCES_FILE
initRepository()
recursiveDirUsageByListing()
filterByApi()
uploadPostProcess()
writeUploadError()
writeUploadSuccess()
orderNodes()
copyUploadedData()
appendUploadedData()
copyOrMoveFile()
filecopy()
dircopy()
changeMode()
deldir()
getPluginWorkDir()
getPluginCacheDir()
getXPath()
getContextualOption()
loadRegistryContributions()
initXmlContributionFile()
parseSpecificContributions()
unserializeManifest()
loadDependencies()
cachedNodesFromManifest()
loadConfigsDefinitions()
loadOptionsDefaults()
exposeConfigInManifest()
loadMixins()
nodeAttrToHash()
nodesEqual()
$wrapperClassName
$urlBase
$baseDir
$id
$name
$type
$manifestLoaded
$externalFilesAppended
$enabled
$registryContributions
$contributionsLoaded
$options
$pluginConf
$pluginConfDefinition
$dependencies
$extensionsDependencies
$streamData
$mixins
$cachedXPathResults
$manifestDoc
N/A
purge()
$xPath
$manifestXML
$serializableAttributes
N/A

Constants

PROTOCOL

PROTOCOL

RESOURCES_PATH

RESOURCES_PATH

RESOURCES_FILE

RESOURCES_FILE

Properties

$driverConf

$driverConf : 

Type

$driverType

$driverType : 

Type

$loadingState

$loadingState : 

Type

$wrapperClassName

$wrapperClassName : 

Type

$urlBase

$urlBase : 

Type

$baseDir

$baseDir : 

Type

$id

$id : 

Type

$name

$name : 

Type

$type

$type : 

Type

$manifestLoaded

$manifestLoaded : 

Type

$externalFilesAppended

$externalFilesAppended : 

Type

$enabled

$enabled : 

Type

$registryContributions

$registryContributions : 

Type

$contributionsLoaded

$contributionsLoaded : 

Type

$options

$options : array

Type

array

$pluginConf

$pluginConf : 

Type

$pluginConfDefinition

$pluginConfDefinition : 

Type

$dependencies

$dependencies : 

Type

$extensionsDependencies

$extensionsDependencies : 

Type

$streamData

$streamData : 

Type

$mixins

$mixins : 

Type

$cachedXPathResults

$cachedXPathResults : 

Type

$manifestDoc

$manifestDoc : \DOMDocument

The manifest.xml loaded

Type

\DOMDocument

$xPath

$xPath : \DOMXPath

XPath query

Type

\DOMXPath

$manifestXML

$manifestXML : string

Internally store XML during serialization state.

Type

string

$serializableAttributes

$serializableAttributes : 

Type

Methods

getResourceUrl()

getResourceUrl(String  $path) : string

Convert a path (from the repository root) to a fully qualified ajaxplorer url like ajxp.protocol://repoId/path/to/node

Parameters

String $path

Returns

string

directoryUsage()

directoryUsage(  $node) : integer

Parameters

$node

AJXP_Node

Throws

\Exception

Returns

integer

redirectActionsToMethod()

redirectActionsToMethod(  $contribNode,   $arrayActions,   $targetMethod) 

Parameters

$contribNode
$arrayActions
$targetMethod

disableArchiveBrowsingContributions()

disableArchiveBrowsingContributions(\DOMNode  $contribNode) 

Parameters

\DOMNode $contribNode

addSlugToPath()

addSlugToPath(  $selection) : array|string

Parameters

$selection

Returns

array|string

createResourceAction()

createResourceAction(\Psr\Http\Message\ServerRequestInterface  $request, \Psr\Http\Message\ResponseInterface  $response) 

API V2, will get POST / PUT actions, will reroute to mkdir, mkfile, copy, move actions

Parameters

\Psr\Http\Message\ServerRequestInterface $request
\Psr\Http\Message\ResponseInterface $response

Throws

\Exception

uploadAction()

uploadAction(\Psr\Http\Message\ServerRequestInterface  $request, \Psr\Http\Message\ResponseInterface  $response) 

Parameters

\Psr\Http\Message\ServerRequestInterface $request
\Psr\Http\Message\ResponseInterface $response

Throws

\Exception

downloadAction()

downloadAction(\Psr\Http\Message\ServerRequestInterface  $request, \Psr\Http\Message\ResponseInterface  $response) 

Parameters

\Psr\Http\Message\ServerRequestInterface $request
\Psr\Http\Message\ResponseInterface $response

Throws

\Pydio\Core\Exception\PydioException
\Exception

switchAction()

switchAction(\Psr\Http\Message\ServerRequestInterface  $request, \Psr\Http\Message\ResponseInterface  $response) 

Parameters

\Psr\Http\Message\ServerRequestInterface $request
\Psr\Http\Message\ResponseInterface $response

Throws

\Pydio\Core\Exception\PydioException
\Exception

parseLsOptions()

parseLsOptions(  $optionString) : array

Parameters

$optionString

Returns

array

loadNodeInfo()

loadNodeInfo(\Pydio\Access\Core\Model\AJXP_Node  $ajxpNode, boolean  $parentNode = false, boolean  $details = false) : void

Update node metadata with core FS metadata.

Parameters

\Pydio\Access\Core\Model\AJXP_Node $ajxpNode
boolean $parentNode
boolean $details

localizeNodeInfo()

localizeNodeInfo(\Pydio\Access\Core\Model\AJXP_Node  $ajxpNode, boolean  $parentNode = false, boolean  $details = false) 

Update nodes metadata with localized info (will NOT be cached) Hooked to node.info.nocache

Parameters

\Pydio\Access\Core\Model\AJXP_Node $ajxpNode
boolean $parentNode
boolean $details

countChildren()

countChildren(\Pydio\Access\Core\Model\AJXP_Node  $dirNode, boolean  $foldersOnly = false, boolean  $nonEmptyCheckOnly = false, null  $dirHANDLE = null) : integer

Parameters

\Pydio\Access\Core\Model\AJXP_Node $dirNode
boolean $foldersOnly
boolean $nonEmptyCheckOnly
null $dirHANDLE

Throws

\Exception

Returns

integer

date_modif()

date_modif(  $file) : integer

Parameters

$file

Returns

integer

extractArchiveItemPreCallback()

extractArchiveItemPreCallback(  $crtUrlBase,   $status,   $data, null  $taskId = null) : integer

Parameters

$crtUrlBase
$status
$data
null $taskId

Throws

\Exception

Returns

integer

extractArchiveItemPostCallback()

extractArchiveItemPostCallback(  $crtUrlBase,   $status,   $data, null  $taskId = null) : integer

Parameters

$crtUrlBase
$status
$data
null $taskId

Throws

\Pydio\Core\Exception\PydioException
\Exception

Returns

integer

extractArchive()

extractArchive(string  $destDir, \Pydio\Access\Core\Model\UserSelection  $selection, array  $error, array  $success, string  $taskId = null) 

Extract an archive directly inside the dest directory.

Parameters

string $destDir
\Pydio\Access\Core\Model\UserSelection $selection
array $error
array $success
string $taskId

copyOrMove()

copyOrMove(string  $destDir, \Pydio\Access\Core\Model\UserSelection  $selection, array  $error, array  $success, boolean  $move = false, string|null  $targetBaseName = null, string|null  $taskId = null) 

Parameters

string $destDir
\Pydio\Access\Core\Model\UserSelection $selection
array $error
array $success
boolean $move
string|null $targetBaseName
string|null $taskId

Throws

\Exception

autoRenameForDest()

autoRenameForDest(  $destination,   $fileName) : string

Parameters

$destination
$fileName

Returns

string

mkDir()

mkDir(\Pydio\Access\Core\Model\AJXP_Node  $parentNode, String  $newDirName, boolean  $ignoreExists = false, boolean  $createRecursive = false) : \Pydio\Access\Core\Model\AJXP_Node

Creates a directory

Parameters

\Pydio\Access\Core\Model\AJXP_Node $parentNode
String $newDirName
boolean $ignoreExists
boolean $createRecursive

Throws

\Pydio\Core\Exception\PydioException
\Exception

Returns

\Pydio\Access\Core\Model\AJXP_Node

createEmptyFile()

createEmptyFile(\Pydio\Access\Core\Model\AJXP_Node  $node, string  $content = "", boolean  $force = false) : 

Creates an empty file

Parameters

\Pydio\Access\Core\Model\AJXP_Node $node
string $content
boolean $force

Throws

\Exception

Returns

delete()

delete(\Pydio\Access\Core\Model\UserSelection  $selection,   $logMessages, null  $taskId = null) : null

Parameters

\Pydio\Access\Core\Model\UserSelection $selection
$logMessages
null $taskId

Throws

\Pydio\Core\Exception\PydioException
\Exception

Returns

null

simpleCopy()

simpleCopy(  $origFile,   $destFile) : boolean

Parameters

$origFile
$destFile

Returns

boolean

chmod()

chmod(\Pydio\Access\Core\Model\AJXP_Node  $node, String  $chmodValue, Boolean  $recursive, String  $nodeType,   $changedFiles) : void

Change file permissions

Parameters

\Pydio\Access\Core\Model\AJXP_Node $node
String $chmodValue
Boolean $recursive
String $nodeType

"both", "file", "dir"

$changedFiles

nodeWillChange()

nodeWillChange(\Pydio\Access\Core\Model\AJXP_Node  $node, null  $newSize = null) : 

Parameters

\Pydio\Access\Core\Model\AJXP_Node $node
null $newSize

Returns

makeZip()

makeZip(\Pydio\Access\Core\Model\UserSelection  $selection, string  $dest, string  $basedir, string  $taskId = null) : \PclZip

Parameters

\Pydio\Access\Core\Model\UserSelection $selection
string $dest
string $basedir
string $taskId

Throws

\Exception

Returns

\PclZip

recursivePurge()

recursivePurge(  $dirName,   $hardPurgeTime, integer  $softPurgeTime) 

Parameters

$dirName
$hardPurgeTime
integer $softPurgeTime

setHiddenAttribute()

setHiddenAttribute(\Pydio\Access\Core\Model\AJXP_Node  $node) 

Apply specific operation to set a node as hidden.

Can be overwritten, or will probably do nothing.

Parameters

\Pydio\Access\Core\Model\AJXP_Node $node

makePublicletOptions()

makePublicletOptions(String  $filePath, String  $password, String  $expires, String  $downloadlimit, \Pydio\Access\Core\Model\Repository  $repository) : array

Populate publiclet options

Parameters

String $filePath

The path to the file to share

String $password

optionnal password

String $expires

optional expiration date

String $downloadlimit

optional limit for downloads

\Pydio\Access\Core\Model\Repository $repository

Returns

array

makeSharedRepositoryOptions()

makeSharedRepositoryOptions(\Pydio\Core\Model\ContextInterface  $ctx, array  $httpVars) : array

Populate shared repository options

Parameters

\Pydio\Core\Model\ContextInterface $ctx
array $httpVars

Returns

array

accessPreprocess()

accessPreprocess(\Psr\Http\Message\ServerRequestInterface  $request) 

Parameters

\Psr\Http\Message\ServerRequestInterface $request

Throws

\Exception

crossRepositoryCopy()

crossRepositoryCopy(\Psr\Http\Message\ServerRequestInterface  $requestInterface, \Psr\Http\Message\ResponseInterface  $responseInterface) 

Parameters

\Psr\Http\Message\ServerRequestInterface $requestInterface
\Psr\Http\Message\ResponseInterface $responseInterface

Throws

\Pydio\Core\Exception\PydioException
\Exception

fixPermissions()

fixPermissions(\Pydio\Access\Core\Model\AJXP_Node  $node, array  $stat, callable  $remoteDetectionCallback = null) 

Try to reapply correct permissions

Parameters

\Pydio\Access\Core\Model\AJXP_Node $node
array $stat
callable $remoteDetectionCallback

filterUserSelectionToHidden()

filterUserSelectionToHidden(\Pydio\Core\Model\ContextInterface  $ctx, array  $files) 

Test if userSelection is containing a hidden file, which should not be the case!

Parameters

\Pydio\Core\Model\ContextInterface $ctx
array $files

Throws

\Exception

filterNodeName()

filterNodeName(\Pydio\Core\Model\ContextInterface  $ctx,   $nodePath,   $nodeName,   $isLeaf,   $lsOptions) : boolean

Parameters

\Pydio\Core\Model\ContextInterface $ctx
$nodePath
$nodeName
$isLeaf
$lsOptions

Returns

boolean

filterFile()

filterFile(\Pydio\Core\Model\ContextInterface  $ctx, string  $fileName, boolean  $hiddenTest = false) : boolean

Parameters

\Pydio\Core\Model\ContextInterface $ctx
string $fileName
boolean $hiddenTest

Returns

boolean

filterFolder()

filterFolder(\Pydio\Core\Model\ContextInterface  $ctx, string  $folderName, string  $compare = "equals") : boolean

Parameters

\Pydio\Core\Model\ContextInterface $ctx
string $folderName
string $compare

Returns

boolean

__construct()

__construct(string  $id, string  $baseDir) 

Construction method

Parameters

string $id
string $baseDir

__clone()

__clone() 

Make sure to clone the XML manifest document, otherwise if the plugin changes it dynamically, it can mess up things.

getWorkDirForPluginId()

getWorkDirForPluginId(  $pluginId) : string

Parameters

$pluginId

Returns

string

performChecks()

performChecks() 

Perform initialization checks, and throw exception if problems found.

Throws

\Exception

isEnabled()

isEnabled() : boolean

Returns

boolean

loadManifest()

loadManifest() : void

Load the main manifest.xml file of the plugni

Throws

\Exception

getManifestLabel()

getManifestLabel() : mixed|string

Get the plugin label as defined in the manifest file (label attribute)

Returns

mixed|string

getManifestDescription()

getManifestDescription() : mixed|string

Get the plugin description as defined in the manifest file (description attribute)

Returns

mixed|string

serialize()

serialize() : string

Serialized all declared attributes and return a serialized representation of this plugin.

The XML Manifest is base64 encoded before serialization.

Returns

string

unserialize()

unserialize(  $string) : void

Load this plugin from its serialized reprensation. The manifest XML is base64 decoded.

Parameters

$string

getManifestRawContent()

getManifestRawContent(string  $xmlNodeName = "", string  $format = "string", boolean  $externalFiles = false) : \DOMElement|\DOMNodeList|string

Legacy function, should better be used to return XML Nodes than string. Perform a query on the manifest.

Parameters

string $xmlNodeName
string $format
boolean $externalFiles

Returns

\DOMElement|\DOMNodeList|string

getRegistryContributions()

getRegistryContributions(\Pydio\Core\Model\ContextInterface  $ctx, boolean  $extendedVersion = true) : array<mixed,\DOMElement>

Return the registry contributions. The parameter can be used by subclasses to optimize the size of the XML returned : the extended version is called when sending to the client, whereas the "small" version is loaded to find and apply actions.

Parameters

\Pydio\Core\Model\ContextInterface $ctx
boolean $extendedVersion

Can be used by subclasses to optimize the size of the XML returned.

Returns

array<mixed,\DOMElement>

dependsOn()

dependsOn(string  $pluginName) : boolean

Check if this plugin depends on another one.

Parameters

string $pluginName

Returns

boolean

getActiveDependencies()

getActiveDependencies(\Pydio\Core\PluginFramework\PluginsService  $pluginService) : array

Get dependencies

Parameters

\Pydio\Core\PluginFramework\PluginsService $pluginService

Returns

array

getConfigsDefinitions()

getConfigsDefinitions() : array

Returns

array

loadConfigs()

loadConfigs(array  $configData) : void

Load the configs passed as parameter. This method will + Parse the config definitions and load the default values + Merge these values with the $configData parameter + Publish their value in the manifest if the global_param is "exposed" to the client.

Parameters

array $configData

getConfigs()

getConfigs() : array

Return this plugin configs, merged with its associated "core" configs.

Returns

array

getClassFile()

getClassFile() : array|boolean

Return the file path of the specific class to load

Returns

array|boolean

missingExtensions()

missingExtensions() : array

Returns

array

hasMissingExtensions()

hasMissingExtensions() : boolean

Returns

boolean

manifestLoaded()

manifestLoaded() : boolean

Returns

boolean

getId()

getId() : string

Returns

string

getName()

getName() : string

Returns

string

getType()

getType() : string

Returns

string

getBaseDir()

getBaseDir() : string

Returns

string

getDependencies()

getDependencies() : array

Returns

array

logDebug()

logDebug(string  $prefix, array|string  $message = "") : void

Write a debug log with the plugin id as source

Parameters

string $prefix

A quick description or action

array|string $message

Variable number of message args (string or array)

logInfo()

logInfo(string  $prefix, array|string  $message) : void

Write an info log with the plugin id as source

Parameters

string $prefix

A quick description or action

array|string $message

Variable number of message args (string or array)

logNotice()

logNotice(string  $prefix, array|string  $message) : void

Write a notice log with the plugin id as source

Parameters

string $prefix

A quick description or action

array|string $message

Variable number of message args (string or array)

logWarning()

logWarning(string  $prefix, array|string  $message) : void

Write a warning log with the plugin id as source

Parameters

string $prefix

A quick description or action

array|string $message

Variable number of message args (string or array)

logError()

logError(string  $prefix, array|string  $message) : void

Write an error log with the plugin id as source

Parameters

string $prefix

A quick description or action

array|string $message

Variable number of message args (string or array)

detectStreamWrapper()

detectStreamWrapper(boolean  $register = false, \Pydio\Core\Model\ContextInterface  $ctx = null) : array|boolean

Detect if this plugin declares a StreamWrapper, and if yes loads it and register the stream.

Parameters

boolean $register
\Pydio\Core\Model\ContextInterface $ctx

Returns

array|boolean

getPluginInformation()

getPluginInformation() : array

Returns

array

getPluginInformationHTML()

getPluginInformationHTML(  $defaultAuthor,   $defaultUriBase) : string

Parameters

$defaultAuthor
$defaultUriBase

Returns

string

reloadXPath()

reloadXPath() : void

hasMixin()

hasMixin(  $mixinName) : boolean

Parameters

$mixinName

Returns

boolean

convertPath()

convertPath(  $node) 

Parameters

$node

convertTime()

convertTime(  $date) : integer

Parameters

$date

Returns

integer

recursiveDirUsageByListing()

recursiveDirUsageByListing(  $path) : integer|string

Parameters

$path

Returns

integer|string

filterByApi()

filterByApi(\Psr\Http\Message\ServerRequestInterface  $request) 

Parameters

\Psr\Http\Message\ServerRequestInterface $request

uploadPostProcess()

uploadPostProcess(\Psr\Http\Message\ServerRequestInterface  $request, \Pydio\Access\Core\Model\AJXP_Node  $createdNode,   $partialUpload = false,   $nodeOverriden = false, string  $chmodValue = "") 

Parameters

\Psr\Http\Message\ServerRequestInterface $request
\Pydio\Access\Core\Model\AJXP_Node $createdNode
$partialUpload
$nodeOverriden
string $chmodValue

writeUploadError()

writeUploadError(\Psr\Http\Message\ServerRequestInterface  $request,   $message,   $code) 

Parameters

\Psr\Http\Message\ServerRequestInterface $request
$message
$code

writeUploadSuccess()

writeUploadSuccess(\Psr\Http\Message\ServerRequestInterface  $request,   $nodeData) 

Parameters

\Psr\Http\Message\ServerRequestInterface $request
$nodeData

orderNodes()

orderNodes(  $nodes,   $path,   $orderField,   $orderDirection) : array

Parameters

$nodes
$path
$orderField
$orderDirection

Returns

array

copyUploadedData()

copyUploadedData(array|\Psr\Http\Message\UploadedFileInterface  $uploadData, String  $destination, array  $messages) : boolean

Parameters

array|\Psr\Http\Message\UploadedFileInterface $uploadData

Php-upload array

String $destination

Full path to destination file, including stream data

array $messages

Application messages table

Throws

\Exception

Returns

boolean

appendUploadedData()

appendUploadedData(String  $folder, String  $source, String  $target) : boolean

Parameters

String $folder

Folder destination

String $source

Maybe updated by the function

String $target

Existing part to append data

Throws

\Exception

Returns

boolean —

If the target file already existed or not.

copyOrMoveFile()

copyOrMoveFile(String  $destFile, String  $srcFile, array  $error, array  $success, boolean  $move = false, array  $srcRepoData = array(), array  $destRepoData = array(), string  $taskId = null) 

Parameters

String $destFile

url of destination file

String $srcFile

url of source file

array $error

accumulator for error messages

array $success

accumulator for success messages

boolean $move

Whether to copy or move

array $srcRepoData

Set of data concerning source repository: base_url, recycle option

array $destRepoData

Set of data concerning destination repository: base_url, chmod option

string $taskId

Optional task UUID to update during operation

filecopy()

filecopy(String  $srcFile, String  $destFile) 

Parameters

String $srcFile

url of source file

String $destFile

url of destination file

dircopy()

dircopy(String  $srcdir, String  $dstdir, array  $errors, array  $success, boolean  $verbose = false, boolean  $convertSrcFile = true, array  $srcRepoData = array(), array  $destRepoData = array(), string  $taskId = null) : integer

Parameters

String $srcdir

Url of source file

String $dstdir

Url of dest file

array $errors

Array of errors

array $success

Array of success

boolean $verbose

Boolean

boolean $convertSrcFile

Boolean

array $srcRepoData

Set of data concerning source repository: base_url, recycle option

array $destRepoData

Set of data concerning destination repository: base_url, chmod option

string $taskId

Optional Task ID

Returns

integer

changeMode()

changeMode(  $filePath,   $repoData) 

Parameters

$filePath
$repoData

deldir()

deldir(string  $location, array  $repoData, string  $taskId = null) 

Parameters

string $location
array $repoData
string $taskId

Throws

\Exception

getPluginWorkDir()

getPluginWorkDir(boolean  $check = false) : string

Parameters

boolean $check

Throws

\Exception

Returns

string

getPluginCacheDir()

getPluginCacheDir(boolean  $shared = false, boolean  $check = false) : string

Parameters

boolean $shared
boolean $check

Throws

\Exception

Returns

string

getXPath()

getXPath() : \DOMXPath

Returns

\DOMXPath

getContextualOption()

getContextualOption(\Pydio\Core\Model\ContextInterface  $ctx,   $optionName) : mixed|null

Parameters

\Pydio\Core\Model\ContextInterface $ctx
$optionName

Returns

mixed|null

loadRegistryContributions()

loadRegistryContributions(\Pydio\Core\Model\ContextInterface  $ctx, boolean  $dry = false) 

Main function for loading all the nodes under registry_contributions.

Parameters

\Pydio\Core\Model\ContextInterface $ctx
boolean $dry

initXmlContributionFile()

initXmlContributionFile(\Pydio\Core\Model\ContextInterface  $ctx, string  $xmlFile, array  $include = array("*"), array  $exclude = array(), boolean  $dry = false) 

Load an external XML file and include/exclude its nodes as contributions.

Parameters

\Pydio\Core\Model\ContextInterface $ctx
string $xmlFile

Path to the file from the base install path

array $include

XPath query for XML Nodes to include

array $exclude

XPath query for XML Nodes to exclude from the included ones.

boolean $dry

Dry-run of the inclusion

parseSpecificContributions()

parseSpecificContributions(\Pydio\Core\Model\ContextInterface  $ctx, \DOMNode  $contribNode) : void

Dynamically modify some registry contributions nodes. Can be easily derivated to enable/disable some features dynamically during plugin initialization.

Parameters

\Pydio\Core\Model\ContextInterface $ctx
\DOMNode $contribNode

unserializeManifest()

unserializeManifest() 

Load DOMDocument from serialized value. Must be called after checking that property $this->manifestXML is not null.

loadDependencies()

loadDependencies() : void

Load the declared dependant plugins

cachedNodesFromManifest()

cachedNodesFromManifest(  $query) : array|mixed

Parameters

$query

Returns

array|mixed

loadConfigsDefinitions()

loadConfigsDefinitions() : void

Load the global parameters for this plugin

loadOptionsDefaults()

loadOptionsDefaults() : array

Load the default values for this plugin options

Returns

array

exposeConfigInManifest()

exposeConfigInManifest(  $configName,   $configValue) : void

Add a name/value pair in the manifest to be published to the world.

Parameters

$configName
$configValue

loadMixins()

loadMixins() : void

Check if the plugin declares mixins, and load them using PluginsService::patchPluginWithMixin method

nodeAttrToHash()

nodeAttrToHash(\DOMNode  $node) : array

Transform a simple node and its attributes to a HashTable

Parameters

\DOMNode $node

Returns

array

nodesEqual()

nodesEqual(\DOMNode  $node1, \DOMNode  $node2) : boolean

Compare two nodes at first level (nodename and attributes)

Parameters

\DOMNode $node1
\DOMNode $node2

Returns

boolean

purge()

purge(  $fileName) 

Parameters

$fileName

Throws

\Exception