Integrazione con Alfresco

Introduzione

L'integrazione con Alfresco avviene mediante l'interfaccia AlfCity, una Servlet Java che si occupa del dialogo verso il motore di Alfresco e riespone dei servizi REST.

La classe, oltre ai metodi relativi ai client, ha anche i seguenti:

getErrCode: codice di errore (0=nessun errore; <>0 = errore)

getMessage: messaggio di risposta

getHttpStatus: stato http della chiamata

Elenco dei servizi

contentByUUID

Restituisce contenuto documento in funzione dell'UUID.
Parametri in ingresso:

uuid: chiave del documento su Alfresco

Valore di ritorno: Se esito positivo, binary che corrisponde all'UUID specificato; altrimenti null

countQuery

Conta documenti in Alfresco, in funzione dei criteri di ricerca impostati.
Parametri in ingresso:

docType: tipo di documento

codEnte: Codice Ente (Corrisponde alla cartella di Alfresco)

codAoo: Codice AOO (Corrisponde alla cartella di Alfresco)

aspects: array degli aspetti ricercati

props: array delle proprietà (chiave→valore) da ricercare

fullText: stringa per ricerca full text

Valore di ritorno: Numero di elementi che soddisfano i criteri di ricerca

countQueryAll

Conta documenti in Alfresco, in funzione dei criteri di ricerca impostati (ricerca libera).
Parametri in ingresso:

docType: tipo di documento

codEnte: Codice Ente (Corrisponde alla cartella di Alfresco)

codAoo: Codice AOO (Corrisponde alla cartella di Alfresco)

aspects: array degli aspetti ricercati

props: array delle proprietà (chiave→valore) da ricercare

fullText: stringa per ricerca su tutti i metadati e full text

Valore di ritorno: Numero di elementi che soddisfano i criteri di ricerca

deleteDocumentByUUID

Cancella documento in funzione dell'UUID specificato
Parametri in ingresso:

uuid: chiave del documento su Alfresco

Valore di ritorno: -

initEnv

Attualmente non gestito.

insertDocument

Inserimento di un documento in Alfresco con metadati.
Parametri in ingresso:

docType: tipo di documento

place: percorso Alfresco dove memorizzare il documento

fileName: nome file

mimeType: mime type (Es.: application/xml)

content: contenuto del file

aspects: array degli aspetti presenti sul documento

props: array delle proprietà del documento

Valore di ritorno: Se esito positivo, UUID del documento aggiunto; altrimenti stringa vuota

placeByUUID

Restituisce percorso logico del documento in Alfresco, in funzione della chiave unica specificata.
Parametri in ingresso:

uuid: chiave del documento su Alfresco

Valore di ritorno: Se esito positivo, percorso logico che corrisponde all'UUID specificato; altrimenti stringa vuota.

query

Ricerca documenti in Alfresco.
Parametri in ingresso:

docType: tipo di documento

codEnte: Codice Ente (Corrisponde alla cartella di Alfresco)

codAoo: Codice AOO (Corrisponde alla cartella di Alfresco)

aspects: array degli aspetti ricercati

props: array delle proprietà (chiave→valore) da ricercare

fullText: stringa per ricerca full text

page: Pagina inizio ricerca (0=prima pagina)

blockSize: Dimensione blocco (0=carica tutto)

Valore di ritorno: Se esito positivo, array dei risultati che soddisfano i criteri di ricerca; altrimenti array vuoto

queryAll

Ricerca libera di documenti in Alfresco.
Parametri in ingresso:

docType: tipo di documento

codEnte: Codice Ente (Corrisponde alla cartella di Alfresco)

codAoo: Codice AOO (Corrisponde alla cartella di Alfresco)

aspects: array degli aspetti ricercati

props: array delle proprietà (chiave→valore) da ricercare

fullText: stringa per ricerca full text. Se valorizzata, cerca in tutti i metadati.

page: Pagina inizio ricerca (0=prima pagina)

blockSize: Dimensione blocco (0=carica tutto)

Valore di ritorno: Se esito positivo, array dei risultati che soddisfano i criteri di ricerca; altrimenti array vuoto

queryByUUID

Ricerca documento in Alfresco per chiave.
Parametri in ingresso:

uuid: chiave del documento su Alfresco

Valore di ritorno: Se esito positivo, documento che corrisponde all'UUID specificato; altrimenti array vuoto

saveCustomModel

Attualmente non gestito.

updateDocumentContent

(Metodo deprecato)
Aggiornamento metadati Alfresco.
Parametri in ingresso:

uuid: UUID documento

content: Contenuto del file

fileName: Nome file

mimeType: mime type (Es.: application/xml)

Valore di ritorno: -

updateDocumentMetadata

Aggiornamento metadati Alfresco.
Parametri in ingresso:

uuid: UUID documento

docType: tipo di documento

aspects: array degli aspetti presenti sul documento

props: array delle proprietà del documento

Valore di ritorno: -

version

Restituisce versione libreria.
Parametri in ingresso: -
Valore di ritorno: Array con i seguenti campi:

ESITO: 0=Nessun errore; >0 = Errore

MESSAGGIO: Se esito positivo, versione libreria; altrimenti, messaggio di errore

Esempi di utilizzo

Ricerca

$alfcityClient = new itaAlfcityClient();
$aspects = array();
$props = array(
'stato_flusso' => 1,
);
$result = $alfcityClient->query(DOC_TYPE, COD_ENTE, COD_AOO, $aspects, $props);
if ($alfcityClient->getErrCode() == 0 && $alfcityClient->getHttpStatus() == 200) {
Out::msgInfo("dump", print_r($result, true));
} else {
Out::msgStop("Errore", $alfcityClient->getErrCode() . ' - ' . $alfcityClient->getMessage());
}