Compare commits
31 Commits
v2.0.1-acs
...
v2.1.1-acs
Author | SHA1 | Date | |
---|---|---|---|
9f0f090a9d | |||
43ef6a6130 | |||
783d93dfe2 | |||
14853ca9ca | |||
91f215ec1d | |||
c637298e3b | |||
224a40c1eb | |||
90baab3fe5 | |||
78f1153be2 | |||
3718b3afb1 | |||
b06c7a5b6e | |||
6becd9fbcd | |||
573804252b | |||
151366e787 | |||
af23be4e64 | |||
b420e53a58 | |||
4587c4d05a | |||
a11aced4e3 | |||
27fb71e636 | |||
216f8573e5 | |||
a21ad7f6cb | |||
457bdec3ec | |||
6d21a22a2e | |||
b835a9c145 | |||
afa78f27d5 | |||
11f1b54dc2 | |||
0f32bb67c0 | |||
4563273606 | |||
6ad9c87d13 | |||
abaf53d0d4 | |||
1ec8da218f |
11
.gitignore
vendored
11
.gitignore
vendored
@@ -1,10 +1,6 @@
|
||||
# Maven
|
||||
pom.xml.versionsBackup
|
||||
target
|
||||
|
||||
# Maven Invoker
|
||||
build.log
|
||||
invoker-reports
|
||||
pom.xml.versionsBackup
|
||||
|
||||
# Eclipse
|
||||
.project
|
||||
@@ -13,8 +9,9 @@ invoker-reports
|
||||
|
||||
# Visual Studio Code
|
||||
.factorypath
|
||||
.vscode
|
||||
|
||||
# Swagger Codegen
|
||||
src/gen
|
||||
.swagger-codegen
|
||||
.swagger-codegen-ignore
|
||||
.swagger*
|
||||
|
||||
|
85
pom.xml
85
pom.xml
@@ -5,7 +5,7 @@
|
||||
|
||||
<groupId>com.inteligr8.alfresco</groupId>
|
||||
<artifactId>acs-public-rest-api</artifactId>
|
||||
<version>2.0.1-acs7</version>
|
||||
<version>2.1.1-acs7</version>
|
||||
|
||||
<name>Alfresco Content Services ReST API for Java</name>
|
||||
<description>A library for building ACS v7.x JAX-RS REST API clients</description>
|
||||
@@ -44,23 +44,33 @@
|
||||
|
||||
<swagger.basePackage>com.inteligr8.alfresco.acs</swagger.basePackage>
|
||||
|
||||
<alfresco.platform.version>7.0.0</alfresco.platform.version>
|
||||
<alfresco.platform.version>7.3.0</alfresco.platform.version>
|
||||
|
||||
<jersey.version>2.35</jersey.version>
|
||||
<cxf.version>3.4.7</cxf.version>
|
||||
<jersey.version>2.39.1</jersey.version>
|
||||
<cxf.version>3.5.6</cxf.version>
|
||||
<jackson.version>2.15.1</jackson.version>
|
||||
</properties>
|
||||
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>io.swagger</groupId>
|
||||
<artifactId>swagger-jaxrs</artifactId>
|
||||
<version>1.6.2</version>
|
||||
<exclusions>
|
||||
<exclusion>
|
||||
<groupId>javax.ws.rs</groupId>
|
||||
<artifactId>jsr311-api</artifactId>
|
||||
</exclusion>
|
||||
</exclusions>
|
||||
<artifactId>swagger-annotations</artifactId>
|
||||
<version>1.6.11</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>io.swagger.core.v3</groupId>
|
||||
<artifactId>swagger-annotations</artifactId>
|
||||
<version>2.2.11</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>javax.validation</groupId>
|
||||
<artifactId>validation-api</artifactId>
|
||||
<version>2.0.1.Final</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.slf4j</groupId>
|
||||
<artifactId>slf4j-api</artifactId>
|
||||
<version>2.0.7</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>jakarta.ws.rs</groupId>
|
||||
@@ -70,7 +80,7 @@
|
||||
<dependency>
|
||||
<groupId>com.fasterxml.jackson.module</groupId>
|
||||
<artifactId>jackson-module-jaxb-annotations</artifactId>
|
||||
<version>2.12.2</version>
|
||||
<version>${jackson.version}</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.apache.cxf</groupId>
|
||||
@@ -119,9 +129,9 @@
|
||||
</executions>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>io.swagger</groupId>
|
||||
<groupId>io.swagger.codegen.v3</groupId>
|
||||
<artifactId>swagger-codegen-maven-plugin</artifactId>
|
||||
<version>2.4.21</version>
|
||||
<version>3.0.45</version>
|
||||
<configuration>
|
||||
<language>jaxrs-cxf-client</language>
|
||||
<output>${basedir}</output>
|
||||
@@ -134,6 +144,17 @@
|
||||
<generateModelDocumentation>false</generateModelDocumentation>
|
||||
</configuration>
|
||||
<executions>
|
||||
<!-- search before core, as ContentInfo is incorrect in search -->
|
||||
<execution>
|
||||
<id>swagger-search-codegen</id>
|
||||
<phase>generate-sources</phase>
|
||||
<goals>
|
||||
<goal>generate</goal>
|
||||
</goals>
|
||||
<configuration>
|
||||
<inputSpec>${project.build.directory}/dependency/definitions/alfresco-search.yaml</inputSpec>
|
||||
</configuration>
|
||||
</execution>
|
||||
<execution>
|
||||
<id>swagger-core-codegen</id>
|
||||
<phase>generate-sources</phase>
|
||||
@@ -145,13 +166,13 @@
|
||||
</configuration>
|
||||
</execution>
|
||||
<execution>
|
||||
<id>swagger-search-codegen</id>
|
||||
<id>swagger-workflow-codegen</id>
|
||||
<phase>generate-sources</phase>
|
||||
<goals>
|
||||
<goal>generate</goal>
|
||||
</goals>
|
||||
<configuration>
|
||||
<inputSpec>${project.build.directory}/dependency/definitions/alfresco-search.yaml</inputSpec>
|
||||
<inputSpec>${project.build.directory}/dependency/definitions/alfresco-workflow.yaml</inputSpec>
|
||||
</configuration>
|
||||
</execution>
|
||||
<execution>
|
||||
@@ -189,7 +210,7 @@
|
||||
<plugin>
|
||||
<groupId>com.inteligr8</groupId>
|
||||
<artifactId>regex-maven-plugin</artifactId>
|
||||
<version>1.0.3</version>
|
||||
<version>1.0.5</version>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>fix-baseUrl</id>
|
||||
@@ -211,24 +232,32 @@
|
||||
<replacement></replacement>
|
||||
</regex>
|
||||
<regex>
|
||||
<pattern>(\*\*Core API\*\*[^@]*)@Path\("/"\)([^@]*)@Api\(value = "/"</pattern>
|
||||
<replacement>$1@Path("/api/-default-/public/alfresco/versions/1")$2@Api(value = "/api/-default-/public/alfresco/versions/1"</replacement>
|
||||
<pattern>public NodeEntry createNode\(@Multipart.*</pattern>
|
||||
<previousPattern>/\*\*</previousPattern>
|
||||
</regex>
|
||||
<regex>
|
||||
<pattern>(\*\*Search API\*\*[^@]*)@Path\("/"\)([^@]*)@Api\(value = "/"</pattern>
|
||||
<replacement>$1@Path("/api/-default-/public/search/versions/1")$2@Api(value = "/api/-default-/public/search/versions/1"</replacement>
|
||||
<pattern>(\*\*Core API\*\*[^@]*)@Path\("/"\)</pattern>
|
||||
<replacement>$1@Path("/api/-default-/public/alfresco/versions/1")</replacement>
|
||||
</regex>
|
||||
<regex>
|
||||
<pattern>(\*\*Model API\*\*[^@]*)@Path\("/"\)([^@]*)@Api\(value = "/"</pattern>
|
||||
<replacement>$1@Path("/api/-default-/public/alfresco/versions/1")$2@Api(value = "/api/-default-/public/alfresco/versions/1"</replacement>
|
||||
<pattern>(\*\*Workflow API\*\*[^@]*)@Path\("/"\)</pattern>
|
||||
<replacement>$1@Path("/api/-default-/public/workflow/versions/1")</replacement>
|
||||
</regex>
|
||||
<regex>
|
||||
<pattern>(\*\*Authentication API\*\*[^@]*)@Path\("/"\)([^@]*)@Api\(value = "/"</pattern>
|
||||
<replacement>$1@Path("/api/-default-/public/authentication/versions/1")$2@Api(value = "/api/-default-/public/authentication/versions/1"</replacement>
|
||||
<pattern>(\*\*Authentication API\*\*[^@]*)@Path\("/"\)</pattern>
|
||||
<replacement>$1@Path("/api/-default-/public/authentication/versions/1")</replacement>
|
||||
</regex>
|
||||
<regex>
|
||||
<pattern>(\*\*Discovery API\*\*[^@]*)@Path\("/"\)([^@]*)@Api\(value = "/"</pattern>
|
||||
<replacement>$1@Path("/api")$2@Api(value = "/api"</replacement>
|
||||
<pattern>(\*\*Discovery API\*\*[^@]*)@Path\("/"\)</pattern>
|
||||
<replacement>$1@Path("/api")</replacement>
|
||||
</regex>
|
||||
<regex>
|
||||
<pattern>(\*\*Search API\*\*[^@]*)@Path\("/"\)</pattern>
|
||||
<replacement>$1@Path("/api/-default-/public/search/versions/1")</replacement>
|
||||
</regex>
|
||||
<regex>
|
||||
<pattern>(\*\*Model API\*\*[^@]*)@Path\("/"\)</pattern>
|
||||
<replacement>$1@Path("/api/-default-/public/alfresco/versions/1")</replacement>
|
||||
</regex>
|
||||
</regexes>
|
||||
</configuration>
|
||||
|
@@ -20,6 +20,7 @@ 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.DeploymentsApi;
|
||||
import com.inteligr8.alfresco.acs.api.DiscoveryApi;
|
||||
import com.inteligr8.alfresco.acs.api.DownloadsApi;
|
||||
import com.inteligr8.alfresco.acs.api.FavoritesApi;
|
||||
@@ -29,6 +30,8 @@ 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.ProcessDefinitionsApi;
|
||||
import com.inteligr8.alfresco.acs.api.ProcessesApi;
|
||||
import com.inteligr8.alfresco.acs.api.QueriesApi;
|
||||
import com.inteligr8.alfresco.acs.api.RatingsApi;
|
||||
import com.inteligr8.alfresco.acs.api.RenditionsApi;
|
||||
@@ -36,6 +39,7 @@ import com.inteligr8.alfresco.acs.api.SearchApi;
|
||||
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.TasksApi;
|
||||
import com.inteligr8.alfresco.acs.api.TrashcanApi;
|
||||
import com.inteligr8.alfresco.acs.api.TypesApi;
|
||||
import com.inteligr8.alfresco.acs.api.V0Api;
|
||||
@@ -74,6 +78,10 @@ public interface AcsPublicRestApi {
|
||||
default CommentsApi getCommentsApi() {
|
||||
return this.getApi(CommentsApi.class);
|
||||
}
|
||||
|
||||
default DeploymentsApi getDeploymentsApi() {
|
||||
return this.getApi(DeploymentsApi.class);
|
||||
}
|
||||
|
||||
default DiscoveryApi getDiscoveryApi() {
|
||||
return this.getApi(DiscoveryApi.class);
|
||||
@@ -102,10 +110,18 @@ public interface AcsPublicRestApi {
|
||||
default PeopleApi getPeopleApi() {
|
||||
return this.getApi(PeopleApi.class);
|
||||
}
|
||||
|
||||
default PreferencesApi getPreferencesApi() {
|
||||
return this.getApi(PreferencesApi.class);
|
||||
}
|
||||
|
||||
default PreferencesApi getPreferencesApi() {
|
||||
return this.getApi(PreferencesApi.class);
|
||||
}
|
||||
|
||||
default ProcessDefinitionsApi getProcessDefinitionApi() {
|
||||
return this.getApi(ProcessDefinitionsApi.class);
|
||||
}
|
||||
|
||||
default ProcessesApi getProcessesApi() {
|
||||
return this.getApi(ProcessesApi.class);
|
||||
}
|
||||
|
||||
default ProbesApi getProbesApi() {
|
||||
return this.getApi(ProbesApi.class);
|
||||
@@ -138,6 +154,10 @@ public interface AcsPublicRestApi {
|
||||
default TagsApi getTagsApi() {
|
||||
return this.getApi(TagsApi.class);
|
||||
}
|
||||
|
||||
default TasksApi getTasksApi() {
|
||||
return this.getApi(TasksApi.class);
|
||||
}
|
||||
|
||||
default TrashcanApi getTrashcanApi() {
|
||||
return this.getApi(TrashcanApi.class);
|
||||
|
@@ -17,6 +17,7 @@ package com.inteligr8.alfresco.acs.model;
|
||||
import java.io.ByteArrayInputStream;
|
||||
import java.io.IOException;
|
||||
import java.io.InputStream;
|
||||
import java.util.Collection;
|
||||
import java.util.LinkedList;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
@@ -90,9 +91,18 @@ 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) {
|
||||
Map<String, ?> props = (Map<String, ?>)nodeBody.getProperties();
|
||||
@SuppressWarnings("unchecked")
|
||||
Map<String, ?> props = (Map<String, ?>)nodeBody.getProperties();
|
||||
for (Entry<String, ?> prop : props.entrySet()) {
|
||||
if (prop.getValue() != null) {
|
||||
if (prop.getValue() instanceof Collection<?>) {
|
||||
for (Object value : (Collection<?>)prop.getValue())
|
||||
if (value != null)
|
||||
atts.add(toAttachment(prop.getKey(), value.toString()));
|
||||
} else if (prop.getValue() instanceof Object[]) {
|
||||
for (Object value : (Object[])prop.getValue())
|
||||
if (value != null)
|
||||
atts.add(toAttachment(prop.getKey(), value.toString()));
|
||||
} else if (prop.getValue() != null) {
|
||||
// FIXME convert dates as ACS would expect them to be formatted
|
||||
atts.add(toAttachment(prop.getKey(), prop.getValue().toString()));
|
||||
}
|
||||
|
@@ -17,6 +17,7 @@ package com.inteligr8.alfresco.acs.model;
|
||||
import java.io.IOException;
|
||||
import java.io.InputStream;
|
||||
import java.text.ParseException;
|
||||
import java.util.Collection;
|
||||
import java.util.LinkedList;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
@@ -86,12 +87,21 @@ 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) {
|
||||
Map<String, ?> props = (Map<String, ?>)nodeBody.getProperties();
|
||||
@SuppressWarnings("unchecked")
|
||||
Map<String, ?> props = (Map<String, ?>)nodeBody.getProperties();
|
||||
for (Entry<String, ?> 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()));
|
||||
}
|
||||
if (prop.getValue() instanceof Collection<?>) {
|
||||
for (Object value : (Collection<?>)prop.getValue())
|
||||
if (value != null)
|
||||
fields.add(new FormDataBodyPart(prop.getKey(), value.toString()));
|
||||
} else if (prop.getValue() instanceof Object[]) {
|
||||
for (Object value : (Object[])prop.getValue())
|
||||
if (value != null)
|
||||
fields.add(new FormDataBodyPart(prop.getKey(), value.toString()));
|
||||
} else if (prop.getValue() != null) {
|
||||
// FIXME convert dates as ACS would expect them to be formatted
|
||||
fields.add(new FormDataBodyPart(prop.getKey(), prop.getValue().toString()));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user