Loading src/main/java/com/inteligr8/activiti/api/ExecutionApi.java +1 −1 Original line number Diff line number Diff line Loading @@ -163,7 +163,7 @@ public interface ExecutionApi { @GET @Produces({ MediaType.APPLICATION_JSON }) public ResultList<Execution> getByAny( ResultList<Execution> getByAny( @QueryParam("id") String executionId, @QueryParam("activityId") String activityId, @QueryParam("processDefinitionKey") String processDefinitionKey, Loading src/main/java/com/inteligr8/alfresco/activiti/api/TemplatesApi.java 0 → 100644 +132 −0 Original line number Diff line number Diff line /* * 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 <https://www.gnu.org/licenses/>. */ package com.inteligr8.alfresco.activiti.api; import javax.ws.rs.Consumes; import javax.ws.rs.DELETE; import javax.ws.rs.GET; 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 javax.ws.rs.core.MediaType; import javax.ws.rs.core.Response; import com.inteligr8.activiti.model.ResultList; import com.inteligr8.alfresco.activiti.model.DocumentTemplateLight; import com.inteligr8.alfresco.activiti.model.EmailTemplate; import com.inteligr8.alfresco.activiti.model.EmailTemplateLight; /** * This is an undocumented API. * * @author brian@inteligr8.com */ @Path("/app/rest") public interface TemplatesApi { @GET @Path("email-templates/system") @Produces({ MediaType.APPLICATION_JSON }) public ResultList<EmailTemplateLight> getSystemEmailTemplates( @QueryParam("tenantId") Integer tenantId); @GET @Path("email-templates/custom") @Produces({ MediaType.APPLICATION_JSON }) public ResultList<EmailTemplateLight> getCustomEmailTemplates( @QueryParam("nameFilter") String nameFilter, @QueryParam("start") Integer start, @QueryParam("size") Integer size, @QueryParam("sort") String sort, @QueryParam("tenantId") Integer tenantId); @GET @Path("email-templates/custom/{templateName}") @Produces({ MediaType.APPLICATION_JSON }) public EmailTemplate getSystemEmailTemplate( @PathParam("templateName") String name, @QueryParam("tenantId") Integer tenantId); @GET @Path("email-templates/custom/{templateId}") @Produces({ MediaType.APPLICATION_JSON }) public EmailTemplate getCustomEmailTemplate( @PathParam("templateId") int id, @QueryParam("tenantId") Integer tenantId); @POST @Path("email-templates/custom") @Consumes({ MediaType.APPLICATION_JSON }) @Produces({ MediaType.APPLICATION_JSON }) public EmailTemplateLight createCustomEmailTemplate( EmailTemplate template); @PUT @Path("email-templates/custom/{templateName}") @Consumes({ MediaType.APPLICATION_JSON }) @Produces({ MediaType.APPLICATION_JSON }) public EmailTemplate updateSystemEmailTemplate( @PathParam("templateName") String name, EmailTemplate template); @PUT @Path("email-templates/custom/{templateId}") @Consumes({ MediaType.APPLICATION_JSON }) @Produces({ MediaType.APPLICATION_JSON }) public EmailTemplate updateCustomEmailTemplate( @PathParam("templateId") int id, EmailTemplate template); @DELETE @Path("email-templates/custom/{templateId}") public void deleteCustomEmailTemplate( @PathParam("templateId") int id, @QueryParam("tenantId") Integer tenantId); @GET @Path("document-templates") @Produces({ MediaType.APPLICATION_JSON }) public ResultList<DocumentTemplateLight> getDocumentTemplates( @QueryParam("nameFilter") String nameFilter, @QueryParam("start") Integer start, @QueryParam("size") Integer size, @QueryParam("sort") String sort, @QueryParam("tenantId") Integer tenantId); default Response getDocumentTemplate( DocumentTemplateLight template) { return this.getDocumentTemplate(template.getCreated().toInstant().toEpochMilli()); } @GET @Path("document-templates/{templateId}/file") @Produces({ "application/msword", "application/vnd.openxmlformats-officedocument.wordprocessingml.document", "application/vnd.openxmlformats-officedocument.wordprocessingml.template" }) public Response getDocumentTemplate( @QueryParam("version") long version); @DELETE @Path("document-templates/{templateId}") public void deleteDocumentTemplate(); } src/main/java/com/inteligr8/alfresco/activiti/api/TemplatesCxfApi.java 0 → 100644 +50 −0 Original line number Diff line number Diff line /* * 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 <https://www.gnu.org/licenses/>. */ package com.inteligr8.alfresco.activiti.api; 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.DocumentTemplateLight; import com.inteligr8.alfresco.activiti.model.FileMultipartCxf; /** * This is an undocumented API. * * @author brian@inteligr8.com */ @Path("/app/rest") public interface TemplatesCxfApi extends TemplatesApi { @POST @Path("admin/document-templates") @Produces({ MediaType.APPLICATION_JSON }) public DocumentTemplateLight createDocumentTemplate( @QueryParam("tenantId") Integer tenantId, FileMultipartCxf file); @POST @Path("admin/document-templates/{templateId}") @Produces({ MediaType.APPLICATION_JSON }) public DocumentTemplateLight updateDocumentTemplate( @PathParam("templateId") int id, @QueryParam("tenantId") Integer tenantId, FileMultipartCxf file); } src/main/java/com/inteligr8/alfresco/activiti/api/TemplatesJerseyApi.java 0 → 100644 +50 −0 Original line number Diff line number Diff line /* * 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 <https://www.gnu.org/licenses/>. */ package com.inteligr8.alfresco.activiti.api; 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.DocumentTemplateLight; import com.inteligr8.alfresco.activiti.model.FileMultipartJersey; /** * This is an undocumented API. * * @author brian@inteligr8.com */ @Path("/app/rest") public interface TemplatesJerseyApi extends TemplatesApi { @POST @Path("admin/document-templates") @Produces({ MediaType.APPLICATION_JSON }) public DocumentTemplateLight createDocumentTemplate( @QueryParam("tenantId") Integer tenantId, FileMultipartJersey file); @POST @Path("admin/document-templates/{templateId}") @Produces({ MediaType.APPLICATION_JSON }) public DocumentTemplateLight updateDocumentTemplate( @PathParam("templateId") int id, @QueryParam("tenantId") Integer tenantId, FileMultipartJersey file); } src/main/java/com/inteligr8/alfresco/activiti/model/BaseTemplateLight.java 0 → 100644 +64 −0 Original line number Diff line number Diff line package com.inteligr8.alfresco.activiti.model; import java.time.OffsetDateTime; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonInclude; import com.fasterxml.jackson.annotation.JsonProperty; @JsonIgnoreProperties(ignoreUnknown = true) @JsonInclude(JsonInclude.Include.NON_NULL) public class BaseTemplateLight { @JsonProperty private Integer id; @JsonProperty(required = true) private String name; @JsonProperty private OffsetDateTime created; @JsonProperty private UserLight createdBy; @JsonProperty private Integer tenantId; public Integer getId() { return id; } public void setId(Integer id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } public OffsetDateTime getCreated() { return created; } public void setCreated(OffsetDateTime created) { this.created = created; } public UserLight getCreatedBy() { return createdBy; } public void setCreatedBy(UserLight createdBy) { this.createdBy = createdBy; } public Integer getTenantId() { return tenantId; } public void setTenantId(Integer tenantId) { this.tenantId = tenantId; } } Loading
src/main/java/com/inteligr8/activiti/api/ExecutionApi.java +1 −1 Original line number Diff line number Diff line Loading @@ -163,7 +163,7 @@ public interface ExecutionApi { @GET @Produces({ MediaType.APPLICATION_JSON }) public ResultList<Execution> getByAny( ResultList<Execution> getByAny( @QueryParam("id") String executionId, @QueryParam("activityId") String activityId, @QueryParam("processDefinitionKey") String processDefinitionKey, Loading
src/main/java/com/inteligr8/alfresco/activiti/api/TemplatesApi.java 0 → 100644 +132 −0 Original line number Diff line number Diff line /* * 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 <https://www.gnu.org/licenses/>. */ package com.inteligr8.alfresco.activiti.api; import javax.ws.rs.Consumes; import javax.ws.rs.DELETE; import javax.ws.rs.GET; 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 javax.ws.rs.core.MediaType; import javax.ws.rs.core.Response; import com.inteligr8.activiti.model.ResultList; import com.inteligr8.alfresco.activiti.model.DocumentTemplateLight; import com.inteligr8.alfresco.activiti.model.EmailTemplate; import com.inteligr8.alfresco.activiti.model.EmailTemplateLight; /** * This is an undocumented API. * * @author brian@inteligr8.com */ @Path("/app/rest") public interface TemplatesApi { @GET @Path("email-templates/system") @Produces({ MediaType.APPLICATION_JSON }) public ResultList<EmailTemplateLight> getSystemEmailTemplates( @QueryParam("tenantId") Integer tenantId); @GET @Path("email-templates/custom") @Produces({ MediaType.APPLICATION_JSON }) public ResultList<EmailTemplateLight> getCustomEmailTemplates( @QueryParam("nameFilter") String nameFilter, @QueryParam("start") Integer start, @QueryParam("size") Integer size, @QueryParam("sort") String sort, @QueryParam("tenantId") Integer tenantId); @GET @Path("email-templates/custom/{templateName}") @Produces({ MediaType.APPLICATION_JSON }) public EmailTemplate getSystemEmailTemplate( @PathParam("templateName") String name, @QueryParam("tenantId") Integer tenantId); @GET @Path("email-templates/custom/{templateId}") @Produces({ MediaType.APPLICATION_JSON }) public EmailTemplate getCustomEmailTemplate( @PathParam("templateId") int id, @QueryParam("tenantId") Integer tenantId); @POST @Path("email-templates/custom") @Consumes({ MediaType.APPLICATION_JSON }) @Produces({ MediaType.APPLICATION_JSON }) public EmailTemplateLight createCustomEmailTemplate( EmailTemplate template); @PUT @Path("email-templates/custom/{templateName}") @Consumes({ MediaType.APPLICATION_JSON }) @Produces({ MediaType.APPLICATION_JSON }) public EmailTemplate updateSystemEmailTemplate( @PathParam("templateName") String name, EmailTemplate template); @PUT @Path("email-templates/custom/{templateId}") @Consumes({ MediaType.APPLICATION_JSON }) @Produces({ MediaType.APPLICATION_JSON }) public EmailTemplate updateCustomEmailTemplate( @PathParam("templateId") int id, EmailTemplate template); @DELETE @Path("email-templates/custom/{templateId}") public void deleteCustomEmailTemplate( @PathParam("templateId") int id, @QueryParam("tenantId") Integer tenantId); @GET @Path("document-templates") @Produces({ MediaType.APPLICATION_JSON }) public ResultList<DocumentTemplateLight> getDocumentTemplates( @QueryParam("nameFilter") String nameFilter, @QueryParam("start") Integer start, @QueryParam("size") Integer size, @QueryParam("sort") String sort, @QueryParam("tenantId") Integer tenantId); default Response getDocumentTemplate( DocumentTemplateLight template) { return this.getDocumentTemplate(template.getCreated().toInstant().toEpochMilli()); } @GET @Path("document-templates/{templateId}/file") @Produces({ "application/msword", "application/vnd.openxmlformats-officedocument.wordprocessingml.document", "application/vnd.openxmlformats-officedocument.wordprocessingml.template" }) public Response getDocumentTemplate( @QueryParam("version") long version); @DELETE @Path("document-templates/{templateId}") public void deleteDocumentTemplate(); }
src/main/java/com/inteligr8/alfresco/activiti/api/TemplatesCxfApi.java 0 → 100644 +50 −0 Original line number Diff line number Diff line /* * 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 <https://www.gnu.org/licenses/>. */ package com.inteligr8.alfresco.activiti.api; 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.DocumentTemplateLight; import com.inteligr8.alfresco.activiti.model.FileMultipartCxf; /** * This is an undocumented API. * * @author brian@inteligr8.com */ @Path("/app/rest") public interface TemplatesCxfApi extends TemplatesApi { @POST @Path("admin/document-templates") @Produces({ MediaType.APPLICATION_JSON }) public DocumentTemplateLight createDocumentTemplate( @QueryParam("tenantId") Integer tenantId, FileMultipartCxf file); @POST @Path("admin/document-templates/{templateId}") @Produces({ MediaType.APPLICATION_JSON }) public DocumentTemplateLight updateDocumentTemplate( @PathParam("templateId") int id, @QueryParam("tenantId") Integer tenantId, FileMultipartCxf file); }
src/main/java/com/inteligr8/alfresco/activiti/api/TemplatesJerseyApi.java 0 → 100644 +50 −0 Original line number Diff line number Diff line /* * 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 <https://www.gnu.org/licenses/>. */ package com.inteligr8.alfresco.activiti.api; 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.DocumentTemplateLight; import com.inteligr8.alfresco.activiti.model.FileMultipartJersey; /** * This is an undocumented API. * * @author brian@inteligr8.com */ @Path("/app/rest") public interface TemplatesJerseyApi extends TemplatesApi { @POST @Path("admin/document-templates") @Produces({ MediaType.APPLICATION_JSON }) public DocumentTemplateLight createDocumentTemplate( @QueryParam("tenantId") Integer tenantId, FileMultipartJersey file); @POST @Path("admin/document-templates/{templateId}") @Produces({ MediaType.APPLICATION_JSON }) public DocumentTemplateLight updateDocumentTemplate( @PathParam("templateId") int id, @QueryParam("tenantId") Integer tenantId, FileMultipartJersey file); }
src/main/java/com/inteligr8/alfresco/activiti/model/BaseTemplateLight.java 0 → 100644 +64 −0 Original line number Diff line number Diff line package com.inteligr8.alfresco.activiti.model; import java.time.OffsetDateTime; import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonInclude; import com.fasterxml.jackson.annotation.JsonProperty; @JsonIgnoreProperties(ignoreUnknown = true) @JsonInclude(JsonInclude.Include.NON_NULL) public class BaseTemplateLight { @JsonProperty private Integer id; @JsonProperty(required = true) private String name; @JsonProperty private OffsetDateTime created; @JsonProperty private UserLight createdBy; @JsonProperty private Integer tenantId; public Integer getId() { return id; } public void setId(Integer id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } public OffsetDateTime getCreated() { return created; } public void setCreated(OffsetDateTime created) { this.created = created; } public UserLight getCreatedBy() { return createdBy; } public void setCreatedBy(UserLight createdBy) { this.createdBy = createdBy; } public Integer getTenantId() { return tenantId; } public void setTenantId(Integer tenantId) { this.tenantId = tenantId; } }