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.ModelsApi;
|
||||||
import com.inteligr8.alfresco.activiti.api.ProcessInstancesApi;
|
import com.inteligr8.alfresco.activiti.api.ProcessInstancesApi;
|
||||||
import com.inteligr8.alfresco.activiti.api.ProfileApi;
|
import com.inteligr8.alfresco.activiti.api.ProfileApi;
|
||||||
|
import com.inteligr8.alfresco.activiti.api.ShareApi;
|
||||||
import com.inteligr8.alfresco.activiti.api.TasksApi;
|
import com.inteligr8.alfresco.activiti.api.TasksApi;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -45,5 +46,13 @@ public interface ApsPublicRestApi {
|
|||||||
default TasksApi getTasksApi() {
|
default TasksApi getTasksApi() {
|
||||||
return this.getApi(TasksApi.class);
|
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