Merged DEV\EXTENSIONS to HEAD

svn merge svn://svn.alfresco.com:3691/alfresco/BRANCHES/DEV/EXTENSIONS@4868 svn://svn.alfresco.com:3691/alfresco/BRANCHES/DEV/EXTENSIONS@4869 .
   svn merge svn://svn.alfresco.com:3691/alfresco/BRANCHES/DEV/EXTENSIONS@4904 svn://svn.alfresco.com:3691/alfresco/BRANCHES/DEV/EXTENSIONS@4938 .
   Module management support
   Modularization of Records Management


git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@4956 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
Derek Hulley
2007-01-29 14:43:37 +00:00
parent 0e3da160a2
commit f047c6baaf
42 changed files with 3324 additions and 664 deletions

View File

@@ -19,42 +19,52 @@ package org.alfresco.service.cmr.module;
import org.alfresco.util.VersionNumber;
/**
* Module details, contains the details of an installed alfresco
* module.
* Module details, contains the details of an installed alfresco module.
*
* @author Roy Wetherall
* @since 2.0
*/
public class ModuleDetails
public interface ModuleDetails
{
private String id;
private VersionNumber version;
private String title;
private String description;
/**
* Indicates whether the details exists or not
*
* @return true if it exists, false otherwise
*/
boolean exists();
public ModuleDetails(String id, VersionNumber version, String title, String description)
{
this.id = id;
this.version = version;
this.title = title;
}
/**
* Get the id of the module
*
* @return module id
*/
String getId();
public String getId()
{
return id;
}
/**
* Get the version number of the module
*
* @return module version number
*/
VersionNumber getVersionNumber();
public VersionNumber getVersion()
{
return version;
}
/**
* Get the title of the module
*
* @return module title
*/
String getTitle();
public String getTitle()
{
return title;
}
/**
* Get the description of the module
*
* @return module description
*/
String getDescription();
public String getDescription()
{
return description;
}
/**
* Get the modules install date
*
* @return module install date
*/
String getInstalledDate();
}

View File

@@ -1,5 +1,5 @@
/*
* Copyright (C) 2005 Alfresco, Inc.
* Copyright (C) 2007 Alfresco, Inc.
*
* Licensed under the Mozilla Public License version 1.1
* with a permitted attribution clause. You may obtain a
@@ -18,15 +18,45 @@ package org.alfresco.service.cmr.module;
import java.util.List;
import org.alfresco.repo.module.ModuleComponent;
/**
* Module service. Provides information about the currently installed alfresco
* modules.
* A service to control and provide information about the currently-installed modules.
*
* @author Roy Wetherall
* @author Derek Hulley
* @since 2.0
*/
public interface ModuleService
{
public ModuleDetails getModule(String moduleId);
/**
* Gets the module details for a given module id. If the module does not exist or is not installed
* then null is returned.
*
* @param moduleId a module id
* @return the module details
*/
ModuleDetails getModule(String moduleId);
public List<ModuleDetails> getAllModules();
/**
* Gets a list of all the modules currently installed.
*
* @return module details of the currently installed modules.
*/
List<ModuleDetails> getAllModules();
/**
* Register a component of a module for execution.
*
* @param component the module component.
*/
void registerComponent(ModuleComponent component);
/**
* Start all the modules. For transaction purposes, each module should be
* regarded as a self-contained unit and started in its own transaction.
* Where inter-module dependencies exist, these will be pulled into the
* transaction.
*/
void startModules();
}