diff --git a/asie-api/src/main/java/com/inteligr8/alfresco/asie/api/CoreAdminApi.java b/asie-api/src/main/java/com/inteligr8/alfresco/asie/api/CoreAdminApi.java index 112c3d1..e4ca52c 100644 --- a/asie-api/src/main/java/com/inteligr8/alfresco/asie/api/CoreAdminApi.java +++ b/asie-api/src/main/java/com/inteligr8/alfresco/asie/api/CoreAdminApi.java @@ -7,6 +7,7 @@ import com.inteligr8.alfresco.asie.model.core.DisableIndexingRequest; import com.inteligr8.alfresco.asie.model.core.EnableIndexingRequest; import com.inteligr8.alfresco.asie.model.core.FixAction; import com.inteligr8.alfresco.asie.model.core.FixRequest; +import com.inteligr8.alfresco.asie.model.core.IndexRequest; import com.inteligr8.alfresco.asie.model.core.IndexingStatusAction; import com.inteligr8.alfresco.asie.model.core.NewCoreRequest; import com.inteligr8.alfresco.asie.model.core.NewDefaultIndexRequest; @@ -61,6 +62,10 @@ public interface CoreAdminApi extends com.inteligr8.solr.api.CoreAdminApi { @Produces(MediaType.APPLICATION_JSON) ActionCoreResponse purge(@BeanParam PurgeRequest request); + @GET + @Produces(MediaType.APPLICATION_JSON) + ActionCoreResponse index(@BeanParam IndexRequest request); + @GET @Produces(MediaType.APPLICATION_JSON) ActionCoreResponse reindex(@BeanParam ReindexRequest request); diff --git a/asie-api/src/main/java/com/inteligr8/alfresco/asie/model/core/IndexRequest.java b/asie-api/src/main/java/com/inteligr8/alfresco/asie/model/core/IndexRequest.java new file mode 100644 index 0000000..865a1fb --- /dev/null +++ b/asie-api/src/main/java/com/inteligr8/alfresco/asie/model/core/IndexRequest.java @@ -0,0 +1,106 @@ +package com.inteligr8.alfresco.asie.model.core; + +import com.inteligr8.solr.model.JsonFormattedResponseRequest; + +import jakarta.annotation.Nonnull; +import jakarta.ws.rs.DefaultValue; +import jakarta.ws.rs.QueryParam; + +public class IndexRequest extends JsonFormattedResponseRequest { + + private static final String ACTION = "index"; + + @QueryParam("action") + @DefaultValue(ACTION) + @Nonnull + private String action = ACTION; + + @QueryParam("core") + private String core; + + @QueryParam("txid") + private Long transactionId; + + @QueryParam("acltxid") + private Long aclTransactionId; + + @QueryParam("nodeId") + private Long nodeId; + + @QueryParam("aclid") + private Long aclId; + + public String getAction() { + return action; + } + + public void setAction(String action) { + this.action = action; + } + + public String getCore() { + return core; + } + + public void setCore(String core) { + this.core = core; + } + + public IndexRequest withCore(String core) { + this.core = core; + return this; + } + + public Long getTransactionId() { + return transactionId; + } + + public void setTransactionId(Long transactionId) { + this.transactionId = transactionId; + } + + public IndexRequest withTransactionId(Long transactionId) { + this.transactionId = transactionId; + return this; + } + + public Long getAclTransactionId() { + return aclTransactionId; + } + + public void setAclTransactionId(Long aclTransactionId) { + this.aclTransactionId = aclTransactionId; + } + + public IndexRequest withAclTransactionId(Long aclTransactionId) { + this.aclTransactionId = aclTransactionId; + return this; + } + + public Long getNodeId() { + return nodeId; + } + + public void setNodeId(Long nodeId) { + this.nodeId = nodeId; + } + + public IndexRequest withNodeId(Long nodeId) { + this.nodeId = nodeId; + return this; + } + + public Long getAclId() { + return aclId; + } + + public void setAclId(Long aclId) { + this.aclId = aclId; + } + + public IndexRequest withAclId(Long aclId) { + this.aclId = aclId; + return this; + } + +}