Commit 1e17f5f6 authored by Brian Long's avatar Brian Long
Browse files

Merge branch 'develop' into stable

parents 7eba0541 8697d67b
Loading
Loading
Loading
Loading
+15 −0
Original line number Diff line number Diff line
@@ -41,6 +41,9 @@
		<maven.compiler.source>8</maven.compiler.source>
		<maven.compiler.target>8</maven.compiler.target>
		<maven.compiler.debuglevel>lines,vars,source</maven.compiler.debuglevel>
		
		<jersey.version>2.35</jersey.version>
		<cxf.version>3.4.7</cxf.version>
	</properties>

	<dependencies>
@@ -54,6 +57,18 @@
			<artifactId>jackson-module-jaxb-annotations</artifactId>
			<version>2.12.2</version>
		</dependency>
		<dependency>
			<groupId>org.apache.cxf</groupId>
			<artifactId>cxf-rt-frontend-jaxrs</artifactId>
			<version>${cxf.version}</version>
			<optional>true</optional>
		</dependency>
		<dependency>
			<groupId>org.glassfish.jersey.media</groupId>
			<artifactId>jersey-media-multipart</artifactId>
			<version>${jersey.version}</version>
			<optional>true</optional>
		</dependency>
	</dependencies>

	<profiles>
+18 −0
Original line number Diff line number Diff line
package com.inteligr8.alfresco.activiti;

import com.inteligr8.alfresco.activiti.api.AppDefinitionsCxfApi;

/**
 * This interface appends Apache CXF implementation specific methods to the
 * JAX-RS API of the APS Public ReST API.  This is due to a lack of multi-part
 * in the JAX-RS specification.
 * 
 * @author brian@inteligr8.com
 */
public interface ApsPublicRestCxfApi extends ApsPublicRestApi {
	
	default AppDefinitionsCxfApi getAppDefinitionsCxfApi() {
		return this.getApi(AppDefinitionsCxfApi.class);
	}

}
+18 −0
Original line number Diff line number Diff line
package com.inteligr8.alfresco.activiti;

import com.inteligr8.alfresco.activiti.api.AppDefinitionsJerseyApi;

/**
 * This interface appends Jersey implementation specific methods to the JAX-RS
 * API of the APS Public ReST API.  This is due to a lack of multi-part in the
 * JAX-RS specification.
 * 
 * @author brian@inteligr8.com
 */
public interface ApsPublicRestJerseyApi extends ApsPublicRestApi {
	
	default AppDefinitionsJerseyApi getAppDefinitionsJerseyApi() {
		return this.getApi(AppDefinitionsJerseyApi.class);
	}

}
+51 −0
Original line number Diff line number Diff line

package com.inteligr8.alfresco.activiti.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.QueryParam;
import javax.ws.rs.core.MediaType;

import com.inteligr8.alfresco.activiti.model.AppDefinitionRepresentation;
import com.inteligr8.alfresco.activiti.model.AppDefinitionUpdateResultRepresentation;
import com.inteligr8.alfresco.activiti.model.FileMultipartCxf;

@Path("/api/enterprise/app-definitions")
public interface AppDefinitionsCxfApi {

    @POST
    @Path("import")
    @Consumes({ MediaType.MULTIPART_FORM_DATA })
    @Produces({ MediaType.APPLICATION_JSON })
    AppDefinitionRepresentation import_(
    		FileMultipartCxf body,
    		@QueryParam("renewIdmEntries") Boolean renewIdmEntries);

    @POST
    @Path("{modelId}/import")
    @Consumes({ MediaType.MULTIPART_FORM_DATA })
    @Produces({ MediaType.APPLICATION_JSON })
    AppDefinitionRepresentation import_(
    		@PathParam("modelId") Long appId,
    		FileMultipartCxf body,
    		@QueryParam("renewIdmEntries") Boolean renewIdmEntries);

    @POST
    @Path("publish-app")
    @Consumes({ MediaType.MULTIPART_FORM_DATA })
    @Produces({ MediaType.APPLICATION_JSON })
    AppDefinitionUpdateResultRepresentation publishApp(
    		FileMultipartCxf body);

    @POST
    @Path("{modelId}/publish-app")
    @Consumes({ MediaType.MULTIPART_FORM_DATA })
    @Produces({ MediaType.APPLICATION_JSON })
    AppDefinitionUpdateResultRepresentation publishApp(
    		@PathParam("modelId") Long appId,
    		FileMultipartCxf body);

}
+51 −0
Original line number Diff line number Diff line

package com.inteligr8.alfresco.activiti.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.QueryParam;
import javax.ws.rs.core.MediaType;

import com.inteligr8.alfresco.activiti.model.AppDefinitionRepresentation;
import com.inteligr8.alfresco.activiti.model.AppDefinitionUpdateResultRepresentation;
import com.inteligr8.alfresco.activiti.model.FileMultipartJersey;

@Path("/api/enterprise/app-definitions")
public interface AppDefinitionsJerseyApi {

    @POST
    @Path("import")
    @Consumes({ MediaType.MULTIPART_FORM_DATA })
    @Produces({ MediaType.APPLICATION_JSON })
    AppDefinitionRepresentation importApp(
    		FileMultipartJersey file,
    		@QueryParam("renewIdmEntries") Boolean renewIdmEntries);

    @POST
    @Path("{modelId}/import")
    @Consumes({ MediaType.MULTIPART_FORM_DATA })
    @Produces({ MediaType.APPLICATION_JSON })
    AppDefinitionRepresentation importApp(
    		@PathParam("modelId") Long appId,
    		FileMultipartJersey file,
    		@QueryParam("renewIdmEntries") Boolean renewIdmEntries);

    @POST
    @Path("publish-app")
    @Consumes({ MediaType.MULTIPART_FORM_DATA })
    @Produces({ MediaType.APPLICATION_JSON })
    AppDefinitionUpdateResultRepresentation publishApp(
    		FileMultipartJersey file);

    @POST
    @Path("{modelId}/publish-app")
    @Consumes({ MediaType.MULTIPART_FORM_DATA })
    @Produces({ MediaType.APPLICATION_JSON })
    AppDefinitionUpdateResultRepresentation publishApp(
    		@PathParam("modelId") Long appId,
    		FileMultipartJersey file);

}
Loading