diff --git a/.gitignore b/.gitignore
index d064173..fb47e97 100644
--- a/.gitignore
+++ b/.gitignore
@@ -2,6 +2,10 @@
pom.xml.versionsBackup
target
+# Maven Invoker
+build.log
+invoker-reports
+
# Eclipse
.project
.classpath
@@ -11,5 +15,6 @@ target
.factorypath
# Swagger Codegen
+src/gen
.swagger-codegen
.swagger-codegen-ignore
diff --git a/pom-release.xml b/pom-release.xml
new file mode 100644
index 0000000..41790ef
--- /dev/null
+++ b/pom-release.xml
@@ -0,0 +1,247 @@
+
+
+ 4.0.0
+
+ com.inteligr8.alfresco
+ acs-public-rest-api
+ 2.1-SNAPSHOT
+ pom
+
+ Alfresco Content Services ReST API for Java
+ An ACS API library for building REST API clients that support both the CXF and Jersey frameworks
+ https://bitbucket.org/inteligr8/acs-public-rest-api
+
+
+
+ GNU GENERAL PUBLIC LICENSE, Version 3, 29 June 2007
+ https://www.gnu.org/licenses/lgpl-3.0.txt
+
+
+
+
+ scm:git:https://bitbucket.org/inteligr8/acs-public-rest-api.git
+ scm:git:git@bitbucket.org:inteligr8/acs-public-rest-api.git
+ https://bitbucket.org/inteligr8/acs-public-rest-api
+
+
+ Inteligr8
+ https://www.inteligr8.com
+
+
+
+ brian.long
+ Brian Long
+ brian@inteligr8.com
+ https://twitter.com/brianmlong
+
+
+
+
+ UTF-8
+
+
+
+
+
+ maven-invoker-plugin
+ 3.3.0
+
+
+ clean
+ package
+
+ ${basedir}/invoker-reports
+ pom.xml
+ true
+
+
+
+ acs51
+ package
+ run
+
+
+ v51
+
+
+
+
+ acs52
+ package
+ run
+
+
+ v52
+
+
+
+
+ acs60
+ package
+ run
+
+
+ v60
+
+
+
+
+ acs61
+ package
+ run
+
+
+ v61
+
+
+
+
+ acs62
+ package
+ run
+
+
+ v62
+
+
+
+
+ acs70
+ package
+ run
+
+
+ v70
+
+
+
+
+ acs71
+ package
+ run
+
+
+ v71
+
+
+
+
+ acs72
+ package
+ run
+
+
+ v72
+
+
+
+
+
+
+ org.codehaus.mojo
+ build-helper-maven-plugin
+ 3.3.0
+
+
+ attach-artifacts
+ package
+ attach-artifact
+
+
+
+ ${project.build.directory}/${project.artifactId}-${project.version}-javadoc.jar
+ javadoc
+ jar
+
+
+ ${project.build.directory}/${project.artifactId}-${project.version}-sources.jar
+ sources
+ jar
+
+
+ ${project.build.directory}/${project.artifactId}-${project.version}-acs51.jar
+ acs51
+ jar
+
+
+ ${project.build.directory}/${project.artifactId}-${project.version}-acs52.jar
+ acs52
+ jar
+
+
+ ${project.build.directory}/${project.artifactId}-${project.version}-acs60.jar
+ acs60
+ jar
+
+
+ ${project.build.directory}/${project.artifactId}-${project.version}-acs61.jar
+ acs61
+ jar
+
+
+ ${project.build.directory}/${project.artifactId}-${project.version}-acs62.jar
+ acs62
+ jar
+
+
+ ${project.build.directory}/${project.artifactId}-${project.version}-acs70.jar
+ acs70
+ jar
+
+
+ ${project.build.directory}/${project.artifactId}-${project.version}-acs71.jar
+ acs71
+ jar
+
+
+ ${project.build.directory}/${project.artifactId}-${project.version}-acs72.jar
+ acs72
+ jar
+
+
+
+
+
+
+
+ maven-install-plugin
+
+ pom.xml
+
+
+
+
+
+
+
+ ossrh-release
+
+
+
+ maven-gpg-plugin
+
+
+ sign
+ verify
+ sign
+
+
+
+
+ org.sonatype.plugins
+ nexus-staging-maven-plugin
+ 1.6.13
+ true
+
+ ossrh
+ https://s01.oss.sonatype.org/
+ true
+
+
+
+
+
+
+
diff --git a/pom.xml b/pom.xml
index 0921d64..41a1678 100644
--- a/pom.xml
+++ b/pom.xml
@@ -2,10 +2,39 @@
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
4.0.0
+
com.inteligr8.alfrescoacs-public-rest-api
- 2.0-SNAPSHOT
+ 2.1-SNAPSHOT
+
Alfresco Content Services ReST API for Java
+ An ACS API library for building REST API clients that support both the CXF and Jersey frameworks
+ https://bitbucket.org/inteligr8/acs-public-rest-api
+
+
+
+ GNU GENERAL PUBLIC LICENSE, Version 3, 29 June 2007
+ https://www.gnu.org/licenses/lgpl-3.0.txt
+
+
+
+
+ scm:git:https://bitbucket.org/inteligr8/acs-public-rest-api.git
+ scm:git:git@bitbucket.org:inteligr8/acs-public-rest-api.git
+ https://bitbucket.org/inteligr8/acs-public-rest-api
+
+
+ Inteligr8
+ https://www.inteligr8.com
+
+
+
+ brian.long
+ Brian Long
+ brian@inteligr8.com
+ https://twitter.com/brianmlong
+
+ utf-8
@@ -13,16 +42,16 @@
8lines,vars,source
-
- http://localhost:8080/alfresco
- acs7com.inteligr8.alfresco.acs
+
+
+ false
+ false
+ false
+ false2.353.4.7
-
- false
@@ -63,6 +92,200 @@
+
+ maven-clean-plugin
+ 3.1.0
+
+
+
+ src/gen/java
+
+ com/inteligr8/alfresco/acs/**/*
+
+
+
+
+
+
+ org.apache.maven.plugins
+ maven-dependency-plugin
+ 3.3.0
+
+
+ download-api-explorer
+ generate-sources
+ unpack
+
+ org.alfresco:api-explorer:${alfresco.platform.version}:war
+ definitions/**/*
+
+
+
+
+
+ io.swagger
+ swagger-codegen-maven-plugin
+ 2.4.21
+
+ jaxrs-cxf-client
+
+ ${swagger.basePackage}.api
+ ${swagger.basePackage}.model
+ ${swagger.basePackage}.invoker
+ false
+ false
+ false
+ false
+
+
+
+ swagger-core-codegen
+ generate-sources
+
+ generate
+
+
+ ${project.build.directory}/dependency/definitions/alfresco-core.yaml
+
+
+
+ swagger-search-codegen
+ generate-sources
+
+ generate
+
+
+ ${api.search.disabled}
+ ${project.build.directory}/dependency/definitions/alfresco-search.yaml
+
+
+
+ swagger-auth-codegen
+ generate-sources
+
+ generate
+
+
+ ${api.auth.disabled}
+ ${project.build.directory}/dependency/definitions/alfresco-auth.yaml
+
+
+
+ swagger-discovery-codegen
+ generate-sources
+
+ generate
+
+
+ ${api.discovery.disabled}
+ ${project.build.directory}/dependency/definitions/alfresco-discovery.yaml
+
+
+
+ swagger-model-codegen
+ generate-sources
+
+ generate
+
+
+ ${api.model.disabled}
+ ${project.build.directory}/dependency/definitions/alfresco-model.yaml
+
+
+
+
+
+ com.inteligr8
+ regex-maven-plugin
+ 1.0.3
+
+
+ fix-baseUrl
+ generate-sources
+
+ replace-file
+
+
+
+
+ ${basedir}/src/gen/java/com/inteligr8/alfresco/acs/api
+ ${basedir}/src/gen/java/com/inteligr8/alfresco/acs/api
+
+
+ true
+
+
+ import org\.apache\.cxf\.jaxrs\.ext\.multipart\.\*;.*
+
+
+
+ (\*\*Core API\*\*[^@]*)@Path\("/"\)([^@]*)@Api\(value = "/"
+ $1@Path("/api/-default-/public/alfresco/versions/1")$2@Api(value = "/api/-default-/public/alfresco/versions/1"
+
+
+ (\*\*Search API\*\*[^@]*)@Path\("/"\)([^@]*)@Api\(value = "/"
+ $1@Path("/api/-default-/public/search/versions/1")$2@Api(value = "/api/-default-/public/search/versions/1"
+
+
+ (\*\*Model API\*\*[^@]*)@Path\("/"\)([^@]*)@Api\(value = "/"
+ $1@Path("/api/-default-/public/alfresco/versions/1")$2@Api(value = "/api/-default-/public/alfresco/versions/1"
+
+
+ (\*\*Authentication API\*\*[^@]*)@Path\("/"\)([^@]*)@Api\(value = "/"
+ $1@Path("/api/-default-/public/authentication/versions/1")$2@Api(value = "/api/-default-/public/authentication/versions/1"
+
+
+ (\*\*Discovery API\*\*[^@]*)@Path\("/"\)([^@]*)@Api\(value = "/"
+ $1@Path("/api")$2@Api(value = "/api"
+
+
+
+
+
+ add-ignoreUnknown
+ generate-sources
+
+ replace-file
+
+
+
+
+ ${basedir}/src/gen/java/com/inteligr8/alfresco/acs/model
+ ${basedir}/src/gen/java/com/inteligr8/alfresco/acs/model
+
+
+ true
+
+
+ (\npublic class [A-Za-z][A-Za-z0-9]* )
+ @com.fasterxml.jackson.annotation.JsonIgnoreProperties(ignoreUnknown = true)$1
+
+
+
+
+
+
+
+ net.revelc.code
+ impsort-maven-plugin
+ 1.6.2
+
+
+ organize-imports
+ process-sources
+ sort
+
+
+ ${basedir}/src/gen/java
+
+
+ **/*.java
+
+ true
+
+
+
+ org.codehaus.mojobuild-helper-maven-plugin
@@ -70,7 +293,7 @@
add-gensrc
- initialize
+ process-sourcesadd-source
@@ -88,6 +311,16 @@
${acs.platform.tag}
+
+ maven-source-plugin
+
+
+ source
+ package
+ jar-no-fork
+
+
+ maven-javadoc-plugin3.3.2
@@ -98,6 +331,7 @@
jarpublic
+ -Xdoclint:none
@@ -106,247 +340,324 @@
-
- swagger-codegen
+ acs51
+
+
+ acs
+ v51
+
+
- ${acs.baseUrl}/definitions
+ 5.1.0
+ acs51
+ true
+ true
+ true
+ true
+
+
+
+ acs52
+
+
+ acs
+ v52
+
+
+
+ 5.2.0
+ acs52
+ true
- maven-clean-plugin
- 3.1.0
-
-
-
- src/gen/java
-
- com/inteligr8/alfresco/acs/**/*
-
-
-
-
-
-
- com.googlecode.maven-download-plugin
- download-maven-plugin
- 1.6.3
+ org.codehaus.mojo
+ build-helper-maven-plugin
+ 3.2.0
- download-acs-core-defs
- generate-sources
+ add-acs70+-src
+ initialize
- wget
+ add-source
- ${acs.defs.baseUrl}/alfresco-core.yaml
- ${project.build.directory}/downloads
-
-
-
- download-acs-search-defs
- generate-sources
-
- wget
-
-
- ${acs.defs.baseUrl}/alfresco-search.yaml
- ${project.build.directory}/downloads
-
-
-
- download-acs-auth-defs
- generate-sources
-
- wget
-
-
- ${acs.defs.baseUrl}/alfresco-auth.yaml
- ${project.build.directory}/downloads
-
-
-
- download-acs-discovery-defs
- generate-sources
-
- wget
-
-
- ${acs.defs.baseUrl}/alfresco-discovery.yaml
- ${project.build.directory}/downloads
-
-
-
- download-acs-model-defs
- generate-sources
-
- wget
-
-
- ${acs.defs.baseUrl}/alfresco-model.yaml
- ${project.build.directory}/downloads
+
+ src/acs52+/java
+
+
+
+
+
+ acs60
+
+
+ acs
+ v60
+
+
+
+ 6.0.0-ea
+ acs60
+ true
+
+
+
- io.swagger
- swagger-codegen-maven-plugin
- 2.4.21
-
- jaxrs-cxf-client
-
- ${swagger.basePackage}.api
- ${swagger.basePackage}.model
- ${swagger.basePackage}.invoker
- false
- false
- false
- false
-
+ org.codehaus.mojo
+ build-helper-maven-plugin
+ 3.2.0
- swagger-core-codegen
- generate-sources
+ add-acs70+-src
+ initialize
- generate
+ add-source
- ${project.build.directory}/downloads/alfresco-core.yaml
-
-
-
- swagger-search-codegen
- generate-sources
-
- generate
-
-
- ${project.build.directory}/downloads/alfresco-search.yaml
-
-
-
- swagger-auth-codegen
- generate-sources
-
- generate
-
-
- ${project.build.directory}/downloads/alfresco-auth.yaml
-
-
-
- swagger-discovery-codegen
- generate-sources
-
- generate
-
-
- ${project.build.directory}/downloads/alfresco-discovery.yaml
-
-
-
- swagger-model-codegen
- generate-sources
-
- generate
-
-
- ${api.model.disabled}
- ${project.build.directory}/downloads/alfresco-model.yaml
+
+ src/acs52+/java
+ src/acs60+/java
+
+
+
+
+
+ acs61
+
+
+ acs
+ v61
+
+
+
+ 6.1.0
+ acs61
+ true
+
+
+
- com.inteligr8
- regex-maven-plugin
- 1.0.3
+ org.codehaus.mojo
+ build-helper-maven-plugin
+ 3.2.0
- fix-baseUrl
- generate-sources
+ add-acs70+-src
+ initialize
- replace-file
+ add-source
-
-
- ${basedir}/src/gen/java/com/inteligr8/alfresco/acs/api
- ${basedir}/src/gen/java/com/inteligr8/alfresco/acs/api
-
-
- true
-
-
- import org\.apache\.cxf\.jaxrs\.ext\.multipart\.\*;.*
-
-
-
- (\*\*Core API\*\*[^@]*)@Path\("/"\)([^@]*)@Api\(value = "/"
- $1@Path("/api/-default-/public/alfresco/versions/1")$2@Api(value = "/api/-default-/public/alfresco/versions/1"
-
-
- (\*\*Search API\*\*[^@]*)@Path\("/"\)([^@]*)@Api\(value = "/"
- $1@Path("/api/-default-/public/search/versions/1")$2@Api(value = "/api/-default-/public/search/versions/1"
-
-
- (\*\*Model API\*\*[^@]*)@Path\("/"\)([^@]*)@Api\(value = "/"
- $1@Path("/api/-default-/public/alfresco/versions/1")$2@Api(value = "/api/-default-/public/alfresco/versions/1"
-
-
- (\*\*Authentication API\*\*[^@]*)@Path\("/"\)([^@]*)@Api\(value = "/"
- $1@Path("/api/-default-/public/authentication/versions/1")$2@Api(value = "/api/-default-/public/authentication/versions/1"
-
-
- (\*\*Discovery API\*\*[^@]*)@Path\("/"\)([^@]*)@Api\(value = "/"
- $1@Path("/api")$2@Api(value = "/api"
-
-
-
-
-
- add-ignoreUnknown
- generate-sources
-
- replace-file
-
-
-
-
- ${basedir}/src/gen/java/com/inteligr8/alfresco/acs/model
- ${basedir}/src/gen/java/com/inteligr8/alfresco/acs/model
-
-
- true
-
-
- (\npublic class [A-Za-z][A-Za-z0-9]* \{)
- @com.fasterxml.jackson.annotation.JsonIgnoreProperties(ignoreUnknown = true)$1
-
-
+
+ src/acs52+/java
+ src/acs60+/java
+ src/acs61+/java
+
+
+
+
+
+ acs62
+
+
+ acs
+ v62
+
+
+
+ 6.2.0
+ acs62
+ true
+
+
+
- net.revelc.code
- impsort-maven-plugin
- 1.6.2
+ org.codehaus.mojo
+ build-helper-maven-plugin
+ 3.2.0
- organize-imports
- process-sources
- sort
+ add-acs70+-src
+ initialize
+
+ add-source
+
-
- ${basedir}/src/gen/java
-
-
- **/*.java
-
- true
+
+ src/acs52+/java
+ src/acs60+/java
+ src/acs61+/java
+
+
+
+
+
+
+
+
+
+ acs70
+
+
+ acs
+ v70
+
+
+
+ 7.0.0
+ acs70
+
+
+
+
+ org.codehaus.mojo
+ build-helper-maven-plugin
+ 3.2.0
+
+
+ add-acs70+-src
+ initialize
+
+ add-source
+
+
+
+ src/acs52+/java
+ src/acs60+/java
+ src/acs61+/java
+ src/acs70+/java
+
+
+
+
+
+
+
+
+
+ acs71
+
+
+ acs
+ v71
+
+
+
+ 7.1.0
+ acs71
+
+
+
+
+ org.codehaus.mojo
+ build-helper-maven-plugin
+ 3.2.0
+
+
+ add-acs70+-src
+ initialize
+
+ add-source
+
+
+
+ src/acs52+/java
+ src/acs60+/java
+ src/acs61+/java
+ src/acs70+/java
+
+
+
+
+
+
+
+
+
+ acs72
+
+
+ acs
+ v72
+
+
+
+ 7.2.0
+ acs72
+
+
+
+
+ org.codehaus.mojo
+ build-helper-maven-plugin
+ 3.2.0
+
+
+ add-acs70+-src
+ initialize
+
+ add-source
+
+
+
+ src/acs52+/java
+ src/acs60+/java
+ src/acs61+/java
+ src/acs70+/java
+
+
+
+
+
+
+
+
+
+ acsDefault
+
+
+ !acs
+
+
+
+ 7.2.0
+ acs72
+
+
+
+
+ org.codehaus.mojo
+ build-helper-maven-plugin
+ 3.2.0
+
+
+ add-acs70+-src
+ initialize
+
+ add-source
+
+
+
+ src/acs52+/java
+ src/acs60+/java
+ src/acs61+/java
+ src/acs70+/java
+
@@ -355,19 +666,11 @@
-
+
- inteligr8-releases
- https://repos.inteligr8.com/nexus/repository/inteligr8-public
- true
- false
-
-
- inteligr8-snapshots
- https://repos.inteligr8.com/nexus/repository/inteligr8-snapshots
- false
- true
+ alfresco-public
+ https://artifacts.alfresco.com/nexus/content/groups/public
@@ -376,20 +679,5 @@
mulesoft-releaseshttps://repository.mulesoft.org/releases
-
- inteligr8-public
- https://repos.inteligr8.com/nexus/repository/inteligr8-public
-
-
-
-
- inteligr8-releases
- https://repos.inteligr8.com/nexus/repository/inteligr8-public
-
-
- inteligr8-snapshots
- https://repos.inteligr8.com/nexus/repository/inteligr8-snapshots
-
-
diff --git a/src/main/java/com/inteligr8/alfresco/acs/AcsPublicRestApi.java b/src/acs52+/java/com/inteligr8/alfresco/acs/Acs52PublicRestApi.java
similarity index 75%
rename from src/main/java/com/inteligr8/alfresco/acs/AcsPublicRestApi.java
rename to src/acs52+/java/com/inteligr8/alfresco/acs/Acs52PublicRestApi.java
index 5de7522..9ed18dd 100644
--- a/src/main/java/com/inteligr8/alfresco/acs/AcsPublicRestApi.java
+++ b/src/acs52+/java/com/inteligr8/alfresco/acs/Acs52PublicRestApi.java
@@ -1,20 +1,28 @@
+/*
+ * This program is free software: you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or (at your
+ * option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
+ * more details.
+ *
+ * You should have received a copy of the GNU General Public License along
+ * with this program. If not, see .
+ */
package com.inteligr8.alfresco.acs;
-import com.inteligr8.alfresco.acs.api.ActionsApi;
import com.inteligr8.alfresco.acs.api.ActivitiesApi;
-import com.inteligr8.alfresco.acs.api.AspectsApi;
-import com.inteligr8.alfresco.acs.api.AuditApi;
import com.inteligr8.alfresco.acs.api.AuthenticationApi;
import com.inteligr8.alfresco.acs.api.CommentsApi;
import com.inteligr8.alfresco.acs.api.DiscoveryApi;
-import com.inteligr8.alfresco.acs.api.DownloadsApi;
import com.inteligr8.alfresco.acs.api.FavoritesApi;
-import com.inteligr8.alfresco.acs.api.GroupsApi;
import com.inteligr8.alfresco.acs.api.NetworksApi;
import com.inteligr8.alfresco.acs.api.NodesApi;
import com.inteligr8.alfresco.acs.api.PeopleApi;
import com.inteligr8.alfresco.acs.api.PreferencesApi;
-import com.inteligr8.alfresco.acs.api.ProbesApi;
import com.inteligr8.alfresco.acs.api.QueriesApi;
import com.inteligr8.alfresco.acs.api.RatingsApi;
import com.inteligr8.alfresco.acs.api.RenditionsApi;
@@ -23,7 +31,6 @@ import com.inteligr8.alfresco.acs.api.SharedLinksApi;
import com.inteligr8.alfresco.acs.api.SitesApi;
import com.inteligr8.alfresco.acs.api.TagsApi;
import com.inteligr8.alfresco.acs.api.TrashcanApi;
-import com.inteligr8.alfresco.acs.api.TypesApi;
import com.inteligr8.alfresco.acs.api.V0Api;
import com.inteligr8.alfresco.acs.api.VersionsApi;
@@ -33,26 +40,14 @@ import com.inteligr8.alfresco.acs.api.VersionsApi;
*
* @author brian@inteligr8.com
*/
-public interface AcsPublicRestApi {
+public interface Acs52PublicRestApi extends Acs51PublicRestApi {
T getApi(Class apiClass);
- default ActionsApi getActionsApi() {
- return this.getApi(ActionsApi.class);
- }
-
default ActivitiesApi getActivitiesApi() {
return this.getApi(ActivitiesApi.class);
}
- default AspectsApi getAspectsApi() {
- return this.getApi(AspectsApi.class);
- }
-
- default AuditApi getAuditApi() {
- return this.getApi(AuditApi.class);
- }
-
default AuthenticationApi getAuthenticationApi() {
return this.getApi(AuthenticationApi.class);
}
@@ -65,18 +60,10 @@ public interface AcsPublicRestApi {
return this.getApi(DiscoveryApi.class);
}
- default DownloadsApi getDownloadsApi() {
- return this.getApi(DownloadsApi.class);
- }
-
default FavoritesApi getFavoritesApi() {
return this.getApi(FavoritesApi.class);
}
- default GroupsApi getGroupsApi() {
- return this.getApi(GroupsApi.class);
- }
-
default NetworksApi getNetworksApi() {
return this.getApi(NetworksApi.class);
}
@@ -93,10 +80,6 @@ public interface AcsPublicRestApi {
return this.getApi(PreferencesApi.class);
}
- default ProbesApi getProbesApi() {
- return this.getApi(ProbesApi.class);
- }
-
default QueriesApi getQueriesApi() {
return this.getApi(QueriesApi.class);
}
@@ -129,10 +112,6 @@ public interface AcsPublicRestApi {
return this.getApi(TrashcanApi.class);
}
- default TypesApi getTypesApi() {
- return this.getApi(TypesApi.class);
- }
-
default VersionsApi getVersionsApi() {
return this.getApi(VersionsApi.class);
}
diff --git a/src/acs52+/java/com/inteligr8/alfresco/acs/Acs52PublicRestCxfApi.java b/src/acs52+/java/com/inteligr8/alfresco/acs/Acs52PublicRestCxfApi.java
new file mode 100644
index 0000000..fe339d8
--- /dev/null
+++ b/src/acs52+/java/com/inteligr8/alfresco/acs/Acs52PublicRestCxfApi.java
@@ -0,0 +1,32 @@
+/*
+ * This program is free software: you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or (at your
+ * option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
+ * more details.
+ *
+ * You should have received a copy of the GNU General Public License along
+ * with this program. If not, see .
+ */
+package com.inteligr8.alfresco.acs;
+
+import com.inteligr8.alfresco.acs.api.NodesCxfApi;
+
+/**
+ * This interface appends Apache CXF implementation specific methods to the
+ * JAX-RS API of the ACS Public ReST API. This is due to a lack of multi-part
+ * in the JAX-RS specification.
+ *
+ * @author brian@inteligr8.com
+ */
+public interface Acs52PublicRestCxfApi extends Acs52PublicRestApi {
+
+ default NodesCxfApi getNodesExtApi() {
+ return this.getApi(NodesCxfApi.class);
+ }
+
+}
diff --git a/src/acs52+/java/com/inteligr8/alfresco/acs/Acs52PublicRestJerseyApi.java b/src/acs52+/java/com/inteligr8/alfresco/acs/Acs52PublicRestJerseyApi.java
new file mode 100644
index 0000000..599b808
--- /dev/null
+++ b/src/acs52+/java/com/inteligr8/alfresco/acs/Acs52PublicRestJerseyApi.java
@@ -0,0 +1,32 @@
+/*
+ * This program is free software: you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or (at your
+ * option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
+ * more details.
+ *
+ * You should have received a copy of the GNU General Public License along
+ * with this program. If not, see .
+ */
+package com.inteligr8.alfresco.acs;
+
+import com.inteligr8.alfresco.acs.api.NodesJerseyApi;
+
+/**
+ * This interface appends Jersey implementation specific methods to the
+ * JAX-RS API of the ACS Public ReST API. This is due to a lack of multi-part
+ * in the JAX-RS specification.
+ *
+ * @author brian@inteligr8.com
+ */
+public interface Acs52PublicRestJerseyApi extends Acs52PublicRestApi {
+
+ default NodesJerseyApi getNodesExtApi() {
+ return this.getApi(NodesJerseyApi.class);
+ }
+
+}
diff --git a/src/main/java/com/inteligr8/alfresco/acs/api/NodesCxfApi.java b/src/acs52+/java/com/inteligr8/alfresco/acs/api/NodesCxfApi.java
similarity index 86%
rename from src/main/java/com/inteligr8/alfresco/acs/api/NodesCxfApi.java
rename to src/acs52+/java/com/inteligr8/alfresco/acs/api/NodesCxfApi.java
index 3221254..b1e1043 100644
--- a/src/main/java/com/inteligr8/alfresco/acs/api/NodesCxfApi.java
+++ b/src/acs52+/java/com/inteligr8/alfresco/acs/api/NodesCxfApi.java
@@ -1,3 +1,17 @@
+/*
+ * This program is free software: you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or (at your
+ * option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
+ * more details.
+ *
+ * You should have received a copy of the GNU General Public License along
+ * with this program. If not, see .
+ */
package com.inteligr8.alfresco.acs.api;
import javax.ws.rs.Consumes;
diff --git a/src/main/java/com/inteligr8/alfresco/acs/api/NodesJerseyApi.java b/src/acs52+/java/com/inteligr8/alfresco/acs/api/NodesJerseyApi.java
similarity index 77%
rename from src/main/java/com/inteligr8/alfresco/acs/api/NodesJerseyApi.java
rename to src/acs52+/java/com/inteligr8/alfresco/acs/api/NodesJerseyApi.java
index a2e492e..c4d7f0f 100644
--- a/src/main/java/com/inteligr8/alfresco/acs/api/NodesJerseyApi.java
+++ b/src/acs52+/java/com/inteligr8/alfresco/acs/api/NodesJerseyApi.java
@@ -1,3 +1,17 @@
+/*
+ * This program is free software: you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or (at your
+ * option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
+ * more details.
+ *
+ * You should have received a copy of the GNU General Public License along
+ * with this program. If not, see .
+ */
package com.inteligr8.alfresco.acs.api;
import javax.ws.rs.Consumes;
diff --git a/src/main/java/com/inteligr8/alfresco/acs/model/NodeBodyCreateMultipartCxf.java b/src/acs52+/java/com/inteligr8/alfresco/acs/model/NodeBodyCreateMultipartCxf.java
similarity index 79%
rename from src/main/java/com/inteligr8/alfresco/acs/model/NodeBodyCreateMultipartCxf.java
rename to src/acs52+/java/com/inteligr8/alfresco/acs/model/NodeBodyCreateMultipartCxf.java
index 663c668..ac9714d 100644
--- a/src/main/java/com/inteligr8/alfresco/acs/model/NodeBodyCreateMultipartCxf.java
+++ b/src/acs52+/java/com/inteligr8/alfresco/acs/model/NodeBodyCreateMultipartCxf.java
@@ -1,3 +1,17 @@
+/*
+ * This program is free software: you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or (at your
+ * option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
+ * more details.
+ *
+ * You should have received a copy of the GNU General Public License along
+ * with this program. If not, see .
+ */
package com.inteligr8.alfresco.acs.model;
import java.io.ByteArrayInputStream;
@@ -18,6 +32,11 @@ import org.slf4j.LoggerFactory;
import com.fasterxml.jackson.databind.ObjectMapper;
+/**
+ * A CXF utility implementation of the CXF MultipartBody.
+ *
+ * @author brian@inteligr8.com
+ */
public class NodeBodyCreateMultipartCxf extends MultipartBody {
private static final Logger logger = LoggerFactory.getLogger(NodeBodyCreateMultipartCxf.class);
@@ -71,9 +90,8 @@ public class NodeBodyCreateMultipartCxf extends MultipartBody {
if (nodeBody.getAspectNames() != null && !nodeBody.getAspectNames().isEmpty())
logger.warn("The ACS Public REST API does not support the explicit inclusion of aspects while creating content");
if (nodeBody.getProperties() != null) {
- @SuppressWarnings("unchecked")
- Map props = (Map)nodeBody.getProperties();
- for (Entry prop : props.entrySet()) {
+ Map props = (Map)nodeBody.getProperties();
+ for (Entry prop : props.entrySet()) {
if (prop.getValue() != null) {
// FIXME convert dates as ACS would expect them to be formatted
atts.add(toAttachment(prop.getKey(), prop.getValue().toString()));
diff --git a/src/main/java/com/inteligr8/alfresco/acs/model/NodeBodyCreateMultipartJersey.java b/src/acs52+/java/com/inteligr8/alfresco/acs/model/NodeBodyCreateMultipartJersey.java
similarity index 78%
rename from src/main/java/com/inteligr8/alfresco/acs/model/NodeBodyCreateMultipartJersey.java
rename to src/acs52+/java/com/inteligr8/alfresco/acs/model/NodeBodyCreateMultipartJersey.java
index 4411293..7ce3c87 100644
--- a/src/main/java/com/inteligr8/alfresco/acs/model/NodeBodyCreateMultipartJersey.java
+++ b/src/acs52+/java/com/inteligr8/alfresco/acs/model/NodeBodyCreateMultipartJersey.java
@@ -1,3 +1,17 @@
+/*
+ * This program is free software: you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or (at your
+ * option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
+ * more details.
+ *
+ * You should have received a copy of the GNU General Public License along
+ * with this program. If not, see .
+ */
package com.inteligr8.alfresco.acs.model;
import java.io.IOException;
@@ -19,6 +33,11 @@ import org.slf4j.LoggerFactory;
import com.fasterxml.jackson.databind.ObjectMapper;
+/**
+ * A Jersey utility implementation of the Jersey FormDataMultiPart.
+ *
+ * @author brian@inteligr8.com
+ */
public class NodeBodyCreateMultipartJersey extends FormDataMultiPart {
private static final Logger logger = LoggerFactory.getLogger(NodeBodyCreateMultipartJersey.class);
@@ -67,9 +86,8 @@ public class NodeBodyCreateMultipartJersey extends FormDataMultiPart {
if (nodeBody.getAspectNames() != null && !nodeBody.getAspectNames().isEmpty())
logger.warn("The ACS Public REST API does not support the explicit inclusion of aspects while creating content");
if (nodeBody.getProperties() != null) {
- @SuppressWarnings("unchecked")
- Map props = (Map)nodeBody.getProperties();
- for (Entry prop : props.entrySet()) {
+ Map props = (Map)nodeBody.getProperties();
+ for (Entry prop : props.entrySet()) {
if (prop.getValue() != null) {
// FIXME convert dates as ACS would expect them to be formatted
fields.add(new FormDataBodyPart(prop.getKey(), prop.getValue().toString()));
diff --git a/src/acs60+/java/com/inteligr8/alfresco/acs/Acs60PublicRestApi.java b/src/acs60+/java/com/inteligr8/alfresco/acs/Acs60PublicRestApi.java
new file mode 100644
index 0000000..d0d8990
--- /dev/null
+++ b/src/acs60+/java/com/inteligr8/alfresco/acs/Acs60PublicRestApi.java
@@ -0,0 +1,41 @@
+/*
+ * This program is free software: you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or (at your
+ * option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
+ * more details.
+ *
+ * You should have received a copy of the GNU General Public License along
+ * with this program. If not, see .
+ */
+package com.inteligr8.alfresco.acs;
+
+import com.inteligr8.alfresco.acs.api.AuditApi;
+import com.inteligr8.alfresco.acs.api.DownloadsApi;
+import com.inteligr8.alfresco.acs.api.GroupsApi;
+
+/**
+ * This interface consolidates the JAX-RS APIs available in the ACS Public
+ * ReST API.
+ *
+ * @author brian@inteligr8.com
+ */
+public interface Acs60PublicRestApi extends Acs52PublicRestApi {
+
+ default AuditApi getAuditApi() {
+ return this.getApi(AuditApi.class);
+ }
+
+ default DownloadsApi getDownloadsApi() {
+ return this.getApi(DownloadsApi.class);
+ }
+
+ default GroupsApi getGroupsApi() {
+ return this.getApi(GroupsApi.class);
+ }
+
+}
diff --git a/src/acs61+/java/com/inteligr8/alfresco/acs/Acs61PublicRestApi.java b/src/acs61+/java/com/inteligr8/alfresco/acs/Acs61PublicRestApi.java
new file mode 100644
index 0000000..a710dda
--- /dev/null
+++ b/src/acs61+/java/com/inteligr8/alfresco/acs/Acs61PublicRestApi.java
@@ -0,0 +1,36 @@
+/*
+ * This program is free software: you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or (at your
+ * option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
+ * more details.
+ *
+ * You should have received a copy of the GNU General Public License along
+ * with this program. If not, see .
+ */
+package com.inteligr8.alfresco.acs;
+
+import com.inteligr8.alfresco.acs.api.ActionsApi;
+import com.inteligr8.alfresco.acs.api.ProbesApi;
+
+/**
+ * This interface consolidates the JAX-RS APIs available in the ACS Public
+ * ReST API.
+ *
+ * @author brian@inteligr8.com
+ */
+public interface Acs61PublicRestApi extends Acs60PublicRestApi {
+
+ default ActionsApi getActionsApi() {
+ return this.getApi(ActionsApi.class);
+ }
+
+ default ProbesApi getProbesApi() {
+ return this.getApi(ProbesApi.class);
+ }
+
+}
diff --git a/src/acs70+/java/com/inteligr8/alfresco/acs/Acs70PublicRestApi.java b/src/acs70+/java/com/inteligr8/alfresco/acs/Acs70PublicRestApi.java
new file mode 100644
index 0000000..ba52d44
--- /dev/null
+++ b/src/acs70+/java/com/inteligr8/alfresco/acs/Acs70PublicRestApi.java
@@ -0,0 +1,36 @@
+/*
+ * This program is free software: you can redistribute it and/or modify it
+ * under the terms of the GNU Lesser General Public License as published by
+ * the Free Software Foundation, either version 3 of the License, or (at your
+ * option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
+ * more details.
+ *
+ * You should have received a copy of the GNU General Public License along
+ * with this program. If not, see .
+ */
+package com.inteligr8.alfresco.acs;
+
+import com.inteligr8.alfresco.acs.api.AspectsApi;
+import com.inteligr8.alfresco.acs.api.TypesApi;
+
+/**
+ * This interface consolidates the JAX-RS APIs available in the ACS Public
+ * ReST API.
+ *
+ * @author brian@inteligr8.com
+ */
+public interface Acs70PublicRestApi extends Acs61PublicRestApi {
+
+ default AspectsApi getAspectsApi() {
+ return this.getApi(AspectsApi.class);
+ }
+
+ default TypesApi getTypesApi() {
+ return this.getApi(TypesApi.class);
+ }
+
+}
diff --git a/src/gen/java/com/inteligr8/alfresco/acs/api/ActionsApi.java b/src/gen/java/com/inteligr8/alfresco/acs/api/ActionsApi.java
deleted file mode 100644
index 0e287bb..0000000
--- a/src/gen/java/com/inteligr8/alfresco/acs/api/ActionsApi.java
+++ /dev/null
@@ -1,99 +0,0 @@
-package com.inteligr8.alfresco.acs.api;
-
-import com.inteligr8.alfresco.acs.model.ActionBodyExec;
-import com.inteligr8.alfresco.acs.model.ActionDefinitionEntry;
-import com.inteligr8.alfresco.acs.model.ActionDefinitionList;
-import com.inteligr8.alfresco.acs.model.ActionExecResultEntry;
-import com.inteligr8.alfresco.acs.model.Error;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import io.swagger.annotations.ApiResponse;
-import io.swagger.annotations.ApiResponses;
-import java.util.List;
-import javax.ws.rs.*;
-
-/**
- * Alfresco Content Services REST API
- *
- *
**Core API** Provides access to the core features of Alfresco Content Services.
- *
- */
-@Path("/api/-default-/public/alfresco/versions/1")
-@Api(value = "/api/-default-/public/alfresco/versions/1", description = "")
-public interface ActionsApi {
-
- /**
- * Retrieve the details of an action definition
- *
- * **Note:** this endpoint is available in Alfresco 5.2 and newer versions. Retrieve the details of the action denoted by **actionDefinitionId**.
- *
- */
- @GET
- @Path("/action-definitions/{actionDefinitionId}")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "Retrieve the details of an action definition", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 200, message = "Successful response", response = ActionDefinitionEntry.class),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 404, message = "**actionDefinitionId** does not exist "),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public ActionDefinitionEntry actionDetails(@PathParam("actionDefinitionId") String actionDefinitionId);
-
- /**
- * Execute an action
- *
- * **Note:** this endpoint is available in Alfresco 5.2 and newer versions. Executes an action An action may be executed against a node specified by **targetId**. For example: ``` { \"actionDefinitionId\": \"copy\", \"targetId\": \"4c4b3c43-f18b-43ff-af84-751f16f1ddfd\", \"params\": { \"destination-folder\": \"34219f79-66fa-4ebf-b371-118598af898c\" } } ``` Performing a POST with the request body shown above will result in the node identified by ```targetId``` being copied to the destination folder specified in the ```params``` object by the key ```destination-folder```. **targetId** is optional, however, currently **targetId** must be a valid node ID. In the future, actions may be executed against different entity types or executed without the need for the context of an entity. Parameters supplied to the action within the ```params``` object will be converted to the expected type, where possible using the DefaultTypeConverter class. In addition: * Node IDs may be supplied in their short form (implicit workspace://SpacesStore prefix) * Aspect names may be supplied using their short form, e.g. cm:versionable or cm:auditable In this example, we add the aspect ```cm:versionable``` to a node using the QName resolution mentioned above: ``` { \"actionDefinitionId\": \"add-features\", \"targetId\": \"16349e3f-2977-44d1-93f2-73c12b8083b5\", \"params\": { \"aspect-name\": \"cm:versionable\" } } ``` The ```actionDefinitionId``` is the ```id``` of an action definition as returned by the _list actions_ operations (e.g. GET /action-definitions). The action will be executed **asynchronously** with a `202` HTTP response signifying that the request has been accepted successfully. The response body contains the unique ID of the action pending execution. The ID may be used, for example to correlate an execution with output in the server logs.
- *
- */
- @POST
- @Path("/action-executions")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "Execute an action", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 202, message = "Action execution request accepted and pending execution. ", response = ActionExecResultEntry.class),
- @ApiResponse(code = 400, message = "Invalid parameter: **actionDefinitionId** missing but required by the action "),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 404, message = "**actionDefinitionId** or **targetId** does not exist "),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public ActionExecResultEntry actionExec(ActionBodyExec actionBodyExec);
-
- /**
- * Retrieve list of available actions
- *
- * **Note:** this endpoint is available in Alfresco 5.2.2 and newer versions. Gets a list of all available actions The default sort order for the returned list is for actions to be sorted by ascending name. You can override the default by using the **orderBy** parameter. You can use any of the following fields to order the results: * name * title
- *
- */
- @GET
- @Path("/action-definitions")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "Retrieve list of available actions", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 200, message = "Successful response", response = ActionDefinitionList.class),
- @ApiResponse(code = 400, message = "Invalid parameter: value of **maxItems**, **skipCount** or **orderBy** is invalid "),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public ActionDefinitionList listActions(@QueryParam("skipCount")@DefaultValue("0") Integer skipCount, @QueryParam("maxItems")@DefaultValue("100") Integer maxItems, @QueryParam("orderBy")List orderBy, @QueryParam("fields")List fields);
-
- /**
- * Retrieve actions for a node
- *
- * **Note:** this endpoint is available in Alfresco 5.2 and newer versions. Retrieve the list of actions that may be executed against the given **nodeId**. The default sort order for the returned list is for actions to be sorted by ascending name. You can override the default by using the **orderBy** parameter. You can use any of the following fields to order the results: * name * title
- *
- */
- @GET
- @Path("/nodes/{nodeId}/action-definitions")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "Retrieve actions for a node", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 200, message = "Successful response", response = ActionDefinitionList.class),
- @ApiResponse(code = 400, message = "Invalid parameter: value of **maxItems**, **skipCount** or **orderBy** is invalid "),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 404, message = "**nodeId** does not exist "),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public ActionDefinitionList nodeActions(@PathParam("nodeId") String nodeId, @QueryParam("skipCount")@DefaultValue("0") Integer skipCount, @QueryParam("maxItems")@DefaultValue("100") Integer maxItems, @QueryParam("orderBy")List orderBy, @QueryParam("fields")List fields);
-}
-
diff --git a/src/gen/java/com/inteligr8/alfresco/acs/api/ActivitiesApi.java b/src/gen/java/com/inteligr8/alfresco/acs/api/ActivitiesApi.java
deleted file mode 100644
index 0f5c5bf..0000000
--- a/src/gen/java/com/inteligr8/alfresco/acs/api/ActivitiesApi.java
+++ /dev/null
@@ -1,42 +0,0 @@
-package com.inteligr8.alfresco.acs.api;
-
-import com.inteligr8.alfresco.acs.model.ActivityPaging;
-import com.inteligr8.alfresco.acs.model.Error;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import io.swagger.annotations.ApiResponse;
-import io.swagger.annotations.ApiResponses;
-import java.util.List;
-import javax.ws.rs.*;
-
-/**
- * Alfresco Content Services REST API
- *
- *
**Core API** Provides access to the core features of Alfresco Content Services.
- *
- */
-@Path("/api/-default-/public/alfresco/versions/1")
-@Api(value = "/api/-default-/public/alfresco/versions/1", description = "")
-public interface ActivitiesApi {
-
- /**
- * List activities
- *
- * Gets a list of activities for person **personId**. You can use the `-me-` string in place of `<personId>` to specify the currently authenticated user.
- *
- */
- @GET
- @Path("/people/{personId}/activities")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "List activities", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 200, message = "Successful response", response = ActivityPaging.class),
- @ApiResponse(code = 400, message = "Invalid parameter: value of **maxItems**, **skipCount**, or **who** is invalid "),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 403, message = "Current user does not have access to the activities for **personId**"),
- @ApiResponse(code = 404, message = "**personId** or **siteId** does not exist "),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public ActivityPaging listActivitiesForPerson(@PathParam("personId") String personId, @QueryParam("skipCount")@DefaultValue("0") Integer skipCount, @QueryParam("maxItems")@DefaultValue("100") Integer maxItems, @QueryParam("who")String who, @QueryParam("siteId")String siteId, @QueryParam("fields")List fields);
-}
-
diff --git a/src/gen/java/com/inteligr8/alfresco/acs/api/AspectsApi.java b/src/gen/java/com/inteligr8/alfresco/acs/api/AspectsApi.java
deleted file mode 100644
index 5f8037a..0000000
--- a/src/gen/java/com/inteligr8/alfresco/acs/api/AspectsApi.java
+++ /dev/null
@@ -1,59 +0,0 @@
-package com.inteligr8.alfresco.acs.api;
-
-import com.inteligr8.alfresco.acs.model.AspectEntry;
-import com.inteligr8.alfresco.acs.model.AspectPaging;
-import com.inteligr8.alfresco.acs.model.Error;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import io.swagger.annotations.ApiResponse;
-import io.swagger.annotations.ApiResponses;
-import java.util.List;
-import javax.ws.rs.*;
-
-/**
- * Alfresco Content Services REST API
- *
- *
**Core API** Provides access to the core features of Alfresco Content Services.
- *
- */
-@Path("/api/-default-/public/alfresco/versions/1")
-@Api(value = "/api/-default-/public/alfresco/versions/1", description = "")
-public interface AuditApi {
-
- /**
- * Permanently delete audit entries for an audit application
- *
- * **Note:** this endpoint is available in Alfresco 5.2.2 and newer versions. Permanently delete audit entries for an audit application **auditApplicationId**. The **where** clause must be specified, either with an inclusive time period or for an inclusive range of ids. The delete is within the context of the given audit application. For example: * ```where=(createdAt BETWEEN ('2017-06-02T12:13:51.593+01:00' , '2017-06-04T10:05:16.536+01:00')``` * ```where=(id BETWEEN ('1234', '4321')``` You must have admin rights to delete audit information.
- *
- */
- @DELETE
- @Path("/audit-applications/{auditApplicationId}/audit-entries")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "Permanently delete audit entries for an audit application", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 204, message = "Successful response"),
- @ApiResponse(code = 400, message = "Invalid parameter: **auditApplicationId** is not a valid format or invalid **where** "),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 403, message = "Current user does not have permission to delete audit information"),
- @ApiResponse(code = 404, message = "**auditApplicationId** does not exist "),
- @ApiResponse(code = 501, message = "Audit is disabled for the system"),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public void deleteAuditEntriesForAuditApp(@PathParam("auditApplicationId") String auditApplicationId, @QueryParam("where")String where);
-
- /**
- * Permanently delete an audit entry
- *
- * **Note:** this endpoint is available in Alfresco 5.2.2 and newer versions. Permanently delete a single audit entry **auditEntryId**. You must have admin rights to delete audit information.
- *
- */
- @DELETE
- @Path("/audit-applications/{auditApplicationId}/audit-entries/{auditEntryId}")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "Permanently delete an audit entry", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 204, message = "Successful response"),
- @ApiResponse(code = 400, message = "Invalid parameter: **auditApplicationId** or **auditEntryId** is not a valid format "),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 403, message = "Current user does not have permission to delete audit information"),
- @ApiResponse(code = 404, message = "**auditApplicationId** or **auditEntryId** does not exist "),
- @ApiResponse(code = 501, message = "Audit is disabled for the system"),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public void deleteAuditEntry(@PathParam("auditApplicationId") String auditApplicationId, @PathParam("auditEntryId") String auditEntryId);
-
- /**
- * Get audit application info
- *
- * **Note:** this endpoint is available in Alfresco 5.2.2 and newer versions. Get status of an audit application **auditApplicationId**. You must have admin rights to retrieve audit information. You can use the **include** parameter to return the minimum and/or maximum audit record id for the application.
- *
- */
- @GET
- @Path("/audit-applications/{auditApplicationId}")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "Get audit application info", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 200, message = "Successful response", response = AuditApp.class),
- @ApiResponse(code = 400, message = "Invalid parameter: invalid **auditApplicationId** "),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 403, message = "User does not have permission to retrieve audit information"),
- @ApiResponse(code = 404, message = "**applicationId** does not exist "),
- @ApiResponse(code = 501, message = "Audit is disabled for the system"),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public AuditApp getAuditApp(@PathParam("auditApplicationId") String auditApplicationId, @QueryParam("fields")List fields, @QueryParam("include")List include);
-
- /**
- * Get audit entry
- *
- * **Note:** this endpoint is available in Alfresco 5.2.2 and newer versions. Gets audit entry **auditEntryId**. You must have admin rights to access audit information.
- *
- */
- @GET
- @Path("/audit-applications/{auditApplicationId}/audit-entries/{auditEntryId}")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "Get audit entry", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 200, message = "Successful response", response = AuditEntryEntry.class),
- @ApiResponse(code = 400, message = "Invalid parameter: **auditApplicationId** or **auditEntryId** is not a valid format "),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 403, message = "User does not have permission to retrieve audit information"),
- @ApiResponse(code = 404, message = "**auditApplicationId** or **auditEntryId** does not exist "),
- @ApiResponse(code = 501, message = "Audit is disabled for the system"),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public AuditEntryEntry getAuditEntry(@PathParam("auditApplicationId") String auditApplicationId, @PathParam("auditEntryId") String auditEntryId, @QueryParam("fields")List fields);
-
- /**
- * List audit applications
- *
- * **Note:** this endpoint is available in Alfresco 5.2.2 and newer versions. Gets a list of audit applications in this repository. This list may include pre-configured audit applications, if enabled, such as: * alfresco-access * CMISChangeLog * Alfresco Tagging Service * Alfresco Sync Service (used by Enterprise Cloud Sync) You must have admin rights to retrieve audit information.
- *
- */
- @GET
- @Path("/audit-applications")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "List audit applications", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 200, message = "Successful response", response = AuditAppPaging.class),
- @ApiResponse(code = 400, message = "Invalid parameter: value of **maxItems** or **skipCount** is invalid "),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 403, message = "User does not have permission to retrieve audit information"),
- @ApiResponse(code = 501, message = "Audit is disabled for the system"),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public AuditAppPaging listAuditApps(@QueryParam("skipCount")@DefaultValue("0") Integer skipCount, @QueryParam("maxItems")@DefaultValue("100") Integer maxItems, @QueryParam("fields")List fields);
-
- /**
- * List audit entries for an audit application
- *
- * **Note:** this endpoint is available in Alfresco 5.2.2 and newer versions. Gets a list of audit entries for audit application **auditApplicationId**. You can use the **include** parameter to return additional **values** information. The list can be filtered by one or more of: * **createdByUser** person id * **createdAt** inclusive time period * **id** inclusive range of ids * **valuesKey** audit entry values contains the exact matching key * **valuesValue** audit entry values contains the exact matching value The default sort order is **createdAt** ascending, but you can use an optional **ASC** or **DESC** modifier to specify an ascending or descending sort order. For example, specifying ```orderBy=createdAt DESC``` returns audit entries in descending **createdAt** order. You must have admin rights to retrieve audit information.
- *
- */
- @GET
- @Path("/audit-applications/{auditApplicationId}/audit-entries")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "List audit entries for an audit application", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 200, message = "Successful response", response = AuditEntryPaging.class),
- @ApiResponse(code = 400, message = "Invalid parameter: *auditApplicationId** is not a valid format, value of **maxItems** or **skipCount** is invalid "),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 403, message = "User does not have permission to retrieve audit information"),
- @ApiResponse(code = 404, message = "**applicationId** does not exist "),
- @ApiResponse(code = 501, message = "Audit is disabled for the system"),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public AuditEntryPaging listAuditEntriesForAuditApp(@PathParam("auditApplicationId") String auditApplicationId, @QueryParam("skipCount")@DefaultValue("0") Integer skipCount, @QueryParam("omitTotalItems")@DefaultValue("false") Boolean omitTotalItems, @QueryParam("orderBy")List orderBy, @QueryParam("maxItems")@DefaultValue("100") Integer maxItems, @QueryParam("where")String where, @QueryParam("include")List include, @QueryParam("fields")List fields);
-
- /**
- * List audit entries for a node
- *
- * **Note:** this endpoint is available in Alfresco 5.2.2 and newer versions. Gets a list of audit entries for node **nodeId**. The list can be filtered by **createdByUser** and for a given inclusive time period. The default sort order is **createdAt** ascending, but you can use an optional **ASC** or **DESC** modifier to specify an ascending or descending sort order. For example, specifying ```orderBy=createdAt DESC``` returns audit entries in descending **createdAt** order. This relies on the pre-configured 'alfresco-access' audit application.
- *
- */
- @GET
- @Path("/nodes/{nodeId}/audit-entries")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "List audit entries for a node", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 200, message = "Successful response", response = AuditEntryPaging.class),
- @ApiResponse(code = 400, message = "Invalid parameter: *nodeId** is not a valid format, value of **maxItems** or **skipCount** is invalid "),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 403, message = "User does not have permission to retrieve audit information"),
- @ApiResponse(code = 404, message = "**nodeId** does not exist "),
- @ApiResponse(code = 501, message = "Audit is disabled for the system"),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public AuditEntryPaging listAuditEntriesForNode(@PathParam("nodeId") String nodeId, @QueryParam("skipCount")@DefaultValue("0") Integer skipCount, @QueryParam("orderBy")List orderBy, @QueryParam("maxItems")@DefaultValue("100") Integer maxItems, @QueryParam("where")String where, @QueryParam("include")List include, @QueryParam("fields")List fields);
-
- /**
- * Update audit application info
- *
- * **Note:** this endpoint is available in Alfresco 5.2.2 and newer versions. Disable or re-enable the audit application **auditApplicationId**. New audit entries will not be created for a disabled audit application until it is re-enabled (and system-wide auditing is also enabled). Note, it is still possible to query &/or delete any existing audit entries even if auditing is disabled for the audit application. You must have admin rights to update audit application.
- *
- */
- @PUT
- @Path("/audit-applications/{auditApplicationId}")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "Update audit application info", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 200, message = "Successful response", response = AuditApp.class),
- @ApiResponse(code = 400, message = "Invalid parameter: **auditApplicationId** is not a valid format or **auditAppBodyUpdate** is invalid "),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 403, message = "Current user does not have permission to update audit application"),
- @ApiResponse(code = 404, message = "**auditApplicationId** does not exist "),
- @ApiResponse(code = 501, message = "Audit is disabled for the system"),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public AuditApp updateAuditApp(@PathParam("auditApplicationId") String auditApplicationId, AuditBodyUpdate auditAppBodyUpdate, @QueryParam("fields")List fields);
-}
-
diff --git a/src/gen/java/com/inteligr8/alfresco/acs/api/AuthenticationApi.java b/src/gen/java/com/inteligr8/alfresco/acs/api/AuthenticationApi.java
deleted file mode 100644
index ec67480..0000000
--- a/src/gen/java/com/inteligr8/alfresco/acs/api/AuthenticationApi.java
+++ /dev/null
@@ -1,79 +0,0 @@
-package com.inteligr8.alfresco.acs.api;
-
-import com.inteligr8.alfresco.acs.model.Error;
-import com.inteligr8.alfresco.acs.model.TicketBody;
-import com.inteligr8.alfresco.acs.model.TicketEntry;
-import com.inteligr8.alfresco.acs.model.ValidTicketEntry;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import io.swagger.annotations.ApiResponse;
-import io.swagger.annotations.ApiResponses;
-import javax.ws.rs.*;
-
-/**
- * Alfresco Content Services REST API
- *
- *
**Authentication API** Provides access to the authentication features of Alfresco Content Services.
- *
- */
-@Path("/api/-default-/public/authentication/versions/1")
-@Api(value = "/api/-default-/public/authentication/versions/1", description = "")
-public interface AuthenticationApi {
-
- /**
- * Create ticket (login)
- *
- * **Note:** this endpoint is available in Alfresco 5.2 and newer versions. Logs in and returns the new authentication ticket. The userId and password properties are mandatory in the request body. For example: ```JSON { \"userId\": \"jbloggs\", \"password\": \"password\" } ``` To use the ticket in future requests you should pass it in the request header. For example using Javascript: ```Javascript request.setRequestHeader (\"Authorization\", \"Basic \" + btoa(ticket)); ```
- *
- */
- @POST
- @Path("/tickets")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "Create ticket (login)", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 201, message = "Successful response", response = TicketEntry.class),
- @ApiResponse(code = 400, message = "**userId** or **password** is not provided "),
- @ApiResponse(code = 403, message = "Login failed"),
- @ApiResponse(code = 501, message = "SAML is enabled and enforced"),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public TicketEntry createTicket(TicketBody ticketBodyCreate);
-
- /**
- * Delete ticket (logout)
- *
- * **Note:** this endpoint is available in Alfresco 5.2 and newer versions. Deletes logged in ticket (logout).
- *
- */
- @DELETE
- @Path("/tickets/-me-")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "Delete ticket (logout)", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 204, message = "Successful response"),
- @ApiResponse(code = 400, message = "URL path does not include **-me-** or the ticket is not provided by the Authorization header"),
- @ApiResponse(code = 404, message = "Status of the user has changed (for example, the user is locked or the account is disabled) or the ticket has expired"),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public void deleteTicket();
-
- /**
- * Validate ticket
- *
- * **Note:** this endpoint is available in Alfresco 5.2 and newer versions. Validates the specified ticket (derived from Authorization header) is still valid. For example, you can pass the Authorization request header using Javascript: ```Javascript request.setRequestHeader (\"Authorization\", \"Basic \" + btoa(ticket)); ```
- *
- */
- @GET
- @Path("/tickets/-me-")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "Validate ticket", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 200, message = "Successful response", response = ValidTicketEntry.class),
- @ApiResponse(code = 400, message = "URL path does not include **-me-** or the ticket is not provided by the Authorization header"),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 404, message = "The request is authorized correctly but the status of the user (of the supplied ticket) has changed (for example, the user is locked or the account is disabled) or the ticket has expired"),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public ValidTicketEntry validateTicket();
-}
-
diff --git a/src/gen/java/com/inteligr8/alfresco/acs/api/CommentsApi.java b/src/gen/java/com/inteligr8/alfresco/acs/api/CommentsApi.java
deleted file mode 100644
index 4313e7d..0000000
--- a/src/gen/java/com/inteligr8/alfresco/acs/api/CommentsApi.java
+++ /dev/null
@@ -1,107 +0,0 @@
-package com.inteligr8.alfresco.acs.api;
-
-import com.inteligr8.alfresco.acs.model.CommentBody;
-import com.inteligr8.alfresco.acs.model.CommentEntry;
-import com.inteligr8.alfresco.acs.model.CommentPaging;
-import com.inteligr8.alfresco.acs.model.Error;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import io.swagger.annotations.ApiResponse;
-import io.swagger.annotations.ApiResponses;
-import java.util.List;
-import javax.ws.rs.*;
-
-/**
- * Alfresco Content Services REST API
- *
- *
**Core API** Provides access to the core features of Alfresco Content Services.
- *
- */
-@Path("/api/-default-/public/alfresco/versions/1")
-@Api(value = "/api/-default-/public/alfresco/versions/1", description = "")
-public interface CommentsApi {
-
- /**
- * Create a comment
- *
- * Creates a comment on node **nodeId**. You specify the comment in a JSON body like this: ```JSON { \"content\": \"This is a comment\" } ``` **Note:** You can create more than one comment by specifying a list of comments in the JSON body like this: ```JSON [ { \"content\": \"This is a comment\" }, { \"content\": \"This is another comment\" } ] ``` If you specify a list as input, then a paginated list rather than an entry is returned in the response body. For example: ```JSON { \"list\": { \"pagination\": { \"count\": 2, \"hasMoreItems\": false, \"totalItems\": 2, \"skipCount\": 0, \"maxItems\": 100 }, \"entries\": [ { \"entry\": { ... } }, { \"entry\": { ... } } ] } } ```
- *
- */
- @POST
- @Path("/nodes/{nodeId}/comments")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "Create a comment", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 201, message = "Successful response", response = CommentEntry.class),
- @ApiResponse(code = 400, message = "Invalid parameter: **commentBodyCreate** is invalid "),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 403, message = "User does not have permission to create a comment"),
- @ApiResponse(code = 404, message = "**nodeId** does not exist "),
- @ApiResponse(code = 405, message = "Cannot comment on a node of this type"),
- @ApiResponse(code = 409, message = "**nodeId** is locked and you are not the lock owner "),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public CommentEntry createComment(@PathParam("nodeId") String nodeId, CommentBody commentBodyCreate, @QueryParam("fields")List fields);
-
- /**
- * Delete a comment
- *
- * Deletes the comment **commentId** from node **nodeId**.
- *
- */
- @DELETE
- @Path("/nodes/{nodeId}/comments/{commentId}")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "Delete a comment", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 204, message = "Successful response"),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 403, message = "User does not have permission to delete a comment"),
- @ApiResponse(code = 404, message = "**nodeId** or **commentId** does not exist "),
- @ApiResponse(code = 409, message = "**nodeId** is locked and you are not the lock owner "),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public void deleteComment(@PathParam("nodeId") String nodeId, @PathParam("commentId") String commentId);
-
- /**
- * List comments
- *
- * Gets a list of comments for the node **nodeId**, sorted chronologically with the newest comment first.
- *
- */
- @GET
- @Path("/nodes/{nodeId}/comments")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "List comments", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 200, message = "Successful response", response = CommentPaging.class),
- @ApiResponse(code = 400, message = "Invalid parameter: **nodeId** exists but does not identify a file or a folder, or the value of **maxItems** is invalid, or the value of **skipCount** is invalid "),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 403, message = "User does not have permission read comments on the node"),
- @ApiResponse(code = 404, message = "**nodeId** does not exist "),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public CommentPaging listComments(@PathParam("nodeId") String nodeId, @QueryParam("skipCount")@DefaultValue("0") Integer skipCount, @QueryParam("maxItems")@DefaultValue("100") Integer maxItems, @QueryParam("fields")List fields);
-
- /**
- * Update a comment
- *
- * Updates an existing comment **commentId** on node **nodeId**.
- *
- */
- @PUT
- @Path("/nodes/{nodeId}/comments/{commentId}")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "Update a comment", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 200, message = "Successful response", response = CommentEntry.class),
- @ApiResponse(code = 400, message = "Invalid parameter: **commentBodyUpdate** is invalid "),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 403, message = "User does not have permission to update a comment"),
- @ApiResponse(code = 404, message = "**nodeId** or **commentId** does not exist "),
- @ApiResponse(code = 409, message = "**nodeId** is locked and you are not the lock owner "),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public CommentEntry updateComment(@PathParam("nodeId") String nodeId, @PathParam("commentId") String commentId, CommentBody commentBodyUpdate, @QueryParam("fields")List fields);
-}
-
diff --git a/src/gen/java/com/inteligr8/alfresco/acs/api/DiscoveryApi.java b/src/gen/java/com/inteligr8/alfresco/acs/api/DiscoveryApi.java
deleted file mode 100644
index 0625936..0000000
--- a/src/gen/java/com/inteligr8/alfresco/acs/api/DiscoveryApi.java
+++ /dev/null
@@ -1,37 +0,0 @@
-package com.inteligr8.alfresco.acs.api;
-
-import com.inteligr8.alfresco.acs.model.DiscoveryEntry;
-import com.inteligr8.alfresco.acs.model.Error;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import io.swagger.annotations.ApiResponse;
-import io.swagger.annotations.ApiResponses;
-import javax.ws.rs.*;
-
-/**
- * Alfresco Content Services REST API
- *
- *
**Discovery API** Provides access to information about Alfresco Content Services.
- *
- */
-@Path("/api")
-@Api(value = "/api", description = "")
-public interface DiscoveryApi {
-
- /**
- * Get repository information
- *
- * **Note:** this endpoint is available in Alfresco 5.2 and newer versions. Retrieves the capabilities and detailed version information from the repository.
- *
- */
- @GET
- @Path("/discovery")
- @Produces({ "application/json" })
- @ApiOperation(value = "Get repository information", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 200, message = "Successful response", response = DiscoveryEntry.class),
- @ApiResponse(code = 501, message = "Discovery is disabled for the system"),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public DiscoveryEntry getRepositoryInformation();
-}
-
diff --git a/src/gen/java/com/inteligr8/alfresco/acs/api/DownloadsApi.java b/src/gen/java/com/inteligr8/alfresco/acs/api/DownloadsApi.java
deleted file mode 100644
index 7516efa..0000000
--- a/src/gen/java/com/inteligr8/alfresco/acs/api/DownloadsApi.java
+++ /dev/null
@@ -1,80 +0,0 @@
-package com.inteligr8.alfresco.acs.api;
-
-import com.inteligr8.alfresco.acs.model.DownloadBodyCreate;
-import com.inteligr8.alfresco.acs.model.DownloadEntry;
-import com.inteligr8.alfresco.acs.model.Error;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import io.swagger.annotations.ApiResponse;
-import io.swagger.annotations.ApiResponses;
-import java.util.List;
-import javax.ws.rs.*;
-
-/**
- * Alfresco Content Services REST API
- *
- *
**Core API** Provides access to the core features of Alfresco Content Services.
- *
- */
-@Path("/api/-default-/public/alfresco/versions/1")
-@Api(value = "/api/-default-/public/alfresco/versions/1", description = "")
-public interface DownloadsApi {
-
- /**
- * Cancel a download
- *
- * **Note:** this endpoint is available in Alfresco 5.2.1 and newer versions. Cancels the creation of a download request. **Note:** The download node can be deleted using the **DELETE /nodes/{downloadId}** endpoint By default, if the download node is not deleted it will be picked up by a cleaner job which removes download nodes older than a configurable amount of time (default is 1 hour) Information about the existing progress at the time of cancelling can be retrieved by calling the **GET /downloads/{downloadId}** endpoint The cancel operation is done asynchronously.
- *
- */
- @DELETE
- @Path("/downloads/{downloadId}")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "Cancel a download", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 202, message = "The request to cancel a download was accepted"),
- @ApiResponse(code = 400, message = "Invalid parameter: **downloadId** is invalid, or **downloadId** does not point to a node of download type "),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 403, message = "Current user does not have permission cancel the **downloadId** node"),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public void cancelDownload(@PathParam("downloadId") String downloadId);
-
- /**
- * Create a new download
- *
- * **Note:** this endpoint is available in Alfresco 5.2.1 and newer versions. Creates a new download node asynchronously, the content of which will be the zipped content of the **nodeIds** specified in the JSON body like this: ```JSON { \"nodeIds\": [ \"c8bb482a-ff3c-4704-a3a3-de1c83ccd84c\", \"cffa62db-aa01-493d-9594-058bc058eeb1\" ] } ``` **Note:** The content of the download node can be obtained using the **GET /nodes/{downloadId}/content** endpoint
- *
- */
- @POST
- @Path("/downloads")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "Create a new download", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 202, message = "The request to create a download node was accepted", response = DownloadEntry.class),
- @ApiResponse(code = 400, message = "Invalid parameter: **DownloadBodyCreate** is invalid due to incorrect syntax, or **nodeIds** is empty, or **nodeIds** contains a duplicate **nodeId** "),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 403, message = "Current user does not have permission to add a certain **nodeId** to the zip"),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public DownloadEntry createDownload(DownloadBodyCreate downloadBodyCreate, @QueryParam("fields")List fields);
-
- /**
- * Get a download
- *
- * **Note:** this endpoint is available in Alfresco 5.2.1 and newer versions. Retrieve status information for download node **downloadId**
- *
- */
- @GET
- @Path("/downloads/{downloadId}")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "Get a download", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 200, message = "Download node information", response = DownloadEntry.class),
- @ApiResponse(code = 400, message = "Invalid parameter: **downloadId** is invalid, or **downloadId** does not point to a node of download type "),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 403, message = "Current user does not have permission to get information about **downloadId** node"),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public DownloadEntry getDownload(@PathParam("downloadId") String downloadId, @QueryParam("fields")List fields);
-}
-
diff --git a/src/gen/java/com/inteligr8/alfresco/acs/api/FavoritesApi.java b/src/gen/java/com/inteligr8/alfresco/acs/api/FavoritesApi.java
deleted file mode 100644
index 945c848..0000000
--- a/src/gen/java/com/inteligr8/alfresco/acs/api/FavoritesApi.java
+++ /dev/null
@@ -1,182 +0,0 @@
-package com.inteligr8.alfresco.acs.api;
-
-import com.inteligr8.alfresco.acs.model.Error;
-import com.inteligr8.alfresco.acs.model.FavoriteBodyCreate;
-import com.inteligr8.alfresco.acs.model.FavoriteEntry;
-import com.inteligr8.alfresco.acs.model.FavoritePaging;
-import com.inteligr8.alfresco.acs.model.FavoriteSiteBodyCreate;
-import com.inteligr8.alfresco.acs.model.FavoriteSiteEntry;
-import com.inteligr8.alfresco.acs.model.SiteEntry;
-import com.inteligr8.alfresco.acs.model.SitePaging;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import io.swagger.annotations.ApiResponse;
-import io.swagger.annotations.ApiResponses;
-import java.util.List;
-import javax.ws.rs.*;
-
-/**
- * Alfresco Content Services REST API
- *
- *
**Core API** Provides access to the core features of Alfresco Content Services.
- *
- */
-@Path("/api/-default-/public/alfresco/versions/1")
-@Api(value = "/api/-default-/public/alfresco/versions/1", description = "")
-public interface FavoritesApi {
-
- /**
- * Create a favorite
- *
- * Favorite a **site**, **file**, or **folder** in the repository. You can use the `-me-` string in place of `<personId>` to specify the currently authenticated user. **Note:** You can favorite more than one entity by specifying a list of objects in the JSON body like this: ```JSON [ { \"target\": { \"file\": { \"guid\": \"abcde-01234-....\" } } }, { \"target\": { \"file\": { \"guid\": \"abcde-09863-....\" } } }, ] ``` If you specify a list as input, then a paginated list rather than an entry is returned in the response body. For example: ```JSON { \"list\": { \"pagination\": { \"count\": 2, \"hasMoreItems\": false, \"totalItems\": 2, \"skipCount\": 0, \"maxItems\": 100 }, \"entries\": [ { \"entry\": { ... } }, { \"entry\": { ... } } ] } } ```
- *
- */
- @POST
- @Path("/people/{personId}/favorites")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "Create a favorite", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 201, message = "Successful response", response = FavoriteEntry.class),
- @ApiResponse(code = 400, message = "Invalid parameter: **favoriteBodyCreate** invalid "),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 404, message = "**personId** does not exist, or the target entity does not exist, or a favorite already exists with the specified id, or an entity exists with the id of the posted object but is not of the same type of the posted object "),
- @ApiResponse(code = 409, message = "The target **guid** has already been favorited"),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public FavoriteEntry createFavorite(@PathParam("personId") String personId, FavoriteBodyCreate favoriteBodyCreate, @QueryParam("include")List include, @QueryParam("fields")List fields);
-
- /**
- * Create a site favorite
- *
- * **Note:** this endpoint is deprecated as of Alfresco 4.2, and will be removed in the future. Use `/people/{personId}/favorites` instead. Create a site favorite for person **personId**. You can use the `-me-` string in place of `<personId>` to specify the currently authenticated user. **Note:** You can favorite more than one site by specifying a list of sites in the JSON body like this: ```JSON [ { \"id\": \"test-site-1\" }, { \"id\": \"test-site-2\" } ] ``` If you specify a list as input, then a paginated list rather than an entry is returned in the response body. For example: ```JSON { \"list\": { \"pagination\": { \"count\": 2, \"hasMoreItems\": false, \"totalItems\": 2, \"skipCount\": 0, \"maxItems\": 100 }, \"entries\": [ { \"entry\": { ... } }, { \"entry\": { ... } } ] } } ```
- *
- */
- @POST
- @Path("/people/{personId}/favorite-sites")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "Create a site favorite", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 201, message = "Successful response", response = FavoriteSiteEntry.class),
- @ApiResponse(code = 400, message = "Invalid parameter: **favoriteSiteBodyCreate** is invalid "),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 403, message = "Current user does not have access to the favorite sites for **personId**"),
- @ApiResponse(code = 404, message = "**personId** does not exist "),
- @ApiResponse(code = 409, message = "**id** is already a site favorite "),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public FavoriteSiteEntry createSiteFavorite(@PathParam("personId") String personId, FavoriteSiteBodyCreate favoriteSiteBodyCreate, @QueryParam("fields")List fields);
-
- /**
- * Delete a favorite
- *
- * Deletes **favoriteId** as a favorite of person **personId**. You can use the `-me-` string in place of `<personId>` to specify the currently authenticated user.
- *
- */
- @DELETE
- @Path("/people/{personId}/favorites/{favoriteId}")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "Delete a favorite", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 204, message = "Successful response"),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 404, message = "**personId** or **favoriteId** does not exist "),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public void deleteFavorite(@PathParam("personId") String personId, @PathParam("favoriteId") String favoriteId);
-
- /**
- * Delete a site favorite
- *
- * **Note:** this endpoint is deprecated as of Alfresco 4.2, and will be removed in the future. Use `/people/{personId}/favorites/{favoriteId}` instead. Deletes site **siteId** from the favorite site list of person **personId**. You can use the `-me-` string in place of `<personId>` to specify the currently authenticated user.
- *
- */
- @DELETE
- @Path("/people/{personId}/favorite-sites/{siteId}")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "Delete a site favorite", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 204, message = "Successful response"),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 403, message = "Current user does not have access to the favorite sites for **personId**"),
- @ApiResponse(code = 404, message = "**personId** or **siteId** does not exist "),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public void deleteSiteFavorite(@PathParam("personId") String personId, @PathParam("siteId") String siteId);
-
- /**
- * Get a favorite
- *
- * Gets favorite **favoriteId** for person **personId**. You can use the `-me-` string in place of `<personId>` to specify the currently authenticated user.
- *
- */
- @GET
- @Path("/people/{personId}/favorites/{favoriteId}")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "Get a favorite", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 200, message = "Successful response", response = FavoriteEntry.class),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 404, message = "**personId** or **favoriteId** does not exist "),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public FavoriteEntry getFavorite(@PathParam("personId") String personId, @PathParam("favoriteId") String favoriteId, @QueryParam("include")List include, @QueryParam("fields")List fields);
-
- /**
- * Get a favorite site
- *
- * **Note:** this endpoint is deprecated as of Alfresco 4.2, and will be removed in the future. Use `/people/{personId}/favorites/{favoriteId}` instead. Gets information on favorite site **siteId** of person **personId**. You can use the `-me-` string in place of `<personId>` to specify the currently authenticated user.
- *
- */
- @GET
- @Path("/people/{personId}/favorite-sites/{siteId}")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "Get a favorite site", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 200, message = "Successful response", response = SiteEntry.class),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 403, message = "Current user does not have access to the favorite sites for **personId**"),
- @ApiResponse(code = 404, message = "**personId** or **siteId** does not exist "),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public SiteEntry getFavoriteSite(@PathParam("personId") String personId, @PathParam("siteId") String siteId, @QueryParam("fields")List fields);
-
- /**
- * List favorite sites
- *
- * **Note:** this endpoint is deprecated as of Alfresco 4.2, and will be removed in the future. Use `/people/{personId}/favorites` instead. Gets a list of a person's favorite sites. You can use the `-me-` string in place of `<personId>` to specify the currently authenticated user.
- *
- */
- @GET
- @Path("/people/{personId}/favorite-sites")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "List favorite sites", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 200, message = "Successful response", response = SitePaging.class),
- @ApiResponse(code = 400, message = "Invalid parameter: value of **maxItems** or **skipCount** is invalid "),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 403, message = "Current user does not have access to the favorite sites for **personId**"),
- @ApiResponse(code = 404, message = "**personId** does not exist "),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public SitePaging listFavoriteSitesForPerson(@PathParam("personId") String personId, @QueryParam("skipCount")@DefaultValue("0") Integer skipCount, @QueryParam("maxItems")@DefaultValue("100") Integer maxItems, @QueryParam("fields")List fields);
-
- /**
- * List favorites
- *
- * Gets a list of favorites for person **personId**. You can use the `-me-` string in place of `<personId>` to specify the currently authenticated user. The default sort order for the returned list of favorites is type ascending, createdAt descending. You can override the default by using the **orderBy** parameter. You can use any of the following fields to order the results: * `type` * `createdAt` * `title` You can use the **where** parameter to restrict the list in the response to entries of a specific kind. The **where** parameter takes a value. The value is a single predicate that can include one or more **EXISTS** conditions. The **EXISTS** condition uses a single operand to limit the list to include entries that include that one property. The property values are: * `target/file` * `target/folder` * `target/site` For example, the following **where** parameter restricts the returned list to the file favorites for a person: ```SQL (EXISTS(target/file)) ``` You can specify more than one condition using **OR**. The predicate must be enclosed in parentheses. For example, the following **where** parameter restricts the returned list to the file and folder favorites for a person: ```SQL (EXISTS(target/file) OR EXISTS(target/folder)) ```
- *
- */
- @GET
- @Path("/people/{personId}/favorites")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "List favorites", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 200, message = "Successful response", response = FavoritePaging.class),
- @ApiResponse(code = 400, message = "Invalid parameter: value of **maxItems**, **skipCount**, **orderBy**, or **where** is invalid "),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 404, message = "**personId** does not exist or the current user does not have permission to access the favorites of **personId** "),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public FavoritePaging listFavorites(@PathParam("personId") String personId, @QueryParam("skipCount")@DefaultValue("0") Integer skipCount, @QueryParam("maxItems")@DefaultValue("100") Integer maxItems, @QueryParam("orderBy")List orderBy, @QueryParam("where")String where, @QueryParam("include")List include, @QueryParam("fields")List fields);
-}
-
diff --git a/src/gen/java/com/inteligr8/alfresco/acs/api/GroupsApi.java b/src/gen/java/com/inteligr8/alfresco/acs/api/GroupsApi.java
deleted file mode 100644
index 4f23716..0000000
--- a/src/gen/java/com/inteligr8/alfresco/acs/api/GroupsApi.java
+++ /dev/null
@@ -1,209 +0,0 @@
-package com.inteligr8.alfresco.acs.api;
-
-import com.inteligr8.alfresco.acs.model.Error;
-import com.inteligr8.alfresco.acs.model.GroupBodyCreate;
-import com.inteligr8.alfresco.acs.model.GroupBodyUpdate;
-import com.inteligr8.alfresco.acs.model.GroupEntry;
-import com.inteligr8.alfresco.acs.model.GroupMemberEntry;
-import com.inteligr8.alfresco.acs.model.GroupMemberPaging;
-import com.inteligr8.alfresco.acs.model.GroupMembershipBodyCreate;
-import com.inteligr8.alfresco.acs.model.GroupPaging;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import io.swagger.annotations.ApiResponse;
-import io.swagger.annotations.ApiResponses;
-import java.util.List;
-import javax.ws.rs.*;
-
-/**
- * Alfresco Content Services REST API
- *
- *
**Core API** Provides access to the core features of Alfresco Content Services.
- *
- */
-@Path("/api/-default-/public/alfresco/versions/1")
-@Api(value = "/api/-default-/public/alfresco/versions/1", description = "")
-public interface GroupsApi {
-
- /**
- * Create a group
- *
- * **Note:** this endpoint is available in Alfresco 5.2.1 and newer versions. Create a group. The group id must start with \"GROUP\\_\". If this is omitted it will be added automatically. This format is also returned when listing groups or group memberships. It should be noted that the other group-related operations also expect the id to start with \"GROUP\\_\". If one or more parentIds are specified then the group will be created and become a member of each of the specified parent groups. If no parentIds are specified then the group will be created as a root group. The group will be created in the **APP.DEFAULT** and **AUTH.ALF** zones. You must have admin rights to create a group.
- *
- */
- @POST
- @Path("/groups")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "Create a group", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 201, message = "Successful response", response = GroupEntry.class),
- @ApiResponse(code = 400, message = "Invalid parameter: invalid **groupBodyCreate** "),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 403, message = "User does not have permission to create a group"),
- @ApiResponse(code = 404, message = "**parentIds** does not exist "),
- @ApiResponse(code = 409, message = "**id** clashes with an existing group "),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public GroupEntry createGroup(GroupBodyCreate groupBodyCreate, @QueryParam("include")List include, @QueryParam("fields")List fields);
-
- /**
- * Create a group membership
- *
- * **Note:** this endpoint is available in Alfresco 5.2.1 and newer versions. Create a group membership (for an existing person or group) within a group **groupId**. If the added group was previously a root group then it becomes a non-root group since it now has a parent. It is an error to specify an **id** that does not exist. You must have admin rights to create a group membership.
- *
- */
- @POST
- @Path("/groups/{groupId}/members")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "Create a group membership", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 201, message = "Successful response", response = GroupMemberEntry.class),
- @ApiResponse(code = 400, message = "Invalid parameter: **groupId** or **groupMembershipBodyCreate** is invalid "),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 403, message = "User does not have permission to create a group membership"),
- @ApiResponse(code = 404, message = "**groupId** or *id* (of group or person) does not exist "),
- @ApiResponse(code = 409, message = "Trying to modify a pre-defined system group, such as GROUP_EVERYONE. "),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public GroupMemberEntry createGroupMembership(@PathParam("groupId") String groupId, GroupMembershipBodyCreate groupMembershipBodyCreate, @QueryParam("fields")List fields);
-
- /**
- * Delete a group
- *
- * **Note:** this endpoint is available in Alfresco 5.2.1 and newer versions. Delete group **groupId**. The option to cascade delete applies this recursively to any hierarchy of group members. In this case, removing a group member does not delete the person or sub-group itself. If a removed sub-group no longer has any parent groups then it becomes a root group. You must have admin rights to delete a group.
- *
- */
- @DELETE
- @Path("/groups/{groupId}")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "Delete a group", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 204, message = "Successful response"),
- @ApiResponse(code = 400, message = "Invalid parameter: **groupId** is invalid "),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 403, message = "User does not have permission to delete a group member"),
- @ApiResponse(code = 404, message = "**groupId** does not exist "),
- @ApiResponse(code = 409, message = "Trying to delete a pre-defined system group, such as GROUP_EVERYONE. "),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public void deleteGroup(@PathParam("groupId") String groupId, @QueryParam("cascade")@DefaultValue("false") Boolean cascade);
-
- /**
- * Delete a group membership
- *
- * **Note:** this endpoint is available in Alfresco 5.2.1 and newer versions. Delete group member **groupMemberId** (person or sub-group) from group **groupId**. Removing a group member does not delete the person or sub-group itself. If a removed sub-group no longer has any parent groups then it becomes a root group. You must have admin rights to delete a group membership.
- *
- */
- @DELETE
- @Path("/groups/{groupId}/members/{groupMemberId}")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "Delete a group membership", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 204, message = "Successful response"),
- @ApiResponse(code = 400, message = "Invalid parameter: value of **groupId**, or **groupMemberId** is invalid "),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 403, message = "User does not have permission to delete a group membership"),
- @ApiResponse(code = 404, message = "**groupId** or **groupMemberId** does not exist "),
- @ApiResponse(code = 409, message = "Trying to delete a member of a pre-defined system group, such as GROUP_EVERYONE "),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public void deleteGroupMembership(@PathParam("groupId") String groupId, @PathParam("groupMemberId") String groupMemberId);
-
- /**
- * Get group details
- *
- * **Note:** this endpoint is available in Alfresco 5.2.1 and newer versions. Get details for group **groupId**. You can use the **include** parameter to return additional information.
- *
- */
- @GET
- @Path("/groups/{groupId}")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "Get group details", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 200, message = "Successful response", response = GroupEntry.class),
- @ApiResponse(code = 400, message = "Invalid parameter: invalid **groupId** "),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 404, message = "**groupId** does not exist "),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public GroupEntry getGroup(@PathParam("groupId") String groupId, @QueryParam("include")List include, @QueryParam("fields")List fields);
-
- /**
- * List memberships of a group
- *
- * **Note:** this endpoint is available in Alfresco 5.2.1 and newer versions. Gets a list of the group memberships for the group **groupId**. You can use the **where** parameter to filter the returned groups by **memberType**. Example to filter by **memberType**, use any one of: ``` (memberType='GROUP') (memberType='PERSON') ``` The default sort order for the returned list is for group members to be sorted by ascending displayName. You can override the default by using the **orderBy** parameter. You can specify one of the following fields in the **orderBy** parameter: * id * displayName
- *
- */
- @GET
- @Path("/groups/{groupId}/members")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "List memberships of a group", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 200, message = "Successful response", response = GroupMemberPaging.class),
- @ApiResponse(code = 400, message = "Invalid parameter: value of **maxItems**, **skipCount**, **orderBy**, or **where** is invalid "),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 404, message = "**groupId** does not exist "),
- @ApiResponse(code = 405, message = "Trying to list all members of a pre-defined system group, such as GROUP_EVERYONE "),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public GroupMemberPaging listGroupMemberships(@PathParam("groupId") String groupId, @QueryParam("skipCount")@DefaultValue("0") Integer skipCount, @QueryParam("maxItems")@DefaultValue("100") Integer maxItems, @QueryParam("orderBy")List orderBy, @QueryParam("where")String where, @QueryParam("fields")List fields);
-
- /**
- * List group memberships
- *
- * **Note:** this endpoint is available in Alfresco 5.2.1 and newer versions. Gets a list of group membership information for person **personId**. You can use the `-me-` string in place of `<personId>` to specify the currently authenticated user. You can use the **include** parameter to return additional information. You can use the **where** parameter to filter the returned groups by **isRoot**. For example, the following **where** clause will return just the root groups: ``` (isRoot=true) ``` The **where** parameter can also be used to filter by ***zone***. This may be combined with isRoot to narrow a result set even further. For example, the following where clause will only return groups belonging to the `MY.ZONE` zone. ``` where=(zones in ('MY.ZONE')) ``` This may be combined with the isRoot filter, as shown below: ``` where=(isRoot=false AND zones in ('MY.ZONE')) ``` ***Note:*** restrictions include * `AND` is the only supported operator when combining `isRoot` and `zones` filters * Only one zone is supported by the filter * The quoted zone name must be placed in parenthesis — a 400 error will result if these are omitted. The default sort order for the returned list is for groups to be sorted by ascending displayName. You can override the default by using the **orderBy** parameter. You can specify one or more of the following fields in the **orderBy** parameter: * id * displayName
- *
- */
- @GET
- @Path("/people/{personId}/groups")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "List group memberships", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 200, message = "Successful response", response = GroupPaging.class),
- @ApiResponse(code = 400, message = "Invalid parameter: value of **maxItems**, **skipCount**, **orderBy** or **personId** is invalid "),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 404, message = "**personId** does not exist "),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public GroupPaging listGroupMembershipsForPerson(@PathParam("personId") String personId, @QueryParam("skipCount")@DefaultValue("0") Integer skipCount, @QueryParam("maxItems")@DefaultValue("100") Integer maxItems, @QueryParam("orderBy")List orderBy, @QueryParam("include")List include, @QueryParam("where")String where, @QueryParam("fields")List fields);
-
- /**
- * List groups
- *
- * **Note:** this endpoint is available in Alfresco 5.2.1 and newer versions. Gets a list of groups. You can use the **include** parameter to return additional information. You can use the **where** parameter to filter the returned groups by **isRoot**. For example, the following **where** clause will return just the root groups: ``` (isRoot=true) ``` The **where** parameter can also be used to filter by ***zone*** and ***displayName***. They may be combined with isRoot to narrow a result set even further. For example, the following where clause will only return groups belonging to the `MY.ZONE` zone. ``` where=(zones in ('MY.ZONE')) ``` This may be combined with the isRoot filter, as shown below: ``` where=(isRoot=false AND zones in ('MY.ZONE')) ``` The following where clause will only return groups with displayName `MY.GROUP.NAME`. ``` where=(displayName in ('MY.GROUP.NAME')) ``` This may be combined with the isRoot and zones filter, as shown below: ``` where=(isRoot=false AND displayName in ('MY.GROUP.NAME')) ``` ``` where=(zones in ('MY.ZONE') AND displayName in ('MY.GROUP.NAME')) ``` ``` where=(isRoot=false AND zones in ('MY.ZONE') AND displayName in ('MY.GROUP.NAME')) ``` ***Note:*** restrictions include * `AND` is the only supported operator when combining `isRoot`, `zones` and `displayName` filters * Only one zone is supported by the filter * Only one displayName is supported by the filter * The quoted zone name and displayName must be placed in parenthesis — a 400 error will result if these are omitted. The default sort order for the returned list is for groups to be sorted by ascending displayName. You can override the default by using the **orderBy** parameter. You can specify one of the following fields in the **orderBy** parameter: * id * displayName
- *
- */
- @GET
- @Path("/groups")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "List groups", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 200, message = "Successful response", response = GroupPaging.class),
- @ApiResponse(code = 400, message = "Invalid parameter: value of **maxItems** or **skipCount**, or **orderBy**, or **where** is invalid "),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public GroupPaging listGroups(@QueryParam("skipCount")@DefaultValue("0") Integer skipCount, @QueryParam("maxItems")@DefaultValue("100") Integer maxItems, @QueryParam("orderBy")List orderBy, @QueryParam("include")List include, @QueryParam("where")String where, @QueryParam("fields")List fields);
-
- /**
- * Update group details
- *
- * **Note:** this endpoint is available in Alfresco 5.2.1 and newer versions. Update details (displayName) for group **groupId**. You must have admin rights to update a group.
- *
- */
- @PUT
- @Path("/groups/{groupId}")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "Update group details", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 200, message = "Successful response", response = GroupEntry.class),
- @ApiResponse(code = 400, message = "Invalid parameter: **groupId** or **groupBodyCreate** is invalid "),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 403, message = "User does not have permission to update a group"),
- @ApiResponse(code = 404, message = "**groupId** does not exist "),
- @ApiResponse(code = 409, message = "Trying to modify a pre-defined system group, such as GROUP_EVERYONE "),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public GroupEntry updateGroup(@PathParam("groupId") String groupId, GroupBodyUpdate groupBodyUpdate, @QueryParam("include")List include, @QueryParam("fields")List fields);
-}
-
diff --git a/src/gen/java/com/inteligr8/alfresco/acs/api/NetworksApi.java b/src/gen/java/com/inteligr8/alfresco/acs/api/NetworksApi.java
deleted file mode 100644
index 1f8e424..0000000
--- a/src/gen/java/com/inteligr8/alfresco/acs/api/NetworksApi.java
+++ /dev/null
@@ -1,78 +0,0 @@
-package com.inteligr8.alfresco.acs.api;
-
-import com.inteligr8.alfresco.acs.model.Error;
-import com.inteligr8.alfresco.acs.model.PersonNetworkEntry;
-import com.inteligr8.alfresco.acs.model.PersonNetworkPaging;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import io.swagger.annotations.ApiResponse;
-import io.swagger.annotations.ApiResponses;
-import java.util.List;
-import javax.ws.rs.*;
-
-/**
- * Alfresco Content Services REST API
- *
- *
**Core API** Provides access to the core features of Alfresco Content Services.
- *
- */
-@Path("/api/-default-/public/alfresco/versions/1")
-@Api(value = "/api/-default-/public/alfresco/versions/1", description = "")
-public interface NetworksApi {
-
- /**
- * Get a network
- *
- * Gets information for a network **networkId**.
- *
- */
- @GET
- @Path("/networks/{networkId}")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "Get a network", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 200, message = "Successful response", response = PersonNetworkEntry.class),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 404, message = "**networkId** does not exist "),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public PersonNetworkEntry getNetwork(@PathParam("networkId") String networkId, @QueryParam("fields")List fields);
-
- /**
- * Get network information
- *
- * Gets network information on a single network specified by **networkId** for **personId**. You can use the `-me-` string in place of `<personId>` to specify the currently authenticated user.
- *
- */
- @GET
- @Path("/people/{personId}/networks/{networkId}")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "Get network information", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 200, message = "Successful response", response = PersonNetworkEntry.class),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 404, message = "**personId** or **networkId** does not exist "),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public PersonNetworkEntry getNetworkForPerson(@PathParam("personId") String personId, @PathParam("networkId") String networkId, @QueryParam("fields")List fields);
-
- /**
- * List network membership
- *
- * Gets a list of network memberships for person **personId**. You can use the `-me-` string in place of `<personId>` to specify the currently authenticated user.
- *
- */
- @GET
- @Path("/people/{personId}/networks")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "List network membership", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 200, message = "Successful response", response = PersonNetworkPaging.class),
- @ApiResponse(code = 400, message = "Invalid parameter: value of **maxItems** or **skipCount** is invalid "),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 404, message = "**personId** does not exist "),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public PersonNetworkPaging listNetworksForPerson(@PathParam("personId") String personId, @QueryParam("skipCount")@DefaultValue("0") Integer skipCount, @QueryParam("maxItems")@DefaultValue("100") Integer maxItems, @QueryParam("fields")List fields);
-}
-
diff --git a/src/gen/java/com/inteligr8/alfresco/acs/api/NodesApi.java b/src/gen/java/com/inteligr8/alfresco/acs/api/NodesApi.java
deleted file mode 100644
index 2c0f174..0000000
--- a/src/gen/java/com/inteligr8/alfresco/acs/api/NodesApi.java
+++ /dev/null
@@ -1,453 +0,0 @@
-package com.inteligr8.alfresco.acs.api;
-
-import java.io.File;
-import java.util.Date;
-import java.util.List;
-
-import javax.ws.rs.Consumes;
-import javax.ws.rs.DELETE;
-import javax.ws.rs.DefaultValue;
-import javax.ws.rs.GET;
-import javax.ws.rs.HeaderParam;
-import javax.ws.rs.POST;
-import javax.ws.rs.PUT;
-import javax.ws.rs.Path;
-import javax.ws.rs.PathParam;
-import javax.ws.rs.Produces;
-import javax.ws.rs.QueryParam;
-
-import com.inteligr8.alfresco.acs.model.AssociationBody;
-import com.inteligr8.alfresco.acs.model.AssociationEntry;
-import com.inteligr8.alfresco.acs.model.ChildAssociationBody;
-import com.inteligr8.alfresco.acs.model.ChildAssociationEntry;
-import com.inteligr8.alfresco.acs.model.Error;
-import com.inteligr8.alfresco.acs.model.NodeAssociationPaging;
-import com.inteligr8.alfresco.acs.model.NodeBodyCopy;
-import com.inteligr8.alfresco.acs.model.NodeBodyCreate;
-import com.inteligr8.alfresco.acs.model.NodeBodyLock;
-import com.inteligr8.alfresco.acs.model.NodeBodyMove;
-import com.inteligr8.alfresco.acs.model.NodeBodyUpdate;
-import com.inteligr8.alfresco.acs.model.NodeChildAssociationPaging;
-import com.inteligr8.alfresco.acs.model.NodeEntry;
-
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import io.swagger.annotations.ApiResponse;
-import io.swagger.annotations.ApiResponses;
-
-/**
- * Alfresco Content Services REST API
- *
- *
**Core API** Provides access to the core features of Alfresco Content Services.
- *
- */
-@Path("/api/-default-/public/alfresco/versions/1")
-@Api(value = "/api/-default-/public/alfresco/versions/1", description = "")
-public interface NodesApi {
-
- /**
- * Copy a node
- *
- * **Note:** this endpoint is available in Alfresco 5.2 and newer versions. Copies the node **nodeId** to the parent folder node **targetParentId**. You specify the **targetParentId** in the request body. The new node has the same name as the source node unless you specify a new **name** in the request body. If the source **nodeId** is a folder, then all of its children are also copied. If the source **nodeId** is a file, it's properties, aspects and tags are copied, it's ratings, comments and locks are not.
- *
- */
- @POST
- @Path("/nodes/{nodeId}/copy")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "Copy a node", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 201, message = "Successful response", response = NodeEntry.class),
- @ApiResponse(code = 400, message = "Invalid parameter: **nodeId** is not a valid format or **nodeBodyCopy** is invalid "),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 403, message = "Current user does not have permission to copy **nodeId**"),
- @ApiResponse(code = 404, message = "**nodeId** does not exist "),
- @ApiResponse(code = 409, message = "New name clashes with an existing node in the destination parent folder"),
- @ApiResponse(code = 422, message = "Model integrity exception including a file name containing invalid characters"),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public NodeEntry copyNode(@PathParam("nodeId") String nodeId, NodeBodyCopy nodeBodyCopy, @QueryParam("include")List include, @QueryParam("fields")List fields);
-
- /**
- * Create node association
- *
- * **Note:** this endpoint is available in Alfresco 5.2 and newer versions. Create an association, with the given association type, between the source **nodeId** and a target node. **Note:** You can create more than one association by specifying a list of associations in the JSON body like this: ```JSON [ { \"targetId\": \"string\", \"assocType\": \"string\" }, { \"targetId\": \"string\", \"assocType\": \"string\" } ] ``` If you specify a list as input, then a paginated list rather than an entry is returned in the response body. For example: ```JSON { \"list\": { \"pagination\": { \"count\": 2, \"hasMoreItems\": false, \"totalItems\": 2, \"skipCount\": 0, \"maxItems\": 100 }, \"entries\": [ { \"entry\": { ... } }, { \"entry\": { ... } } ] } } ```
- *
- */
- @POST
- @Path("/nodes/{nodeId}/targets")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "Create node association", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 201, message = "Successful response", response = AssociationEntry.class),
- @ApiResponse(code = 400, message = "Invalid parameter: **assocType** is unknown, or the **nodeId** is not a valid format, or **associationBodyCreate** invalid "),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 403, message = "Current user does not have permission for **nodeId**"),
- @ApiResponse(code = 404, message = "Source **nodeId** or **targetId** does not exist"),
- @ApiResponse(code = 409, message = "An association of this assoc type already exists between these two nodes"),
- @ApiResponse(code = 422, message = "Model integrity exception"),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public AssociationEntry createAssociation(@PathParam("nodeId") String nodeId, AssociationBody associationBodyCreate, @QueryParam("fields")List fields);
-
- /**
- * Create a node
- *
- * **Note:** this endpoint is available in Alfresco 5.2 and newer versions. Create a node and add it as a primary child of node **nodeId**. This endpoint supports both JSON and multipart/form-data (file upload). **Using multipart/form-data** Use the **filedata** field to represent the content to upload, for example, the following curl command will create a node with the contents of test.txt in the test user's home folder. ```curl -utest:test -X POST host:port/alfresco/api/-default-/public/alfresco/versions/1/nodes/-my-/children -F filedata=@test.txt``` You can use the **name** field to give an alternative name for the new file. You can use the **nodeType** field to create a specific type. The default is cm:content. You can use the **renditions** field to create renditions (e.g. doclib) asynchronously upon upload. Also, as requesting rendition is a background process, any rendition failure (e.g. No transformer is currently available) will not fail the whole upload and has the potential to silently fail. Use **overwrite** to overwrite an existing file, matched by name. If the file is versionable, the existing content is replaced. When you overwrite existing content, you can set the **majorVersion** boolean field to **true** to indicate a major version should be created. The default for **majorVersion** is **false**. Setting **majorVersion** enables versioning of the node, if it is not already versioned. When you overwrite existing content, you can use the **comment** field to add a version comment that appears in the version history. This also enables versioning of this node, if it is not already versioned. You can set the **autoRename** boolean field to automatically resolve name clashes. If there is a name clash, then the API method tries to create a unique name using an integer suffix. You can use the **relativePath** field to specify the folder structure to create relative to the node **nodeId**. Folders in the **relativePath** that do not exist are created before the node is created. Any other field provided will be treated as a property to set on the newly created node. **Note:** setting properties of type d:content and d:category are not supported. **Note:** When creating a new node using multipart/form-data by default versioning is enabled and set to MAJOR Version. Since Alfresco 6.2.3 **versioningEnabled** flag was introduced offering better control over the new node Versioning. | **versioningEnabled** | **majorVersion** | **Version Type** | |-----------------------|------------------|------------------| | unset | unset | MAJOR | | unset | true | MAJOR | | unset | false | MINOR | | true | unset | MAJOR | | true | true | MAJOR | | true | false | MINOR | | false | true | Unversioned | | false | false | Unversioned | | false | true | Unversioned | <br> **Using JSON** You must specify at least a **name** and **nodeType**. For example, to create a folder: ```JSON { \"name\":\"My Folder\", \"nodeType\":\"cm:folder\" } ``` You can create an empty file like this: ```JSON { \"name\":\"My text file.txt\", \"nodeType\":\"cm:content\" } ``` You can update binary content using the ```PUT /nodes/{nodeId}``` API method. You can create a folder, or other node, inside a folder hierarchy: ```JSON { \"name\":\"My Special Folder\", \"nodeType\":\"cm:folder\", \"relativePath\":\"X/Y/Z\" } ``` The **relativePath** specifies the folder structure to create relative to the node **nodeId**. Folders in the **relativePath** that do not exist are created before the node is created. You can set properties when you create a new node: ```JSON { \"name\":\"My Other Folder\", \"nodeType\":\"cm:folder\", \"properties\": { \"cm:title\":\"Folder title\", \"cm:description\":\"This is an important folder\" } } ``` You can set multi-value properties when you create a new node which supports properties of type multiple. ```JSON { \"name\":\"My Other Folder\", \"nodeType\":\"custom:destination\", \"properties\": { \"cm:title\":\"Folder title\", \"cm:description\":\"This is an important folder\", \"custom:locations\": [ \"location X\", \"location Y\" ] } } ``` Any missing aspects are applied automatically. For example, **cm:titled** in the JSON shown above. You can set aspects explicitly, if needed, using an **aspectNames** field. **Note:** setting properties of type d:content and d:category are not supported. You can also optionally disable (or enable) inherited permissions via *isInheritanceEnabled* flag: ```JSON { \"permissions\": { \"isInheritanceEnabled\": false, \"locallySet\": [ {\"authorityId\": \"GROUP_special\", \"name\": \"Read\", \"accessStatus\":\"DENIED\"}, {\"authorityId\": \"testuser\", \"name\": \"Contributor\", \"accessStatus\":\"ALLOWED\"} ] } } ``` Typically, for files and folders, the primary children are created within the parent folder using the default \"cm:contains\" assocType. If the content model allows then it is also possible to create primary children with a different assoc type. For example: ```JSON { \"name\":\"My Node\", \"nodeType\":\"my:specialNodeType\", \"association\": { \"assocType\":\"my:specialAssocType\" } } ``` Additional associations can be added after creating a node. You can also add associations at the time the node is created. This is required, for example, if the content model specifies that a node has mandatory associations to one or more existing nodes. You can optionally specify an array of **secondaryChildren** to create one or more secondary child associations, such that the newly created node acts as a parent node. You can optionally specify an array of **targets** to create one or more peer associations such that the newly created node acts as a source node. For example, to associate one or more secondary children at time of creation: ```JSON { \"name\":\"My Folder\", \"nodeType\":\"cm:folder\", \"secondaryChildren\": [ {\"childId\":\"abcde-01234-...\", \"assocType\":\"my:specialChildAssocType\"} ] } ``` For example, to associate one or more targets at time of creation: ```JSON { \"name\":\"My Folder\", \"nodeType\":\"cm:folder\", \"targets\": [ {\"targetId\":\"abcde-01234-...\", \"assocType\":\"my:specialPeerAssocType\"} ] } ``` **Note:** You can create more than one child by specifying a list of nodes in the JSON body. For example, the following JSON body creates two folders inside the specified **nodeId**, if the **nodeId** identifies a folder: ```JSON [ { \"name\":\"My Folder 1\", \"nodeType\":\"cm:folder\" }, { \"name\":\"My Folder 2\", \"nodeType\":\"cm:folder\" } ] ``` If you specify a list as input, then a paginated list rather than an entry is returned in the response body. For example: ```JSON { \"list\": { \"pagination\": { \"count\": 2, \"hasMoreItems\": false, \"totalItems\": 2, \"skipCount\": 0, \"maxItems\": 100 }, \"entries\": [ { \"entry\": { ... } }, { \"entry\": { ... } } ] } } ``` **Note:** When creating a new node using JSON by default versioning is disabled. Since Alfresco 6.2.3 **versioningEnabled** flag was introduced offering better control over the new node Versioning. | **versioningEnabled** | **majorVersion** | **Version Type** | |-----------------------|------------------|------------------| | unset | unset | Unversioned | | unset | true | MAJOR | | unset | false | MINOR | | true | unset | MAJOR | | true | true | MAJOR | | true | false | MINOR | | false | true | Unversioned | | false | false | Unversioned | | false | true | Unversioned | <br>
- *
- */
- @POST
- @Path("/nodes/{nodeId}/children")
- @Consumes({ "application/json", "multipart/form-data" })
- @Produces({ "application/json" })
- @ApiOperation(value = "Create a node", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 201, message = "Successful response", response = NodeEntry.class),
- @ApiResponse(code = 400, message = "Invalid parameter: **nodeId** is not a valid format or **nodeBodyCreate** is invalid "),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 403, message = "Current user does not have permission to create children of **nodeId**"),
- @ApiResponse(code = 404, message = "**nodeId** or **renditionId** does not exist "),
- @ApiResponse(code = 409, message = "New name clashes with an existing node in the current parent folder"),
- @ApiResponse(code = 413, message = "Content exceeds individual file size limit configured for the network or system"),
- @ApiResponse(code = 415, message = "Content Type is not supported"),
- @ApiResponse(code = 422, message = "Model integrity exception including a file name containing invalid characters"),
- @ApiResponse(code = 507, message = "Content exceeds overall storage quota limit configured for the network or system"),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public NodeEntry createNode(@PathParam("nodeId") String nodeId, NodeBodyCreate nodeBodyCreate, @QueryParam("autoRename")Boolean autoRename, @QueryParam("majorVersion")Boolean majorVersion, @QueryParam("versioningEnabled")Boolean versioningEnabled, @QueryParam("include")List include, @QueryParam("fields")List fields);
-
- /**
- * Create secondary child
- *
- * **Note:** this endpoint is available in Alfresco 5.2 and newer versions. Create a secondary child association, with the given association type, between the parent **nodeId** and a child node. **Note:** You can create more than one secondary child association by specifying a list of associations in the JSON body like this: ```JSON [ { \"childId\": \"string\", \"assocType\": \"string\" }, { \"childId\": \"string\", \"assocType\": \"string\" } ] ``` If you specify a list as input, then a paginated list rather than an entry is returned in the response body. For example: ```JSON { \"list\": { \"pagination\": { \"count\": 2, \"hasMoreItems\": false, \"totalItems\": 2, \"skipCount\": 0, \"maxItems\": 100 }, \"entries\": [ { \"entry\": { ... } }, { \"entry\": { ... } } ] } } ```
- *
- */
- @POST
- @Path("/nodes/{nodeId}/secondary-children")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "Create secondary child", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 201, message = "Successful response", response = ChildAssociationEntry.class),
- @ApiResponse(code = 400, message = "Invalid parameter: **assocType** is unknown, or the **nodeId** is not a valid format, or **secondaryChildAssociationBodyCreate** invalid "),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 403, message = "Current user does not have permission to create secondary children of **nodeId**"),
- @ApiResponse(code = 404, message = "Parent **nodeId** or **childId** does not exist"),
- @ApiResponse(code = 409, message = "An association of this assoc type already exists between these two nodes"),
- @ApiResponse(code = 422, message = "Model integrity exception"),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public ChildAssociationEntry createSecondaryChildAssociation(@PathParam("nodeId") String nodeId, ChildAssociationBody secondaryChildAssociationBodyCreate, @QueryParam("fields")List fields);
-
- /**
- * Delete node association(s)
- *
- * **Note:** this endpoint is available in Alfresco 5.2 and newer versions. Delete an association, or associations, from the source **nodeId* to a target node for the given association type. If the association type is **not** specified, then all peer associations, of any type, in the direction from source to target, are deleted. **Note:** After removal of the peer association, or associations, from source to target, the two nodes may still have peer associations in the other direction.
- *
- */
- @DELETE
- @Path("/nodes/{nodeId}/targets/{targetId}")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "Delete node association(s)", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 204, message = "Successful response"),
- @ApiResponse(code = 400, message = "Invalid parameter: **assocType** is unknown, or the **nodeId** is not a valid format, or **targetId** is invalid "),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 403, message = "Current user does not have permission for **nodeId**"),
- @ApiResponse(code = 404, message = "Source **nodeId** or **targetId** does not exist (with given assocType, if specified)"),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public void deleteAssociation(@PathParam("nodeId") String nodeId, @PathParam("targetId") String targetId, @QueryParam("assocType")String assocType);
-
- /**
- * Delete a node
- *
- * **Note:** this endpoint is available in Alfresco 5.2 and newer versions. Deletes the node **nodeId**. If **nodeId** is a folder, then its children are also deleted. Deleted nodes move to the trashcan unless the **permanent** query parameter is **true** and the current user is the owner of the node or an admin. Deleting a node deletes it from its primary parent and also from any secondary parents. Peer associations are also deleted, where the deleted node is either a source or target of an association. This applies recursively to any hierarchy of primary children of the deleted node. **Note:** If the node is not permanently deleted, and is later successfully restored to its former primary parent, then the primary child association is restored. This applies recursively for any primary children. No other secondary child associations or peer associations are restored for any of the nodes in the primary parent-child hierarchy of restored nodes, regardless of whether the original associations were to nodes inside or outside the restored hierarchy.
- *
- */
- @DELETE
- @Path("/nodes/{nodeId}")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "Delete a node", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 204, message = "Successful response"),
- @ApiResponse(code = 400, message = "Invalid parameter: **nodeId** is not a valid format "),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 403, message = "Current user does not have permission to delete **nodeId**"),
- @ApiResponse(code = 404, message = "**nodeId** does not exist "),
- @ApiResponse(code = 409, message = "**nodeId** is locked and cannot be deleted "),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public void deleteNode(@PathParam("nodeId") String nodeId, @QueryParam("permanent")@DefaultValue("false") Boolean permanent);
-
- /**
- * Delete secondary child or children
- *
- * **Note:** this endpoint is available in Alfresco 5.2 and newer versions. Delete secondary child associations between the parent **nodeId** and child nodes for the given association type. If the association type is **not** specified, then all secondary child associations, of any type in the direction from parent to secondary child, will be deleted. The child will still have a primary parent and may still be associated as a secondary child with other secondary parents.
- *
- */
- @DELETE
- @Path("/nodes/{nodeId}/secondary-children/{childId}")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "Delete secondary child or children", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 204, message = "Successful response"),
- @ApiResponse(code = 400, message = "Invalid parameter: **assocType** is unknown or you are trying to delete a primary **assocType**. Use delete node instead "),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 403, message = "Current user does not have permission for **nodeId**"),
- @ApiResponse(code = 404, message = "Parent **nodeId** or **childId** does not exist (with given assocType, if specified)"),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public void deleteSecondaryChildAssociation(@PathParam("nodeId") String nodeId, @PathParam("childId") String childId, @QueryParam("assocType")String assocType);
-
- /**
- * Get a node
- *
- * **Note:** this endpoint is available in Alfresco 5.2 and newer versions. Get information for node **nodeId**. You can use the **include** parameter to return additional information.
- *
- */
- @GET
- @Path("/nodes/{nodeId}")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "Get a node", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 200, message = "Successful response", response = NodeEntry.class),
- @ApiResponse(code = 400, message = "Invalid parameter: **nodeId** is not a valid format "),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 403, message = "Current user does not have permission to retrieve **nodeId**"),
- @ApiResponse(code = 404, message = "**nodeId** does not exist "),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public NodeEntry getNode(@PathParam("nodeId") String nodeId, @QueryParam("include")List include, @QueryParam("relativePath")String relativePath, @QueryParam("fields")List fields);
-
- /**
- * Get node content
- *
- * **Note:** this endpoint is available in Alfresco 5.2 and newer versions. Gets the content of the node with identifier **nodeId**.
- *
- */
- @GET
- @Path("/nodes/{nodeId}/content")
- @Consumes({ "application/json" })
- @Produces({ "application/octet-stream" })
- @ApiOperation(value = "Get node content", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 200, message = "Successful response", response = File.class),
- @ApiResponse(code = 206, message = "Partial Content"),
- @ApiResponse(code = 304, message = "Content has not been modified since the date provided in the If-Modified-Since header"),
- @ApiResponse(code = 400, message = "Invalid parameter: **nodeId** is not a valid format, or is not a file "),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 403, message = "Current user does not have permission to retrieve content of **nodeId**"),
- @ApiResponse(code = 404, message = "**nodeId** does not exist "),
- @ApiResponse(code = 416, message = "Range Not Satisfiable "),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public File getNodeContent(@PathParam("nodeId") String nodeId, @QueryParam("attachment")@DefaultValue("true") Boolean attachment, @HeaderParam("If-Modified-Since") Date ifModifiedSince, @HeaderParam("Range") String range);
-
- /**
- * List node children
- *
- * **Note:** this endpoint is available in Alfresco 5.2 and newer versions. Gets a list of children of the parent node **nodeId**. Minimal information for each child is returned by default. You can use the **include** parameter to return additional information. The list of child nodes includes primary children and secondary children, if there are any. You can use the **include** parameter (include=association) to return child association details for each child, including the **assocTyp**e and the **isPrimary** flag. The default sort order for the returned list is for folders to be sorted before files, and by ascending name. You can override the default using **orderBy** to specify one or more fields to sort by. The default order is always ascending, but you can use an optional **ASC** or **DESC** modifier to specify an ascending or descending sort order. For example, specifying ```orderBy=name DESC``` returns a mixed folder/file list in descending **name** order. You can use any of the following fields to order the results: * isFolder * name * mimeType * nodeType * sizeInBytes * modifiedAt * createdAt * modifiedByUser * createdByUser
- *
- */
- @GET
- @Path("/nodes/{nodeId}/children")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "List node children", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 200, message = "Successful response", response = NodeChildAssociationPaging.class),
- @ApiResponse(code = 400, message = "Invalid parameter: **nodeId** is not a valid format, **nodeId** is not a folder or **orderBy** is invalid "),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 403, message = "Current user does not have permission to retrieve children of **nodeId**"),
- @ApiResponse(code = 404, message = "**nodeId** does not exist "),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public NodeChildAssociationPaging listNodeChildren(@PathParam("nodeId") String nodeId, @QueryParam("skipCount")@DefaultValue("0") Integer skipCount, @QueryParam("maxItems")@DefaultValue("100") Integer maxItems, @QueryParam("orderBy")List orderBy, @QueryParam("where")String where, @QueryParam("include")List include, @QueryParam("relativePath")String relativePath, @QueryParam("includeSource")Boolean includeSource, @QueryParam("fields")List fields);
-
- /**
- * List parents
- *
- * **Note:** this endpoint is available in Alfresco 5.2 and newer versions. Gets a list of parent nodes that are associated with the current child **nodeId**. The list includes both the primary parent and any secondary parents.
- *
- */
- @GET
- @Path("/nodes/{nodeId}/parents")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "List parents", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 200, message = "Successful response", response = NodeAssociationPaging.class),
- @ApiResponse(code = 400, message = "Invalid parameter: **assocType** is unknown or the **nodeId** is not a valid format "),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 403, message = "Current user does not have permission for **nodeId**"),
- @ApiResponse(code = 404, message = "Child **nodeId** does not exist"),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public NodeAssociationPaging listParents(@PathParam("nodeId") String nodeId, @QueryParam("where")String where, @QueryParam("include")List include, @QueryParam("skipCount")@DefaultValue("0") Integer skipCount, @QueryParam("maxItems")@DefaultValue("100") Integer maxItems, @QueryParam("includeSource")Boolean includeSource, @QueryParam("fields")List fields);
-
- /**
- * List secondary children
- *
- * **Note:** this endpoint is available in Alfresco 5.2 and newer versions. Gets a list of secondary child nodes that are associated with the current parent **nodeId**, via a secondary child association.
- *
- */
- @GET
- @Path("/nodes/{nodeId}/secondary-children")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "List secondary children", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 200, message = "Successful response", response = NodeChildAssociationPaging.class),
- @ApiResponse(code = 400, message = "Invalid parameter: **assocType** is unknown or the **nodeId** is not a valid format "),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 403, message = "Current user does not have permission for **nodeId**"),
- @ApiResponse(code = 404, message = "Parent **nodeId** does not exist"),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public NodeChildAssociationPaging listSecondaryChildren(@PathParam("nodeId") String nodeId, @QueryParam("where")String where, @QueryParam("include")List include, @QueryParam("skipCount")@DefaultValue("0") Integer skipCount, @QueryParam("maxItems")@DefaultValue("100") Integer maxItems, @QueryParam("includeSource")Boolean includeSource, @QueryParam("fields")List fields);
-
- /**
- * List source associations
- *
- * **Note:** this endpoint is available in Alfresco 5.2 and newer versions. Gets a list of source nodes that are associated with the current target **nodeId**.
- *
- */
- @GET
- @Path("/nodes/{nodeId}/sources")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "List source associations", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 200, message = "Successful response", response = NodeAssociationPaging.class),
- @ApiResponse(code = 400, message = "Invalid parameter: **nodeId** is not a valid format or **assocType** is unknown "),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 403, message = "Current user does not have permission for **nodeId**"),
- @ApiResponse(code = 404, message = "Target **nodeId** does not exist"),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public NodeAssociationPaging listSourceAssociations(@PathParam("nodeId") String nodeId, @QueryParam("where")String where, @QueryParam("include")List include, @QueryParam("fields")List fields);
-
- /**
- * List target associations
- *
- * **Note:** this endpoint is available in Alfresco 5.2 and newer versions. Gets a list of target nodes that are associated with the current source **nodeId**.
- *
- */
- @GET
- @Path("/nodes/{nodeId}/targets")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "List target associations", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 200, message = "Successful response", response = NodeAssociationPaging.class),
- @ApiResponse(code = 400, message = "Invalid parameter: **assocType** is unknown or the **nodeId** is not a valid format "),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 403, message = "Current user does not have permission for **nodeId**"),
- @ApiResponse(code = 404, message = "Source **nodeId** does not exist"),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public NodeAssociationPaging listTargetAssociations(@PathParam("nodeId") String nodeId, @QueryParam("where")String where, @QueryParam("include")List include, @QueryParam("fields")List fields);
-
- /**
- * Lock a node
- *
- * **Note:** this endpoint is available in Alfresco 5.2 and newer versions. Places a lock on node **nodeId**. **Note:** you can only lock files. More specifically, a node can only be locked if it is of type `cm:content` or a subtype of `cm:content`. The lock is owned by the current user, and prevents other users or processes from making updates to the node until the lock is released. If the **timeToExpire** is not set or is zero, then the lock never expires. Otherwise, the **timeToExpire** is the number of seconds before the lock expires. When a lock expires, the lock is released. If the node is already locked, and the user is the lock owner, then the lock is renewed with the new **timeToExpire**. By default, a lock is applied that allows the owner to update or delete the node. You can use **type** to change the lock type to one of the following: * **ALLOW_OWNER_CHANGES** (default) changes to the node can be made only by the lock owner. This enum is the same value as the deprecated WRITE_LOCK described in `org.alfresco.service.cmr.lock.LockType` in the Alfresco Public Java API. This is the default value. * **FULL** no changes by any user are allowed. This enum is the same value as the deprecated READ_ONLY_LOCK described in `org.alfresco.service.cmr.lock.LockType` in the Alfresco Public Java API. By default, a lock is persisted in the database. You can create a volatile in-memory lock by setting the **lifetime** property to EPHEMERAL. You might choose use EPHEMERAL locks, for example, if you are taking frequent short-term locks that you don't need to be kept over a restart of the repository. In this case you don't need the overhead of writing the locks to the database. If a lock on the node cannot be taken, then an error is returned.
- *
- */
- @POST
- @Path("/nodes/{nodeId}/lock")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "Lock a node", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 200, message = "Successful response", response = NodeEntry.class),
- @ApiResponse(code = 400, message = "Invalid parameter: **nodeId** is not a valid format, or **nodeBodyLock** is invalid, or a lock was attempted on a node that is not a file "),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 403, message = "Current user does not have permission to lock **nodeId** "),
- @ApiResponse(code = 404, message = "**nodeId** does not exist "),
- @ApiResponse(code = 422, message = "**nodeId** could not be locked "),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public NodeEntry lockNode(@PathParam("nodeId") String nodeId, NodeBodyLock nodeBodyLock, @QueryParam("include")List include, @QueryParam("fields")List fields);
-
- /**
- * Move a node
- *
- * **Note:** this endpoint is available in Alfresco 5.2 and newer versions. Move the node **nodeId** to the parent folder node **targetParentId**. The **targetParentId** is specified in the in request body. The moved node retains its name unless you specify a new **name** in the request body. If the source **nodeId** is a folder, then its children are also moved. The move will effectively change the primary parent.
- *
- */
- @POST
- @Path("/nodes/{nodeId}/move")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "Move a node", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 200, message = "Successful response", response = NodeEntry.class),
- @ApiResponse(code = 400, message = "Invalid parameter: **nodeId** is not a valid format, or **targetParentId** is not a folder, or **nodeBodyMove** is invalid "),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 403, message = "Current user does not have permission to move **nodeId**"),
- @ApiResponse(code = 404, message = "**nodeId** does not exist "),
- @ApiResponse(code = 409, message = "New name clashes with an existing node in the destination parent folder"),
- @ApiResponse(code = 422, message = "Model integrity exception including a file name containing invalid characters"),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public NodeEntry moveNode(@PathParam("nodeId") String nodeId, NodeBodyMove nodeBodyMove, @QueryParam("include")List include, @QueryParam("fields")List fields);
-
- /**
- * Unlock a node
- *
- * **Note:** this endpoint is available in Alfresco 5.2 and newer versions. Deletes a lock on node **nodeId**. The current user must be the owner of the locks or have admin rights, otherwise an error is returned. If a lock on the node cannot be released, then an error is returned.
- *
- */
- @POST
- @Path("/nodes/{nodeId}/unlock")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "Unlock a node", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 200, message = "Successful response", response = NodeEntry.class),
- @ApiResponse(code = 400, message = "Invalid parameter: **nodeId** is not a valid format "),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 403, message = "Current user does not have permission to unlock **nodeId** "),
- @ApiResponse(code = 404, message = "**nodeId** does not exist "),
- @ApiResponse(code = 422, message = "**nodeId** could not be unlocked "),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public NodeEntry unlockNode(@PathParam("nodeId") String nodeId, @QueryParam("include")List include, @QueryParam("fields")List fields);
-
- /**
- * Update a node
- *
- * **Note:** this endpoint is available in Alfresco 5.2 and newer versions. Updates the node **nodeId**. For example, you can rename a file or folder: ```JSON { \"name\":\"My new name\" } ``` You can also set or update one or more properties: ```JSON { \"properties\": { \"cm:title\":\"Folder title\" } } ``` You can update multi-value properties of a node which supports properties of type multiple. ```JSON { \"name\":\"My Other Folder\", \"nodeType\":\"custom:destination\", \"properties\": { \"cm:title\":\"Folder title\", \"cm:description\":\"This is an important folder\", \"custom:locations\": [ \"location NewX\", \"location NewY\" ] } } ``` **Note:** setting properties of type d:content and d:category are not supported. **Note:** if you want to add or remove aspects, then you must use **GET /nodes/{nodeId}** first to get the complete set of *aspectNames*. You can add (or remove) *locallySet* permissions, if any, in addition to any inherited permissions. You can also optionally disable (or re-enable) inherited permissions via *isInheritanceEnabled* flag: ```JSON { \"permissions\": { \"isInheritanceEnabled\": false, \"locallySet\": [ {\"authorityId\": \"GROUP_special\", \"name\": \"Read\", \"accessStatus\":\"DENIED\"}, {\"authorityId\": \"testuser\", \"name\": \"Contributor\", \"accessStatus\":\"ALLOWED\"} ] } } ``` **Note:** if you want to add or remove locally set permissions then you must use **GET /nodes/{nodeId}** first to get the complete set of *locallySet* permissions. **Note:** Currently there is no optimistic locking for updates, so they are applied in \"last one wins\" order.
- *
- */
- @PUT
- @Path("/nodes/{nodeId}")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "Update a node", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 200, message = "Successful response", response = NodeEntry.class),
- @ApiResponse(code = 400, message = "Invalid parameter: the update request is invalid or **nodeId** is not a valid format or **nodeBodyUpdate** is invalid "),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 403, message = "Current user does not have permission to update **nodeId**"),
- @ApiResponse(code = 404, message = "**nodeId** does not exist "),
- @ApiResponse(code = 409, message = "Updated name clashes with an existing node in the current parent folder"),
- @ApiResponse(code = 422, message = "Model integrity exception including a file name containing invalid characters"),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public NodeEntry updateNode(@PathParam("nodeId") String nodeId, NodeBodyUpdate nodeBodyUpdate, @QueryParam("include")List include, @QueryParam("fields")List fields);
-
- /**
- * Update node content
- *
- * **Note:** this endpoint is available in Alfresco 5.2 and newer versions. Updates the content of the node with identifier **nodeId**. The request body for this endpoint can be any text or binary stream. The **majorVersion** and **comment** parameters can be used to control versioning behaviour. If the content is versionable, a new minor version is created by default. Optionally a new **name** parameter can also be specified that must be unique within the parent folder. If specified and valid then this will rename the node. If invalid then an error is returned and the content is not updated. **Note:** This API method accepts any content type, but for testing with this tool text based content can be provided. This is because the OpenAPI Specification does not allow a wildcard to be provided or the ability for tooling to accept an arbitrary file.
- *
- */
- @PUT
- @Path("/nodes/{nodeId}/content")
- @Consumes({ "application/octet-stream" })
- @Produces({ "application/json" })
- @ApiOperation(value = "Update node content", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 200, message = "Successful response", response = NodeEntry.class),
- @ApiResponse(code = 400, message = "Invalid parameter: **nodeId** is not a valid format, or is not a file "),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 403, message = "Current user does not have permission to update **nodeId**"),
- @ApiResponse(code = 404, message = "**nodeId** does not exist "),
- @ApiResponse(code = 409, message = "Optional new name clashes with an existing node in the current parent folder"),
- @ApiResponse(code = 413, message = "Content exceeds individual file size limit (configured for network/system)"),
- @ApiResponse(code = 422, message = "Model integrity exception including a file name containing invalid characters"),
- @ApiResponse(code = 507, message = "Content exceeds overall storage quota limit configured for the network/system"),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public NodeEntry updateNodeContent(@PathParam("nodeId") String nodeId, byte[] contentBodyUpdate, @QueryParam("majorVersion")@DefaultValue("false") Boolean majorVersion, @QueryParam("comment")String comment, @QueryParam("name")String name, @QueryParam("include")List include, @QueryParam("fields")List fields);
-}
-
diff --git a/src/gen/java/com/inteligr8/alfresco/acs/api/PeopleApi.java b/src/gen/java/com/inteligr8/alfresco/acs/api/PeopleApi.java
deleted file mode 100644
index 0daf036..0000000
--- a/src/gen/java/com/inteligr8/alfresco/acs/api/PeopleApi.java
+++ /dev/null
@@ -1,201 +0,0 @@
-package com.inteligr8.alfresco.acs.api;
-
-import com.inteligr8.alfresco.acs.model.ClientBody;
-import com.inteligr8.alfresco.acs.model.Error;
-import com.inteligr8.alfresco.acs.model.PasswordResetBody;
-import com.inteligr8.alfresco.acs.model.PersonBodyCreate;
-import com.inteligr8.alfresco.acs.model.PersonBodyUpdate;
-import com.inteligr8.alfresco.acs.model.PersonEntry;
-import com.inteligr8.alfresco.acs.model.PersonPaging;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import io.swagger.annotations.ApiResponse;
-import io.swagger.annotations.ApiResponses;
-import java.io.File;
-import java.util.Date;
-import java.util.List;
-import javax.ws.rs.*;
-
-/**
- * Alfresco Content Services REST API
- *
- *
**Core API** Provides access to the core features of Alfresco Content Services.
- *
- */
-@Path("/api/-default-/public/alfresco/versions/1")
-@Api(value = "/api/-default-/public/alfresco/versions/1", description = "")
-public interface PeopleApi {
-
- /**
- * Create person
- *
- * **Note:** this endpoint is available in Alfresco 5.2 and newer versions. Create a person. If applicable, the given person's login access can also be optionally disabled. You must have admin rights to create a person. You can set custom properties when you create a person: ```JSON { \"id\": \"abeecher\", \"firstName\": \"Alice\", \"lastName\": \"Beecher\", \"displayName\": \"Alice Beecher\", \"email\": \"abeecher@example.com\", \"password\": \"secret\", \"properties\": { \"my:property\": \"The value\" } } ``` **Note:** setting properties of type d:content and d:category are not supported.
- *
- */
- @POST
- @Path("/people")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "Create person", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 201, message = "Successful response", response = PersonEntry.class),
- @ApiResponse(code = 400, message = "Invalid parameter: **personBodyCreate** is invalid "),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 403, message = "Current user does not have permission to create a person"),
- @ApiResponse(code = 409, message = "Person within given *id* already exists"),
- @ApiResponse(code = 422, message = "Model integrity exception"),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public PersonEntry createPerson(PersonBodyCreate personBodyCreate, @QueryParam("fields")List fields);
-
- /**
- * Delete avatar image
- *
- * **Note:** this endpoint is available in Alfresco 5.2.2 and newer versions. Deletes the avatar image related to person **personId**. You must be the person or have admin rights to update a person's avatar. You can use the `-me-` string in place of `<personId>` to specify the currently authenticated user.
- *
- */
- @DELETE
- @Path("/people/{personId}/avatar")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "Delete avatar image", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 204, message = "Successful response"),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 403, message = "Current user does not have permission to delete the avatar image for **personId**"),
- @ApiResponse(code = 404, message = "**personId** does not exist "),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public void deleteAvatarImage(@PathParam("personId") String personId);
-
- /**
- * Get avatar image
- *
- * **Note:** this endpoint is available in Alfresco 5.2.2 and newer versions. Gets the avatar image related to the person **personId**. If the person has no related avatar then the **placeholder** query parameter can be optionally used to request a placeholder image to be returned. You can use the `-me-` string in place of `<personId>` to specify the currently authenticated user.
- *
- */
- @GET
- @Path("/people/{personId}/avatar")
- @Consumes({ "application/json" })
- @Produces({ "application/octet-stream" })
- @ApiOperation(value = "Get avatar image", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 200, message = "Successful response", response = File.class),
- @ApiResponse(code = 304, message = "Content has not been modified since the date provided in the If-Modified-Since header"),
- @ApiResponse(code = 400, message = "Invalid parameter: **personId** is not a valid format "),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 404, message = "**personId** does not exist or avatar does not exist (and no placeholder requested) "),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public File getAvatarImage(@PathParam("personId") String personId, @QueryParam("attachment")@DefaultValue("true") Boolean attachment, @HeaderParam("If-Modified-Since") Date ifModifiedSince, @QueryParam("placeholder")@DefaultValue("true") Boolean placeholder);
-
- /**
- * Get a person
- *
- * Gets information for the person **personId**. You can use the `-me-` string in place of `<personId>` to specify the currently authenticated user.
- *
- */
- @GET
- @Path("/people/{personId}")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "Get a person", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 200, message = "Successful response", response = PersonEntry.class),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 404, message = "**personId** does not exist "),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public PersonEntry getPerson(@PathParam("personId") String personId, @QueryParam("fields")List fields);
-
- /**
- * List people
- *
- * **Note:** this endpoint is available in Alfresco 5.2 and newer versions. List people. You can use the **include** parameter to return any additional information. The default sort order for the returned list is for people to be sorted by ascending id. You can override the default by using the **orderBy** parameter. You can use any of the following fields to order the results: * id * firstName * lastName
- *
- */
- @GET
- @Path("/people")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "List people", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 200, message = "Successful response", response = PersonPaging.class),
- @ApiResponse(code = 400, message = "Invalid parameter: value of **maxItems**, **skipCount** or **orderBy** is invalid "),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public PersonPaging listPeople(@QueryParam("skipCount")@DefaultValue("0") Integer skipCount, @QueryParam("maxItems")@DefaultValue("100") Integer maxItems, @QueryParam("orderBy")List orderBy, @QueryParam("include")List include, @QueryParam("fields")List fields);
-
- /**
- * Request password reset
- *
- * **Note:** this endpoint is available in Alfresco 5.2.1 and newer versions. Initiates the reset password workflow to send an email with reset password instruction to the user's registered email. The client is mandatory in the request body. For example: ```JSON { \"client\": \"myClient\" } ``` **Note:** The client must be registered before this API can send an email. See [server documentation]. However, out-of-the-box share is registered as a default client, so you could pass **share** as the client name: ```JSON { \"client\": \"share\" } ``` **Note:** No authentication is required to call this endpoint.
- *
- */
- @POST
- @Path("/people/{personId}/request-password-reset")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "Request password reset", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 202, message = "Successful response or even when the **personId** does not exist or the user is disabled by an Administrator "),
- @ApiResponse(code = 404, message = "**client** is not registered ") })
- public void requestPasswordReset(@PathParam("personId") String personId, ClientBody clientBody);
-
- /**
- * Reset password
- *
- * **Note:** this endpoint is available in Alfresco 5.2.1 and newer versions. Resets user's password The password, id and key properties are mandatory in the request body. For example: ```JSON { \"password\":\"newPassword\", \"id\":\"activiti$10\", \"key\":\"4dad6d00-0daf-413a-b200-f64af4e12345\" } ``` **Note:** No authentication is required to call this endpoint.
- *
- */
- @POST
- @Path("/people/{personId}/reset-password")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "Reset password", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 202, message = "Successful response or even when no workflow instance is found with the given **id** or the workflow instance is invalid (already been used or expired) or the given **personId** does not match the person's id requesting the password reset or the given workflow **key** does not match the recovered key. "),
- @ApiResponse(code = 400, message = "Invalid parameter: Value of **password**, **id** or **key** is invalid ") })
- public void resetPassword(@PathParam("personId") String personId, PasswordResetBody passwordResetBody);
-
- /**
- * Update avatar image
- *
- * **Note:** this endpoint is available in Alfresco 5.2.2 and newer versions. Updates the avatar image related to the person **personId**. The request body should be the binary stream for the avatar image. The content type of the file should be an image file. This will be used to generate an \"avatar\" thumbnail rendition. You must be the person or have admin rights to update a person's avatar. You can use the `-me-` string in place of `<personId>` to specify the currently authenticated user.
- *
- */
- @PUT
- @Path("/people/{personId}/avatar")
- @Consumes({ "application/octet-stream" })
- @Produces({ "application/json" })
- @ApiOperation(value = "Update avatar image", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 200, message = "Successful response"),
- @ApiResponse(code = 400, message = "Invalid parameter: **personId** is not a valid format or the avatar cannot be uploaded "),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 403, message = "Current user does not have permission to update the avatar image for **personId**"),
- @ApiResponse(code = 404, message = "**personId** does not exist "),
- @ApiResponse(code = 413, message = "Content exceeds individual file size limit (configured for network/system)"),
- @ApiResponse(code = 501, message = "Renditions/thumbnails are disabled for the system"),
- @ApiResponse(code = 507, message = "Content exceeds overall storage quota limit configured for the network/system"),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public void updateAvatarImage(@PathParam("personId") String personId, byte[] contentBodyUpdate);
-
- /**
- * Update person
- *
- * **Note:** this endpoint is available in Alfresco 5.2 and newer versions. Update the given person's details. You can use the `-me-` string in place of `<personId>` to specify the currently authenticated user. If applicable, the given person's login access can also be optionally disabled or re-enabled. You must have admin rights to update a person — unless updating your own details. If you are changing your password, as a non-admin user, then the existing password must also be supplied (using the oldPassword field in addition to the new password value). Admin users cannot be disabled by setting enabled to false. Non-admin users may not disable themselves. You can set custom properties when you update a person: ```JSON { \"firstName\": \"Alice\", \"properties\": { \"my:property\": \"The value\" } } ``` **Note:** setting properties of type d:content and d:category are not supported.
- *
- */
- @PUT
- @Path("/people/{personId}")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "Update person", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 200, message = "Successful response", response = PersonEntry.class),
- @ApiResponse(code = 400, message = "Invalid parameter: the update request is invalid or **personId** is not a valid format or **personBodyUpdate** is invalid "),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 403, message = "Current user does not have permission to update a person"),
- @ApiResponse(code = 404, message = "**personId** does not exist "),
- @ApiResponse(code = 422, message = "Model integrity exception"),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public PersonEntry updatePerson(@PathParam("personId") String personId, PersonBodyUpdate personBodyUpdate, @QueryParam("fields")List fields);
-}
-
diff --git a/src/gen/java/com/inteligr8/alfresco/acs/api/PreferencesApi.java b/src/gen/java/com/inteligr8/alfresco/acs/api/PreferencesApi.java
deleted file mode 100644
index 11eabef..0000000
--- a/src/gen/java/com/inteligr8/alfresco/acs/api/PreferencesApi.java
+++ /dev/null
@@ -1,62 +0,0 @@
-package com.inteligr8.alfresco.acs.api;
-
-import com.inteligr8.alfresco.acs.model.Error;
-import com.inteligr8.alfresco.acs.model.PreferenceEntry;
-import com.inteligr8.alfresco.acs.model.PreferencePaging;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import io.swagger.annotations.ApiResponse;
-import io.swagger.annotations.ApiResponses;
-import java.util.List;
-import javax.ws.rs.*;
-
-/**
- * Alfresco Content Services REST API
- *
- *
**Core API** Provides access to the core features of Alfresco Content Services.
- *
- */
-@Path("/api/-default-/public/alfresco/versions/1")
-@Api(value = "/api/-default-/public/alfresco/versions/1", description = "")
-public interface PreferencesApi {
-
- /**
- * Get a preference
- *
- * Gets a specific preference for person **personId**. You can use the `-me-` string in place of `<personId>` to specify the currently authenticated user.
- *
- */
- @GET
- @Path("/people/{personId}/preferences/{preferenceName}")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "Get a preference", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 200, message = "Successful response", response = PreferenceEntry.class),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 403, message = "Current user does not have access to the preferences for **personId**"),
- @ApiResponse(code = 404, message = "**personId** or **preferenceName** does not exist "),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public PreferenceEntry getPreference(@PathParam("personId") String personId, @PathParam("preferenceName") String preferenceName, @QueryParam("fields")List fields);
-
- /**
- * List preferences
- *
- * Gets a list of preferences for person **personId**. You can use the `-me-` string in place of `<personId>` to specify the currently authenticated user. Note that each preference consists of an **id** and a **value**. The **value** can be of any JSON type.
- *
- */
- @GET
- @Path("/people/{personId}/preferences")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "List preferences", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 200, message = "Successful response", response = PreferencePaging.class),
- @ApiResponse(code = 400, message = "Invalid parameter: value of **maxItems** or **skipCount** is invalid "),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 403, message = "Current user does not have access to the preferences for **personId**"),
- @ApiResponse(code = 404, message = "**personId** does not exist "),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public PreferencePaging listPreferences(@PathParam("personId") String personId, @QueryParam("skipCount")@DefaultValue("0") Integer skipCount, @QueryParam("maxItems")@DefaultValue("100") Integer maxItems, @QueryParam("fields")List fields);
-}
-
diff --git a/src/gen/java/com/inteligr8/alfresco/acs/api/ProbesApi.java b/src/gen/java/com/inteligr8/alfresco/acs/api/ProbesApi.java
deleted file mode 100644
index 69c6b28..0000000
--- a/src/gen/java/com/inteligr8/alfresco/acs/api/ProbesApi.java
+++ /dev/null
@@ -1,39 +0,0 @@
-package com.inteligr8.alfresco.acs.api;
-
-import com.inteligr8.alfresco.acs.model.Error;
-import com.inteligr8.alfresco.acs.model.ProbeEntry;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import io.swagger.annotations.ApiResponse;
-import io.swagger.annotations.ApiResponses;
-import javax.ws.rs.*;
-
-/**
- * Alfresco Content Services REST API
- *
- *
**Core API** Provides access to the core features of Alfresco Content Services.
- *
- */
-@Path("/api/-default-/public/alfresco/versions/1")
-@Api(value = "/api/-default-/public/alfresco/versions/1", description = "")
-public interface ProbesApi {
-
- /**
- * Check readiness and liveness of the repository
- *
- * **Note:** this endpoint is available in Alfresco 6.0 and newer versions. Returns a status of 200 to indicate success and 503 for failure. The readiness probe is normally only used to check repository startup. The liveness probe should then be used to check the repository is still responding to requests. **Note:** No authentication is required to call this endpoint.
- *
- */
- @GET
- @Path("/probes/{probeId}")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "Check readiness and liveness of the repository", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 200, message = "Successful response", response = ProbeEntry.class),
- @ApiResponse(code = 404, message = "**probeId** does not exist "),
- @ApiResponse(code = 503, message = "Service Unavailable - Probe failure status."),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public ProbeEntry getProbe(@PathParam("probeId") String probeId);
-}
-
diff --git a/src/gen/java/com/inteligr8/alfresco/acs/api/QueriesApi.java b/src/gen/java/com/inteligr8/alfresco/acs/api/QueriesApi.java
deleted file mode 100644
index a6ca453..0000000
--- a/src/gen/java/com/inteligr8/alfresco/acs/api/QueriesApi.java
+++ /dev/null
@@ -1,79 +0,0 @@
-package com.inteligr8.alfresco.acs.api;
-
-import com.inteligr8.alfresco.acs.model.Error;
-import com.inteligr8.alfresco.acs.model.NodePaging;
-import com.inteligr8.alfresco.acs.model.PersonPaging;
-import com.inteligr8.alfresco.acs.model.SitePaging;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import io.swagger.annotations.ApiResponse;
-import io.swagger.annotations.ApiResponses;
-import java.util.List;
-import javax.ws.rs.*;
-
-/**
- * Alfresco Content Services REST API
- *
- *
**Core API** Provides access to the core features of Alfresco Content Services.
- *
- */
-@Path("/api/-default-/public/alfresco/versions/1")
-@Api(value = "/api/-default-/public/alfresco/versions/1", description = "")
-public interface QueriesApi {
-
- /**
- * Find nodes
- *
- * **Note:** this endpoint is available in Alfresco 5.2 and newer versions. Gets a list of nodes that match the given search criteria. The search term is used to look for nodes that match against name, title, description, full text content or tags. The search term: - must contain a minimum of 3 alphanumeric characters - allows \"quoted term\" - can optionally use '*' for wildcard matching By default, file and folder types will be searched unless a specific type is provided as a query parameter. By default, the search will be across the repository unless a specific root node id is provided to start the search from. You can sort the result list using the **orderBy** parameter. You can specify one or more of the following fields in the **orderBy** parameter: * name * modifiedAt * createdAt
- *
- */
- @GET
- @Path("/queries/nodes")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "Find nodes", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 200, message = "Successful response", response = NodePaging.class),
- @ApiResponse(code = 400, message = "Invalid parameter: value of **maxItems** or **skipCount** is invalid, or search **term** too short, or **nodeType** unknown, or **orderBy** invalid "),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 404, message = "**rootNodeId** does not exist "),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public NodePaging findNodes(@QueryParam("term")String term, @QueryParam("rootNodeId")String rootNodeId, @QueryParam("skipCount")@DefaultValue("0") Integer skipCount, @QueryParam("maxItems")@DefaultValue("100") Integer maxItems, @QueryParam("nodeType")String nodeType, @QueryParam("include")List include, @QueryParam("orderBy")List orderBy, @QueryParam("fields")List fields);
-
- /**
- * Find people
- *
- * **Note:** this endpoint is available in Alfresco 5.2 and newer versions. Gets a list of people that match the given search criteria. The search term is used to look for matches against person id, firstname and lastname. The search term: - must contain a minimum of 2 alphanumeric characters - can optionally use '*' for wildcard matching within the term You can sort the result list using the **orderBy** parameter. You can specify one or more of the following fields in the **orderBy** parameter: * id * firstName * lastName
- *
- */
- @GET
- @Path("/queries/people")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "Find people", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 200, message = "Successful response", response = PersonPaging.class),
- @ApiResponse(code = 400, message = "Invalid parameter: value of **maxItems** or **skipCount** is invalid, or search **term** too short, or **orderBy** invalid "),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public PersonPaging findPeople(@QueryParam("term")String term, @QueryParam("skipCount")@DefaultValue("0") Integer skipCount, @QueryParam("maxItems")@DefaultValue("100") Integer maxItems, @QueryParam("fields")List fields, @QueryParam("orderBy")List orderBy);
-
- /**
- * Find sites
- *
- * **Note:** this endpoint is available in Alfresco 5.2 and newer versions. Gets a list of sites that match the given search criteria. The search term is used to look for sites that match against site id, title or description. The search term: - must contain a minimum of 2 alphanumeric characters - can optionally use '*' for wildcard matching within the term The default sort order for the returned list is for sites to be sorted by ascending id. You can override the default by using the **orderBy** parameter. You can specify one or more of the following fields in the **orderBy** parameter: * id * title * description
- *
- */
- @GET
- @Path("/queries/sites")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "Find sites", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 200, message = "Successful response", response = SitePaging.class),
- @ApiResponse(code = 400, message = "Invalid parameter: value of **maxItems** or **skipCount** is invalid, or search **term** too short, or **orderBy** invalid "),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public SitePaging findSites(@QueryParam("term")String term, @QueryParam("skipCount")@DefaultValue("0") Integer skipCount, @QueryParam("maxItems")@DefaultValue("100") Integer maxItems, @QueryParam("orderBy")List orderBy, @QueryParam("fields")List fields);
-}
-
diff --git a/src/gen/java/com/inteligr8/alfresco/acs/api/RatingsApi.java b/src/gen/java/com/inteligr8/alfresco/acs/api/RatingsApi.java
deleted file mode 100644
index a00d5e1..0000000
--- a/src/gen/java/com/inteligr8/alfresco/acs/api/RatingsApi.java
+++ /dev/null
@@ -1,101 +0,0 @@
-package com.inteligr8.alfresco.acs.api;
-
-import com.inteligr8.alfresco.acs.model.Error;
-import com.inteligr8.alfresco.acs.model.RatingBody;
-import com.inteligr8.alfresco.acs.model.RatingEntry;
-import com.inteligr8.alfresco.acs.model.RatingPaging;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import io.swagger.annotations.ApiResponse;
-import io.swagger.annotations.ApiResponses;
-import java.util.List;
-import javax.ws.rs.*;
-
-/**
- * Alfresco Content Services REST API
- *
- *
**Core API** Provides access to the core features of Alfresco Content Services.
- *
- */
-@Path("/api/-default-/public/alfresco/versions/1")
-@Api(value = "/api/-default-/public/alfresco/versions/1", description = "")
-public interface RenditionsApi {
-
- /**
- * Create rendition
- *
- * **Note:** this endpoint is available in Alfresco 5.2 and newer versions. An asynchronous request to create a rendition for file **nodeId**. The rendition is specified by name **id** in the request body: ```JSON { \"id\":\"doclib\" } ``` Multiple names may be specified as a comma separated list or using a list format: ```JSON [ { \"id\": \"doclib\" }, { \"id\": \"avatar\" } ] ```
- *
- */
- @POST
- @Path("/nodes/{nodeId}/renditions")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "Create rendition", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 202, message = "Request accepted"),
- @ApiResponse(code = 400, message = "Invalid parameter: **nodeId** is not a valid format or is not a file or **renditionBodyCreate** is invalid "),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 403, message = "Current user does not have permission for **nodeId**"),
- @ApiResponse(code = 404, message = "**nodeId** or **renditionId** does not exist "),
- @ApiResponse(code = 409, message = "All requested renditions already exist"),
- @ApiResponse(code = 501, message = "Renditions/thumbnails are disabled for the system"),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public void createRendition(@PathParam("nodeId") String nodeId, RenditionBodyCreate renditionBodyCreate);
-
- /**
- * Get rendition information
- *
- * **Note:** this endpoint is available in Alfresco 5.2 and newer versions. Gets the rendition information for **renditionId** of file **nodeId**.
- *
- */
- @GET
- @Path("/nodes/{nodeId}/renditions/{renditionId}")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "Get rendition information", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 200, message = "Successful response", response = RenditionEntry.class),
- @ApiResponse(code = 400, message = "Invalid parameter: **nodeId** is not a valid format, or is not a file, or **renditionId** is invalid "),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 403, message = "Current user does not have permission for **nodeId**"),
- @ApiResponse(code = 404, message = "**nodeId** or **renditionId** does not exist "),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public RenditionEntry getRendition(@PathParam("nodeId") String nodeId, @PathParam("renditionId") String renditionId);
-
- /**
- * Get rendition content
- *
- * **Note:** this endpoint is available in Alfresco 5.2 and newer versions. Gets the rendition content for **renditionId** of file **nodeId**.
- *
- */
- @GET
- @Path("/nodes/{nodeId}/renditions/{renditionId}/content")
- @Consumes({ "application/json" })
- @Produces({ "application/octet-stream" })
- @ApiOperation(value = "Get rendition content", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 200, message = "Successful response", response = File.class),
- @ApiResponse(code = 206, message = "Partial Content"),
- @ApiResponse(code = 304, message = "Content has not been modified since the date provided in the If-Modified-Since header"),
- @ApiResponse(code = 400, message = "Invalid parameter: **nodeId** is not a valid format, or is not a file, or **renditionId** is invalid "),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 403, message = "Current user does not have permission for **nodeId**"),
- @ApiResponse(code = 404, message = "**nodeId** or **renditionId** does not exist "),
- @ApiResponse(code = 416, message = "Range Not Satisfiable"),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public File getRenditionContent(@PathParam("nodeId") String nodeId, @PathParam("renditionId") String renditionId, @QueryParam("attachment")@DefaultValue("true") Boolean attachment, @HeaderParam("If-Modified-Since") Date ifModifiedSince, @HeaderParam("Range") String range, @QueryParam("placeholder")@DefaultValue("false") Boolean placeholder);
-
- /**
- * List renditions
- *
- * **Note:** this endpoint is available in Alfresco 5.2 and newer versions. Gets a list of the rendition information for each rendition of the the file **nodeId**, including the rendition id. Each rendition returned has a **status**: CREATED means it is available to view or download, NOT_CREATED means the rendition can be requested. You can use the **where** parameter to filter the returned renditions by **status**. For example, the following **where** clause will return just the CREATED renditions: ``` (status='CREATED') ```
- *
- */
- @GET
- @Path("/nodes/{nodeId}/renditions")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "List renditions", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 200, message = "Successful response", response = RenditionPaging.class),
- @ApiResponse(code = 400, message = "Invalid parameter: **nodeId** is not a valid format, is not a file, or **where** is invalid "),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 403, message = "Current user does not have permission for **nodeId**"),
- @ApiResponse(code = 404, message = "**nodeId** does not exist "),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public RenditionPaging listRenditions(@PathParam("nodeId") String nodeId, @QueryParam("where")String where);
-}
-
diff --git a/src/gen/java/com/inteligr8/alfresco/acs/api/SearchApi.java b/src/gen/java/com/inteligr8/alfresco/acs/api/SearchApi.java
deleted file mode 100644
index bfa1bbf..0000000
--- a/src/gen/java/com/inteligr8/alfresco/acs/api/SearchApi.java
+++ /dev/null
@@ -1,38 +0,0 @@
-package com.inteligr8.alfresco.acs.api;
-
-import com.inteligr8.alfresco.acs.model.Error;
-import com.inteligr8.alfresco.acs.model.ResultSetPaging;
-import com.inteligr8.alfresco.acs.model.SearchRequest;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import io.swagger.annotations.ApiResponse;
-import io.swagger.annotations.ApiResponses;
-import javax.ws.rs.*;
-
-/**
- * Alfresco Content Services REST API
- *
- *
**Search API** Provides access to the search features of Alfresco Content Services.
- *
- */
-@Path("/api/-default-/public/search/versions/1")
-@Api(value = "/api/-default-/public/search/versions/1", description = "")
-public interface SearchApi {
-
- /**
- * Searches Alfresco
- *
- * **Note**: this endpoint is available in Alfresco 5.2 and newer versions. **You specify all the parameters in this API in a JSON body**, URL parameters are not supported. A basic query looks like this: ```JSON { \"query\": { \"query\": \"foo\" } } ``` **Note:** These are the minimum possible query parameters. The default search language is **afts** ([Alfresco Full Text Search](http://docs.alfresco.com/5.1/concepts/rm-searchsyntax-intro.html)), but you can also specify **cmis**, and **lucene**. A basic CMIS query looks like this: ```JSON { \"query\": { \"query\": \"select * from cmis:folder\", \"language\": \"cmis\" } } ``` By default, **results are limited to the first 100.** Results can be restricted using \"paging\". For example: ```JSON \"paging\": { \"maxItems\": \"50\", \"skipCount\": \"28\" } ``` This example would ensure that results are **limited by Final Size**, skipping the first 28 results and returning the next 50. Alternatively, you can limit the results by using the **limits JSON body parameter**. For example, ```JSON \"limits\": { \"permissionEvaluationTime\": 20000, \"permissionEvaluationCount\": 2000 } ``` You can use the **include JSON body parameter** to return additional information. This works in the same way as in the /nodes/{nodeId}/children method in the core API. For example: ```JSON \"include\": [\"aspectNames\", \"properties\", \"isLink\"] ``` You can use the **fields JSON body parameter** to restrict the fields returned within a response if, for example, you want to save on overall bandwidth. This works in the same way as in the /nodes/{nodeId}/children method in the core API. For example: ```JSON \"fields\": [\"id\", \"name\", \"search\"] ``` You can sort the results using the **sort JSON body parameter**, for example: ```JSON \"sort\": [{\"type\":\"FIELD\", \"field\":\"cm:description\", \"ascending\":\"true\"}] ``` **Note:** the **sort** parameter is not supported for CMIS queries. By default, search uses the **\"nodes\" location**, which is the **content store known as workspace://SpacesStore**. To change the scope to another location you can use the **locations JSON body parameter**. You can specify either **nodes** (the default), **versions** or **deleted-nodes**. For example: ```JSON \"scope\": { \"locations\": [\"deleted-nodes\"] } ``` You can specify templates using the **templates JSON body parameter**, for example: ```JSON \"templates\": [{\"name\": \"_PERSON\",\"template\": \"|%firstName OR |%lastName OR |%userName\"}, {\"name\": \"mytemplate\",\"template\": \"%cm:content\"}] ``` **Note: Spell checking only works on Search Services (Solr 6) if you have already enabled suggestions.** For **spell checking** you can use a query like this: ```JSON { \"query\": { \"query\": \"cm:title:alfrezco\" }, \"spellcheck\": {\"query\": \"alfrezco\"} } ``` If you are already specifying \"userQuery\" then the following may be easier and produces the same result : ```JSON { \"query\": { \"query\": \"cm:title:alfrezco\", \"userQuery\": \"alfrezco\" }, \"spellcheck\": {} } ``` The spellcheck response includes a spellCheck context like this: ```JSON \"context\": { \"spellCheck\": { \"type\": \"searchInsteadFor\", \"suggestions\": [\"alfresco\"] } }, ``` To specify defaults, you use a **defaults JSON body parameter**, for example: ```JSON \"defaults\": { \"textAttributes\": [ \"cm:content\", \"cm:name\" ], \"defaultFTSOperator\": \"AND\", \"defaultFTSFieldOperator\": \"OR\", \"namespace\": \"cm\", \"defaultFieldName\": \"PATH\" } ``` You can specify several filter queries using the **filterQueries JSON body parameter**, for example: ```JSON \"filterQueries\": [{\"query\": \"TYPE:'cm:folder'\"},{\"query\": \"cm:creator:mjackson\"}] ``` You can specify several facet queries using the **facetQueries JSON body parameter**, for example: ```JSON \"facetQueries\": [{\"query\": \"created:2016\",\"label\": \"CreatedThisYear\"}] ``` The response will contain a matching \"context\" section, the \"label\" will match the facet query. ```JSON \"context\": { \"facetQueries\": [ {\"label\": \"CreatedThisYear\",\"count\": 3} ] }, ``` A complete query for facetting via the content.size field looks this: ```JSON { \"query\": { \"query\": \"presentation\", \"language\": \"afts\" }, \"facetQueries\": [ {\"query\": \"content.size:[0 TO 10240]\", \"label\": \"xtra small\"}, {\"query\": \"content.size:[10240 TO 102400]\", \"label\": \"small\"}, {\"query\": \"content.size:[102400 TO 1048576]\", \"label\": \"medium\"}, {\"query\": \"content.size:[1048576 TO 16777216]\", \"label\": \"large\"}, {\"query\": \"content.size:[16777216 TO 134217728]\", \"label\": \"xtra large\"}, {\"query\": \"content.size:[134217728 TO MAX]\", \"label\": \"XX large\"} ], \"facetFields\": {\"facets\": [{\"field\": \"'content.size'\"}]} } ``` The response will contain a matching \"context\" section, the \"label\" will match the facet query. ```JSON \"context\": { \"facetQueries\": [ { \"label\": \"small\",\"count\": 2 }, { \"label\": \"large\",\"count\": 0 }, { \"label\": \"xtra small\",\"count\": 5 }, { \"label\": \"xtra large\",\"count\": 56}, { \"label\": \"medium\",\"count\": 4 }, { \"label\": \"XX large\", \"count\": 1 } ] }, ``` You can specify several facet fields using the **facetFields JSON body parameter**, for example: ```JSON \"facetFields\": {\"facets\": [{\"field\": \"creator\", \"mincount\": 1}, {\"field\": \"modifier\", \"mincount\": 1}]} ``` The response will contain a matching \"context\" section, the \"label\" will match the facet field. ```JSON \"context\": { \"facetsFields\": [ { \"label\": \"creator\", \"buckets\": [ { \"label\": \"System\", \"count\": 75 }, { \"label\": \"mjackson\", \"count\": 5 } ]}, { \"label\": \"modifier\", \"buckets\": [ { \"label\": \"System\", \"count\": 72 }, { \"label\": \"mjackson\", \"count\": 5 }, { \"label\": \"admin\", \"count\": 3 } ]} ] }, ``` Grouping facet queries that go together can be done by specifying the group label in the fact queries as follow: ```JSON { \"query\": { \"query\": \"presentation\" }, \"facetQueries\": [ {\"query\": \"content.size:[0 TO 102400]\", \"label\": \"small\", \"group\":\"foo\"}, {\"query\": \"content.size:[102400 TO 1048576]\", \"label\": \"medium\",\"group\":\"foo\"}, {\"query\": \"content.size:[1048576 TO 16777216]\", \"label\": \"large\",\"group\":\"foo\"} ] } ``` The above query returns the results a faceted field grouped under the label foo: ```JSON { \"context\": {\"facetsFields\": [{ \"label\": \"foo\", \"buckets\": [ { \"count\": 109, \"label\": \"small\", \"filterQuery\": \"content.size:[0 TO 102400]\" }, { \"count\": 0, \"label\": \"large\", \"filterQuery\": \"content.size:[1048576 TO 16777216]\" }, { \"count\": 0, \"label\": \"medium\", \"filterQuery\": \"content.size:[102400 TO 1048576]\" } ] }] } ``` Range Faceting is supported by the **ranges JSON body parameter**, for example: ```JSON { \"query\": { \"query\": \"presentation\" }, \"ranges\": [ { \"field\": \"content.size\", \"start\": \"0\", \"end\": \"100\", \"gap\": \"20\", \"hardend\": true }, { \"field\": \"created\", \"start\": \"2015-09-29T10:45:15.729Z\", \"end\": \"2016-09-29T10:45:15.729Z\", \"gap\": \"+100DAY\" }] } ``` An example query for **search highlighting** could look like this: ```JSON { \"query\": { \"query\": \"description:workflow\", \"userQuery\":\"workflow\" }, \"highlight\": { \"prefix\": \"¿\", \"postfix\": \"?\", \"mergeContiguous\": true, \"fields\": [ { \"field\": \"cm:title\" }, { \"field\": \"description\", \"prefix\": \"(\", \"postfix\": \")\" } ] } } ``` The example above changes the highlighting prefix and postfix from the default `<em>` for all fields to ¿? and just for the \"description\" field to (). The hightlight information is added in each node entry response; here is an example partial response: ``` \"entry\": { \"createdAt\": \"2016-10-12T15:24:31.202+0000\", \"isFolder\": true, \"search\": { \"score\": 1, \"highlight\": [ { \"field\": \"cm:title\", \"snippets\": [ \"Customized ¿Workflow? Process Definitions\" ] }, { \"field\": \"description\", \"snippets\": [ \"Customized (Workflow) Process Definitions\" ] } ] }, ``` **Note**: after the migration to Swagger UI 3, this API definition was triggering some warnings, more info in [this StackOverflow Q&A](https://stackoverflow.com/q/65584131/1654265).
- *
- */
- @POST
- @Path("/search")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "Searches Alfresco", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 200, message = "Successful response", response = ResultSetPaging.class),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public ResultSetPaging search(SearchRequest queryBody);
-}
-
diff --git a/src/gen/java/com/inteligr8/alfresco/acs/api/SharedLinksApi.java b/src/gen/java/com/inteligr8/alfresco/acs/api/SharedLinksApi.java
deleted file mode 100644
index 028c7f6..0000000
--- a/src/gen/java/com/inteligr8/alfresco/acs/api/SharedLinksApi.java
+++ /dev/null
@@ -1,212 +0,0 @@
-package com.inteligr8.alfresco.acs.api;
-
-import com.inteligr8.alfresco.acs.model.Error;
-import com.inteligr8.alfresco.acs.model.RenditionEntry;
-import com.inteligr8.alfresco.acs.model.RenditionPaging;
-import com.inteligr8.alfresco.acs.model.SharedLinkBodyCreate;
-import com.inteligr8.alfresco.acs.model.SharedLinkBodyEmail;
-import com.inteligr8.alfresco.acs.model.SharedLinkEntry;
-import com.inteligr8.alfresco.acs.model.SharedLinkPaging;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import io.swagger.annotations.ApiResponse;
-import io.swagger.annotations.ApiResponses;
-import java.io.File;
-import java.util.Date;
-import java.util.List;
-import javax.ws.rs.*;
-
-/**
- * Alfresco Content Services REST API
- *
- *
**Core API** Provides access to the core features of Alfresco Content Services.
- *
- */
-@Path("/api/-default-/public/alfresco/versions/1")
-@Api(value = "/api/-default-/public/alfresco/versions/1", description = "")
-public interface SharedLinksApi {
-
- /**
- * Create a shared link to a file
- *
- * **Note:** this endpoint is available in Alfresco 5.2 and newer versions. Create a shared link to the file **nodeId** in the request body. Also, an optional expiry date could be set, so the shared link would become invalid when the expiry date is reached. For example: ```JSON { \"nodeId\": \"1ff9da1a-ee2f-4b9c-8c34-3333333333\", \"expiresAt\": \"2017-03-23T23:00:00.000+0000\" } ``` **Note:** You can create shared links to more than one file specifying a list of **nodeId**s in the JSON body like this: ```JSON [ { \"nodeId\": \"1ff9da1a-ee2f-4b9c-8c34-4444444444\" }, { \"nodeId\": \"1ff9da1a-ee2f-4b9c-8c34-5555555555\" } ] ``` If you specify a list as input, then a paginated list rather than an entry is returned in the response body. For example: ```JSON { \"list\": { \"pagination\": { \"count\": 2, \"hasMoreItems\": false, \"totalItems\": 2, \"skipCount\": 0, \"maxItems\": 100 }, \"entries\": [ { \"entry\": { ... } }, { \"entry\": { ... } } ] } } ```
- *
- */
- @POST
- @Path("/shared-links")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "Create a shared link to a file", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 200, message = "Successful response", response = SharedLinkEntry.class),
- @ApiResponse(code = 400, message = "Invalid parameter: **nodeId** is not a valid format, or does not identify a file, or **sharedLinkBodyCreate** invalid, or the specified expiry date is invalid. E.g. the expiry date has already passed "),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 403, message = "Current user does not have permission to create **sharedId** (for example, no read permission)"),
- @ApiResponse(code = 404, message = "**nodeId** does not exist "),
- @ApiResponse(code = 409, message = "Shared link already exists for **nodeId**"),
- @ApiResponse(code = 501, message = "Shared links are disabled for the system"),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public SharedLinkEntry createSharedLink(SharedLinkBodyCreate sharedLinkBodyCreate, @QueryParam("include")List include, @QueryParam("fields")List fields);
-
- /**
- * Deletes a shared link
- *
- * **Note:** this endpoint is available in Alfresco 5.2 and newer versions. Deletes the shared link with identifier **sharedId**.
- *
- */
- @DELETE
- @Path("/shared-links/{sharedId}")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "Deletes a shared link", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 204, message = "Successful response"),
- @ApiResponse(code = 400, message = "Invalid parameter: **sharedId** is not a valid format "),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 403, message = "Current user does not have permission to delete **sharedId**"),
- @ApiResponse(code = 404, message = "**sharedId** does not exist "),
- @ApiResponse(code = 501, message = "Shared links are disabled for the system"),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public void deleteSharedLink(@PathParam("sharedId") String sharedId);
-
- /**
- * Email shared link
- *
- * **Note:** this endpoint is available in Alfresco 5.2 and newer versions. Sends email with app-specific url including identifier **sharedId**. The client and recipientEmails properties are mandatory in the request body. For example, to email a shared link with minimum info: ```JSON { \"client\": \"myClient\", \"recipientEmails\": [\"john.doe@acme.com\", \"joe.bloggs@acme.com\"] } ``` A plain text message property can be optionally provided in the request body to customise the sent email. Also, a locale property can be optionally provided in the request body to send the emails in a particular language (if the locale is supported by Alfresco). For example, to email a shared link with a messages and a locale: ```JSON { \"client\": \"myClient\", \"recipientEmails\": [\"john.doe@acme.com\", \"joe.bloggs@acme.com\"], \"message\": \"myMessage\", \"locale\":\"en-GB\" } ``` **Note:** The client must be registered before you can send a shared link email. See [server documentation]. However, out-of-the-box share is registered as a default client, so you could pass **share** as the client name: ```JSON { \"client\": \"share\", \"recipientEmails\": [\"john.doe@acme.com\"] } ```
- *
- */
- @POST
- @Path("/shared-links/{sharedId}/email")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "Email shared link", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 202, message = "Successful response"),
- @ApiResponse(code = 400, message = "Invalid parameter: **sharedId** is not a valid format or **sharedLinkBodyEmail** invalid "),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 404, message = "**sharedId** does not exist or **client** is not registered "),
- @ApiResponse(code = 501, message = "Shared links are disabled for the system"),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public void emailSharedLink(@PathParam("sharedId") String sharedId, SharedLinkBodyEmail sharedLinkBodyEmail);
-
- /**
- * Get a shared link
- *
- * **Note:** this endpoint is available in Alfresco 5.2 and newer versions. Gets minimal information for the file with shared link identifier **sharedId**. **Note:** No authentication is required to call this endpoint.
- *
- */
- @GET
- @Path("/shared-links/{sharedId}")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "Get a shared link", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 200, message = "Successful response", response = SharedLinkEntry.class),
- @ApiResponse(code = 400, message = "Invalid parameter: **sharedId** is not a valid format "),
- @ApiResponse(code = 404, message = "**sharedId** does not exist "),
- @ApiResponse(code = 501, message = "Shared links are disabled for the system"),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public SharedLinkEntry getSharedLink(@PathParam("sharedId") String sharedId, @QueryParam("fields")List fields);
-
- /**
- * Get shared link content
- *
- * **Note:** this endpoint is available in Alfresco 5.2 and newer versions. Gets the content of the file with shared link identifier **sharedId**. **Note:** No authentication is required to call this endpoint.
- *
- */
- @GET
- @Path("/shared-links/{sharedId}/content")
- @Consumes({ "application/json" })
- @Produces({ "application/octet-stream" })
- @ApiOperation(value = "Get shared link content", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 200, message = "Successful response", response = File.class),
- @ApiResponse(code = 206, message = "Partial Content"),
- @ApiResponse(code = 304, message = "Content has not been modified since the date provided in the If-Modified-Since header"),
- @ApiResponse(code = 400, message = "Invalid parameter: **sharedId** is not a valid format "),
- @ApiResponse(code = 404, message = "**sharedId** does not exist "),
- @ApiResponse(code = 416, message = "Range Not Satisfiable"),
- @ApiResponse(code = 501, message = "Shared links are disabled for the system"),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public File getSharedLinkContent(@PathParam("sharedId") String sharedId, @QueryParam("attachment")@DefaultValue("true") Boolean attachment, @HeaderParam("If-Modified-Since") Date ifModifiedSince, @HeaderParam("Range") String range);
-
- /**
- * Get shared link rendition information
- *
- * **Note:** this endpoint is available in Alfresco 5.2 and newer versions. Gets rendition information for the file with shared link identifier **sharedId**. This API method returns rendition information where the rendition status is CREATED, which means the rendition is available to view/download. **Note:** No authentication is required to call this endpoint.
- *
- */
- @GET
- @Path("/shared-links/{sharedId}/renditions/{renditionId}")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "Get shared link rendition information", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 200, message = "Successful response", response = RenditionEntry.class),
- @ApiResponse(code = 400, message = "Invalid parameter: **sharedId** is not a valid format, or **renditionId** is invalid "),
- @ApiResponse(code = 404, message = "**sharedId** or **renditionId** does not exist (ie. not CREATED) "),
- @ApiResponse(code = 501, message = "Shared links are disabled for the system"),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public RenditionEntry getSharedLinkRendition(@PathParam("sharedId") String sharedId, @PathParam("renditionId") String renditionId);
-
- /**
- * Get shared link rendition content
- *
- * **Note:** this endpoint is available in Alfresco 5.2 and newer versions. Gets the rendition content for file with shared link identifier **sharedId**. **Note:** No authentication is required to call this endpoint.
- *
- */
- @GET
- @Path("/shared-links/{sharedId}/renditions/{renditionId}/content")
- @Consumes({ "application/json" })
- @Produces({ "application/octet-stream" })
- @ApiOperation(value = "Get shared link rendition content", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 200, message = "Successful response", response = File.class),
- @ApiResponse(code = 206, message = "Partial Content"),
- @ApiResponse(code = 304, message = "Content has not been modified since the date provided in the If-Modified-Since header"),
- @ApiResponse(code = 400, message = "Invalid parameter: **sharedId** is not a valid format, or **renditionId** is invalid "),
- @ApiResponse(code = 404, message = "**sharedId** does not exist "),
- @ApiResponse(code = 416, message = "Range Not Satisfiable"),
- @ApiResponse(code = 501, message = "Shared links are disabled for the system"),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public File getSharedLinkRenditionContent(@PathParam("sharedId") String sharedId, @PathParam("renditionId") String renditionId, @QueryParam("attachment")@DefaultValue("true") Boolean attachment, @HeaderParam("If-Modified-Since") Date ifModifiedSince, @HeaderParam("Range") String range);
-
- /**
- * List renditions for a shared link
- *
- * **Note:** this endpoint is available in Alfresco 5.2 and newer versions. Gets a list of the rendition information for the file with shared link identifier **sharedId**. This API method returns rendition information, including the rendition id, for each rendition where the rendition status is CREATED, which means the rendition is available to view/download. **Note:** No authentication is required to call this endpoint.
- *
- */
- @GET
- @Path("/shared-links/{sharedId}/renditions")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "List renditions for a shared link", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 200, message = "Successful response", response = RenditionPaging.class),
- @ApiResponse(code = 400, message = "Invalid parameter: **sharedId** is not a valid format "),
- @ApiResponse(code = 404, message = "**sharedId** does not exist "),
- @ApiResponse(code = 501, message = "Shared links are disabled for the system"),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public RenditionPaging listSharedLinkRenditions(@PathParam("sharedId") String sharedId);
-
- /**
- * List shared links
- *
- * **Note:** this endpoint is available in Alfresco 5.2 and newer versions. Get a list of links that the current user has read permission on source node. The list is ordered in descending modified order. **Note:** The list of links is eventually consistent so newly created shared links may not appear immediately.
- *
- */
- @GET
- @Path("/shared-links")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "List shared links", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 200, message = "Successful response", response = SharedLinkPaging.class),
- @ApiResponse(code = 400, message = "Invalid parameter: value of **maxItems** or **skipCount** is invalid "),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 501, message = "Shared links are disabled for the system"),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public SharedLinkPaging listSharedLinks(@QueryParam("skipCount")@DefaultValue("0") Integer skipCount, @QueryParam("maxItems")@DefaultValue("100") Integer maxItems, @QueryParam("where")String where, @QueryParam("include")List include, @QueryParam("fields")List fields);
-}
-
diff --git a/src/gen/java/com/inteligr8/alfresco/acs/api/SitesApi.java b/src/gen/java/com/inteligr8/alfresco/acs/api/SitesApi.java
deleted file mode 100644
index c16d73f..0000000
--- a/src/gen/java/com/inteligr8/alfresco/acs/api/SitesApi.java
+++ /dev/null
@@ -1,575 +0,0 @@
-package com.inteligr8.alfresco.acs.api;
-
-import com.inteligr8.alfresco.acs.model.Error;
-import com.inteligr8.alfresco.acs.model.SiteBodyCreate;
-import com.inteligr8.alfresco.acs.model.SiteBodyUpdate;
-import com.inteligr8.alfresco.acs.model.SiteContainerEntry;
-import com.inteligr8.alfresco.acs.model.SiteContainerPaging;
-import com.inteligr8.alfresco.acs.model.SiteEntry;
-import com.inteligr8.alfresco.acs.model.SiteGroupEntry;
-import com.inteligr8.alfresco.acs.model.SiteGroupPaging;
-import com.inteligr8.alfresco.acs.model.SiteMemberEntry;
-import com.inteligr8.alfresco.acs.model.SiteMemberPaging;
-import com.inteligr8.alfresco.acs.model.SiteMembershipApprovalBody;
-import com.inteligr8.alfresco.acs.model.SiteMembershipBodyCreate;
-import com.inteligr8.alfresco.acs.model.SiteMembershipBodyUpdate;
-import com.inteligr8.alfresco.acs.model.SiteMembershipRejectionBody;
-import com.inteligr8.alfresco.acs.model.SiteMembershipRequestBodyCreate;
-import com.inteligr8.alfresco.acs.model.SiteMembershipRequestBodyUpdate;
-import com.inteligr8.alfresco.acs.model.SiteMembershipRequestEntry;
-import com.inteligr8.alfresco.acs.model.SiteMembershipRequestPaging;
-import com.inteligr8.alfresco.acs.model.SiteMembershipRequestWithPersonPaging;
-import com.inteligr8.alfresco.acs.model.SitePaging;
-import com.inteligr8.alfresco.acs.model.SiteRoleEntry;
-import com.inteligr8.alfresco.acs.model.SiteRolePaging;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import io.swagger.annotations.ApiResponse;
-import io.swagger.annotations.ApiResponses;
-import java.util.List;
-import javax.ws.rs.*;
-
-/**
- * Alfresco Content Services REST API
- *
- *
**Core API** Provides access to the core features of Alfresco Content Services.
- *
- */
-@Path("/api/-default-/public/alfresco/versions/1")
-@Api(value = "/api/-default-/public/alfresco/versions/1", description = "")
-public interface SitesApi {
-
- /**
- * Approve a site membership request
- *
- * Approve a site membership request.
- *
- */
- @POST
- @Path("/sites/{siteId}/site-membership-requests/{inviteeId}/approve")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "Approve a site membership request", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 200, message = "Successful response"),
- @ApiResponse(code = 400, message = "Invalid parameter: value of **siteId** or **inviteeId** is invalid "),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 403, message = "Current user does not have permission to approve membership request"),
- @ApiResponse(code = 404, message = "**siteId** or **inviteeId** does not exist "),
- @ApiResponse(code = 422, message = "Integrity exception or not allowed to approve membership request. "),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public void approveSiteMembershipRequest(@PathParam("siteId") String siteId, @PathParam("inviteeId") String inviteeId, SiteMembershipApprovalBody siteMembershipApprovalBody);
-
- /**
- * Create a site
- *
- * **Note:** this endpoint is available in Alfresco 5.2 and newer versions. Creates a default site with the given details. Unless explicitly specified, the site id will be generated from the site title. The site id must be unique and only contain alphanumeric and/or dash characters. Note: the id of a site cannot be updated once the site has been created. For example, to create a public site called \"Marketing\" the following body could be used: ```JSON { \"title\": \"Marketing\", \"visibility\": \"PUBLIC\" } ``` The creation of the (surf) configuration files required by Share can be skipped via the **skipConfiguration** query parameter. **Note:** if skipped then such a site will **not** work within Share. The addition of the site to the user's site favorites can be skipped via the **skipAddToFavorites** query parameter. The creator will be added as a member with Site Manager role. When you create a site, a container called **documentLibrary** is created for you in the new site. This container is the root folder for content stored in the site.
- *
- */
- @POST
- @Path("/sites")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "Create a site", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 201, message = "Successful response", response = SiteEntry.class),
- @ApiResponse(code = 400, message = "Invalid parameter: **id**, **title**, or **description** exceed the maximum length; or **id** contains invalid characters; or **siteBodyCreate** invalid "),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 409, message = "Site with the given identifier already exists"),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public SiteEntry createSite(SiteBodyCreate siteBodyCreate, @QueryParam("skipConfiguration")@DefaultValue("false") Boolean skipConfiguration, @QueryParam("skipAddToFavorites")@DefaultValue("false") Boolean skipAddToFavorites, @QueryParam("fields")List fields);
-
- /**
- * Create a site membership for group
- *
- * **Note:** this endpoint is available in Alfresco 7.0.0 and newer versions. Creates a site membership for group **groupId** on site **siteId**. You can set the **role** to one of four types: * SiteConsumer * SiteCollaborator * SiteContributor * SiteManager **Note:** You can create more than one site membership by specifying a list of group in the JSON body like this: ```JSON [ { \"role\": \"SiteConsumer\", \"id\": \"authorityId\" }, { \"role\": \"SiteConsumer\", \"id\": \"authorityId\" } ] ``` If you specify a list as input, then a paginated list rather than an entry is returned in the response body. For example: ```JSON { \"list\": { \"pagination\": { \"count\": 2, \"hasMoreItems\": false, \"totalItems\": 2, \"skipCount\": 0, \"maxItems\": 100 }, \"entries\": [ { \"entry\": { ... } }, { \"entry\": { ... } } ] } } ```
- *
- */
- @POST
- @Path("/sites/{siteId}/group-members")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "Create a site membership for group", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 201, message = "Successful response", response = SiteGroupEntry.class),
- @ApiResponse(code = 400, message = "Invalid parameter: value of **role** or **id** is invalid or **siteMembershipBodyCreate** invalid "),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 403, message = "User does not have permission to invite a Group"),
- @ApiResponse(code = 404, message = "**siteId** or **groupId** does not exist "),
- @ApiResponse(code = 409, message = "Group with this **id** is already a member"),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public SiteGroupEntry createSiteGroupMembership(@PathParam("siteId") String siteId, SiteMembershipBodyCreate siteMembershipBodyCreate, @QueryParam("fields")List fields);
-
- /**
- * Create a site membership
- *
- * Creates a site membership for person **personId** on site **siteId**. You can set the **role** to one of four types: * SiteConsumer * SiteCollaborator * SiteContributor * SiteManager **Note:** You can create more than one site membership by specifying a list of people in the JSON body like this: ```JSON [ { \"role\": \"SiteConsumer\", \"id\": \"joe\" }, { \"role\": \"SiteConsumer\", \"id\": \"fred\" } ] ``` If you specify a list as input, then a paginated list rather than an entry is returned in the response body. For example: ```JSON { \"list\": { \"pagination\": { \"count\": 2, \"hasMoreItems\": false, \"totalItems\": 2, \"skipCount\": 0, \"maxItems\": 100 }, \"entries\": [ { \"entry\": { ... } }, { \"entry\": { ... } } ] } } ```
- *
- */
- @POST
- @Path("/sites/{siteId}/members")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "Create a site membership", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 201, message = "Successful response", response = SiteMemberEntry.class),
- @ApiResponse(code = 400, message = "Invalid parameter: value of **role** or **id** is invalid or **siteMembershipBodyCreate** invalid "),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 403, message = "User does not have permission to invite a person"),
- @ApiResponse(code = 404, message = "**siteId** or **personId** does not exist "),
- @ApiResponse(code = 409, message = "Person with this **id** is already a member"),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public SiteMemberEntry createSiteMembership(@PathParam("siteId") String siteId, SiteMembershipBodyCreate siteMembershipBodyCreate, @QueryParam("fields")List fields);
-
- /**
- * Create a site membership request
- *
- * Create a site membership request for yourself on the site with the identifier of **id**, specified in the JSON body. The result of the request differs depending on the type of site. * For a **public** site, you join the site immediately as a SiteConsumer. * For a **moderated** site, your request is added to the site membership request list. The request waits for approval from the Site Manager. * You cannot request membership of a **private** site. Members are invited by the site administrator. You can use the `-me-` string in place of `<personId>` to specify the currently authenticated user. **Note:** You can create site membership requests for more than one site by specifying a list of sites in the JSON body like this: ```JSON [ { \"message\": \"Please can you add me\", \"id\": \"test-site-1\", \"title\": \"Request for test site 1\", }, { \"message\": \"Please can you add me\", \"id\": \"test-site-2\", \"title\": \"Request for test site 2\", } ] ``` If you specify a list as input, then a paginated list rather than an entry is returned in the response body. For example: ```JSON { \"list\": { \"pagination\": { \"count\": 2, \"hasMoreItems\": false, \"totalItems\": 2, \"skipCount\": 0, \"maxItems\": 100 }, \"entries\": [ { \"entry\": { ... } }, { \"entry\": { ... } } ] } } ```
- *
- */
- @POST
- @Path("/people/{personId}/site-membership-requests")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "Create a site membership request", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 201, message = "Successful response", response = SiteMembershipRequestEntry.class),
- @ApiResponse(code = 400, message = "Invalid parameter: **id** is invalid, or the user is already invited, or **siteMembershipRequestBodyCreate** invalid "),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 404, message = "**personId** or **id** does not exist "),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public SiteMembershipRequestEntry createSiteMembershipRequestForPerson(@PathParam("personId") String personId, SiteMembershipRequestBodyCreate siteMembershipRequestBodyCreate, @QueryParam("fields")List fields);
-
- /**
- * Delete a site
- *
- * **Note:** this endpoint is available in Alfresco 5.2 and newer versions. Deletes the site with **siteId**.
- *
- */
- @DELETE
- @Path("/sites/{siteId}")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "Delete a site", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 204, message = "Successful response"),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 403, message = "Current user does not have permission to delete the site that is visible to them."),
- @ApiResponse(code = 404, message = "**siteId** does not exist "),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public void deleteSite(@PathParam("siteId") String siteId, @QueryParam("permanent")@DefaultValue("false") Boolean permanent);
-
- /**
- * Delete a group membership for site
- *
- * **Note:** this endpoint is available in Alfresco 7.0.0 and newer versions. Deletes group **groupId** as a member of site **siteId**.
- *
- */
- @DELETE
- @Path("/sites/{siteId}/group-members/{groupId}")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "Delete a group membership for site", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 204, message = "Successful response"),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 404, message = "**siteId** or **groupId** does not exist "),
- @ApiResponse(code = 422, message = "Integrity exception (eg. last site member must be a site manager) or not allowed to delete groupId"),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public void deleteSiteGroupMembership(@PathParam("siteId") String siteId, @PathParam("groupId") String groupId);
-
- /**
- * Delete a site membership
- *
- * Deletes person **personId** as a member of site **siteId**. You can use the `-me-` string in place of `<personId>` to specify the currently authenticated user.
- *
- */
- @DELETE
- @Path("/sites/{siteId}/members/{personId}")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "Delete a site membership", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 204, message = "Successful response"),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 404, message = "**siteId** or **personId** does not exist "),
- @ApiResponse(code = 422, message = "Integrity exception (eg. last site member must be a site manager) or not allowed to delete member"),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public void deleteSiteMembership(@PathParam("siteId") String siteId, @PathParam("personId") String personId);
-
- /**
- * Delete a site membership
- *
- * Deletes person **personId** as a member of site **siteId**. You can use the `-me-` string in place of `<personId>` to specify the currently authenticated user.
- *
- */
- @DELETE
- @Path("/people/{personId}/sites/{siteId}")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "Delete a site membership", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 204, message = "Successful response"),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 404, message = "**personId** or **siteId** does not exist "),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public void deleteSiteMembershipForPerson(@PathParam("personId") String personId, @PathParam("siteId") String siteId);
-
- /**
- * Delete a site membership request
- *
- * Deletes the site membership request to site **siteId** for person **personId**. You can use the `-me-` string in place of `<personId>` to specify the currently authenticated user.
- *
- */
- @DELETE
- @Path("/people/{personId}/site-membership-requests/{siteId}")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "Delete a site membership request", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 204, message = "Successful response"),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 404, message = "**personId** or **siteId** does not exist "),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public void deleteSiteMembershipRequestForPerson(@PathParam("personId") String personId, @PathParam("siteId") String siteId);
-
- /**
- * Get a site
- *
- * Gets information for site **siteId**. You can use the **relations** parameter to include one or more related entities in a single response and so reduce network traffic. The entity types in Alfresco are organized in a tree structure. The **sites** entity has two children, **containers** and **members**. The following relations parameter returns all the container and member objects related to the site **siteId**: ``` containers,members ```
- *
- */
- @GET
- @Path("/sites/{siteId}")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "Get a site", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 200, message = "Successful response", response = SiteEntry.class),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 404, message = "**siteId** does not exist "),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public SiteEntry getSite(@PathParam("siteId") String siteId, @QueryParam("relations")List relations, @QueryParam("fields")List fields);
-
- /**
- * Get a site container
- *
- * Gets information on the container **containerId** in site **siteId**.
- *
- */
- @GET
- @Path("/sites/{siteId}/containers/{containerId}")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "Get a site container", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 200, message = "Successful response", response = SiteContainerEntry.class),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 404, message = "**siteId** or **containerId** does not exist "),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public SiteContainerEntry getSiteContainer(@PathParam("siteId") String siteId, @PathParam("containerId") String containerId, @QueryParam("fields")List fields);
-
- /**
- * Get information about site membership of group
- *
- * **Note:** this endpoint is available in Alfresco 7.0.0 and newer versions. Gets site membership information for group **groupId** on site **siteId**.
- *
- */
- @GET
- @Path("/sites/{siteId}/group-members/{groupId}")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "Get information about site membership of group", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 200, message = "Successful response", response = SiteGroupEntry.class),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 404, message = "**siteId** or **groupId** does not exist "),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public SiteGroupEntry getSiteGroupMembership(@PathParam("siteId") String siteId, @PathParam("groupId") String groupId, @QueryParam("fields")List fields);
-
- /**
- * Get a site membership
- *
- * Gets site membership information for person **personId** on site **siteId**. You can use the `-me-` string in place of `<personId>` to specify the currently authenticated user.
- *
- */
- @GET
- @Path("/sites/{siteId}/members/{personId}")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "Get a site membership", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 200, message = "Successful response", response = SiteMemberEntry.class),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 404, message = "**siteId** or **personId** does not exist "),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public SiteMemberEntry getSiteMembership(@PathParam("siteId") String siteId, @PathParam("personId") String personId, @QueryParam("fields")List fields);
-
- /**
- * Get a site membership
- *
- * Gets site membership information for person **personId** on site **siteId**. You can use the `-me-` string in place of `<personId>` to specify the currently authenticated user.
- *
- */
- @GET
- @Path("/people/{personId}/sites/{siteId}")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "Get a site membership", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 200, message = "Successful response", response = SiteRoleEntry.class),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 404, message = "**personId** or **siteId** does not exist "),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public SiteRoleEntry getSiteMembershipForPerson(@PathParam("personId") String personId, @PathParam("siteId") String siteId);
-
- /**
- * Get a site membership request
- *
- * Gets the site membership request for site **siteId** for person **personId**, if one exists. You can use the `-me-` string in place of `<personId>` to specify the currently authenticated user.
- *
- */
- @GET
- @Path("/people/{personId}/site-membership-requests/{siteId}")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "Get a site membership request", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 200, message = "Successful response", response = SiteMembershipRequestEntry.class),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 404, message = "**personId** or **siteId** does not exist "),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public SiteMembershipRequestEntry getSiteMembershipRequestForPerson(@PathParam("personId") String personId, @PathParam("siteId") String siteId, @QueryParam("fields")List fields);
-
- /**
- * Get site membership requests
- *
- * Get the list of site membership requests the user can action. You can use the **where** parameter to filter the returned site membership requests by **siteId**. For example: ``` (siteId=mySite) ``` The **where** parameter can also be used to filter by ***personId***. For example: ``` where=(personId=person) ``` This may be combined with the siteId filter, as shown below: ``` where=(siteId=mySite AND personId=person)) ```
- *
- */
- @GET
- @Path("/site-membership-requests")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "Get site membership requests", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 200, message = "Successful response", response = SiteMembershipRequestWithPersonPaging.class),
- @ApiResponse(code = 400, message = "Invalid parameter: value of **maxItems** or **skipCount** is invalid "),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public SiteMembershipRequestWithPersonPaging getSiteMembershipRequests(@QueryParam("skipCount")@DefaultValue("0") Integer skipCount, @QueryParam("maxItems")@DefaultValue("100") Integer maxItems, @QueryParam("where")String where, @QueryParam("fields")List fields);
-
- /**
- * List site containers
- *
- * Gets a list of containers for the site **siteId**.
- *
- */
- @GET
- @Path("/sites/{siteId}/containers")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "List site containers", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 200, message = "Successful response", response = SiteContainerPaging.class),
- @ApiResponse(code = 400, message = "Invalid parameter: value of **maxItems** or **skipCount** is invalid "),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 404, message = "**siteId** does not exist "),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public SiteContainerPaging listSiteContainers(@PathParam("siteId") String siteId, @QueryParam("skipCount")@DefaultValue("0") Integer skipCount, @QueryParam("maxItems")@DefaultValue("100") Integer maxItems, @QueryParam("fields")List fields);
-
- /**
- * List group membership for site
- *
- * **Note:** this endpoint is available in Alfresco 7.0.0 and newer versions. Gets a list of group membership for site **siteId**.
- *
- */
- @GET
- @Path("/sites/{siteId}/group-members")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "List group membership for site", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 200, message = "Successful response", response = SiteGroupPaging.class),
- @ApiResponse(code = 400, message = "Invalid parameter: value of **maxItems** or **skipCount** is invalid "),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 404, message = "**siteId** does not exist "),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public SiteGroupPaging listSiteGroups(@PathParam("siteId") String siteId, @QueryParam("skipCount")@DefaultValue("0") Integer skipCount, @QueryParam("maxItems")@DefaultValue("100") Integer maxItems, @QueryParam("fields")List fields);
-
- /**
- * List site membership requests
- *
- * Gets a list of the current site membership requests for person **personId**. You can use the `-me-` string in place of `<personId>` to specify the currently authenticated user.
- *
- */
- @GET
- @Path("/people/{personId}/site-membership-requests")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "List site membership requests", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 200, message = "Successful response", response = SiteMembershipRequestPaging.class),
- @ApiResponse(code = 400, message = "Invalid parameter: value of **maxItems** or **skipCount** is invalid "),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 404, message = "**personId** does not exist "),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public SiteMembershipRequestPaging listSiteMembershipRequestsForPerson(@PathParam("personId") String personId, @QueryParam("skipCount")@DefaultValue("0") Integer skipCount, @QueryParam("maxItems")@DefaultValue("100") Integer maxItems, @QueryParam("fields")List fields);
-
- /**
- * List site memberships
- *
- * Gets a list of site memberships for site **siteId**.
- *
- */
- @GET
- @Path("/sites/{siteId}/members")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "List site memberships", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 200, message = "Successful response", response = SiteMemberPaging.class),
- @ApiResponse(code = 400, message = "Invalid parameter: value of **maxItems** or **skipCount** is invalid "),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 404, message = "**siteId** does not exist "),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public SiteMemberPaging listSiteMemberships(@PathParam("siteId") String siteId, @QueryParam("skipCount")@DefaultValue("0") Integer skipCount, @QueryParam("maxItems")@DefaultValue("100") Integer maxItems, @QueryParam("fields")List fields, @QueryParam("where")String where);
-
- /**
- * List site memberships
- *
- * Gets a list of site membership information for person **personId**. You can use the `-me-` string in place of `<personId>` to specify the currently authenticated user. You can use the **where** parameter to filter the returned sites by **visibility** or site **preset**. Example to filter by **visibility**, use any one of: ``` (visibility='PRIVATE') (visibility='PUBLIC') (visibility='MODERATED') ``` Example to filter by site **preset**: ``` (preset='site-dashboard') ``` The default sort order for the returned list is for sites to be sorted by ascending title. You can override the default by using the **orderBy** parameter. You can specify one or more of the following fields in the **orderBy** parameter: * id * title * role
- *
- */
- @GET
- @Path("/people/{personId}/sites")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "List site memberships", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 200, message = "Successful response", response = SiteRolePaging.class),
- @ApiResponse(code = 400, message = "Invalid parameter: value of **maxItems**, **skipCount**, **orderBy**, or **where** is invalid "),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 404, message = "**personId** does not exist "),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public SiteRolePaging listSiteMembershipsForPerson(@PathParam("personId") String personId, @QueryParam("skipCount")@DefaultValue("0") Integer skipCount, @QueryParam("maxItems")@DefaultValue("100") Integer maxItems, @QueryParam("orderBy")List orderBy, @QueryParam("relations")List relations, @QueryParam("fields")List fields, @QueryParam("where")String where);
-
- /**
- * List sites
- *
- * Gets a list of sites in this repository. You can use the **where** parameter to filter the returned sites by **visibility** or site **preset**. Example to filter by **visibility**, use any one of: ``` (visibility='PRIVATE') (visibility='PUBLIC') (visibility='MODERATED') ``` Example to filter by site **preset**: ``` (preset='site-dashboard') ``` The default sort order for the returned list is for sites to be sorted by ascending title. You can override the default by using the **orderBy** parameter. You can specify one or more of the following fields in the **orderBy** parameter: * id * title * description You can use the **relations** parameter to include one or more related entities in a single response and so reduce network traffic. The entity types in Alfresco are organized in a tree structure. The **sites** entity has two children, **containers** and **members**. The following relations parameter returns all the container and member objects related to each site: ``` containers,members ```
- *
- */
- @GET
- @Path("/sites")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "List sites", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 200, message = "Successful response", response = SitePaging.class),
- @ApiResponse(code = 400, message = "Invalid parameter: value of **maxItems**, **skipCount**, **orderBy**, or **where** is invalid "),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public SitePaging listSites(@QueryParam("skipCount")@DefaultValue("0") Integer skipCount, @QueryParam("maxItems")@DefaultValue("100") Integer maxItems, @QueryParam("orderBy")List orderBy, @QueryParam("relations")List relations, @QueryParam("fields")List fields, @QueryParam("where")String where);
-
- /**
- * Reject a site membership request
- *
- * Reject a site membership request.
- *
- */
- @POST
- @Path("/sites/{siteId}/site-membership-requests/{inviteeId}/reject")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "Reject a site membership request", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 200, message = "Successful response"),
- @ApiResponse(code = 400, message = "Invalid parameter: value of **siteId** or **inviteeId** is invalid "),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 403, message = "Current user does not have permission to reject membership request"),
- @ApiResponse(code = 404, message = "**siteId** or **inviteeId** does not exist "),
- @ApiResponse(code = 422, message = "Integrity exception or not allowed to reject membership request. "),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public void rejectSiteMembershipRequest(@PathParam("siteId") String siteId, @PathParam("inviteeId") String inviteeId, SiteMembershipRejectionBody siteMembershipRejectionBody);
-
- /**
- * Update a site
- *
- * **Note:** this endpoint is available in Alfresco 5.2 and newer versions. Update the details for the given site **siteId**. Site Manager or otherwise a (site) admin can update title, description or visibility. Note: the id of a site cannot be updated once the site has been created.
- *
- */
- @PUT
- @Path("/sites/{siteId}")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "Update a site", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 200, message = "Successful response", response = SiteEntry.class),
- @ApiResponse(code = 400, message = "Invalid parameter: **siteBodyUpdate** invalid "),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 403, message = "Current user does not have permission to update the site that is visible to them."),
- @ApiResponse(code = 404, message = "**siteId** does not exist "),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public SiteEntry updateSite(@PathParam("siteId") String siteId, SiteBodyUpdate siteBodyUpdate, @QueryParam("fields")List fields);
-
- /**
- * Update site membership of group
- *
- * **Note:** this endpoint is available in Alfresco 7.0.0 and newer versions. Update the membership of person **groupId** in site **siteId**. You can set the **role** to one of four types: * SiteConsumer * SiteCollaborator * SiteContributor * SiteManager
- *
- */
- @PUT
- @Path("/sites/{siteId}/group-members/{groupId}")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "Update site membership of group", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 200, message = "Successful response", response = SiteGroupEntry.class),
- @ApiResponse(code = 400, message = "Invalid parameter: **role** does not exist or **siteMembershipBodyUpdate** invalid "),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 404, message = "**siteId** or **groupId** does not exist "),
- @ApiResponse(code = 422, message = "Integrity exception (eg. last site member must be a site manager) or not allowed to update group"),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public SiteGroupEntry updateSiteGroupMembership(@PathParam("siteId") String siteId, @PathParam("groupId") String groupId, SiteMembershipBodyUpdate siteMembershipBodyUpdate, @QueryParam("fields")List fields);
-
- /**
- * Update a site membership
- *
- * Update the membership of person **personId** in site **siteId**. You can use the `-me-` string in place of `<personId>` to specify the currently authenticated user. You can set the **role** to one of four types: * SiteConsumer * SiteCollaborator * SiteContributor * SiteManager
- *
- */
- @PUT
- @Path("/sites/{siteId}/members/{personId}")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "Update a site membership", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 200, message = "Successful response", response = SiteMemberEntry.class),
- @ApiResponse(code = 400, message = "Invalid parameter: **role** does not exist or **siteMembershipBodyUpdate** invalid "),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 404, message = "**siteId** or **personId** does not exist "),
- @ApiResponse(code = 422, message = "Integrity exception (eg. last site member must be a site manager) or not allowed to update member"),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public SiteMemberEntry updateSiteMembership(@PathParam("siteId") String siteId, @PathParam("personId") String personId, SiteMembershipBodyUpdate siteMembershipBodyUpdate, @QueryParam("fields")List fields);
-
- /**
- * Update a site membership request
- *
- * Updates the message for the site membership request to site **siteId** for person **personId**. You can use the `-me-` string in place of `<personId>` to specify the currently authenticated user.
- *
- */
- @PUT
- @Path("/people/{personId}/site-membership-requests/{siteId}")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "Update a site membership request", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 200, message = "Successful response", response = SiteMembershipRequestEntry.class),
- @ApiResponse(code = 400, message = "Invalid parameter: **id** is invalid or **siteMembershipRequestBodyUpdate** invalid "),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 404, message = "**personId** or **siteId** does not exist "),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public SiteMembershipRequestEntry updateSiteMembershipRequestForPerson(@PathParam("personId") String personId, @PathParam("siteId") String siteId, SiteMembershipRequestBodyUpdate siteMembershipRequestBodyUpdate, @QueryParam("fields")List fields);
-}
-
diff --git a/src/gen/java/com/inteligr8/alfresco/acs/api/TagsApi.java b/src/gen/java/com/inteligr8/alfresco/acs/api/TagsApi.java
deleted file mode 100644
index a35ff8c..0000000
--- a/src/gen/java/com/inteligr8/alfresco/acs/api/TagsApi.java
+++ /dev/null
@@ -1,139 +0,0 @@
-package com.inteligr8.alfresco.acs.api;
-
-import com.inteligr8.alfresco.acs.model.Error;
-import com.inteligr8.alfresco.acs.model.TagBody;
-import com.inteligr8.alfresco.acs.model.TagEntry;
-import com.inteligr8.alfresco.acs.model.TagPaging;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import io.swagger.annotations.ApiResponse;
-import io.swagger.annotations.ApiResponses;
-import java.util.List;
-import javax.ws.rs.*;
-
-/**
- * Alfresco Content Services REST API
- *
- *
**Core API** Provides access to the core features of Alfresco Content Services.
- *
- */
-@Path("/api/-default-/public/alfresco/versions/1")
-@Api(value = "/api/-default-/public/alfresco/versions/1", description = "")
-public interface TagsApi {
-
- /**
- * Create a tag for a node
- *
- * Creates a tag on the node **nodeId**. You specify the tag in a JSON body like this: ```JSON { \"tag\":\"test-tag-1\" } ``` **Note:** You can create more than one tag by specifying a list of tags in the JSON body like this: ```JSON [ { \"tag\":\"test-tag-1\" }, { \"tag\":\"test-tag-2\" } ] ``` If you specify a list as input, then a paginated list rather than an entry is returned in the response body. For example: ```JSON { \"list\": { \"pagination\": { \"count\": 2, \"hasMoreItems\": false, \"totalItems\": 2, \"skipCount\": 0, \"maxItems\": 100 }, \"entries\": [ { \"entry\": { ... } }, { \"entry\": { ... } } ] } } ```
- *
- */
- @POST
- @Path("/nodes/{nodeId}/tags")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "Create a tag for a node", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 201, message = "Successful response", response = TagEntry.class),
- @ApiResponse(code = 400, message = "Invalid parameter: **tagBodyCreate** is invalid "),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 403, message = "User does not have permission to create tags on the node"),
- @ApiResponse(code = 404, message = "**nodeId** does not exist "),
- @ApiResponse(code = 405, message = "Cannot tag a node of this type"),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public TagEntry createTagForNode(@PathParam("nodeId") String nodeId, TagBody tagBodyCreate, @QueryParam("fields")List fields);
-
- /**
- * Delete a tag from a node
- *
- * Deletes tag **tagId** from node **nodeId**.
- *
- */
- @DELETE
- @Path("/nodes/{nodeId}/tags/{tagId}")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "Delete a tag from a node", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 204, message = "Successful response"),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 403, message = "User does not have permission to delete the tag"),
- @ApiResponse(code = 404, message = "**nodeId** or **tagId** does not exist "),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public void deleteTagFromNode(@PathParam("nodeId") String nodeId, @PathParam("tagId") String tagId);
-
- /**
- * Get a tag
- *
- * Get a specific tag with **tagId**.
- *
- */
- @GET
- @Path("/tags/{tagId}")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "Get a tag", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 200, message = "Successful response", response = TagEntry.class),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 404, message = "**tagId** does not exist "),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public TagEntry getTag(@PathParam("tagId") String tagId, @QueryParam("fields")List fields);
-
- /**
- * List tags
- *
- * Gets a list of tags in this repository. You can use the **include** parameter to return additional **values** information.
- *
- */
- @GET
- @Path("/tags")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "List tags", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 200, message = "Successful response", response = TagPaging.class),
- @ApiResponse(code = 400, message = "Invalid parameter: value of **maxItems** or **skipCount** is invalid "),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public TagPaging listTags(@QueryParam("skipCount")@DefaultValue("0") Integer skipCount, @QueryParam("maxItems")@DefaultValue("100") Integer maxItems, @QueryParam("fields")List fields, @QueryParam("include")List include);
-
- /**
- * List tags for a node
- *
- * Gets a list of tags for node **nodeId**.
- *
- */
- @GET
- @Path("/nodes/{nodeId}/tags")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "List tags for a node", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 200, message = "Successful response", response = TagPaging.class),
- @ApiResponse(code = 400, message = "Invalid parameter: value of **maxItems** or **skipCount** is invalid "),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 403, message = "User does not have permission to read tags on the node"),
- @ApiResponse(code = 404, message = "**nodeId** does not exist "),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public TagPaging listTagsForNode(@PathParam("nodeId") String nodeId, @QueryParam("skipCount")@DefaultValue("0") Integer skipCount, @QueryParam("maxItems")@DefaultValue("100") Integer maxItems, @QueryParam("fields")List fields);
-
- /**
- * Update a tag
- *
- * Updates the tag **tagId**.
- *
- */
- @PUT
- @Path("/tags/{tagId}")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "Update a tag", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 200, message = "Successful response", response = TagEntry.class),
- @ApiResponse(code = 400, message = "Invalid parameter: **tagBodyUpdate** is invalid "),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 404, message = "**tagId** does not exist "),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public TagEntry updateTag(@PathParam("tagId") String tagId, TagBody tagBodyUpdate, @QueryParam("fields")List fields);
-}
-
diff --git a/src/gen/java/com/inteligr8/alfresco/acs/api/TrashcanApi.java b/src/gen/java/com/inteligr8/alfresco/acs/api/TrashcanApi.java
deleted file mode 100644
index a8664f6..0000000
--- a/src/gen/java/com/inteligr8/alfresco/acs/api/TrashcanApi.java
+++ /dev/null
@@ -1,195 +0,0 @@
-package com.inteligr8.alfresco.acs.api;
-
-import com.inteligr8.alfresco.acs.model.DeletedNodeBodyRestore;
-import com.inteligr8.alfresco.acs.model.DeletedNodeEntry;
-import com.inteligr8.alfresco.acs.model.DeletedNodesPaging;
-import com.inteligr8.alfresco.acs.model.Error;
-import com.inteligr8.alfresco.acs.model.NodeEntry;
-import com.inteligr8.alfresco.acs.model.RenditionEntry;
-import com.inteligr8.alfresco.acs.model.RenditionPaging;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import io.swagger.annotations.ApiResponse;
-import io.swagger.annotations.ApiResponses;
-import java.io.File;
-import java.util.Date;
-import java.util.List;
-import javax.ws.rs.*;
-
-/**
- * Alfresco Content Services REST API
- *
- *
**Core API** Provides access to the core features of Alfresco Content Services.
- *
- */
-@Path("/api/-default-/public/alfresco/versions/1")
-@Api(value = "/api/-default-/public/alfresco/versions/1", description = "")
-public interface TrashcanApi {
-
- /**
- * Permanently delete a deleted node
- *
- * **Note:** this endpoint is available in Alfresco 5.2 and newer versions. Permanently deletes the deleted node **nodeId**.
- *
- */
- @DELETE
- @Path("/deleted-nodes/{nodeId}")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "Permanently delete a deleted node", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 204, message = "Successful response"),
- @ApiResponse(code = 400, message = "Invalid parameter: **nodeId** is not a valid format "),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 403, message = "User does not have permission to permanently delete the deleted node"),
- @ApiResponse(code = 404, message = "**nodeId** does not exist "),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public void deleteDeletedNode(@PathParam("nodeId") String nodeId);
-
- /**
- * Get rendition information for a deleted node
- *
- * **Note:** this endpoint is available in Alfresco 5.2 and newer versions. Gets the rendition information for **renditionId** of file **nodeId**.
- *
- */
- @GET
- @Path("/deleted-nodes/{nodeId}/renditions/{renditionId}")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "Get rendition information for a deleted node", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 200, message = "Successful response", response = RenditionEntry.class),
- @ApiResponse(code = 400, message = "Invalid parameter: **nodeId** is not a valid format, or is not a file, or **renditionId** is invalid "),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 403, message = "Current user does not have permission for **nodeId**"),
- @ApiResponse(code = 404, message = "**nodeId** or **renditionId** does not exist "),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public RenditionEntry getArchivedNodeRendition(@PathParam("nodeId") String nodeId, @PathParam("renditionId") String renditionId);
-
- /**
- * Get rendition content of a deleted node
- *
- * **Note:** this endpoint is available in Alfresco 5.2 and newer versions. Gets the rendition content for **renditionId** of file **nodeId**.
- *
- */
- @GET
- @Path("/deleted-nodes/{nodeId}/renditions/{renditionId}/content")
- @Consumes({ "application/json" })
- @Produces({ "application/octet-stream" })
- @ApiOperation(value = "Get rendition content of a deleted node", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 200, message = "Successful response", response = File.class),
- @ApiResponse(code = 206, message = "Partial Content"),
- @ApiResponse(code = 304, message = "Content has not been modified since the date provided in the If-Modified-Since header"),
- @ApiResponse(code = 400, message = "Invalid parameter: **nodeId** is not a valid format, or is not a file, or **renditionId** is invalid "),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 403, message = "Current user does not have permission for **nodeId**"),
- @ApiResponse(code = 404, message = "**nodeId** or **renditionId** does not exist "),
- @ApiResponse(code = 416, message = "Range Not Satisfiable"),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public File getArchivedNodeRenditionContent(@PathParam("nodeId") String nodeId, @PathParam("renditionId") String renditionId, @QueryParam("attachment")@DefaultValue("true") Boolean attachment, @HeaderParam("If-Modified-Since") Date ifModifiedSince, @HeaderParam("Range") String range, @QueryParam("placeholder")@DefaultValue("false") Boolean placeholder);
-
- /**
- * Get a deleted node
- *
- * **Note:** this endpoint is available in Alfresco 5.2 and newer versions. Gets the specific deleted node **nodeId**.
- *
- */
- @GET
- @Path("/deleted-nodes/{nodeId}")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "Get a deleted node", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 200, message = "Successful response", response = DeletedNodeEntry.class),
- @ApiResponse(code = 400, message = "Invalid parameter: **nodeId** is not a valid format "),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 403, message = "User does not have permission to view the deleted node"),
- @ApiResponse(code = 404, message = "**nodeId** does not exist "),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public DeletedNodeEntry getDeletedNode(@PathParam("nodeId") String nodeId, @QueryParam("include")List include);
-
- /**
- * Get deleted node content
- *
- * **Note:** this endpoint is available in Alfresco 5.2 and newer versions. Gets the content of the deleted node with identifier **nodeId**.
- *
- */
- @GET
- @Path("/deleted-nodes/{nodeId}/content")
- @Consumes({ "application/json" })
- @Produces({ "application/octet-stream" })
- @ApiOperation(value = "Get deleted node content", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 200, message = "Successful response", response = File.class),
- @ApiResponse(code = 206, message = "Partial Content"),
- @ApiResponse(code = 304, message = "Content has not been modified since the date provided in the If-Modified-Since header"),
- @ApiResponse(code = 400, message = "Invalid parameter: **nodeId** is not a valid format, or is not a file "),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 403, message = "Current user does not have permission to retrieve content of **nodeId**"),
- @ApiResponse(code = 404, message = "**nodeId** does not exist "),
- @ApiResponse(code = 416, message = "Range Not Satisfiable"),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public File getDeletedNodeContent(@PathParam("nodeId") String nodeId, @QueryParam("attachment")@DefaultValue("true") Boolean attachment, @HeaderParam("If-Modified-Since") Date ifModifiedSince, @HeaderParam("Range") String range);
-
- /**
- * List renditions for a deleted node
- *
- * **Note:** this endpoint is available in Alfresco 5.2 and newer versions. Gets a list of the rendition information for each rendition of the file **nodeId**, including the rendition id. Each rendition returned has a **status**: CREATED means it is available to view or download, NOT_CREATED means the rendition can be requested. You can use the **where** parameter to filter the returned renditions by **status**. For example, the following **where** clause will return just the CREATED renditions: ``` (status='CREATED') ```
- *
- */
- @GET
- @Path("/deleted-nodes/{nodeId}/renditions")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "List renditions for a deleted node", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 200, message = "Successful response", response = RenditionPaging.class),
- @ApiResponse(code = 400, message = "Invalid parameter: **nodeId** is not a valid format, is not a file, or **where** is invalid "),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 403, message = "Current user does not have permission for **nodeId**"),
- @ApiResponse(code = 404, message = "**nodeId** does not exist "),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public RenditionPaging listDeletedNodeRenditions(@PathParam("nodeId") String nodeId, @QueryParam("where")String where);
-
- /**
- * List deleted nodes
- *
- * **Note:** this endpoint is available in Alfresco 5.2 and newer versions. Gets a list of deleted nodes for the current user. If the current user is an administrator deleted nodes for all users will be returned. The list of deleted nodes will be ordered with the most recently deleted node at the top of the list.
- *
- */
- @GET
- @Path("/deleted-nodes")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "List deleted nodes", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 200, message = "Successful response", response = DeletedNodesPaging.class),
- @ApiResponse(code = 400, message = "Invalid parameter: value of **maxItems** or **skipCount** is invalid "),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public DeletedNodesPaging listDeletedNodes(@QueryParam("skipCount")@DefaultValue("0") Integer skipCount, @QueryParam("maxItems")@DefaultValue("100") Integer maxItems, @QueryParam("include")List include);
-
- /**
- * Restore a deleted node
- *
- * **Note:** this endpoint is available in Alfresco 5.2 and newer versions. Attempts to restore the deleted node **nodeId** to its original location or to a new location. If the node is successfully restored to its former primary parent, then only the primary child association will be restored, including recursively for any primary children. It should be noted that no other secondary child associations or peer associations will be restored, for any of the nodes within the primary parent-child hierarchy of restored nodes, irrespective of whether these associations were to nodes within or outside of the restored hierarchy. Also, any previously shared link will not be restored since it is deleted at the time of delete of each node.
- *
- */
- @POST
- @Path("/deleted-nodes/{nodeId}/restore")
- @Consumes({ "application/json" })
- @Produces({ "application/json" })
- @ApiOperation(value = "Restore a deleted node", tags={ })
- @ApiResponses(value = {
- @ApiResponse(code = 200, message = "Successful response", response = NodeEntry.class),
- @ApiResponse(code = 400, message = "Invalid parameter: **nodeId** or **targetNodeId** is not a valid format "),
- @ApiResponse(code = 401, message = "Authentication failed"),
- @ApiResponse(code = 403, message = "User does not have permission to restore the deleted node or user does not have permission to the target node"),
- @ApiResponse(code = 404, message = "**nodeId** does not exist or the restore destination parent node does not exists "),
- @ApiResponse(code = 409, message = "Node name already exists in the restore destination"),
- @ApiResponse(code = 422, message = "Model integrity exception trying to restore the node"),
- @ApiResponse(code = 200, message = "Unexpected error", response = Error.class) })
- public NodeEntry restoreDeletedNode(@PathParam("nodeId") String nodeId, @QueryParam("fields")List fields, DeletedNodeBodyRestore deletedNodeBodyRestore);
-}
-
diff --git a/src/gen/java/com/inteligr8/alfresco/acs/api/TypesApi.java b/src/gen/java/com/inteligr8/alfresco/acs/api/TypesApi.java
deleted file mode 100644
index 6b023c6..0000000
--- a/src/gen/java/com/inteligr8/alfresco/acs/api/TypesApi.java
+++ /dev/null
@@ -1,59 +0,0 @@
-package com.inteligr8.alfresco.acs.api;
-
-import com.inteligr8.alfresco.acs.model.Error;
-import com.inteligr8.alfresco.acs.model.TypeEntry;
-import com.inteligr8.alfresco.acs.model.TypePaging;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import io.swagger.annotations.ApiResponse;
-import io.swagger.annotations.ApiResponses;
-import java.util.List;
-import javax.ws.rs.*;
-
-/**
- * Alfresco Content Services REST API
- *
- *