Compare commits
89
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
84ef1e37ec | ||
|
|
03302ba9f6 | ||
|
|
8398cf7a02 | ||
|
|
af280928ef | ||
|
|
27a3d2c447 | ||
|
|
90f8dca117 | ||
|
|
a3752a4c5d | ||
|
|
e62e84b1c2 | ||
|
|
b3f48b4967 | ||
|
|
ac4c6d1514 | ||
|
|
613e6f1d71 | ||
|
|
573b52e5d9 | ||
|
|
35338dcce4 | ||
|
|
d46b65424e | ||
|
|
c53b22200f | ||
|
|
6a646f1adc | ||
|
|
27f2c2677c | ||
|
|
76dc420043 | ||
|
|
7270ff6c96 | ||
|
|
9f0f090a9d | ||
|
|
43ef6a6130 | ||
|
|
783d93dfe2 | ||
|
|
14853ca9ca | ||
|
|
91f215ec1d | ||
|
|
c637298e3b | ||
|
|
224a40c1eb | ||
|
|
90baab3fe5 | ||
|
|
78f1153be2 | ||
|
|
3718b3afb1 | ||
|
|
b06c7a5b6e | ||
|
|
6becd9fbcd | ||
|
|
573804252b | ||
|
|
151366e787 | ||
|
|
216f8573e5 | ||
|
|
a21ad7f6cb | ||
|
|
457bdec3ec | ||
|
|
6d21a22a2e | ||
|
|
b835a9c145 | ||
|
|
afa78f27d5 | ||
|
|
11f1b54dc2 | ||
|
|
0f32bb67c0 | ||
|
|
0be66eba2b | ||
|
|
39bdc3ab0d | ||
|
|
89515eb147 | ||
|
|
12b4544f81 | ||
|
|
0db79d05bb | ||
|
|
e80401167a | ||
|
|
6ab29b64f3 | ||
|
|
2d05f7a2a5 | ||
|
|
c84f11868e | ||
|
|
ca54c5f893 | ||
|
|
af33dc3730 | ||
|
|
038237e2aa | ||
|
|
29a13ac7b2 | ||
|
|
50c6cf6199 | ||
|
|
2d05a1a7d0 | ||
|
|
f8967b535e | ||
|
|
a70dfe2d60 | ||
|
|
e9adb1bf2f | ||
|
|
898cb702e9 | ||
|
|
8fcaed758d | ||
|
|
920aeb4ec4 | ||
|
|
a015ed5101 | ||
|
|
4ddb9aafd4 | ||
|
|
7b0963617e | ||
|
|
52010dc76e | ||
|
|
cac4c90781 | ||
|
|
117efaeedd | ||
|
|
b3275519ff | ||
|
|
3093d2bdc4 | ||
|
|
068aff951e | ||
|
|
76ac68d0e4 | ||
|
|
9e0499b243 | ||
|
|
eb0ab01355 | ||
|
|
105868b5df | ||
|
|
0e8d522769 | ||
|
|
7185dd225e | ||
|
|
1e4f420f47 | ||
|
|
64330e3ca4 | ||
|
|
8e538cfec5 | ||
|
|
d0c1e92bce | ||
|
|
c879fa41b7 | ||
|
|
10b8a4c982 | ||
|
|
7dd7cc0fd4 | ||
|
|
e9ea115849 | ||
|
|
5741c77a45 | ||
|
|
3bbda05066 | ||
|
|
cf1da9b6f1 | ||
|
|
1f48c3196f |
@@ -5,10 +5,10 @@
|
||||
|
||||
<groupId>com.inteligr8.alfresco</groupId>
|
||||
<artifactId>acs-public-rest-api</artifactId>
|
||||
<version>2.1-SNAPSHOT-acs60</version>
|
||||
<version>3.0.2-acs26</version>
|
||||
|
||||
<name>Alfresco Content Services ReST API for Java</name>
|
||||
<description>A library for building ACS v6.0.x JAX-RS REST API clients</description>
|
||||
<description>A library for building ACS JAX-RS REST API clients</description>
|
||||
<url>https://bitbucket.org/inteligr8/acs-public-rest-api</url>
|
||||
|
||||
<licenses>
|
||||
@@ -38,44 +38,49 @@
|
||||
|
||||
<properties>
|
||||
<project.build.sourceEncoding>utf-8</project.build.sourceEncoding>
|
||||
<maven.compiler.source>8</maven.compiler.source>
|
||||
<maven.compiler.target>8</maven.compiler.target>
|
||||
<maven.compiler.source>11</maven.compiler.source>
|
||||
<maven.compiler.target>11</maven.compiler.target>
|
||||
<maven.compiler.debuglevel>lines,vars,source</maven.compiler.debuglevel>
|
||||
|
||||
<swagger.basePackage>com.inteligr8.alfresco.acs</swagger.basePackage>
|
||||
|
||||
<alfresco.platform.version>6.0.0-ea</alfresco.platform.version>
|
||||
<alfresco.platform.version>26.1.0</alfresco.platform.version>
|
||||
|
||||
<jersey.version>2.39.1</jersey.version>
|
||||
<cxf.version>3.5.6</cxf.version>
|
||||
<jackson.version>2.15.1</jackson.version>
|
||||
<jersey.version>4.0.2</jersey.version>
|
||||
<cxf.version>4.1.5</cxf.version>
|
||||
<jackson.version>2.21.2</jackson.version>
|
||||
</properties>
|
||||
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>io.swagger</groupId>
|
||||
<artifactId>swagger-annotations</artifactId>
|
||||
<version>1.6.11</version>
|
||||
<version>1.6.16</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>io.swagger.core.v3</groupId>
|
||||
<artifactId>swagger-annotations</artifactId>
|
||||
<version>2.2.11</version>
|
||||
<version>2.2.43</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>javax.validation</groupId>
|
||||
<artifactId>validation-api</artifactId>
|
||||
<version>2.0.1.Final</version>
|
||||
<groupId>jakarta.activation</groupId>
|
||||
<artifactId>jakarta.activation-api</artifactId>
|
||||
<version>2.1.4</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.slf4j</groupId>
|
||||
<artifactId>slf4j-api</artifactId>
|
||||
<version>2.0.7</version>
|
||||
<version>2.0.17</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>jakarta.ws.rs</groupId>
|
||||
<artifactId>jakarta.ws.rs-api</artifactId>
|
||||
<version>2.1.6</version>
|
||||
<version>3.1.0</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>jakarta.xml.bind</groupId>
|
||||
<artifactId>jakarta.xml.bind-api</artifactId>
|
||||
<version>4.0.5</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>com.fasterxml.jackson.module</groupId>
|
||||
@@ -97,10 +102,42 @@
|
||||
</dependencies>
|
||||
|
||||
<build>
|
||||
<pluginManagement>
|
||||
<plugins>
|
||||
<plugin>
|
||||
<artifactId>maven-clean-plugin</artifactId>
|
||||
<version>3.5.0</version>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-dependency-plugin</artifactId>
|
||||
<version>3.10.0</version>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>io.swagger.codegen.v3</groupId>
|
||||
<artifactId>swagger-codegen-maven-plugin</artifactId>
|
||||
<version>3.0.68</version>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>com.inteligr8</groupId>
|
||||
<artifactId>regex-maven-plugin</artifactId>
|
||||
<version>1.0.7</version>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>net.revelc.code</groupId>
|
||||
<artifactId>impsort-maven-plugin</artifactId>
|
||||
<version>1.12.0</version>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.codehaus.mojo</groupId>
|
||||
<artifactId>build-helper-maven-plugin</artifactId>
|
||||
<version>3.6.1</version>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</pluginManagement>
|
||||
<plugins>
|
||||
<plugin>
|
||||
<artifactId>maven-clean-plugin</artifactId>
|
||||
<version>3.1.0</version>
|
||||
<configuration>
|
||||
<filesets>
|
||||
<fileset>
|
||||
@@ -115,7 +152,6 @@
|
||||
<plugin>
|
||||
<groupId>org.apache.maven.plugins</groupId>
|
||||
<artifactId>maven-dependency-plugin</artifactId>
|
||||
<version>3.3.0</version>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>download-api-explorer</id>
|
||||
@@ -131,9 +167,11 @@
|
||||
<plugin>
|
||||
<groupId>io.swagger.codegen.v3</groupId>
|
||||
<artifactId>swagger-codegen-maven-plugin</artifactId>
|
||||
<version>3.0.45</version>
|
||||
<configuration>
|
||||
<language>jaxrs-cxf-client</language>
|
||||
<configOptions>
|
||||
<jakarta>true</jakarta>
|
||||
</configOptions>
|
||||
<output>${basedir}</output>
|
||||
<apiPackage>${swagger.basePackage}.api</apiPackage>
|
||||
<modelPackage>${swagger.basePackage}.model</modelPackage>
|
||||
@@ -144,6 +182,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>
|
||||
@@ -164,16 +213,6 @@
|
||||
<inputSpec>${project.build.directory}/dependency/definitions/alfresco-workflow.yaml</inputSpec>
|
||||
</configuration>
|
||||
</execution>
|
||||
<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-auth-codegen</id>
|
||||
<phase>generate-sources</phase>
|
||||
@@ -194,12 +233,21 @@
|
||||
<inputSpec>${project.build.directory}/dependency/definitions/alfresco-discovery.yaml</inputSpec>
|
||||
</configuration>
|
||||
</execution>
|
||||
<execution>
|
||||
<id>swagger-model-codegen</id>
|
||||
<phase>generate-sources</phase>
|
||||
<goals>
|
||||
<goal>generate</goal>
|
||||
</goals>
|
||||
<configuration>
|
||||
<inputSpec>${project.build.directory}/dependency/definitions/alfresco-model.yaml</inputSpec>
|
||||
</configuration>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>com.inteligr8</groupId>
|
||||
<artifactId>regex-maven-plugin</artifactId>
|
||||
<version>1.0.5</version>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>fix-baseUrl</id>
|
||||
@@ -244,6 +292,10 @@
|
||||
<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>
|
||||
</execution>
|
||||
@@ -269,12 +321,37 @@
|
||||
</regexes>
|
||||
</configuration>
|
||||
</execution>
|
||||
<execution>
|
||||
<id>fix-NodeBodyUpdateProperties</id>
|
||||
<phase>generate-sources</phase>
|
||||
<goals>
|
||||
<goal>replace-file</goal>
|
||||
</goals>
|
||||
<configuration>
|
||||
<filesets>
|
||||
<fileset>
|
||||
<directory>${basedir}/src/gen/java/com/inteligr8/alfresco/acs/model</directory>
|
||||
<outputDirectory>${basedir}/src/gen/java/com/inteligr8/alfresco/acs/model</outputDirectory>
|
||||
</fileset>
|
||||
</filesets>
|
||||
<allowMultiLineMatch>true</allowMultiLineMatch>
|
||||
<regexes>
|
||||
<regex>
|
||||
<pattern>Map<String, String> properties</pattern>
|
||||
<replacement>Map<String, Object> properties</replacement>
|
||||
</regex>
|
||||
<regex>
|
||||
<pattern>Map<String, String> getProperties</pattern>
|
||||
<replacement>Map<String, Object> getProperties</replacement>
|
||||
</regex>
|
||||
</regexes>
|
||||
</configuration>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>net.revelc.code</groupId>
|
||||
<artifactId>impsort-maven-plugin</artifactId>
|
||||
<version>1.6.2</version>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>organize-imports</id>
|
||||
@@ -295,7 +372,6 @@
|
||||
<plugin>
|
||||
<groupId>org.codehaus.mojo</groupId>
|
||||
<artifactId>build-helper-maven-plugin</artifactId>
|
||||
<version>3.2.0</version>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>add-gensrc</id>
|
||||
@@ -316,7 +392,7 @@
|
||||
|
||||
<profiles>
|
||||
<profile>
|
||||
<id>ossrh-release</id>
|
||||
<id>central-publish</id>
|
||||
<properties>
|
||||
<maven.deploy.skip>true</maven.deploy.skip>
|
||||
</properties>
|
||||
@@ -334,7 +410,6 @@
|
||||
</plugin>
|
||||
<plugin>
|
||||
<artifactId>maven-javadoc-plugin</artifactId>
|
||||
<version>3.3.2</version>
|
||||
<executions>
|
||||
<execution>
|
||||
<id>javadoc</id>
|
||||
@@ -358,19 +433,20 @@
|
||||
</executions>
|
||||
</plugin>
|
||||
<plugin>
|
||||
<groupId>org.sonatype.plugins</groupId>
|
||||
<artifactId>nexus-staging-maven-plugin</artifactId>
|
||||
<version>1.6.13</version>
|
||||
<groupId>org.sonatype.central</groupId>
|
||||
<artifactId>central-publishing-maven-plugin</artifactId>
|
||||
<version>0.10.0</version>
|
||||
<extensions>true</extensions>
|
||||
<configuration>
|
||||
<serverId>ossrh</serverId>
|
||||
<nexusUrl>https://s01.oss.sonatype.org/</nexusUrl>
|
||||
<autoReleaseAfterClose>true</autoReleaseAfterClose>
|
||||
<publishingServerId>central</publishingServerId>
|
||||
<autoPublish>true</autoPublish>
|
||||
</configuration>
|
||||
<!-- for some reason this is required... -->
|
||||
<executions>
|
||||
<execution>
|
||||
<id>ossrh-deploy</id>
|
||||
<id>deploy</id>
|
||||
<phase>deploy</phase>
|
||||
<goals><goal>deploy</goal></goals>
|
||||
<goals><goal>publish</goal></goals>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
|
||||
@@ -14,7 +14,9 @@
|
||||
*/
|
||||
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;
|
||||
@@ -27,6 +29,7 @@ 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.ProcessDefinitionsApi;
|
||||
import com.inteligr8.alfresco.acs.api.ProcessesApi;
|
||||
import com.inteligr8.alfresco.acs.api.QueriesApi;
|
||||
@@ -38,6 +41,7 @@ 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;
|
||||
import com.inteligr8.alfresco.acs.api.VersionsApi;
|
||||
|
||||
@@ -51,9 +55,17 @@ public interface AcsPublicRestApi {
|
||||
|
||||
<T> T getApi(Class<T> 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);
|
||||
@@ -111,6 +123,10 @@ public interface AcsPublicRestApi {
|
||||
return this.getApi(ProcessesApi.class);
|
||||
}
|
||||
|
||||
default ProbesApi getProbesApi() {
|
||||
return this.getApi(ProbesApi.class);
|
||||
}
|
||||
|
||||
default QueriesApi getQueriesApi() {
|
||||
return this.getApi(QueriesApi.class);
|
||||
}
|
||||
@@ -147,6 +163,10 @@ public interface AcsPublicRestApi {
|
||||
return this.getApi(TrashcanApi.class);
|
||||
}
|
||||
|
||||
default TypesApi getTypesApi() {
|
||||
return this.getApi(TypesApi.class);
|
||||
}
|
||||
|
||||
default VersionsApi getVersionsApi() {
|
||||
return this.getApi(VersionsApi.class);
|
||||
}
|
||||
|
||||
@@ -14,12 +14,12 @@
|
||||
*/
|
||||
package com.inteligr8.alfresco.acs.api;
|
||||
|
||||
import javax.ws.rs.Consumes;
|
||||
import javax.ws.rs.POST;
|
||||
import javax.ws.rs.Path;
|
||||
import javax.ws.rs.PathParam;
|
||||
import javax.ws.rs.Produces;
|
||||
import javax.ws.rs.core.MediaType;
|
||||
import jakarta.ws.rs.Consumes;
|
||||
import jakarta.ws.rs.POST;
|
||||
import jakarta.ws.rs.Path;
|
||||
import jakarta.ws.rs.PathParam;
|
||||
import jakarta.ws.rs.Produces;
|
||||
import jakarta.ws.rs.core.MediaType;
|
||||
|
||||
import com.inteligr8.alfresco.acs.model.Error;
|
||||
import com.inteligr8.alfresco.acs.model.NodeBodyCreateMultipartCxf;
|
||||
|
||||
@@ -14,12 +14,12 @@
|
||||
*/
|
||||
package com.inteligr8.alfresco.acs.api;
|
||||
|
||||
import javax.ws.rs.Consumes;
|
||||
import javax.ws.rs.POST;
|
||||
import javax.ws.rs.Path;
|
||||
import javax.ws.rs.PathParam;
|
||||
import javax.ws.rs.Produces;
|
||||
import javax.ws.rs.core.MediaType;
|
||||
import jakarta.ws.rs.Consumes;
|
||||
import jakarta.ws.rs.POST;
|
||||
import jakarta.ws.rs.Path;
|
||||
import jakarta.ws.rs.PathParam;
|
||||
import jakarta.ws.rs.Produces;
|
||||
import jakarta.ws.rs.core.MediaType;
|
||||
|
||||
import com.inteligr8.alfresco.acs.model.Error;
|
||||
import com.inteligr8.alfresco.acs.model.NodeBodyCreateMultipartJersey;
|
||||
|
||||
@@ -16,11 +16,11 @@ package com.inteligr8.alfresco.acs.api;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import javax.ws.rs.GET;
|
||||
import javax.ws.rs.Path;
|
||||
import javax.ws.rs.PathParam;
|
||||
import javax.ws.rs.Produces;
|
||||
import javax.ws.rs.QueryParam;
|
||||
import jakarta.ws.rs.GET;
|
||||
import jakarta.ws.rs.Path;
|
||||
import jakarta.ws.rs.PathParam;
|
||||
import jakarta.ws.rs.Produces;
|
||||
import jakarta.ws.rs.QueryParam;
|
||||
|
||||
import com.inteligr8.alfresco.acs.model.v0.AssociationInfo;
|
||||
import com.inteligr8.alfresco.acs.model.v0.ClassInfo;
|
||||
|
||||
@@ -17,12 +17,13 @@ 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;
|
||||
import java.util.Map.Entry;
|
||||
|
||||
import javax.ws.rs.core.MediaType;
|
||||
import jakarta.ws.rs.core.MediaType;
|
||||
|
||||
import org.apache.cxf.jaxrs.ext.multipart.Attachment;
|
||||
import org.apache.cxf.jaxrs.ext.multipart.ContentDisposition;
|
||||
@@ -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,12 +17,13 @@ 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;
|
||||
import java.util.Map.Entry;
|
||||
|
||||
import javax.ws.rs.core.MediaType;
|
||||
import jakarta.ws.rs.core.MediaType;
|
||||
|
||||
import org.glassfish.jersey.media.multipart.BodyPart;
|
||||
import org.glassfish.jersey.media.multipart.FormDataBodyPart;
|
||||
@@ -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