Accéder au client aux API Alfresco (Rest et CMIS)
composer require souidev/alfresco-laravel:"@dev"
Vous pouvez configurer le package via le fichier .env
de l'application. Voici les paramètres disponibles :
Parametre | Description | Value |
---|---|---|
ALFRESCO_URL | base API Url | http://ip_or_domain:port/alfresco/ |
ALFRESCO_API | Api type | rest / cmis |
ALFRESCO_API_VERSION | version | 1.0 (rest) / 1.1 (cmis) |
ALFRESCO_REPOSITORY_ID | Repository ID | -default- per defecte |
ALFRESCO_BASE_ID | ID Alfresco du répertoire de base | |
ALFRESCO_BASE_PATH | Chemin du répertoire de base | |
ALFRESCO_USER | Utilisateur | |
ALFRESCO_PASSWORD | Mot de passe | --- |
ALFRESCO_DEBUG | Mode debug (activer plus de journaux) | true / false |
ALFRESCO_REPEATED_POLICY | Politique à suivre en cas de téléchargement d'un fichier répété | rename / overwrite / deny |
ALFRESCO_EXPLORER | Activer un explorateur de fichiers | true / false |
ALFRESCO_VERIFY_SSL | Activer la vérification SSL du serveur | true / false |
Alternativement, vous pouvez publier le fichier de configuration du package avec la commande :
php artisan vendor:publish --tag=souidev-alfresco
Cela copiera le fichier alfresco.php
au dossier config
.
Une fois configuré, le package est prêt à être utilisé. Vous pouvez le faire des manières suivantes :
Grâce à un Facade
:
use Alfresco;
...
public function test(){
$file=Alfresco::getDocument("xxx-yyy-zzz");
...
}
Pour Laravel < 5.6, vous devez enregistrer l'alias Facade dans le fichier config/app.php
:
'aliases' => [
...
'Alfresco' => Souidev\AlfrescoLaravel\Facades\Alfresco::class
]
Via injection de dépendances: À vos controller, helpers, model:
use Souidev\AlfrescoLaravel\Models\AlfrescoService;
...
public function test(AlfrescoService $client){
$file=$client->getDocument("xxx-yyy-zzz");
...
}
via la fonction helper
:
...
public function test(){
$file=alfresco()->getDocument("xxx-yyy-zzz");
...
}
fonction | Description | paramètres | retour | Excepcions |
---|---|---|---|---|
getBasepath | Renvoie le répertoire racine à partir duquel les autres méthodes seront exécutées | string |
||
setBasepath | Définit le répertoire racine à partir duquel les autres méthodes seront exécutées | string:$path |
||
getBaseFolder | Renvoie le BaseFolder (le répertoire racine du chemin de base, s'il est défini) | AlfrescoFolder |
||
exists | Renvoie si un objet avec l'ID transmis existe | string:$objectId |
boolean |
|
existsPath | Renvoie si un objet avec le chemin transmis existe | string:$objectPath |
boolean |
|
getObject | Renvoie un objet avec l'ID transmis | string:$objectId |
AlfrescoObject |
|
getObjectByPath | Renvoie un objet avec le chemin transmis | string:$objectPath |
AlfrescoObject |
|
downloadObject | Télécharge le contenu d'un objet en passant son ID | string:$objectId boolean:$stream=false |
Binary Content | AlfrescoObjectNotFoundException |
getFolder | Retorna una carpeta d'Alfresco passant el seu ID | string:$folderId |
AlfrescoFolder |
AlfrescoObjectNotFoundException |
getFolderByPath | Renvoie un dossier Alfresco en passant son chemin (depuis le chemin de base) | string:$folderPath |
AlfrescoFolder |
AlfrescoObjectNotFoundException |
getParent | Renvoie le dossier parent de l'objet avec l'ID transmis | string:$objectId |
AlfrescoFolder |
AlfrescoObjectNotFoundException |
getChildren | Renvoie les enfants d'un dossier Alfresco en passant leur identifiant | string:$folderId |
AlfrescoFolder[] |
AlfrescoObjectNotFoundException |
createFolder | Crée un dossier en passant son nom dans le dossier avec l'ID transmis. Renvoie le dossier créé |
string:$folderName string:$parentId=null |
AlfrescoFolder |
AlfrescoObjectNotFoundException AlfrescoObjectAlreadyExistsException |
getDocument | Renvoie un document Alfresco en passant son ID | string:$documentId |
AlfrescoDocument |
AlfrescoObjectNotFoundException |
getDocumentByPath | Renvoie un document Alfresco en passant son chemin (depuis le chemin de base) | string:$documentPath |
AlfrescoDocument |
AlfrescoObjectNotFoundException |
getDocumentContent | Renvoie le contenu binaire d'un document Alfresco en passant son ID | string:$documentId |
Binary Content | |
delete | Supprimez le document ou le dossier Alfresco avec l'ID transmis | string:$objectId |
boolean |
AlfrescoObjectNotFoundException |
copy | Copie le document ou le dossier Alfresco avec l'ID transmis dans le dossier avec l'ID transmis. Renvoie le nouvel objet. | string:$objectId string:$folderId |
AlfrescoObject |
AlfrescoObjectNotFoundException |
copyByPath | Copie le document ou le dossier Alfresco avec l'ID transmis dans le dossier avec le chemin transmis (en commençant par le chemin de base). Renvoie le nouvel objet. | string:$objectId string:$folderPath |
AlfrescoObject |
AlfrescoObjectNotFoundException AlfrescoObjectAlreadyExistsException |
move | Déplacez le document ou le dossier Alfresco avec l'ID transmis à l'intérieur du dossier avec l'ID transmis. Renvoie le nouvel objet. | string:$objectId string:$folderId |
AlfrescoObject |
AlfrescoObjectNotFoundException AlfrescoObjectAlreadyExistsException |
moveByPath | Déplacez le document ou le dossier Alfresco avec l'ID transmis dans le dossier avec le chemin transmis (en commençant par le chemin de base). Renvoie le nouvel objet. | string:$objectId string:$folderPath |
AlfrescoObject |
AlfrescoObjectNotFoundException AlfrescoObjectAlreadyExistsException |
rename | Renommez le document ou le dossier Alfresco avec l'ID transmis sous un nouveau nom. Renvoie le nouvel objet. | string:$objectId string:$newName |
AlfrescoObject |
AlfrescoObjectNotFoundException AlfrescoObjectAlreadyExistsException |
createDocument | Créez un nouveau document dans Alfresco à partir du contenu binaire du dossier parent avec l'ID transmis | string:$parentId string:$filename string:$filecontent |
AlfrescoObject |
AlfrescoObjectNotFoundException AlfrescoObjectAlreadyExistsException |
createDocumentByPath | Créez un nouveau document dans Alfresco à partir du contenu binaire du dossier parent avec le chemin transmis (à partir du chemin de base) | string:$parentPath string:$filename string:$filecontent |
AlfrescoObject |
AlfrescoObjectNotFoundException AlfrescoObjectAlreadyExistsException |
upload | Charger un document dans Alfresco à partir d'un objet UploadedFile ou un tableau de ceux-ci. Généralement utilisé à partir d'un contrôleur Laravel, collectant les fichiers de requête provenant d'un formulaire en plusieurs parties |
string:$parentId UploadedFile-UploadedFile[]:$documents |
AlfrescoDocument ou string en cas d'erreur |
|
getSites | Renvoie tous les sites Alfresco (en tant qu'objets AlfrescoFolder) | AlfrescoFolder[] |
||
search | Rechercher des documents contenant le texte transmis dans le nom ou le contenu du dossier avec l'ID transmis ou la racine | string:$query string:$folderId=null boolean:$recursive:false |
AlfrescoObject[] |
AlfrescoObjectNotFoundException |
searchByPath | Rechercher des documents contenant le texte transmis dans le nom ou le contenu du dossier avec le chemin transmis (à partir du dossier racine ou du chemin de base si défini) | string:$query string:$folderPath=null boolean:$recursive:false |
AlfrescoObject[] |
AlfrescoObjectNotFoundException |
Si nous activons le paramètre :
ALFRESCO_DEBUG = true
dans les archives .env
, nous pouvons y accéder file-explorer à l'itinéraire:
/souidev/alfresco/explorer
Aquesta funcionalitat requereixen el paquet web-components:
https://github.com/souidev/web-components
És una ruta securitzada i només s'hi podrà accedir si habilitem l'autenticació a la nostra aplicació Laravel.