org.alfresco.repo.module
Class AbstractModuleComponent
org.alfresco.repo.module.AbstractModuleComponent All Implemented Interfaces:
-
ModuleComponent, org.springframework.beans.factory.BeanNameAware, org.springframework.beans.factory.Aware
Direct Known Subclasses:
-
@org.alfresco.api.AlfrescoPublicApi
public abstract class AbstractModuleComponent
implements ModuleComponent, org.springframework.beans.factory.BeanNameAware Since:
-
2.0
Author:
-
Roy Wetherall, Derek Hulley
See Also:
-
authenticationComponent
protected org.alfresco.repo.security.authentication.AuthenticationComponent authenticationComponent
moduleService
serviceRegistry
AbstractModuleComponent
public AbstractModuleComponent()
checkProperties
protected void checkProperties()
-
Checks for the presence of all generally-required properties.
toString
-
Overrides:
-
-
See Also:
-
equals
public boolean equals(Object obj) -
Overrides:
-
hashCode
public int hashCode()
-
Overrides:
-
setAuthenticationComponent
public void setAuthenticationComponent(org.alfresco.repo.security.authentication.AuthenticationComponent authenticationComponent)
setModuleService
-
Set the module service to register with. If not set, the component will not be
automatically started.
Parameters:
-
moduleService - the service to register against. This is optional.
setServiceRegistry
setTenantAdminService
public void setTenantAdminService(org.alfresco.repo.tenant.TenantAdminService tenantAdminService)
getModuleId
-
Specified by:
-
Returns:
-
Returns the globally unique module ID.
setModuleId
public void setModuleId(String moduleId) -
Parameters:
-
moduleId - the globally unique module name.
getName
-
Specified by:
-
Returns:
-
Returns the name of the component in the context of the module ID. It does not
have to be globally unique.
setName
public void setName(String name) -
Set the component name, which must be unique within the context of the
module. If the is not set, then the bean name will be used.
Parameters:
-
name - the name of the component within the module.
-
See Also:
-
setBeanName
public void setBeanName(String name) -
Convenience method that will set the name of the component to
match the bean name, unless the
name has
been explicitly set.
Specified by:
-
setBeanName in interface org.springframework.beans.factory.BeanNameAware
getDescription
public String getDescription() -
Specified by:
-
Returns:
-
Returns a description of the component.
setDescription
public void setDescription(String description) -
Set the component's description. This will automatically be I18N'ized, so it may just
be a resource bundle key.
Parameters:
-
description - a description of the component.
getSinceVersionNumber
public org.alfresco.repo.module.ModuleVersionNumber getSinceVersionNumber()
-
Specified by:
-
Returns:
-
Returns the version number of the module for which this component was introduced.
setSinceVersion
public void setSinceVersion(String version) -
Set the version number for which this component was added.
getAppliesFromVersionNumber
public org.alfresco.repo.module.ModuleVersionNumber getAppliesFromVersionNumber()
-
Specified by:
-
Returns:
-
Returns the smallest version number of the module to which this component applies.
setAppliesFromVersion
public void setAppliesFromVersion(String version) -
Set the minimum module version number to which this component applies.
Default 0.0.
getAppliesToVersionNumber
public org.alfresco.repo.module.ModuleVersionNumber getAppliesToVersionNumber()
-
Specified by:
-
Returns:
-
Returns the largest version number of the module to which this component applies.
setAppliesToVersion
public void setAppliesToVersion(String version) -
Set the minimum module version number to which this component applies.
Default 999.0.
getDependsOn
-
A list of module components that must be executed prior to this instance.
This is the only way to guarantee ordered execution. The dependencies may include
components from other modules, guaranteeing an early failure if a module is missing.
Specified by:
-
Returns:
-
Returns a list of components that must be executed prior to this component.
setDependsOn
-
Parameters:
-
dependsOn - a list of modules that must be executed before this one
isExecuteOnceOnly
public boolean isExecuteOnceOnly()
-
Specified by:
-
Returns:
-
Returns true always. Override as required.
setExecuteOnceOnly
public void setExecuteOnceOnly(boolean executeOnceOnly)
-
Parameters:
-
executeOnceOnly - true to force execution of this component with
each startup or false if it must only be executed once.
init
public void init()
executeInternal
protected abstract void executeInternal() throws Throwable -
The method that performs the actual work. For the most part, derived classes will
only have to override this method to be fully functional.
-
Throws:
-
execute
public final void execute()
-
Perform the actual component's work. Execution will be done within the context of a
system account with an enclosing transaction. Long-running processes should be spawned
from the calling thread, if required.
All failures should just be thrown out as runtime exceptions and will be dealt with by
the associated module infrastructure.
Specified by:
-
-
See Also:
-
shutdown
public final void shutdown()
-
Perform any cleanup required to remove module.
Specified by:
-