mirror of
https://github.com/Alfresco/alfresco-community-repo.git
synced 2025-07-31 17:39:05 +00:00
Merge branch 'xperimental/RM-2812_MarkPublicAPIs' into 'master'
Xperimental/rm 2812 Mark Public APIs First attempt to mark classes that should be part of the public API with \@AlfrescoPublicAPI. I have also added a couple of \@deprecated annotations to classes where I thought it made sense, and added comments to classes that I wanted to add to the public API but couldn't (due to their contract being dependent on non-public API classes). See merge request !138
This commit is contained in:
@@ -31,29 +31,32 @@ import java.io.Serializable;
|
||||
import java.util.Date;
|
||||
import java.util.Map;
|
||||
|
||||
import org.alfresco.api.AlfrescoPublicApi;
|
||||
import org.alfresco.module.org_alfresco_module_rm.action.RecordsManagementAction;
|
||||
import org.alfresco.service.cmr.repository.NodeRef;
|
||||
|
||||
/**
|
||||
* Deprecated records management audit interface methods.
|
||||
*
|
||||
*
|
||||
* @author Roy Wetherall
|
||||
* @since 2.1
|
||||
* @deprecated as of 2.1, see {@link RecordsManagementAuditService}.
|
||||
*/
|
||||
public interface RecordsManagementAuditServiceDeprecated
|
||||
@AlfrescoPublicApi
|
||||
public interface RecordsManagementAuditServiceDeprecated
|
||||
{
|
||||
/**
|
||||
* @deprecated as of 2.1, see {@link #stop(NodeRef)}
|
||||
*/
|
||||
@Deprecated
|
||||
void stop();
|
||||
|
||||
|
||||
/**
|
||||
* @deprecated as of 2.1, see {@link #clear(NodeRef)}
|
||||
*/
|
||||
@Deprecated
|
||||
void clear();
|
||||
|
||||
void clear();
|
||||
|
||||
/**
|
||||
* @deprecated as of 2.1, see {@link #isEnabled(NodeRef)}
|
||||
*/
|
||||
@@ -65,12 +68,12 @@ public interface RecordsManagementAuditServiceDeprecated
|
||||
*/
|
||||
@Deprecated
|
||||
Date getDateLastStarted();
|
||||
|
||||
|
||||
/**
|
||||
* @deprecated as of 2.1, see {@link #getDateLastStopped(NodeRef)}
|
||||
*/
|
||||
Date getDateLastStopped();
|
||||
|
||||
|
||||
/**
|
||||
* @deprecated as of 2.1
|
||||
*/
|
||||
|
@@ -30,6 +30,7 @@ package org.alfresco.module.org_alfresco_module_rm.action;
|
||||
import java.io.Serializable;
|
||||
import java.util.Map;
|
||||
|
||||
import org.alfresco.api.AlfrescoPublicApi;
|
||||
import org.alfresco.service.cmr.repository.NodeRef;
|
||||
|
||||
/**
|
||||
@@ -37,6 +38,7 @@ import org.alfresco.service.cmr.repository.NodeRef;
|
||||
*
|
||||
* @author Roy Wetherall
|
||||
*/
|
||||
@AlfrescoPublicApi
|
||||
public interface RecordsManagementAction
|
||||
{
|
||||
/**
|
||||
|
@@ -27,12 +27,15 @@
|
||||
|
||||
package org.alfresco.module.org_alfresco_module_rm.action;
|
||||
|
||||
import org.alfresco.api.AlfrescoPublicApi;
|
||||
|
||||
/**
|
||||
* Record Management Action Condition
|
||||
*
|
||||
* @author Roy Wetherall
|
||||
* @since 2.1
|
||||
*/
|
||||
@AlfrescoPublicApi
|
||||
public interface RecordsManagementActionCondition
|
||||
{
|
||||
/**
|
||||
|
@@ -27,16 +27,18 @@
|
||||
|
||||
package org.alfresco.module.org_alfresco_module_rm.action;
|
||||
|
||||
import org.alfresco.api.AlfrescoPublicApi;
|
||||
import org.alfresco.service.cmr.action.ActionConditionDefinition;
|
||||
|
||||
/**
|
||||
* Records management condition definition.
|
||||
*
|
||||
*
|
||||
* Primarily used as a marker interface.
|
||||
*
|
||||
*
|
||||
* @author Roy Wetherall
|
||||
* @since 2.1
|
||||
*/
|
||||
@AlfrescoPublicApi
|
||||
public interface RecordsManagementActionConditionDefinition extends ActionConditionDefinition
|
||||
{
|
||||
}
|
||||
|
@@ -29,15 +29,17 @@ package org.alfresco.module.org_alfresco_module_rm.action;
|
||||
|
||||
import java.util.Set;
|
||||
|
||||
import org.alfresco.api.AlfrescoPublicApi;
|
||||
import org.alfresco.module.org_alfresco_module_rm.fileplan.FilePlanComponentKind;
|
||||
import org.alfresco.service.cmr.action.ActionDefinition;
|
||||
|
||||
/**
|
||||
* Extended action definition interface.
|
||||
*
|
||||
*
|
||||
* @author Roy Wetherall
|
||||
* @since 2.1
|
||||
*/
|
||||
@AlfrescoPublicApi
|
||||
public interface RecordsManagementActionDefinition extends ActionDefinition
|
||||
{
|
||||
/**
|
||||
|
@@ -27,26 +27,29 @@
|
||||
|
||||
package org.alfresco.module.org_alfresco_module_rm.action;
|
||||
|
||||
import org.alfresco.api.AlfrescoPublicApi;
|
||||
|
||||
/**
|
||||
* Records management action result.
|
||||
*
|
||||
*
|
||||
* @author Roy Wetherall
|
||||
*/
|
||||
@AlfrescoPublicApi
|
||||
public class RecordsManagementActionResult
|
||||
{
|
||||
/** Result value */
|
||||
private Object value;
|
||||
|
||||
|
||||
/**
|
||||
* Constructor.
|
||||
*
|
||||
*
|
||||
* @param value result value
|
||||
*/
|
||||
public RecordsManagementActionResult(Object value)
|
||||
{
|
||||
this.value = value;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* @return result value
|
||||
*/
|
||||
|
@@ -31,6 +31,7 @@ import java.io.Serializable;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
import org.alfresco.api.AlfrescoPublicApi;
|
||||
import org.alfresco.service.cmr.repository.NodeRef;
|
||||
|
||||
|
||||
@@ -39,6 +40,7 @@ import org.alfresco.service.cmr.repository.NodeRef;
|
||||
*
|
||||
* @author Roy Wetherall
|
||||
*/
|
||||
@AlfrescoPublicApi
|
||||
public interface RecordsManagementActionService
|
||||
{
|
||||
/**
|
||||
|
@@ -27,17 +27,20 @@
|
||||
|
||||
package org.alfresco.module.org_alfresco_module_rm.admin;
|
||||
|
||||
import org.alfresco.api.AlfrescoPublicApi;
|
||||
|
||||
/**
|
||||
* Custom metadata exception.
|
||||
*
|
||||
*
|
||||
* @author Roy Wethearll
|
||||
* @since 2.1
|
||||
* @see org.alfresco.module.org_alfresco_module_rm.CustomMetadataException
|
||||
*/
|
||||
@AlfrescoPublicApi
|
||||
public abstract class CustomMetadataException extends Exception
|
||||
{
|
||||
private static final long serialVersionUID = -6676112294794381360L;
|
||||
|
||||
|
||||
public CustomMetadataException(String msg)
|
||||
{
|
||||
super(msg);
|
||||
|
@@ -27,21 +27,23 @@
|
||||
|
||||
package org.alfresco.module.org_alfresco_module_rm.admin;
|
||||
|
||||
import org.alfresco.api.AlfrescoPublicApi;
|
||||
import org.springframework.extensions.surf.util.I18NUtil;
|
||||
|
||||
/**
|
||||
* Custom metadata exception.
|
||||
*
|
||||
*
|
||||
* @author Roy Wethearll
|
||||
* @since 2.1
|
||||
* @see org.alfresco.module.org_alfresco_module_rm.PropertyAlreadyExistsMetadataException
|
||||
*/
|
||||
@AlfrescoPublicApi
|
||||
public class PropertyAlreadyExistsMetadataException extends CustomMetadataException
|
||||
{
|
||||
private static final long serialVersionUID = -6194867814140009959L;
|
||||
|
||||
public static final String MSG_PROPERTY_ALREADY_EXISTS = "rm.admin.property-already-exists";
|
||||
|
||||
|
||||
public PropertyAlreadyExistsMetadataException(String propIdAsString)
|
||||
{
|
||||
super(I18NUtil.getMessage(MSG_PROPERTY_ALREADY_EXISTS, propIdAsString));
|
||||
|
@@ -52,6 +52,7 @@ import org.alfresco.service.namespace.RegexQNamePattern;
|
||||
* @since 2.1
|
||||
* @see org.alfresco.module.org_alfresco_module_rm.RecordsManagementAdminService
|
||||
*/
|
||||
// Not @AlfrescoPublicApi at the moment as it requires MatchLogic which is not public API.
|
||||
public interface RecordsManagementAdminService
|
||||
{
|
||||
/**
|
||||
|
@@ -32,6 +32,7 @@ import java.util.Date;
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
|
||||
import org.alfresco.api.AlfrescoPublicApi;
|
||||
import org.alfresco.service.cmr.repository.NodeRef;
|
||||
import org.alfresco.service.namespace.QName;
|
||||
import org.alfresco.util.Pair;
|
||||
@@ -40,9 +41,10 @@ import org.springframework.extensions.surf.util.ISO8601DateFormat;
|
||||
|
||||
/**
|
||||
* Class to represent a Records Management audit entry.
|
||||
*
|
||||
*
|
||||
* @author Gavin Cornwell
|
||||
*/
|
||||
@AlfrescoPublicApi
|
||||
public final class RecordsManagementAuditEntry
|
||||
{
|
||||
private final Date timestamp;
|
||||
@@ -58,20 +60,20 @@ public final class RecordsManagementAuditEntry
|
||||
private final Map<QName, Serializable> beforeProperties;
|
||||
private final Map<QName, Serializable> afterProperties;
|
||||
private Map<QName, Pair<Serializable, Serializable>> changedProperties;
|
||||
|
||||
|
||||
/**
|
||||
* Default constructor
|
||||
*/
|
||||
public RecordsManagementAuditEntry(Date timestamp,
|
||||
String userName, String fullName, String userRole,
|
||||
NodeRef nodeRef, String nodeName, String nodeType,
|
||||
public RecordsManagementAuditEntry(Date timestamp,
|
||||
String userName, String fullName, String userRole,
|
||||
NodeRef nodeRef, String nodeName, String nodeType,
|
||||
String event, String identifier, String path,
|
||||
Map<QName, Serializable> beforeProperties,
|
||||
Map<QName, Serializable> afterProperties)
|
||||
{
|
||||
ParameterCheck.mandatory("timestamp", timestamp);
|
||||
ParameterCheck.mandatory("userName", userName);
|
||||
|
||||
|
||||
this.timestamp = timestamp;
|
||||
this.userName = userName;
|
||||
this.userRole = userRole;
|
||||
@@ -85,7 +87,7 @@ public final class RecordsManagementAuditEntry
|
||||
this.beforeProperties = beforeProperties;
|
||||
this.afterProperties = afterProperties;
|
||||
}
|
||||
|
||||
|
||||
@Override
|
||||
public String toString()
|
||||
{
|
||||
@@ -106,18 +108,18 @@ public final class RecordsManagementAuditEntry
|
||||
.append(")");
|
||||
return sb.toString();
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
*
|
||||
*
|
||||
* @return The date of the audit entry
|
||||
*/
|
||||
public Date getTimestamp()
|
||||
{
|
||||
return this.timestamp;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
*
|
||||
*
|
||||
* @return The date of the audit entry as an ISO8601 formatted String
|
||||
*/
|
||||
public String getTimestampString()
|
||||
@@ -126,7 +128,7 @@ public final class RecordsManagementAuditEntry
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
*
|
||||
* @return The username of the user that caused the audit log entry to be created
|
||||
*/
|
||||
public String getUserName()
|
||||
@@ -135,7 +137,7 @@ public final class RecordsManagementAuditEntry
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
*
|
||||
* @return The full name of the user that caused the audit log entry to be created
|
||||
*/
|
||||
public String getFullName()
|
||||
@@ -144,7 +146,7 @@ public final class RecordsManagementAuditEntry
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
*
|
||||
* @return The role of the user that caused the audit log entry to be created
|
||||
*/
|
||||
public String getUserRole()
|
||||
@@ -153,7 +155,7 @@ public final class RecordsManagementAuditEntry
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
*
|
||||
* @return The NodeRef of the node the audit log entry is for
|
||||
*/
|
||||
public NodeRef getNodeRef()
|
||||
@@ -162,16 +164,16 @@ public final class RecordsManagementAuditEntry
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
*
|
||||
* @return The name of the node the audit log entry is for
|
||||
*/
|
||||
public String getNodeName()
|
||||
{
|
||||
return this.nodeName;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
*
|
||||
*
|
||||
* @return The type of the node the audit log entry is for
|
||||
*/
|
||||
public String getNodeType()
|
||||
@@ -180,8 +182,8 @@ public final class RecordsManagementAuditEntry
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
* @return The human readable description of the reason for the audit log
|
||||
*
|
||||
* @return The human readable description of the reason for the audit log
|
||||
* entry i.e. metadata updated, record declared
|
||||
*/
|
||||
public String getEvent()
|
||||
@@ -191,9 +193,9 @@ public final class RecordsManagementAuditEntry
|
||||
|
||||
/**
|
||||
* An identifier for the item being audited, for example for a record
|
||||
* it will be the unique record identifier, for a user it would be the
|
||||
* it will be the unique record identifier, for a user it would be the
|
||||
* username etc.
|
||||
*
|
||||
*
|
||||
* @return Ad identifier for the thing being audited
|
||||
*/
|
||||
public String getIdentifier()
|
||||
@@ -202,25 +204,25 @@ public final class RecordsManagementAuditEntry
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
*
|
||||
* @return The path to the object being audited
|
||||
*/
|
||||
public String getPath()
|
||||
{
|
||||
return this.path;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
*
|
||||
*
|
||||
* @return Map of properties before the audited action
|
||||
*/
|
||||
public Map<QName, Serializable> getBeforeProperties()
|
||||
{
|
||||
return this.beforeProperties;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
*
|
||||
*
|
||||
* @return Map of properties after the audited action
|
||||
*/
|
||||
public Map<QName, Serializable> getAfterProperties()
|
||||
@@ -229,7 +231,7 @@ public final class RecordsManagementAuditEntry
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
*
|
||||
* @return Map of changed properties
|
||||
*/
|
||||
public Map<QName, Pair<Serializable, Serializable>> getChangedProperties()
|
||||
@@ -238,10 +240,10 @@ public final class RecordsManagementAuditEntry
|
||||
{
|
||||
initChangedProperties();
|
||||
}
|
||||
|
||||
|
||||
return this.changedProperties;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Initialises the map of changed values given the before and after properties
|
||||
*/
|
||||
@@ -251,7 +253,7 @@ public final class RecordsManagementAuditEntry
|
||||
{
|
||||
this.changedProperties = new HashMap<QName, Pair<Serializable, Serializable>>(
|
||||
this.beforeProperties.size() + this.afterProperties.size());
|
||||
|
||||
|
||||
// add all the properties present before the audited action
|
||||
for (QName valuePropName : this.beforeProperties.keySet())
|
||||
{
|
||||
@@ -260,7 +262,7 @@ public final class RecordsManagementAuditEntry
|
||||
this.afterProperties.get(valuePropName));
|
||||
this.changedProperties.put(valuePropName, values);
|
||||
}
|
||||
|
||||
|
||||
// add all the properties present after the audited action that
|
||||
// have not already been added
|
||||
for (QName valuePropName : this.afterProperties.keySet())
|
||||
|
@@ -29,15 +29,17 @@ package org.alfresco.module.org_alfresco_module_rm.audit;
|
||||
|
||||
import java.util.Date;
|
||||
|
||||
import org.alfresco.api.AlfrescoPublicApi;
|
||||
import org.alfresco.service.cmr.repository.NodeRef;
|
||||
import org.alfresco.service.namespace.QName;
|
||||
|
||||
/**
|
||||
* Class to represent the parameters for a Records Management
|
||||
* Class to represent the parameters for a Records Management
|
||||
* audit log query.
|
||||
*
|
||||
*
|
||||
* @author Gavin Cornwell
|
||||
*/
|
||||
@AlfrescoPublicApi
|
||||
public final class RecordsManagementAuditQueryParameters
|
||||
{
|
||||
private int maxEntries = -1;
|
||||
@@ -56,7 +58,7 @@ public final class RecordsManagementAuditQueryParameters
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
*
|
||||
* @return The username to filter by
|
||||
*/
|
||||
public String getUser()
|
||||
@@ -67,7 +69,7 @@ public final class RecordsManagementAuditQueryParameters
|
||||
/**
|
||||
* Restricts the retrieved audit trail to entries made by
|
||||
* the provided user.
|
||||
*
|
||||
*
|
||||
* @param user The username to filter by
|
||||
*/
|
||||
public void setUser(String user)
|
||||
@@ -76,7 +78,7 @@ public final class RecordsManagementAuditQueryParameters
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
*
|
||||
* @return The maximum number of audit log entries to retrieve
|
||||
*/
|
||||
public int getMaxEntries()
|
||||
@@ -85,9 +87,9 @@ public final class RecordsManagementAuditQueryParameters
|
||||
}
|
||||
|
||||
/**
|
||||
* Restricts the retrieved audit trail to the last
|
||||
* Restricts the retrieved audit trail to the last
|
||||
* <code>maxEntries</code> entries.
|
||||
*
|
||||
*
|
||||
* @param maxEntries Maximum number of entries
|
||||
*/
|
||||
public void setMaxEntries(int maxEntries)
|
||||
@@ -96,7 +98,7 @@ public final class RecordsManagementAuditQueryParameters
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
*
|
||||
* @return The node to get entries for
|
||||
*/
|
||||
public NodeRef getNodeRef()
|
||||
@@ -107,7 +109,7 @@ public final class RecordsManagementAuditQueryParameters
|
||||
/**
|
||||
* Restricts the retrieved audit trail to only those entries
|
||||
* created by the give node.
|
||||
*
|
||||
*
|
||||
* @param nodeRef The node to get entries for
|
||||
*/
|
||||
public void setNodeRef(NodeRef nodeRef)
|
||||
@@ -116,7 +118,7 @@ public final class RecordsManagementAuditQueryParameters
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
*
|
||||
* @return The date to retrieve entries from
|
||||
*/
|
||||
public Date getDateFrom()
|
||||
@@ -127,7 +129,7 @@ public final class RecordsManagementAuditQueryParameters
|
||||
/**
|
||||
* Restricts the retrieved audit trail to only those entries
|
||||
* that occurred after the given date.
|
||||
*
|
||||
*
|
||||
* @param dateFrom Date to retrieve entries after
|
||||
*/
|
||||
public void setDateFrom(Date dateFrom)
|
||||
@@ -136,7 +138,7 @@ public final class RecordsManagementAuditQueryParameters
|
||||
}
|
||||
|
||||
/**
|
||||
*
|
||||
*
|
||||
* @return The date to retrive entries to
|
||||
*/
|
||||
public Date getDateTo()
|
||||
@@ -147,16 +149,16 @@ public final class RecordsManagementAuditQueryParameters
|
||||
/**
|
||||
* Restricts the retrieved audit trail to only those entries
|
||||
* that occurred before the given date.
|
||||
*
|
||||
*
|
||||
* @param dateTo Date to retrieve entries before
|
||||
*/
|
||||
public void setDateTo(Date dateTo)
|
||||
{
|
||||
this.dateTo = dateTo;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
*
|
||||
*
|
||||
* @return The event to retrive entries for
|
||||
*/
|
||||
public String getEvent()
|
||||
@@ -167,16 +169,16 @@ public final class RecordsManagementAuditQueryParameters
|
||||
/**
|
||||
* Restricts the retrieved audit trail to only those entries
|
||||
* that match the given event string.
|
||||
*
|
||||
*
|
||||
* @param event Event to retrieve entries for
|
||||
*/
|
||||
public void setEvent(String event)
|
||||
{
|
||||
this.event = event;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
*
|
||||
*
|
||||
* @return The property to retrieve entries for
|
||||
*/
|
||||
public QName getProperty()
|
||||
@@ -187,7 +189,7 @@ public final class RecordsManagementAuditQueryParameters
|
||||
/**
|
||||
* Restricts the audit trail to only those entries that involve
|
||||
* the given property.
|
||||
*
|
||||
*
|
||||
* @param property The property to retrieve entries for
|
||||
*/
|
||||
public void setProperty(QName property)
|
||||
@@ -198,17 +200,17 @@ public final class RecordsManagementAuditQueryParameters
|
||||
/*
|
||||
* @see java.lang.Object#toString()
|
||||
*/
|
||||
@Override
|
||||
@Override
|
||||
public String toString()
|
||||
{
|
||||
StringBuilder builder = new StringBuilder(super.toString());
|
||||
|
||||
|
||||
builder.append(" (nodeRef='").append(nodeRef).append("', user='")
|
||||
.append(user).append("', dateFrom='").append(dateFrom)
|
||||
.append("', dateTo='").append(dateTo).append("', maxEntries='")
|
||||
.append(maxEntries).append("', event='").append(event)
|
||||
.append("', property='").append(property).append("')");
|
||||
|
||||
|
||||
return builder.toString();
|
||||
}
|
||||
}
|
||||
|
@@ -33,24 +33,27 @@ import java.util.Date;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
import org.alfresco.api.AlfrescoPublicApi;
|
||||
import org.alfresco.module.org_alfresco_module_rm.audit.event.AuditEvent;
|
||||
import org.alfresco.service.cmr.repository.NodeRef;
|
||||
import org.alfresco.service.namespace.QName;
|
||||
|
||||
/**
|
||||
* Records management audit service.
|
||||
*
|
||||
*
|
||||
* @author Gavin Cornwell
|
||||
*/
|
||||
@AlfrescoPublicApi
|
||||
@SuppressWarnings("deprecation")
|
||||
public interface RecordsManagementAuditService extends RecordsManagementAuditServiceDeprecated
|
||||
{
|
||||
public enum ReportFormat { HTML, JSON }
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* Retrieves a list of audit events.
|
||||
*
|
||||
*
|
||||
* @return List of audit events
|
||||
*/
|
||||
List<AuditEvent> getAuditEvents();
|
||||
@@ -60,32 +63,32 @@ public interface RecordsManagementAuditService extends RecordsManagementAuditSer
|
||||
* <p>
|
||||
* Creates an instance of a simple audit event and registers it with
|
||||
* the service.
|
||||
*
|
||||
*
|
||||
* @param name name of audit event
|
||||
* @param label display label of audit event
|
||||
*/
|
||||
void registerAuditEvent(String name, String label);
|
||||
|
||||
|
||||
/**
|
||||
* Register audit event.
|
||||
*
|
||||
*
|
||||
* @param auditEvent audit event
|
||||
*/
|
||||
void registerAuditEvent(AuditEvent auditEvent);
|
||||
|
||||
|
||||
/**
|
||||
* Audits an event, assumes no properties where modified and that the event should not be audited
|
||||
* immediately.
|
||||
*
|
||||
* immediately.
|
||||
*
|
||||
* @param nodeRef node reference
|
||||
* @param eventName event name
|
||||
*/
|
||||
void auditEvent(NodeRef nodeRef,
|
||||
void auditEvent(NodeRef nodeRef,
|
||||
String eventName);
|
||||
|
||||
|
||||
/**
|
||||
* Audits an event, assumes that the event should not be audited immediately and not be removed if no property is changed.
|
||||
*
|
||||
*
|
||||
* @param nodeRef node reference
|
||||
* @param eventName event name
|
||||
* @param before property values before event
|
||||
@@ -95,10 +98,10 @@ public interface RecordsManagementAuditService extends RecordsManagementAuditSer
|
||||
String eventName,
|
||||
Map<QName, Serializable> before,
|
||||
Map<QName, Serializable> after);
|
||||
|
||||
|
||||
/**
|
||||
* Audit event, assumes not to be removed if no property is changed.
|
||||
*
|
||||
*
|
||||
* @param nodeRef node reference
|
||||
* @param eventName event name
|
||||
* @param before property values before event
|
||||
@@ -110,10 +113,10 @@ public interface RecordsManagementAuditService extends RecordsManagementAuditSer
|
||||
Map<QName, Serializable> before,
|
||||
Map<QName, Serializable> after,
|
||||
boolean immediate);
|
||||
|
||||
|
||||
/**
|
||||
* Audit event.
|
||||
*
|
||||
*
|
||||
* @param nodeRef node reference
|
||||
* @param eventName event name
|
||||
* @param before property values before event
|
||||
@@ -127,52 +130,52 @@ public interface RecordsManagementAuditService extends RecordsManagementAuditSer
|
||||
Map<QName, Serializable> after,
|
||||
boolean immediate,
|
||||
boolean removeIfNoPropertyChanged);
|
||||
|
||||
|
||||
/**
|
||||
* Determines whether the RM audit log is currently enabled.
|
||||
*
|
||||
*
|
||||
* @param filePlan file plan
|
||||
* @return true if RM auditing is active false otherwise
|
||||
*/
|
||||
boolean isAuditLogEnabled(NodeRef filePlan);
|
||||
|
||||
boolean isAuditLogEnabled(NodeRef filePlan);
|
||||
|
||||
/**
|
||||
* Start RM auditing.
|
||||
*
|
||||
*
|
||||
* @param filePlan file plan
|
||||
*/
|
||||
void startAuditLog(NodeRef filePlan);
|
||||
|
||||
|
||||
/**
|
||||
* Stop RM auditing.
|
||||
*
|
||||
*
|
||||
* @param filePlan file plan
|
||||
*/
|
||||
*/
|
||||
void stopAuditLog(NodeRef filePlan);
|
||||
|
||||
|
||||
|
||||
|
||||
/**
|
||||
* Clears the RM audit.
|
||||
*
|
||||
*
|
||||
* @param filePlan file plan
|
||||
*/
|
||||
void clearAuditLog(NodeRef filePlan);
|
||||
|
||||
|
||||
/**
|
||||
* Returns the date the RM audit was last started.
|
||||
*
|
||||
* @param filePlan file plan
|
||||
*
|
||||
* @param filePlan file plan
|
||||
* @return Date the audit was last started
|
||||
*/
|
||||
Date getDateAuditLogLastStarted(NodeRef filePlan);
|
||||
|
||||
/**
|
||||
* Returns the date the RM audit was last stopped.
|
||||
*
|
||||
*
|
||||
* @return Date the audit was last stopped
|
||||
*/
|
||||
Date getDateAuditLogLastStopped(NodeRef filePlan);
|
||||
|
||||
|
||||
/**
|
||||
* Retrieves a list of audit log entries using the provided parameters
|
||||
* represented by the RecordsManagementAuditQueryParameters instance.
|
||||
@@ -181,13 +184,13 @@ public interface RecordsManagementAuditService extends RecordsManagementAuditSer
|
||||
* object will result in ALL audit log entries for the RM system being
|
||||
* returned. Setting the various parameters effectively filters the full
|
||||
* audit trail.
|
||||
*
|
||||
*
|
||||
* @param params Parameters to use to retrieve audit trail (never <tt>null</tt>)
|
||||
* @param format The format the report should be produced in
|
||||
* @return File containing JSON representation of audit trail
|
||||
*/
|
||||
File getAuditTrailFile(RecordsManagementAuditQueryParameters params, ReportFormat format);
|
||||
|
||||
|
||||
/**
|
||||
* Retrieves a list of audit log entries using the provided parameters
|
||||
* represented by the RecordsManagementAuditQueryParameters instance.
|
||||
@@ -196,23 +199,23 @@ public interface RecordsManagementAuditService extends RecordsManagementAuditSer
|
||||
* object will result in ALL audit log entries for the RM system being
|
||||
* returned. Setting the various parameters effectively filters the full
|
||||
* audit trail.
|
||||
*
|
||||
*
|
||||
* @param params Parameters to use to retrieve audit trail (never <tt>null</tt>)
|
||||
* @return All entries for the audit trail
|
||||
*/
|
||||
List<RecordsManagementAuditEntry> getAuditTrail(RecordsManagementAuditQueryParameters params);
|
||||
|
||||
|
||||
/**
|
||||
* Retrieves a list of audit log entries using the provided parameters
|
||||
* represented by the RecordsManagementAuditQueryParameters instance and
|
||||
* then files the resulting log as an undeclared record in the record folder
|
||||
* then files the resulting log as an undeclared record in the record folder
|
||||
* represented by the given NodeRef.
|
||||
* <p>
|
||||
* The parameters are all optional so an empty RecordsManagementAuditQueryParameters
|
||||
* object will result in ALL audit log entries for the RM system being
|
||||
* returned. Setting the various parameters effectively filters the full
|
||||
* audit trail.
|
||||
*
|
||||
*
|
||||
* @param params Parameters to use to retrieve audit trail (never <tt>null</tt>)
|
||||
* @param destination NodeRef representing a record folder in which to file the audit log
|
||||
* @param format The format the report should be produced in
|
||||
|
@@ -27,6 +27,7 @@
|
||||
|
||||
package org.alfresco.module.org_alfresco_module_rm.audit.event;
|
||||
|
||||
import org.alfresco.api.AlfrescoPublicApi;
|
||||
import org.alfresco.module.org_alfresco_module_rm.audit.RecordsManagementAuditService;
|
||||
import org.alfresco.module.org_alfresco_module_rm.model.RecordsManagementModel;
|
||||
import org.alfresco.util.ParameterCheck;
|
||||
@@ -40,6 +41,7 @@ import org.springframework.extensions.surf.util.I18NUtil;
|
||||
* @author Roy Wetherall
|
||||
* @since 1.0
|
||||
*/
|
||||
@AlfrescoPublicApi
|
||||
public class AuditEvent implements RecordsManagementModel, Comparable<AuditEvent>
|
||||
{
|
||||
/** Name */
|
||||
|
@@ -27,6 +27,7 @@
|
||||
|
||||
package org.alfresco.module.org_alfresco_module_rm.capability;
|
||||
|
||||
import org.alfresco.api.AlfrescoPublicApi;
|
||||
import org.alfresco.service.cmr.repository.NodeRef;
|
||||
import org.alfresco.service.cmr.security.AccessStatus;
|
||||
|
||||
@@ -36,6 +37,7 @@ import org.alfresco.service.cmr.security.AccessStatus;
|
||||
* @author andyh
|
||||
* @author Roy Wetherall
|
||||
*/
|
||||
@AlfrescoPublicApi
|
||||
public interface Capability
|
||||
{
|
||||
/**
|
||||
|
@@ -31,6 +31,7 @@ import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Set;
|
||||
|
||||
import org.alfresco.api.AlfrescoPublicApi;
|
||||
import org.alfresco.service.cmr.repository.NodeRef;
|
||||
import org.alfresco.service.cmr.security.AccessStatus;
|
||||
|
||||
@@ -40,6 +41,7 @@ import org.alfresco.service.cmr.security.AccessStatus;
|
||||
* @author Roy Wetherall
|
||||
* @since 2.0
|
||||
*/
|
||||
@AlfrescoPublicApi
|
||||
public interface CapabilityService
|
||||
{
|
||||
/**
|
||||
@@ -108,7 +110,7 @@ public interface CapabilityService
|
||||
/**
|
||||
* Gets the list of all the capability groups (in index order)
|
||||
*
|
||||
* @return {@link List}<{@link Group}> List of all the capability groups (in index order)
|
||||
* @return {@link List}<{@link Group}> List of all the capability groups (in index order)
|
||||
*/
|
||||
List<Group> getGroups();
|
||||
|
||||
|
@@ -27,12 +27,15 @@
|
||||
|
||||
package org.alfresco.module.org_alfresco_module_rm.capability;
|
||||
|
||||
import org.alfresco.api.AlfrescoPublicApi;
|
||||
|
||||
/**
|
||||
* Group interface
|
||||
*
|
||||
* @author Tuna Aksoy
|
||||
* @since 2.1
|
||||
*/
|
||||
@AlfrescoPublicApi
|
||||
public interface Group
|
||||
{
|
||||
/**
|
||||
|
@@ -29,6 +29,7 @@ package org.alfresco.module.org_alfresco_module_rm.disposition;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import org.alfresco.api.AlfrescoPublicApi;
|
||||
import org.alfresco.module.org_alfresco_module_rm.event.RecordsManagementEvent;
|
||||
import org.alfresco.service.cmr.repository.NodeRef;
|
||||
import org.alfresco.service.cmr.repository.Period;
|
||||
@@ -36,70 +37,71 @@ import org.alfresco.service.namespace.QName;
|
||||
|
||||
/**
|
||||
* Disposition action interface
|
||||
*
|
||||
*
|
||||
* @author Roy Wetherall
|
||||
*/
|
||||
// Not @AlfrescoPublicApi because it depends on Period which is not part of the public API.
|
||||
public interface DispositionActionDefinition
|
||||
{
|
||||
/**
|
||||
* Get the NodeRef that represents the disposition action definition
|
||||
*
|
||||
*
|
||||
* @return NodeRef of disposition action definition
|
||||
*/
|
||||
NodeRef getNodeRef();
|
||||
|
||||
/**
|
||||
* Get disposition action id
|
||||
*
|
||||
*
|
||||
* @return String id
|
||||
*/
|
||||
String getId();
|
||||
|
||||
/**
|
||||
* Get the index of the action within the disposition instructions
|
||||
*
|
||||
*
|
||||
* @return int disposition action index
|
||||
*/
|
||||
int getIndex();
|
||||
|
||||
/**
|
||||
* Get the name of disposition action
|
||||
*
|
||||
*
|
||||
* @return String name
|
||||
*/
|
||||
String getName();
|
||||
|
||||
/**
|
||||
* Get the display label of the disposition action
|
||||
*
|
||||
*
|
||||
* @return String name's display label
|
||||
*/
|
||||
String getLabel();
|
||||
|
||||
/**
|
||||
* Get the description of the disposition action
|
||||
*
|
||||
*
|
||||
* @return String description
|
||||
*/
|
||||
String getDescription();
|
||||
|
||||
/**
|
||||
* Get the period for the disposition action
|
||||
*
|
||||
*
|
||||
* @return Period disposition period
|
||||
*/
|
||||
Period getPeriod();
|
||||
|
||||
/**
|
||||
* Property to which the period is relative to
|
||||
*
|
||||
*
|
||||
* @return QName property name
|
||||
*/
|
||||
QName getPeriodProperty();
|
||||
|
||||
/**
|
||||
* List of events for the disposition
|
||||
*
|
||||
*
|
||||
* @return List<RecordsManagementEvent> list of events
|
||||
*/
|
||||
List<RecordsManagementEvent> getEvents();
|
||||
@@ -108,7 +110,7 @@ public interface DispositionActionDefinition
|
||||
* Indicates whether the disposition action is eligible when the earliest
|
||||
* event is complete, otherwise all events must be complete before
|
||||
* eligibility.
|
||||
*
|
||||
*
|
||||
* @return boolean true if eligible on first action complete, false
|
||||
* otherwise
|
||||
*/
|
||||
@@ -116,14 +118,14 @@ public interface DispositionActionDefinition
|
||||
|
||||
/**
|
||||
* Get the location of the disposition (can be null)
|
||||
*
|
||||
*
|
||||
* @return String disposition location
|
||||
*/
|
||||
String getLocation();
|
||||
|
||||
/**
|
||||
* Get the ghost on destroy from the disposition
|
||||
*
|
||||
*
|
||||
* @return boolean the gost on destroy flag (on applicable to destroy
|
||||
* actions)
|
||||
*/
|
||||
|
@@ -33,57 +33,58 @@ import org.alfresco.service.cmr.repository.NodeRef;
|
||||
|
||||
/**
|
||||
* Disposition schedule interface
|
||||
*
|
||||
*
|
||||
* @author Roy Wetherall
|
||||
*/
|
||||
// Not @AlfrescoPublicApi because it depends on DispositionActionDefinition which is not part of the public API.
|
||||
public interface DispositionSchedule
|
||||
{
|
||||
/**
|
||||
* Get the NodeRef that represents the disposition schedule
|
||||
*
|
||||
*
|
||||
* @return {@link NodeRef} of disposition schedule
|
||||
*/
|
||||
NodeRef getNodeRef();
|
||||
|
||||
|
||||
/**
|
||||
* Get the disposition authority
|
||||
*
|
||||
*
|
||||
* @return {@link String} disposition authority
|
||||
*/
|
||||
String getDispositionAuthority();
|
||||
|
||||
|
||||
/**
|
||||
* Get the disposition instructions
|
||||
*
|
||||
*
|
||||
* @return {@link String} disposition instructions
|
||||
*/
|
||||
String getDispositionInstructions();
|
||||
|
||||
|
||||
/**
|
||||
* Indicates whether the disposal occurs at record level or not
|
||||
*
|
||||
*
|
||||
* @return boolean true if at record level, false otherwise
|
||||
*/
|
||||
boolean isRecordLevelDisposition();
|
||||
|
||||
|
||||
/**
|
||||
* Gets all the disposition action definitions for the schedule
|
||||
*
|
||||
*
|
||||
* @return List<{@link DispositionActionDefinition}> disposition action definitions
|
||||
*/
|
||||
List<DispositionActionDefinition> getDispositionActionDefinitions();
|
||||
|
||||
|
||||
/**
|
||||
* Get the disposition action definition
|
||||
*
|
||||
*
|
||||
* @param id the action definition id
|
||||
* @return {@link DispositionActionDefinition} disposition action definition
|
||||
*/
|
||||
DispositionActionDefinition getDispositionActionDefinition(String id);
|
||||
|
||||
|
||||
/**
|
||||
* Get the disposition action definition by the name of the disposition action
|
||||
*
|
||||
*
|
||||
* @param name disposition action name
|
||||
* @return {@link DispositionActionDefinition} disposition action definition, null if none
|
||||
*/
|
||||
|
@@ -42,6 +42,7 @@ import org.alfresco.service.namespace.QName;
|
||||
* @author Roy Wetherall
|
||||
* @since 2.0
|
||||
*/
|
||||
// Not @AlfrescoPublicApi because it depends on DispositionSchedule which is not part of the public API.
|
||||
public interface DispositionService
|
||||
{
|
||||
/** ========= Disposition Property Methods ========= */
|
||||
|
@@ -27,28 +27,30 @@
|
||||
|
||||
package org.alfresco.module.org_alfresco_module_rm.event;
|
||||
|
||||
import org.alfresco.api.AlfrescoPublicApi;
|
||||
import org.alfresco.util.ParameterCheck;
|
||||
|
||||
/**
|
||||
* Records management event
|
||||
*
|
||||
* Records management event
|
||||
*
|
||||
* @author Roy Wetherall
|
||||
* @since 1.0
|
||||
*/
|
||||
@AlfrescoPublicApi
|
||||
public class RecordsManagementEvent
|
||||
{
|
||||
{
|
||||
/** Records management event type */
|
||||
private RecordsManagementEventType type;
|
||||
|
||||
|
||||
/** Records management event name */
|
||||
private String name;
|
||||
|
||||
|
||||
/** Records management display label */
|
||||
private String displayLabel;
|
||||
|
||||
|
||||
/**
|
||||
* Constructor
|
||||
*
|
||||
*
|
||||
* @param type event type
|
||||
* @param name event name
|
||||
* @param displayLabel event display label
|
||||
@@ -58,50 +60,50 @@ public class RecordsManagementEvent
|
||||
ParameterCheck.mandatory("type", type);
|
||||
ParameterCheck.mandatory("name", name);
|
||||
ParameterCheck.mandatory("displayLabel", displayLabel);
|
||||
|
||||
|
||||
this.type = type;
|
||||
this.name = name;
|
||||
this.displayLabel = displayLabel;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Get records management type name
|
||||
*
|
||||
*
|
||||
* @return String records management event type name
|
||||
*/
|
||||
public String getType()
|
||||
{
|
||||
return type.getName();
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Get the records management event type.
|
||||
*
|
||||
* @return {@link RecordsManagementEventType} records management event type
|
||||
*
|
||||
*
|
||||
* @return {@link RecordsManagementEventType} records management event type
|
||||
*
|
||||
* @since 2.2
|
||||
*/
|
||||
public RecordsManagementEventType getRecordsManagementEventType()
|
||||
{
|
||||
return type;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Event name
|
||||
*
|
||||
*
|
||||
* @return String event name
|
||||
*/
|
||||
public String getName()
|
||||
{
|
||||
return this.name;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
*
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
public String getDisplayLabel()
|
||||
{
|
||||
return displayLabel;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@@ -29,11 +29,14 @@ package org.alfresco.module.org_alfresco_module_rm.event;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import org.alfresco.api.AlfrescoPublicApi;
|
||||
|
||||
/**
|
||||
* Records management event service interface
|
||||
*
|
||||
* @author Roy Wetherall
|
||||
*/
|
||||
@AlfrescoPublicApi
|
||||
public interface RecordsManagementEventService
|
||||
{
|
||||
/**
|
||||
|
@@ -27,30 +27,33 @@
|
||||
|
||||
package org.alfresco.module.org_alfresco_module_rm.event;
|
||||
|
||||
import org.alfresco.api.AlfrescoPublicApi;
|
||||
|
||||
/**
|
||||
* Records management event type interface
|
||||
*
|
||||
*
|
||||
* @author Roy Wetherall
|
||||
*/
|
||||
@AlfrescoPublicApi
|
||||
public interface RecordsManagementEventType
|
||||
{
|
||||
/**
|
||||
* Get the name of the records management event type
|
||||
*
|
||||
*
|
||||
* @return String event type name
|
||||
*/
|
||||
String getName();
|
||||
|
||||
|
||||
/**
|
||||
* Gets the display label of the event type
|
||||
*
|
||||
*
|
||||
* @return String display label
|
||||
*/
|
||||
String getDisplayLabel();
|
||||
|
||||
|
||||
/**
|
||||
* Indicates whether the event is automatic or not
|
||||
*
|
||||
*
|
||||
* @return boolean true if automatic, false otherwise
|
||||
*/
|
||||
boolean isAutomaticEvent();
|
||||
|
@@ -27,6 +27,8 @@
|
||||
|
||||
package org.alfresco.module.org_alfresco_module_rm.fileplan;
|
||||
|
||||
import org.alfresco.api.AlfrescoPublicApi;
|
||||
|
||||
/**
|
||||
* File plan component kind enumeration class.
|
||||
* <br>
|
||||
@@ -35,6 +37,7 @@ package org.alfresco.module.org_alfresco_module_rm.fileplan;
|
||||
*
|
||||
* @author Roy Wetherall
|
||||
*/
|
||||
@AlfrescoPublicApi
|
||||
public enum FilePlanComponentKind
|
||||
{
|
||||
FILE_PLAN_COMPONENT,
|
||||
|
@@ -32,6 +32,7 @@ import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Set;
|
||||
|
||||
import org.alfresco.api.AlfrescoPublicApi;
|
||||
import org.alfresco.service.cmr.repository.NodeRef;
|
||||
import org.alfresco.service.cmr.repository.StoreRef;
|
||||
import org.alfresco.service.namespace.QName;
|
||||
@@ -42,6 +43,7 @@ import org.alfresco.service.namespace.QName;
|
||||
* @author Roy Wetherall
|
||||
* @since 2.1
|
||||
*/
|
||||
@AlfrescoPublicApi
|
||||
public interface FilePlanService
|
||||
{
|
||||
/**
|
||||
|
@@ -30,17 +30,19 @@ package org.alfresco.module.org_alfresco_module_rm.freeze;
|
||||
import java.util.Date;
|
||||
import java.util.Set;
|
||||
|
||||
import org.alfresco.api.AlfrescoPublicApi;
|
||||
import org.alfresco.module.org_alfresco_module_rm.hold.HoldService;
|
||||
import org.alfresco.service.cmr.repository.NodeRef;
|
||||
|
||||
/**
|
||||
* Freeze Service Interface
|
||||
*
|
||||
*
|
||||
* TODO should be deprecated and methods moved to the HoldService with "hold, held, etc" style names
|
||||
*
|
||||
* @author Roy Wetherall
|
||||
* @since 2.0
|
||||
*/
|
||||
@AlfrescoPublicApi
|
||||
public interface FreezeService
|
||||
{
|
||||
/**
|
||||
@@ -74,12 +76,12 @@ public interface FreezeService
|
||||
* @return String The initiator of the freeze or null
|
||||
*/
|
||||
String getFreezeInitiator(NodeRef nodeRef);
|
||||
|
||||
|
||||
/**
|
||||
* @deprecated as of 2.2, use {@link HoldService#isHold(NodeRef)} instead.
|
||||
*/
|
||||
@Deprecated
|
||||
boolean isHold(NodeRef nodeRef);
|
||||
boolean isHold(NodeRef nodeRef);
|
||||
|
||||
/**
|
||||
* @deprecated as of 2.2, use {@link HoldService#getHeld(NodeRef)} instead.
|
||||
|
@@ -29,6 +29,7 @@ package org.alfresco.module.org_alfresco_module_rm.hold;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import org.alfresco.api.AlfrescoPublicApi;
|
||||
import org.alfresco.service.cmr.repository.NodeRef;
|
||||
|
||||
/**
|
||||
@@ -37,6 +38,7 @@ import org.alfresco.service.cmr.repository.NodeRef;
|
||||
* @author Tuna Aksoy
|
||||
* @since 2.2
|
||||
*/
|
||||
@AlfrescoPublicApi
|
||||
public interface HoldService
|
||||
{
|
||||
/**
|
||||
@@ -58,7 +60,7 @@ public interface HoldService
|
||||
|
||||
/**
|
||||
* Gets the node reference for the hold with the given name in the given file plan
|
||||
*
|
||||
*
|
||||
* @param name {@link String} The name of the hold
|
||||
* @return {@link NodeRef} of the hold with the given name
|
||||
*/
|
||||
@@ -75,8 +77,8 @@ public interface HoldService
|
||||
List<NodeRef> heldBy(NodeRef nodeRef, boolean includedInHold);
|
||||
|
||||
/**
|
||||
* Gets the list of item node references which are in the given hold
|
||||
*
|
||||
* Gets the list of item node references which are in the given hold
|
||||
*
|
||||
* @param hold {@link NodeRef} of the hold
|
||||
* @return Lost of item {@link NodeRef}s which are in the given hold
|
||||
*/
|
||||
@@ -84,7 +86,7 @@ public interface HoldService
|
||||
|
||||
/**
|
||||
* Creates a hold with the given name, reason and description for the given file plan
|
||||
*
|
||||
*
|
||||
* @param filePlan The {@link NodeRef} of the file plan
|
||||
* @param name {@link String} The name of the hold
|
||||
* @param reason {@link String} The reason of the hold
|
||||
@@ -95,7 +97,7 @@ public interface HoldService
|
||||
|
||||
/**
|
||||
* Gets the hold reason for the given hold node reference
|
||||
*
|
||||
*
|
||||
* @param hold The {@link NodeRef} of the hold
|
||||
* @return {@link String} The reason of the hold
|
||||
*/
|
||||
@@ -103,7 +105,7 @@ public interface HoldService
|
||||
|
||||
/**
|
||||
* Sets the hold reason
|
||||
*
|
||||
*
|
||||
* @param hold The {@link NodeRef} of the hold
|
||||
* @param reason {@link String} The reason for the hold
|
||||
*/
|
||||
@@ -111,7 +113,7 @@ public interface HoldService
|
||||
|
||||
/**
|
||||
* Deletes the hold
|
||||
*
|
||||
*
|
||||
* @param hold The {@link NodeRef} of the hold
|
||||
*/
|
||||
void deleteHold(NodeRef hold);
|
||||
@@ -126,7 +128,7 @@ public interface HoldService
|
||||
|
||||
/**
|
||||
* Adds the items to the the given hold
|
||||
*
|
||||
*
|
||||
* @param hold The {@link NodeRef} of the hold to which the items will be added
|
||||
* @param nodeRefs The item {@link NodeRef}s which will be added to the hold
|
||||
*/
|
||||
@@ -158,7 +160,7 @@ public interface HoldService
|
||||
|
||||
/**
|
||||
* Removes the given items from the given hold
|
||||
*
|
||||
*
|
||||
* @param hold The hold {@link NodeRef} from which the given items will be removed
|
||||
* @param nodeRefs The list of items which will be removed from the given holds
|
||||
*/
|
||||
|
@@ -30,13 +30,15 @@ package org.alfresco.module.org_alfresco_module_rm.identifier;
|
||||
import java.io.Serializable;
|
||||
import java.util.Map;
|
||||
|
||||
import org.alfresco.api.AlfrescoPublicApi;
|
||||
import org.alfresco.service.namespace.QName;
|
||||
|
||||
/**
|
||||
* Generates an identifier for a content type from a given context.
|
||||
*
|
||||
*
|
||||
* @author Roy Wetherall
|
||||
*/
|
||||
@AlfrescoPublicApi
|
||||
public interface IdentifierGenerator
|
||||
{
|
||||
/**
|
||||
@@ -44,7 +46,7 @@ public interface IdentifierGenerator
|
||||
* @return QName the type
|
||||
*/
|
||||
QName getType();
|
||||
|
||||
|
||||
/**
|
||||
* Generates the next id based on the provided context.
|
||||
* @param context map of context values
|
||||
|
@@ -27,6 +27,7 @@
|
||||
|
||||
package org.alfresco.module.org_alfresco_module_rm.identifier;
|
||||
|
||||
import org.alfresco.api.AlfrescoPublicApi;
|
||||
import org.alfresco.service.cmr.repository.NodeRef;
|
||||
import org.alfresco.service.namespace.QName;
|
||||
|
||||
@@ -35,6 +36,7 @@ import org.alfresco.service.namespace.QName;
|
||||
*
|
||||
* @author Roy Wetherall
|
||||
*/
|
||||
@AlfrescoPublicApi
|
||||
public interface IdentifierService
|
||||
{
|
||||
/** Context value names */
|
||||
|
@@ -27,6 +27,7 @@
|
||||
|
||||
package org.alfresco.module.org_alfresco_module_rm.model;
|
||||
|
||||
import org.alfresco.api.AlfrescoPublicApi;
|
||||
import org.alfresco.service.namespace.QName;
|
||||
|
||||
/**
|
||||
@@ -34,6 +35,7 @@ import org.alfresco.service.namespace.QName;
|
||||
*
|
||||
* @author Gavin Cornwell
|
||||
*/
|
||||
@AlfrescoPublicApi
|
||||
public interface RecordsManagementCustomModel
|
||||
{
|
||||
// Namespace details
|
||||
|
@@ -27,6 +27,7 @@
|
||||
|
||||
package org.alfresco.module.org_alfresco_module_rm.model;
|
||||
|
||||
import org.alfresco.api.AlfrescoPublicApi;
|
||||
import org.alfresco.service.namespace.QName;
|
||||
|
||||
/**
|
||||
@@ -34,6 +35,7 @@ import org.alfresco.service.namespace.QName;
|
||||
*
|
||||
* @author Roy Wetherall
|
||||
*/
|
||||
@AlfrescoPublicApi
|
||||
public interface RecordsManagementModel extends RecordsManagementCustomModel
|
||||
{
|
||||
// Namespace details
|
||||
|
@@ -29,115 +29,117 @@ package org.alfresco.module.org_alfresco_module_rm.model.security;
|
||||
|
||||
import java.util.Set;
|
||||
|
||||
import org.alfresco.api.AlfrescoPublicApi;
|
||||
import org.alfresco.service.cmr.repository.NodeRef;
|
||||
import org.alfresco.service.namespace.QName;
|
||||
|
||||
/**
|
||||
* Model security service interface.
|
||||
*
|
||||
*
|
||||
* @author Roy Wetherall
|
||||
* @since 2.1
|
||||
*/
|
||||
@AlfrescoPublicApi
|
||||
public interface ModelSecurityService
|
||||
{
|
||||
/**
|
||||
* Sets whether model security is enabled globally or not.
|
||||
*
|
||||
*
|
||||
* @param enabled
|
||||
*/
|
||||
void setEnabled(boolean enabled);
|
||||
|
||||
|
||||
/**
|
||||
* Indicates whether model security is enabled or not.
|
||||
*
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
boolean isEnabled();
|
||||
|
||||
|
||||
/**
|
||||
* Disable model security checks for the current thread.
|
||||
*/
|
||||
void disable();
|
||||
|
||||
|
||||
/**
|
||||
* Enable model security checks for the current thread.
|
||||
*/
|
||||
void enable();
|
||||
|
||||
|
||||
/**
|
||||
* Registers a protected model artifact with the service.
|
||||
*
|
||||
*
|
||||
* @param atrifact protected model artifact
|
||||
*/
|
||||
void register(ProtectedModelArtifact atrifact);
|
||||
|
||||
void register(ProtectedModelArtifact atrifact);
|
||||
|
||||
/**
|
||||
* Indicates whether a property is protected or not.
|
||||
*
|
||||
*
|
||||
* @param name name of property
|
||||
* @return boolean true if property is protected, false otherwise
|
||||
*/
|
||||
boolean isProtectedProperty(QName property);
|
||||
|
||||
|
||||
/**
|
||||
* Get the protected properties
|
||||
*
|
||||
*
|
||||
* @return {@link Set}<{@link QName}> all the protected properties
|
||||
*/
|
||||
Set<QName> getProtectedProperties();
|
||||
|
||||
|
||||
/**
|
||||
* Get the details of the protected property, returns null if property
|
||||
* is not protected.
|
||||
*
|
||||
*
|
||||
* @param name name of the protected property
|
||||
* @return {@link ProtectedProperty} protected property details, null otherwise
|
||||
*/
|
||||
ProtectedProperty getProtectedProperty(QName name);
|
||||
|
||||
|
||||
/**
|
||||
* Indicates whether the current user can edit a protected property in the context of
|
||||
* a given node.
|
||||
* <p>
|
||||
* <p>
|
||||
* If the property is not protected then returns true.
|
||||
*
|
||||
*
|
||||
* @param nodeRef node reference
|
||||
* @param property name of the property
|
||||
* @return boolean true if the current user can edit the protected property or the property
|
||||
* is not protected, false otherwise
|
||||
*/
|
||||
boolean canEditProtectedProperty(NodeRef nodeRef, QName property);
|
||||
|
||||
|
||||
/**
|
||||
* Indicates whether an aspect is protected or not.
|
||||
*
|
||||
*
|
||||
* @param aspect aspect name
|
||||
* @return boolean true if aspect is protected, false otherwise
|
||||
*/
|
||||
boolean isProtectedAspect(QName aspect);
|
||||
|
||||
|
||||
/**
|
||||
* Get the protected aspects.
|
||||
*
|
||||
*
|
||||
* @return {@link Set}<{@link QName}> all the protected aspects
|
||||
*/
|
||||
Set<QName> getProtectedAspects();
|
||||
|
||||
Set<QName> getProtectedAspects();
|
||||
|
||||
/**
|
||||
* Get the details of the protected aspect, returns null if aspect is
|
||||
* not protected.
|
||||
*
|
||||
*
|
||||
* @param name name of the aspect
|
||||
* @return {@link ProtectedAspect} protected aspect details, null otherwise
|
||||
*/
|
||||
ProtectedAspect getProtectedAspect(QName name);
|
||||
|
||||
|
||||
/**
|
||||
* Indicates whether the current user can edit (ie add or remove) a protected
|
||||
* Indicates whether the current user can edit (ie add or remove) a protected
|
||||
* aspect in the context of a given node.
|
||||
* <p>
|
||||
* If the aspect is not protected then returns true.
|
||||
*
|
||||
*
|
||||
* @param nodeRef node reference
|
||||
* @param aspect name of the of aspect
|
||||
* @return boolean true if the current user can edit the protected aspect or the the
|
||||
|
@@ -27,10 +27,13 @@
|
||||
|
||||
package org.alfresco.module.org_alfresco_module_rm.model.security;
|
||||
|
||||
import org.alfresco.api.AlfrescoPublicApi;
|
||||
|
||||
/**
|
||||
* @author Roy Wetherall
|
||||
* @since 2.1
|
||||
*/
|
||||
@AlfrescoPublicApi
|
||||
public class ProtectedAspect extends ProtectedModelArtifact
|
||||
{
|
||||
|
||||
|
@@ -30,33 +30,35 @@ package org.alfresco.module.org_alfresco_module_rm.model.security;
|
||||
import java.util.HashSet;
|
||||
import java.util.Set;
|
||||
|
||||
import org.alfresco.api.AlfrescoPublicApi;
|
||||
import org.alfresco.module.org_alfresco_module_rm.capability.Capability;
|
||||
import org.alfresco.service.namespace.NamespaceService;
|
||||
import org.alfresco.service.namespace.QName;
|
||||
|
||||
/**
|
||||
* Protected model artifact class.
|
||||
*
|
||||
*
|
||||
* @author Roy Wetherall
|
||||
* @since 2.1
|
||||
*/
|
||||
@AlfrescoPublicApi
|
||||
public abstract class ProtectedModelArtifact
|
||||
{
|
||||
/** Model security service */
|
||||
private ModelSecurityService modelSecurityService;
|
||||
|
||||
private ModelSecurityService modelSecurityService;
|
||||
|
||||
/** Namespace service */
|
||||
private NamespaceService namespaceService;
|
||||
|
||||
|
||||
/** Qualified name of the model artifact */
|
||||
private QName name;
|
||||
|
||||
|
||||
/** Set of capabilities */
|
||||
private Set<Capability> capabilities;
|
||||
|
||||
|
||||
/** Capability names */
|
||||
private Set<String> capabilityNames;
|
||||
|
||||
|
||||
/**
|
||||
* @param namespaceService namespace service
|
||||
*/
|
||||
@@ -64,7 +66,7 @@ public abstract class ProtectedModelArtifact
|
||||
{
|
||||
this.namespaceService = namespaceService;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* @param modelSecurityService model security service
|
||||
*/
|
||||
@@ -72,7 +74,7 @@ public abstract class ProtectedModelArtifact
|
||||
{
|
||||
this.modelSecurityService = modelSecurityService;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* Init method
|
||||
*/
|
||||
@@ -80,7 +82,7 @@ public abstract class ProtectedModelArtifact
|
||||
{
|
||||
modelSecurityService.register(this);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* @param name artifact name (in cm:content form)
|
||||
*/
|
||||
@@ -89,7 +91,7 @@ public abstract class ProtectedModelArtifact
|
||||
QName qname = QName.createQName(name, namespaceService);
|
||||
this.name = qname;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* @return artifact QName
|
||||
*/
|
||||
@@ -97,7 +99,7 @@ public abstract class ProtectedModelArtifact
|
||||
{
|
||||
return name;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* @param capabilities capabilities
|
||||
*/
|
||||
@@ -105,7 +107,7 @@ public abstract class ProtectedModelArtifact
|
||||
{
|
||||
this.capabilities = capabilities;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* @return capabilities
|
||||
*/
|
||||
@@ -113,7 +115,7 @@ public abstract class ProtectedModelArtifact
|
||||
{
|
||||
return capabilities;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* @return capability names
|
||||
*/
|
||||
@@ -125,9 +127,9 @@ public abstract class ProtectedModelArtifact
|
||||
for (Capability capability : capabilities)
|
||||
{
|
||||
capabilityNames.add(capability.getName());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
return capabilityNames;
|
||||
}
|
||||
}
|
||||
|
@@ -27,17 +27,20 @@
|
||||
|
||||
package org.alfresco.module.org_alfresco_module_rm.model.security;
|
||||
|
||||
import org.alfresco.api.AlfrescoPublicApi;
|
||||
|
||||
/**
|
||||
* Protected property implementation
|
||||
*
|
||||
*
|
||||
* @author Roy Wetherall
|
||||
* @since 2.1
|
||||
*/
|
||||
@AlfrescoPublicApi
|
||||
public class ProtectedProperty extends ProtectedModelArtifact
|
||||
{
|
||||
/** always allow new indicator */
|
||||
private boolean allwaysAllowNew = false;
|
||||
|
||||
|
||||
/**
|
||||
* @param allwaysAllowNew true if always allow new, false otherwise
|
||||
*/
|
||||
@@ -45,7 +48,7 @@ public class ProtectedProperty extends ProtectedModelArtifact
|
||||
{
|
||||
this.allwaysAllowNew = allwaysAllowNew;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* @return true if always allow new, false otherwise
|
||||
*/
|
||||
|
@@ -27,6 +27,7 @@
|
||||
|
||||
package org.alfresco.module.org_alfresco_module_rm.record;
|
||||
|
||||
import org.alfresco.api.AlfrescoPublicApi;
|
||||
import org.alfresco.service.cmr.repository.NodeRef;
|
||||
|
||||
/**
|
||||
@@ -35,6 +36,7 @@ import org.alfresco.service.cmr.repository.NodeRef;
|
||||
* @author Tuna Aksoy
|
||||
* @since 2.3
|
||||
*/
|
||||
@AlfrescoPublicApi
|
||||
public interface InplaceRecordService
|
||||
{
|
||||
/**
|
||||
|
@@ -32,6 +32,7 @@ import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Set;
|
||||
|
||||
import org.alfresco.api.AlfrescoPublicApi;
|
||||
import org.alfresco.service.cmr.repository.ContentReader;
|
||||
import org.alfresco.service.cmr.repository.NodeRef;
|
||||
import org.alfresco.service.namespace.QName;
|
||||
@@ -42,6 +43,7 @@ import org.alfresco.service.namespace.QName;
|
||||
* @author Roy Wetherall
|
||||
* @since 2.1
|
||||
*/
|
||||
@AlfrescoPublicApi
|
||||
public interface RecordService
|
||||
{
|
||||
/**
|
||||
@@ -62,7 +64,7 @@ public interface RecordService
|
||||
|
||||
/**
|
||||
* Disables the property editable check.
|
||||
*
|
||||
*
|
||||
* @since 2.2
|
||||
*/
|
||||
void disablePropertyEditableCheck();
|
||||
@@ -71,7 +73,7 @@ public interface RecordService
|
||||
* Disables the property editable check for a given node in this transaction only.
|
||||
*
|
||||
* @param nodeRef node reference
|
||||
*
|
||||
*
|
||||
* @since 2.2
|
||||
*/
|
||||
void disablePropertyEditableCheck(NodeRef nodeRef);
|
||||
@@ -90,26 +92,26 @@ public interface RecordService
|
||||
*/
|
||||
@Deprecated
|
||||
Set<QName> getRecordMetaDataAspects();
|
||||
|
||||
|
||||
/**
|
||||
* Indicates whether the provided aspect is a registered record meta-data
|
||||
* aspect.
|
||||
*
|
||||
*
|
||||
* @param aspect aspect {@link QName}
|
||||
* @return boolean true if the aspect is a registered record meta-data aspect, false otherwise
|
||||
*
|
||||
* @return boolean true if the aspect is a registered record meta-data aspect, false otherwise
|
||||
*
|
||||
* @since 2.3
|
||||
*/
|
||||
boolean isRecordMetadataAspect(QName aspect);
|
||||
|
||||
|
||||
/**
|
||||
* Indicates whther the provided property is declared on a registered record
|
||||
* Indicates whther the provided property is declared on a registered record
|
||||
* meta-data aspect.
|
||||
*
|
||||
*
|
||||
* @param property property {@link QName}
|
||||
* @return boolean true if the property is declared on a registered record meta-data aspect,
|
||||
* @return boolean true if the property is declared on a registered record meta-data aspect,
|
||||
* false otherwise
|
||||
*
|
||||
*
|
||||
* @since 2.3
|
||||
*/
|
||||
boolean isRecordMetadataProperty(QName property);
|
||||
@@ -175,10 +177,10 @@ public interface RecordService
|
||||
* @see #createRecord(NodeRef, NodeRef, boolean)
|
||||
*/
|
||||
void createRecord(NodeRef filePlan, NodeRef nodeRef);
|
||||
|
||||
|
||||
/**
|
||||
* Creates a record from a copy of the node reference provided.
|
||||
*
|
||||
*
|
||||
* @param filePlan file plan
|
||||
* @param nodeRef node reference
|
||||
*/
|
||||
@@ -266,13 +268,13 @@ public interface RecordService
|
||||
* @param recordFolder the record folder to link it to
|
||||
*/
|
||||
void link(NodeRef record, NodeRef recordFolder);
|
||||
|
||||
|
||||
/**
|
||||
* Unlinks a record from a specified record folder.
|
||||
*
|
||||
*
|
||||
* @param record the record to unlink
|
||||
* @param recordFolder the record folder to unlink it from
|
||||
*
|
||||
*
|
||||
* @since 2.3
|
||||
*/
|
||||
void unlink(NodeRef record, NodeRef recordFolder);
|
||||
|
@@ -29,6 +29,7 @@ package org.alfresco.module.org_alfresco_module_rm.recordableversion;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import org.alfresco.api.AlfrescoPublicApi;
|
||||
import org.alfresco.module.org_alfresco_module_rm.script.slingshot.Version;
|
||||
import org.alfresco.service.cmr.repository.NodeRef;
|
||||
|
||||
@@ -38,6 +39,7 @@ import org.alfresco.service.cmr.repository.NodeRef;
|
||||
* @author Tuna Aksoy
|
||||
* @since 2.3
|
||||
*/
|
||||
@AlfrescoPublicApi
|
||||
public interface RecordableVersionConfigService
|
||||
{
|
||||
/**
|
||||
|
@@ -31,6 +31,7 @@ import java.io.Serializable;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
import org.alfresco.api.AlfrescoPublicApi;
|
||||
import org.alfresco.service.cmr.repository.NodeRef;
|
||||
import org.alfresco.service.namespace.QName;
|
||||
|
||||
@@ -40,6 +41,7 @@ import org.alfresco.service.namespace.QName;
|
||||
* @author Roy Wetherall
|
||||
* @since 2.1
|
||||
*/
|
||||
@AlfrescoPublicApi
|
||||
public interface RecordFolderService
|
||||
{
|
||||
/**
|
||||
|
@@ -27,6 +27,7 @@
|
||||
|
||||
package org.alfresco.module.org_alfresco_module_rm.relationship;
|
||||
|
||||
import org.alfresco.api.AlfrescoPublicApi;
|
||||
import org.alfresco.service.cmr.repository.NodeRef;
|
||||
|
||||
/**
|
||||
@@ -35,6 +36,7 @@ import org.alfresco.service.cmr.repository.NodeRef;
|
||||
* @author Tuna Aksoy
|
||||
* @since 2.3
|
||||
*/
|
||||
@AlfrescoPublicApi
|
||||
public interface Relationship
|
||||
{
|
||||
/**
|
||||
|
@@ -27,12 +27,15 @@
|
||||
|
||||
package org.alfresco.module.org_alfresco_module_rm.relationship;
|
||||
|
||||
import org.alfresco.api.AlfrescoPublicApi;
|
||||
|
||||
/**
|
||||
* Interface representing the relationship definition
|
||||
*
|
||||
* @author Tuna Aksoy
|
||||
* @since 2.3
|
||||
*/
|
||||
@AlfrescoPublicApi
|
||||
public interface RelationshipDefinition
|
||||
{
|
||||
/**
|
||||
|
@@ -29,12 +29,15 @@ package org.alfresco.module.org_alfresco_module_rm.relationship;
|
||||
|
||||
import static org.alfresco.util.ParameterCheck.mandatoryString;
|
||||
|
||||
import org.alfresco.api.AlfrescoPublicApi;
|
||||
|
||||
/**
|
||||
* POJO representing the relationship display name
|
||||
*
|
||||
* @author Tuna Aksoy
|
||||
* @since 2.3
|
||||
*/
|
||||
@AlfrescoPublicApi
|
||||
public class RelationshipDisplayName
|
||||
{
|
||||
/** The source text of the relationship */
|
||||
|
@@ -29,6 +29,7 @@ package org.alfresco.module.org_alfresco_module_rm.relationship;
|
||||
|
||||
import java.util.Set;
|
||||
|
||||
import org.alfresco.api.AlfrescoPublicApi;
|
||||
import org.alfresco.service.cmr.repository.NodeRef;
|
||||
|
||||
/**
|
||||
@@ -37,11 +38,12 @@ import org.alfresco.service.cmr.repository.NodeRef;
|
||||
* @author Tuna Aksoy
|
||||
* @since 2.3
|
||||
*/
|
||||
@AlfrescoPublicApi
|
||||
public interface RelationshipService
|
||||
{
|
||||
/** System relationship names */
|
||||
static final String RELATIONSHIP_VERSIONS = "versions";
|
||||
|
||||
|
||||
/**
|
||||
* Gets all the existing relationship definitions
|
||||
*
|
||||
@@ -97,7 +99,7 @@ public interface RelationshipService
|
||||
* @return All relationships that come out from the given node reference
|
||||
*/
|
||||
Set<Relationship> getRelationshipsFrom(NodeRef nodeRef);
|
||||
|
||||
|
||||
/**
|
||||
* Gets all the relationships that come out from the given node reference
|
||||
* that match the a given name filter.
|
||||
@@ -107,7 +109,7 @@ public interface RelationshipService
|
||||
* @param nodeRef The node reference
|
||||
* @param nameFilter Name filter for results
|
||||
* @return All relationships that come out from the given node reference
|
||||
*
|
||||
*
|
||||
* @since 2.3.1
|
||||
*/
|
||||
Set<Relationship> getRelationshipsFrom(NodeRef nodeRef, String nameFilter);
|
||||
@@ -119,7 +121,7 @@ public interface RelationshipService
|
||||
* @return All relationships that go into the given node reference
|
||||
*/
|
||||
Set<Relationship> getRelationshipsTo(NodeRef nodeRef);
|
||||
|
||||
|
||||
/**
|
||||
* Gets all the relationships that go into the given node reference
|
||||
* that match the a given name filter.
|
||||
@@ -129,7 +131,7 @@ public interface RelationshipService
|
||||
* @param nodeRef The node reference
|
||||
* @param nameFilter Name filter for results
|
||||
* @return All relationships that go into the given node reference
|
||||
*
|
||||
*
|
||||
* @since 2.3.1
|
||||
*/
|
||||
Set<Relationship> getRelationshipsTo(NodeRef nodeRef, String nameFilter);
|
||||
|
@@ -27,12 +27,15 @@
|
||||
|
||||
package org.alfresco.module.org_alfresco_module_rm.relationship;
|
||||
|
||||
import org.alfresco.api.AlfrescoPublicApi;
|
||||
|
||||
/**
|
||||
* Enum representing the relationship types
|
||||
*
|
||||
* @author Tuna Aksoy
|
||||
* @since 2.3
|
||||
*/
|
||||
@AlfrescoPublicApi
|
||||
public enum RelationshipType
|
||||
{
|
||||
BIDIRECTIONAL,
|
||||
|
@@ -30,32 +30,34 @@ package org.alfresco.module.org_alfresco_module_rm.report;
|
||||
import java.io.Serializable;
|
||||
import java.util.Map;
|
||||
|
||||
import org.alfresco.api.AlfrescoPublicApi;
|
||||
import org.alfresco.service.cmr.repository.ContentReader;
|
||||
import org.alfresco.service.namespace.QName;
|
||||
|
||||
/**
|
||||
* Report interface.
|
||||
*
|
||||
*
|
||||
* @author Roy Wetherall
|
||||
* @since 2.1
|
||||
*/
|
||||
@AlfrescoPublicApi
|
||||
public interface Report
|
||||
{
|
||||
/**
|
||||
* @return {@link QName} report type
|
||||
*/
|
||||
QName getReportType();
|
||||
|
||||
|
||||
/**
|
||||
* @return {@link String} report name
|
||||
*/
|
||||
String getReportName();
|
||||
|
||||
|
||||
/**
|
||||
* @return {@link Map}<{@link QName},{@link Serializable}> report properties
|
||||
*/
|
||||
Map<QName, Serializable> getReportProperties();
|
||||
|
||||
|
||||
/**
|
||||
* @return {@link ContentReader} content reader to report content
|
||||
*/
|
||||
|
@@ -27,15 +27,17 @@
|
||||
|
||||
package org.alfresco.module.org_alfresco_module_rm.report;
|
||||
|
||||
import org.alfresco.api.AlfrescoPublicApi;
|
||||
import org.alfresco.service.cmr.repository.NodeRef;
|
||||
import org.alfresco.service.namespace.QName;
|
||||
|
||||
/**
|
||||
* Report generator interface.
|
||||
*
|
||||
*
|
||||
* @author Roy Wetherall
|
||||
* @since 2.1
|
||||
*/
|
||||
@AlfrescoPublicApi
|
||||
public interface ReportGenerator
|
||||
{
|
||||
/**
|
||||
@@ -45,7 +47,7 @@ public interface ReportGenerator
|
||||
|
||||
/**
|
||||
* Generate report.
|
||||
*
|
||||
*
|
||||
* @param reportedUponNodeRef
|
||||
* @param mimetype
|
||||
* @return
|
||||
|
@@ -29,6 +29,7 @@ package org.alfresco.module.org_alfresco_module_rm.report;
|
||||
|
||||
import java.util.Set;
|
||||
|
||||
import org.alfresco.api.AlfrescoPublicApi;
|
||||
import org.alfresco.service.cmr.repository.NodeRef;
|
||||
import org.alfresco.service.namespace.QName;
|
||||
|
||||
@@ -38,6 +39,7 @@ import org.alfresco.service.namespace.QName;
|
||||
* @author Roy Wetherall
|
||||
* @since 2.1
|
||||
*/
|
||||
@AlfrescoPublicApi
|
||||
public interface ReportService
|
||||
{
|
||||
/**
|
||||
@@ -65,7 +67,7 @@ public interface ReportService
|
||||
|
||||
/**
|
||||
* Generate a report for a specified mimetype.
|
||||
*
|
||||
*
|
||||
* @see #generateReport(QName, NodeRef)
|
||||
*
|
||||
* @param reportType report type
|
||||
|
@@ -31,6 +31,7 @@ import java.util.Arrays;
|
||||
import java.util.List;
|
||||
import java.util.Set;
|
||||
|
||||
import org.alfresco.api.AlfrescoPublicApi;
|
||||
import org.alfresco.module.org_alfresco_module_rm.capability.Capability;
|
||||
import org.alfresco.service.cmr.repository.NodeRef;
|
||||
|
||||
@@ -40,12 +41,13 @@ import org.alfresco.service.cmr.repository.NodeRef;
|
||||
* @author Roy Wetherall
|
||||
* @since 2.1
|
||||
*/
|
||||
@AlfrescoPublicApi
|
||||
public interface FilePlanRoleService
|
||||
{
|
||||
/** Default role names */
|
||||
String ROLE_USER = "User";
|
||||
String ROLE_POWER_USER = "PowerUser";
|
||||
String ROLE_SECURITY_OFFICER = "SecurityOfficer";
|
||||
String ROLE_SECURITY_OFFICER = "SecurityOfficer";
|
||||
String ROLE_RECORDS_MANAGER = "RecordsManager";
|
||||
String ROLE_ADMIN = "Administrator";
|
||||
String ROLE_EXTENDED_READERS = "ExtendedReaders";
|
||||
|
@@ -29,6 +29,7 @@ package org.alfresco.module.org_alfresco_module_rm.role;
|
||||
|
||||
import java.util.Set;
|
||||
|
||||
import org.alfresco.api.AlfrescoPublicApi;
|
||||
import org.alfresco.module.org_alfresco_module_rm.capability.Capability;
|
||||
|
||||
/**
|
||||
@@ -36,6 +37,7 @@ import org.alfresco.module.org_alfresco_module_rm.capability.Capability;
|
||||
*
|
||||
* @author Roy Wetherall
|
||||
*/
|
||||
@AlfrescoPublicApi
|
||||
public class Role
|
||||
{
|
||||
/** Role name */
|
||||
|
@@ -30,12 +30,15 @@ package org.alfresco.module.org_alfresco_module_rm.script.slingshot;
|
||||
import static org.alfresco.util.ParameterCheck.mandatory;
|
||||
import static org.alfresco.util.ParameterCheck.mandatoryString;
|
||||
|
||||
import org.alfresco.api.AlfrescoPublicApi;
|
||||
|
||||
/**
|
||||
* Recordable version class
|
||||
*
|
||||
* @author Tuna Aksoy
|
||||
* @since 2.3
|
||||
*/
|
||||
@AlfrescoPublicApi
|
||||
public class Version
|
||||
{
|
||||
/** The version policy */
|
||||
|
@@ -33,6 +33,7 @@ import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
import org.alfresco.api.AlfrescoPublicApi;
|
||||
import org.alfresco.error.AlfrescoRuntimeException;
|
||||
import org.alfresco.model.ContentModel;
|
||||
import org.alfresco.service.cmr.repository.datatype.DefaultTypeConverter;
|
||||
@@ -48,6 +49,7 @@ import org.json.JSONObject;
|
||||
/**
|
||||
* @author Roy Wetherall
|
||||
*/
|
||||
@AlfrescoPublicApi
|
||||
@SuppressWarnings("serial")
|
||||
public class RecordsManagementSearchParameters
|
||||
{
|
||||
|
@@ -34,66 +34,67 @@ import org.alfresco.util.Pair;
|
||||
|
||||
/**
|
||||
* Records management search service.
|
||||
*
|
||||
*
|
||||
* @author Roy Wetherall
|
||||
*/
|
||||
public interface RecordsManagementSearchService
|
||||
{
|
||||
// Not @AlfrescoPublicApi at the moment as it requires SavedSearchDetails which is not public API.
|
||||
public interface RecordsManagementSearchService
|
||||
{
|
||||
/**
|
||||
* Execute a records management search
|
||||
* @param siteId the id of the rm site to query
|
||||
* @param query search query string
|
||||
* @param searchParameters search parameters
|
||||
* @return {@link List}<{@link Pair}<{@link NodeRef}, {@link NodeRef}> search results as pairs for parent and child nodes
|
||||
* @param searchParameters search parameters
|
||||
* @return {@link List}<{@link Pair}<{@link NodeRef}, {@link NodeRef}> search results as pairs for parent and child nodes
|
||||
*/
|
||||
List<Pair<NodeRef, NodeRef>> search(String siteId, String query, RecordsManagementSearchParameters searchParameters);
|
||||
|
||||
List<Pair<NodeRef, NodeRef>> search(String siteId, String query, RecordsManagementSearchParameters searchParameters);
|
||||
|
||||
/**
|
||||
* Get all the searches saved on the given records management site.
|
||||
* @param siteId site id
|
||||
* @return {@link List<{@link SavedSearchDetails}>} list of saved search details
|
||||
* @return {@link List<{@link SavedSearchDetails}>} list of saved search details
|
||||
*/
|
||||
List<SavedSearchDetails> getSavedSearches(String siteId);
|
||||
|
||||
|
||||
/**
|
||||
* Get a named saved search for a given records management site.
|
||||
* Get a named saved search for a given records management site.
|
||||
* @param siteId site id
|
||||
* @param name name of search
|
||||
* @return {@link SavedSearchDetails} saved search details
|
||||
*/
|
||||
SavedSearchDetails getSavedSearch(String siteId, String name);
|
||||
|
||||
|
||||
/**
|
||||
* Save records management search.
|
||||
* @param siteId site id
|
||||
* @param name name
|
||||
* @param description description
|
||||
* @param search search string
|
||||
* @param name name
|
||||
* @param description description
|
||||
* @param search search string
|
||||
* @param isPublic indicates whether the saved search is public or not
|
||||
* @return {@link SavedSearchDetails} details of the saved search
|
||||
*/
|
||||
SavedSearchDetails saveSearch(String siteId, String name, String description, String search, RecordsManagementSearchParameters searchParameters, boolean isPublic);
|
||||
|
||||
|
||||
/**
|
||||
* Save records management search.
|
||||
* @param savedSearchDetails details of search to save
|
||||
* @return {@link SavedSearchDetails} details of the saved search
|
||||
*/
|
||||
SavedSearchDetails saveSearch(SavedSearchDetails savedSearchDetails);
|
||||
|
||||
|
||||
/**
|
||||
* Delete saved search
|
||||
* @param siteId site id
|
||||
* @param name name of saved search
|
||||
*/
|
||||
void deleteSavedSearch(String siteId, String name);
|
||||
|
||||
|
||||
/**
|
||||
* Delete saved search
|
||||
* @param savedSearchDetails saved search details
|
||||
*/
|
||||
void deleteSavedSearch(SavedSearchDetails savedSearchDetails);
|
||||
|
||||
|
||||
/**
|
||||
* Adds the reports as saved searches to a given site.
|
||||
* @param siteId site id
|
||||
|
@@ -27,52 +27,55 @@
|
||||
|
||||
package org.alfresco.module.org_alfresco_module_rm.search;
|
||||
|
||||
import org.alfresco.api.AlfrescoPublicApi;
|
||||
|
||||
/**
|
||||
* Report details.
|
||||
*
|
||||
*
|
||||
* @author Roy Wetherall
|
||||
*/
|
||||
public class ReportDetails
|
||||
@AlfrescoPublicApi
|
||||
public class ReportDetails
|
||||
{
|
||||
/** Name */
|
||||
protected String name;
|
||||
|
||||
|
||||
/** Description */
|
||||
protected String description;
|
||||
|
||||
|
||||
/** Search */
|
||||
protected String search;
|
||||
|
||||
|
||||
/** Search parameters */
|
||||
protected RecordsManagementSearchParameters searchParameters;
|
||||
|
||||
/**
|
||||
*
|
||||
*
|
||||
* @param name
|
||||
* @param description
|
||||
* @param search
|
||||
* @param searchParameters
|
||||
*/
|
||||
public ReportDetails(String name, String description, String search, RecordsManagementSearchParameters searchParameters)
|
||||
public ReportDetails(String name, String description, String search, RecordsManagementSearchParameters searchParameters)
|
||||
{
|
||||
this.name = name;
|
||||
this.description = description;
|
||||
this.search = search;
|
||||
this.searchParameters = searchParameters;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* @return {@link String} name
|
||||
*/
|
||||
public String getName()
|
||||
public String getName()
|
||||
{
|
||||
return name;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* @return {@link String} description
|
||||
*/
|
||||
public String getDescription()
|
||||
public String getDescription()
|
||||
{
|
||||
return description;
|
||||
}
|
||||
@@ -80,7 +83,7 @@ public class ReportDetails
|
||||
/**
|
||||
* @param description description
|
||||
*/
|
||||
public void setDescription(String description)
|
||||
public void setDescription(String description)
|
||||
{
|
||||
this.description = description;
|
||||
}
|
||||
@@ -92,15 +95,15 @@ public class ReportDetails
|
||||
{
|
||||
return search;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* @param query query string
|
||||
*/
|
||||
public void setSearch(String search)
|
||||
{
|
||||
this.search = search;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* @return
|
||||
*/
|
||||
@@ -108,7 +111,7 @@ public class ReportDetails
|
||||
{
|
||||
return searchParameters;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* @param searchParameters
|
||||
*/
|
||||
|
@@ -83,6 +83,7 @@ import org.springframework.extensions.surf.util.I18NUtil;
|
||||
*
|
||||
* @author Roy Wetherall
|
||||
*/
|
||||
// Not @AlfrescoPublicApi at the moment as it requires RecordsManagementSearchServiceImpl which is not public API.
|
||||
public class SavedSearchDetails extends ReportDetails
|
||||
{
|
||||
// JSON label values
|
||||
|
@@ -42,6 +42,7 @@ import org.alfresco.service.namespace.QName;
|
||||
* Used to bridge between the old style of saved search passed and required by the UI and the new actual saved search details.
|
||||
* Eventually will be factored out as web scripts are brought up to date.
|
||||
*/
|
||||
// Not @AlfrescoPublicApi at the moment as it requires RecordsManagementSearchServiceImpl which is not public API.
|
||||
public class SavedSearchDetailsCompatibility implements RecordsManagementModel
|
||||
{
|
||||
/** Saved search details */
|
||||
|
@@ -27,8 +27,10 @@
|
||||
|
||||
package org.alfresco.module.org_alfresco_module_rm.search;
|
||||
|
||||
import org.alfresco.api.AlfrescoPublicApi;
|
||||
import org.alfresco.service.namespace.QName;
|
||||
|
||||
@AlfrescoPublicApi
|
||||
/*package*/ class SortItem
|
||||
{
|
||||
public QName property = null;
|
||||
|
@@ -29,35 +29,37 @@ package org.alfresco.module.org_alfresco_module_rm.security;
|
||||
|
||||
import java.util.Set;
|
||||
|
||||
import org.alfresco.api.AlfrescoPublicApi;
|
||||
import org.alfresco.service.cmr.repository.NodeRef;
|
||||
|
||||
/**
|
||||
* Extended security service.
|
||||
*
|
||||
*
|
||||
* @author Roy Wetherall
|
||||
* @since 2.1
|
||||
*/
|
||||
@AlfrescoPublicApi
|
||||
public interface ExtendedSecurityService
|
||||
{
|
||||
/**
|
||||
* Indicates whether a node has extended security.
|
||||
*
|
||||
*
|
||||
* @param nodeRef node reference
|
||||
* @return boolean true if the node has extedned security, false otherwise
|
||||
*/
|
||||
boolean hasExtendedSecurity(NodeRef nodeRef);
|
||||
|
||||
|
||||
/**
|
||||
* Gets the set of authorities that are extended readers for the given node.
|
||||
*
|
||||
*
|
||||
* @param nodeRef node reference
|
||||
* @return {@link Set}<{@link String}> set of extended readers
|
||||
*/
|
||||
Set<String> getExtendedReaders(NodeRef nodeRef);
|
||||
|
||||
|
||||
/**
|
||||
* Get the set of authorities that are extended writers for the given node.
|
||||
*
|
||||
*
|
||||
* @param nodeRef node reference
|
||||
* @return {@link Set}<{@link String}> set of extended writers
|
||||
*/
|
||||
@@ -65,42 +67,42 @@ public interface ExtendedSecurityService
|
||||
|
||||
/**
|
||||
* Add extended security for the specified authorities to a node.
|
||||
*
|
||||
*
|
||||
* @param nodeRef node reference
|
||||
* @param readers set of authorities to add extended read permissions
|
||||
* @param writers set of authorities to add extended write permissions
|
||||
*/
|
||||
void addExtendedSecurity(NodeRef nodeRef, Set<String> readers, Set<String> writers);
|
||||
|
||||
|
||||
/**
|
||||
* Add extended security for the specified authorities to a node.
|
||||
* <p>
|
||||
* If specified, the read and write extended permissions are applied to all parents up to the file plan as
|
||||
* If specified, the read and write extended permissions are applied to all parents up to the file plan as
|
||||
* extended read. This ensures parental read, but not parental write.
|
||||
*
|
||||
*
|
||||
* @param nodeRef node reference
|
||||
* @param readers set of authorities to add extended read permissions
|
||||
* @param writers set of authorities to add extended write permissions
|
||||
* @param applyToParents true if extended security applied to parents (read only) false otherwise.
|
||||
*/
|
||||
void addExtendedSecurity(NodeRef nodeRef, Set<String> readers, Set<String> writers, boolean applyToParents);
|
||||
|
||||
|
||||
/**
|
||||
* Remove the extended security for the specified authorities from a node.
|
||||
*
|
||||
*
|
||||
* @param nodeRef node reference
|
||||
* @param readers set of authorities to remove as extended readers
|
||||
* @param writers set of authorities to remove as extended writers
|
||||
*/
|
||||
void removeExtendedSecurity(NodeRef nodeRef, Set<String> readers, Set<String> writers);
|
||||
|
||||
|
||||
/**
|
||||
* Remove the extended security for the specified authorities from a node.
|
||||
* <p>
|
||||
* If specified, extended security will also be removed from the parent hierarchy.(read only). Note that
|
||||
* If specified, extended security will also be removed from the parent hierarchy.(read only). Note that
|
||||
* extended security is records as a reference count, so security will only be utterly removed from the parent
|
||||
* hierarchy if all references to the authority are removed.
|
||||
*
|
||||
*
|
||||
* @param nodeRef node reference
|
||||
* @param readers set of authorities to remove as extended readers
|
||||
* @param writers set of authorities to remove as extedned writers
|
||||
@@ -108,17 +110,17 @@ public interface ExtendedSecurityService
|
||||
* otherwise
|
||||
*/
|
||||
void removeExtendedSecurity(NodeRef nodeRef, Set<String> readers, Set<String> writers, boolean applyToParents);
|
||||
|
||||
|
||||
/**
|
||||
* Remove all extended readers and writers from the given node reference.
|
||||
*
|
||||
*
|
||||
* @param nodeRef node reference
|
||||
*/
|
||||
void removeAllExtendedSecurity(NodeRef nodeRef);
|
||||
|
||||
|
||||
/**
|
||||
* Remove all extended readers and writers from the given node reference.
|
||||
*
|
||||
*
|
||||
* @param nodeRef node reference
|
||||
* @param applyToParents if true then apply removal to parent hierarchy (read only) false otherwise.
|
||||
*/
|
||||
|
@@ -35,6 +35,7 @@ import org.alfresco.repo.security.authentication.AuthenticationUtil.RunAsWork;
|
||||
*
|
||||
* @author Roy Wetherall
|
||||
* @since 2.1
|
||||
* @deprecated as of 2.2, use {@link AuthenticationUtil}.
|
||||
*/
|
||||
public interface FilePlanAuthenticationService
|
||||
{
|
||||
|
@@ -27,46 +27,48 @@
|
||||
|
||||
package org.alfresco.module.org_alfresco_module_rm.security;
|
||||
|
||||
import org.alfresco.api.AlfrescoPublicApi;
|
||||
import org.alfresco.service.cmr.repository.NodeRef;
|
||||
|
||||
/**
|
||||
* File plan permission service.
|
||||
*
|
||||
*
|
||||
* @author Roy Wetherall
|
||||
* @since 2.1
|
||||
*/
|
||||
@AlfrescoPublicApi
|
||||
public interface FilePlanPermissionService
|
||||
{
|
||||
/**
|
||||
* Setup permissions for a record category
|
||||
*
|
||||
*
|
||||
* @param nodeRef record category node reference
|
||||
*/
|
||||
void setupRecordCategoryPermissions(NodeRef recordCategory);
|
||||
|
||||
|
||||
/**
|
||||
* Setup permissions for an object within a given parent.
|
||||
*
|
||||
*
|
||||
* @param parent parent node to inherit permissions from
|
||||
* @param nodeRef node ref to setup permissions on
|
||||
* @param nodeRef node ref to setup permissions on
|
||||
*/
|
||||
void setupPermissions(NodeRef parent, NodeRef nodeRef);
|
||||
|
||||
|
||||
/**
|
||||
* Sets a permission on a file plan object. Assumes allow is true. Cascades permission down to record folder.
|
||||
* Sets a permission on a file plan object. Assumes allow is true. Cascades permission down to record folder.
|
||||
* Cascades ReadRecord up to file plan.
|
||||
*
|
||||
*
|
||||
* @param nodeRef node reference
|
||||
* @param authority authority
|
||||
* @param authority authority
|
||||
* @param permission permission
|
||||
*/
|
||||
void setPermission(NodeRef nodeRef, String authority, String permission);
|
||||
|
||||
|
||||
/**
|
||||
* Deletes a permission from a file plan object. Cascades removal down to record folder.
|
||||
*
|
||||
*
|
||||
* @param nodeRef node reference
|
||||
* @param authority authority
|
||||
* @param authority authority
|
||||
* @param permission permission
|
||||
*/
|
||||
void deletePermission(NodeRef nodeRef, String authority, String permission);
|
||||
|
@@ -27,6 +27,7 @@
|
||||
|
||||
package org.alfresco.module.org_alfresco_module_rm.transfer;
|
||||
|
||||
import org.alfresco.api.AlfrescoPublicApi;
|
||||
import org.alfresco.service.cmr.repository.NodeRef;
|
||||
|
||||
/**
|
||||
@@ -35,6 +36,7 @@ import org.alfresco.service.cmr.repository.NodeRef;
|
||||
* @author Tuna Aksoy
|
||||
* @since 2.2
|
||||
*/
|
||||
@AlfrescoPublicApi
|
||||
public interface TransferService
|
||||
{
|
||||
/**
|
||||
@@ -62,7 +64,7 @@ public interface TransferService
|
||||
* Completes the transfer for the given node.
|
||||
*
|
||||
* @param nodeRef node reference to complete the transfer
|
||||
*
|
||||
*
|
||||
* @since 2.2
|
||||
*/
|
||||
void completeTransfer(NodeRef nodeRef);
|
||||
|
@@ -27,77 +27,79 @@
|
||||
|
||||
package org.alfresco.module.org_alfresco_module_rm.version;
|
||||
|
||||
import org.alfresco.api.AlfrescoPublicApi;
|
||||
import org.alfresco.service.cmr.repository.NodeRef;
|
||||
import org.alfresco.service.cmr.version.Version;
|
||||
|
||||
/**
|
||||
* Recordable version service interface.
|
||||
*
|
||||
*
|
||||
* @author Roy Wetherall
|
||||
* @since 2.3
|
||||
*/
|
||||
public interface RecordableVersionService
|
||||
@AlfrescoPublicApi
|
||||
public interface RecordableVersionService
|
||||
{
|
||||
/**
|
||||
* Indicates whether the current version of a node is recorded or not.
|
||||
* <p>
|
||||
* Returns false if not versionable or no version.
|
||||
*
|
||||
*
|
||||
* @param nodeRef node reference
|
||||
* @return boolean true if latest version recorded, false otherwise
|
||||
*/
|
||||
boolean isCurrentVersionRecorded(NodeRef nodeRef);
|
||||
|
||||
|
||||
/**
|
||||
* Indicates whether a version is recorded or not.
|
||||
*
|
||||
*
|
||||
* @param version version
|
||||
* @return boolean true if recorded version, false otherwise
|
||||
*/
|
||||
boolean isRecordedVersion(Version version);
|
||||
|
||||
|
||||
/**
|
||||
* If the version is a recorded version, gets the related version
|
||||
* If the version is a recorded version, gets the related version
|
||||
* record.
|
||||
*
|
||||
*
|
||||
* @param version version
|
||||
* @return NodeRef node reference of version record
|
||||
*/
|
||||
NodeRef getVersionRecord(Version version);
|
||||
|
||||
|
||||
/**
|
||||
* Gets the version that relates to the version record
|
||||
*
|
||||
*
|
||||
* @param versionRecord version record node reference
|
||||
* @return Version version or null if not found
|
||||
*/
|
||||
Version getRecordedVersion(NodeRef record);
|
||||
|
||||
|
||||
/**
|
||||
* Creates a record from the latest version, marking it as recorded.
|
||||
* <p>
|
||||
* Does not create a record if the node is not versionable or the latest
|
||||
* version is already recorded.
|
||||
*
|
||||
*
|
||||
* @param nodeRef node reference
|
||||
* @return NodeRef node reference to the created record.
|
||||
*/
|
||||
NodeRef createRecordFromLatestVersion(NodeRef filePlan, NodeRef nodeRef);
|
||||
|
||||
|
||||
/**
|
||||
* Indicates whether a record version is destroyed or not.
|
||||
*
|
||||
*
|
||||
* @param version version
|
||||
* @return boolean true if destroyed, false otherwise
|
||||
*/
|
||||
boolean isRecordedVersionDestroyed(Version version);
|
||||
|
||||
|
||||
/**
|
||||
* Marks a recorded version as destroyed.
|
||||
* <p>
|
||||
* Note this method does not destroy the associated record, instead it marks the
|
||||
* Note this method does not destroy the associated record, instead it marks the
|
||||
* version as destroyed.
|
||||
*
|
||||
*
|
||||
* @param version version
|
||||
*/
|
||||
void destroyRecordedVersion(Version version);
|
||||
|
@@ -36,6 +36,7 @@ import org.alfresco.service.cmr.repository.Period;
|
||||
* @author Roy Wetherall
|
||||
* @since 2.0
|
||||
*/
|
||||
// Not @AlfrescoPublicApi due to e.g. Period.
|
||||
public interface VitalRecordService
|
||||
{
|
||||
/** Period 'none' */
|
||||
|
@@ -1,5 +1,7 @@
|
||||
package org.alfresco.util;
|
||||
|
||||
import org.alfresco.api.AlfrescoPublicApi;
|
||||
|
||||
/*
|
||||
* #%L
|
||||
* Alfresco Records Management Module
|
||||
@@ -35,6 +37,7 @@ import org.alfresco.error.AlfrescoRuntimeException;
|
||||
* @author Tuna Aksoy
|
||||
* @since 2.5
|
||||
*/
|
||||
@AlfrescoPublicApi
|
||||
public enum SortDirection
|
||||
{
|
||||
ASC ("asc"),
|
||||
|
Reference in New Issue
Block a user