added undocumented ShareApi
This commit is contained in:
parent
ed9fe6dfc5
commit
c38b82f75b
@ -6,6 +6,7 @@ import com.inteligr8.alfresco.activiti.api.AppVersionApi;
|
||||
import com.inteligr8.alfresco.activiti.api.ModelsApi;
|
||||
import com.inteligr8.alfresco.activiti.api.ProcessInstancesApi;
|
||||
import com.inteligr8.alfresco.activiti.api.ProfileApi;
|
||||
import com.inteligr8.alfresco.activiti.api.ShareApi;
|
||||
import com.inteligr8.alfresco.activiti.api.TasksApi;
|
||||
|
||||
/**
|
||||
@ -45,5 +46,13 @@ public interface ApsPublicRestApi {
|
||||
default TasksApi getTasksApi() {
|
||||
return this.getApi(TasksApi.class);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* The following are not part of the official open source or enterprise APIs
|
||||
*/
|
||||
default ShareApi getShareApi() {
|
||||
return this.getApi(ShareApi.class);
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -0,0 +1,37 @@
|
||||
|
||||
package com.inteligr8.alfresco.activiti.api;
|
||||
|
||||
import javax.ws.rs.Consumes;
|
||||
import javax.ws.rs.GET;
|
||||
import javax.ws.rs.PUT;
|
||||
import javax.ws.rs.Path;
|
||||
import javax.ws.rs.PathParam;
|
||||
import javax.ws.rs.Produces;
|
||||
import javax.ws.rs.core.MediaType;
|
||||
|
||||
import com.inteligr8.alfresco.activiti.model.ResultList;
|
||||
import com.inteligr8.alfresco.activiti.model.ShareInfoRequest;
|
||||
import com.inteligr8.alfresco.activiti.model.SharePermission;
|
||||
|
||||
/**
|
||||
* This is an undocumented API.
|
||||
*
|
||||
* @author brian@inteligr8.com
|
||||
*/
|
||||
@Path("/app/rest/models")
|
||||
public interface ShareApi {
|
||||
|
||||
@GET
|
||||
@Path("/{modelId}/share-info")
|
||||
@Produces({ MediaType.APPLICATION_JSON })
|
||||
public ResultList<SharePermission> getShareInfo(
|
||||
@PathParam("modelId") String modelId);
|
||||
|
||||
@PUT
|
||||
@Path("/{modelId}/share-info")
|
||||
@Consumes({ MediaType.APPLICATION_JSON })
|
||||
public void setShareInfo(
|
||||
@PathParam("modelId") String modelId,
|
||||
ShareInfoRequest request);
|
||||
|
||||
}
|
@ -0,0 +1,33 @@
|
||||
package com.inteligr8.alfresco.activiti.model;
|
||||
|
||||
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 Permission extends PermissionLight {
|
||||
|
||||
@JsonProperty
|
||||
private UserLight person;
|
||||
@JsonProperty
|
||||
private GroupLight group;
|
||||
|
||||
public UserLight getPerson() {
|
||||
return person;
|
||||
}
|
||||
|
||||
public void setPerson(UserLight person) {
|
||||
this.person = person;
|
||||
}
|
||||
|
||||
public GroupLight getGroup() {
|
||||
return group;
|
||||
}
|
||||
|
||||
public void setGroup(GroupLight group) {
|
||||
this.group = group;
|
||||
}
|
||||
|
||||
|
||||
}
|
@ -0,0 +1,13 @@
|
||||
package com.inteligr8.alfresco.activiti.model;
|
||||
|
||||
import com.fasterxml.jackson.annotation.JsonProperty;
|
||||
|
||||
public enum PermissionLevel {
|
||||
|
||||
@JsonProperty("write")
|
||||
Write,
|
||||
|
||||
@JsonProperty("read")
|
||||
Read
|
||||
|
||||
}
|
@ -0,0 +1,32 @@
|
||||
package com.inteligr8.alfresco.activiti.model;
|
||||
|
||||
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 PermissionLight {
|
||||
|
||||
@JsonProperty
|
||||
private String id;
|
||||
@JsonProperty
|
||||
private PermissionLevel permission;
|
||||
|
||||
public String getId() {
|
||||
return id;
|
||||
}
|
||||
|
||||
public void setId(String id) {
|
||||
this.id = id;
|
||||
}
|
||||
|
||||
public PermissionLevel getPermission() {
|
||||
return permission;
|
||||
}
|
||||
|
||||
public void setPermission(PermissionLevel permission) {
|
||||
this.permission = permission;
|
||||
}
|
||||
|
||||
}
|
@ -0,0 +1,20 @@
|
||||
package com.inteligr8.alfresco.activiti.model;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
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 ShareInfoRequest {
|
||||
|
||||
@JsonProperty
|
||||
private List<PermissionLight> added;
|
||||
@JsonProperty
|
||||
private List<PermissionLight> removed;
|
||||
@JsonProperty
|
||||
private List<PermissionLight> updated;
|
||||
|
||||
}
|
@ -0,0 +1,34 @@
|
||||
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 SharePermission extends Permission {
|
||||
|
||||
@JsonProperty
|
||||
private OffsetDateTime shareDate;
|
||||
@JsonProperty
|
||||
private Long sharedBy;
|
||||
|
||||
public OffsetDateTime getShareDate() {
|
||||
return shareDate;
|
||||
}
|
||||
|
||||
public void setShareDate(OffsetDateTime shareDate) {
|
||||
this.shareDate = shareDate;
|
||||
}
|
||||
|
||||
public Long getSharedBy() {
|
||||
return sharedBy;
|
||||
}
|
||||
|
||||
public void setSharedBy(Long sharedBy) {
|
||||
this.sharedBy = sharedBy;
|
||||
}
|
||||
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user