mirror of
https://github.com/Alfresco/alfresco-community-repo.git
synced 2025-06-09 17:45:10 +00:00
Merge V1.2.0 BRANCH to HEAD
svn merge -r 2566:2569 svn://www.alfresco.org/alfresco/BRANCHES/V1.2.0/root HEAD/root git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@2570 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261
This commit is contained in:
parent
506e408ca7
commit
d4d33c1e34
@ -359,4 +359,8 @@
|
|||||||
</property>
|
</property>
|
||||||
</bean>
|
</bean>
|
||||||
|
|
||||||
|
<!-- Note: targetSchema 11 is allocated for patching in an enterprise trial license -->
|
||||||
|
<!-- A patch bean is not provided as this is handled by the license component internally (enterprise only) -->
|
||||||
|
|
||||||
|
>>>>>>> .merge-right.r2569
|
||||||
</beans>
|
</beans>
|
||||||
|
@ -15,4 +15,4 @@ version.edition=Community Network
|
|||||||
|
|
||||||
# Schema number
|
# Schema number
|
||||||
|
|
||||||
version.schema=10
|
version.schema=11
|
||||||
|
@ -160,7 +160,7 @@ public class DescriptorServiceImpl implements DescriptorService, ApplicationList
|
|||||||
*/
|
*/
|
||||||
public LicenseDescriptor getLicenseDescriptor()
|
public LicenseDescriptor getLicenseDescriptor()
|
||||||
{
|
{
|
||||||
return licenseService.getLicense();
|
return (licenseService == null) ? null : licenseService.getLicense();
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -176,6 +176,9 @@ public class DescriptorServiceImpl implements DescriptorService, ApplicationList
|
|||||||
{
|
{
|
||||||
public Descriptor doWork()
|
public Descriptor doWork()
|
||||||
{
|
{
|
||||||
|
// initialise license service (if installed)
|
||||||
|
initialiseLicenseService();
|
||||||
|
|
||||||
// verify license, but only if license component is installed
|
// verify license, but only if license component is installed
|
||||||
licenseService.verifyLicense();
|
licenseService.verifyLicense();
|
||||||
|
|
||||||
@ -197,9 +200,6 @@ public class DescriptorServiceImpl implements DescriptorService, ApplicationList
|
|||||||
{
|
{
|
||||||
// initialise server descriptor
|
// initialise server descriptor
|
||||||
serverDescriptor = createServerDescriptor();
|
serverDescriptor = createServerDescriptor();
|
||||||
|
|
||||||
// initialise license service (if installed)
|
|
||||||
initialiseLicenseService();
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -239,6 +239,33 @@ public class DescriptorServiceImpl implements DescriptorService, ApplicationList
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Create current repository descriptor
|
||||||
|
*
|
||||||
|
* @return descriptor
|
||||||
|
*/
|
||||||
|
private Descriptor createCurrentRepositoryDescriptor()
|
||||||
|
{
|
||||||
|
// retrieve system descriptor location
|
||||||
|
StoreRef storeRef = systemBootstrap.getStoreRef();
|
||||||
|
Properties systemProperties = systemBootstrap.getConfiguration();
|
||||||
|
String path = systemProperties.getProperty("system.descriptor.current.childname");
|
||||||
|
|
||||||
|
// retrieve system descriptor
|
||||||
|
NodeRef descriptorNodeRef = getDescriptorNodeRef(storeRef, path, false);
|
||||||
|
// create appropriate descriptor
|
||||||
|
if (descriptorNodeRef != null)
|
||||||
|
{
|
||||||
|
Map<QName, Serializable> properties = nodeService.getProperties(descriptorNodeRef);
|
||||||
|
return new RepositoryDescriptor(properties);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
// descriptor cannot be found
|
||||||
|
return new UnknownDescriptor();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Push the current server descriptor properties into persistence.
|
* Push the current server descriptor properties into persistence.
|
||||||
*
|
*
|
||||||
@ -284,33 +311,32 @@ public class DescriptorServiceImpl implements DescriptorService, ApplicationList
|
|||||||
*/
|
*/
|
||||||
private NodeRef getDescriptorNodeRef(StoreRef storeRef, String path, boolean create)
|
private NodeRef getDescriptorNodeRef(StoreRef storeRef, String path, boolean create)
|
||||||
{
|
{
|
||||||
// check for the store and create if necessary
|
|
||||||
if (!nodeService.exists(storeRef) && create)
|
|
||||||
{
|
|
||||||
storeRef = nodeService.createStore(storeRef.getProtocol(), storeRef.getIdentifier());
|
|
||||||
}
|
|
||||||
|
|
||||||
String searchPath = "/" + path;
|
|
||||||
NodeRef descriptorNodeRef = null;
|
NodeRef descriptorNodeRef = null;
|
||||||
NodeRef rootNodeRef = nodeService.getRootNode(storeRef);
|
String searchPath = "/" + path;
|
||||||
List<NodeRef> nodeRefs = searchService.selectNodes(rootNodeRef, searchPath, null, namespaceService, false);
|
|
||||||
if (nodeRefs.size() == 1)
|
// check for the store
|
||||||
|
if (nodeService.exists(storeRef))
|
||||||
{
|
{
|
||||||
descriptorNodeRef = nodeRefs.get(0);
|
NodeRef rootNodeRef = nodeService.getRootNode(storeRef);
|
||||||
}
|
List<NodeRef> nodeRefs = searchService.selectNodes(rootNodeRef, searchPath, null, namespaceService, false);
|
||||||
else if (nodeRefs.size() == 0)
|
if (nodeRefs.size() == 1)
|
||||||
{
|
|
||||||
}
|
|
||||||
else if (nodeRefs.size() > 1)
|
|
||||||
{
|
|
||||||
if (logger.isDebugEnabled())
|
|
||||||
{
|
{
|
||||||
logger.debug("Multiple descriptors: \n" +
|
descriptorNodeRef = nodeRefs.get(0);
|
||||||
" store: " + storeRef + "\n" +
|
}
|
||||||
" path: " + searchPath);
|
else if (nodeRefs.size() == 0)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
else if (nodeRefs.size() > 1)
|
||||||
|
{
|
||||||
|
if (logger.isDebugEnabled())
|
||||||
|
{
|
||||||
|
logger.debug("Multiple descriptors: \n" +
|
||||||
|
" store: " + storeRef + "\n" +
|
||||||
|
" path: " + searchPath);
|
||||||
|
}
|
||||||
|
// get the first one
|
||||||
|
descriptorNodeRef = nodeRefs.get(0);
|
||||||
}
|
}
|
||||||
// get the first one
|
|
||||||
descriptorNodeRef = nodeRefs.get(0);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (descriptorNodeRef == null)
|
if (descriptorNodeRef == null)
|
||||||
@ -321,9 +347,12 @@ public class DescriptorServiceImpl implements DescriptorService, ApplicationList
|
|||||||
" store: " + storeRef + "\n" +
|
" store: " + storeRef + "\n" +
|
||||||
" path: " + searchPath);
|
" path: " + searchPath);
|
||||||
}
|
}
|
||||||
|
|
||||||
// create if necessary
|
// create if necessary
|
||||||
if (create)
|
if (create)
|
||||||
{
|
{
|
||||||
|
storeRef = nodeService.createStore(storeRef.getProtocol(), storeRef.getIdentifier());
|
||||||
|
NodeRef rootNodeRef = nodeService.getRootNode(storeRef);
|
||||||
descriptorNodeRef = nodeService.createNode(
|
descriptorNodeRef = nodeService.createNode(
|
||||||
rootNodeRef,
|
rootNodeRef,
|
||||||
ContentModel.ASSOC_CHILDREN,
|
ContentModel.ASSOC_CHILDREN,
|
||||||
@ -348,8 +377,8 @@ public class DescriptorServiceImpl implements DescriptorService, ApplicationList
|
|||||||
// NOTE: We could tie in the License Component via Spring configuration, but then it could
|
// NOTE: We could tie in the License Component via Spring configuration, but then it could
|
||||||
// be declaratively taken out in an installed environment.
|
// be declaratively taken out in an installed environment.
|
||||||
Class licenseComponentClass = Class.forName("org.alfresco.license.LicenseComponent");
|
Class licenseComponentClass = Class.forName("org.alfresco.license.LicenseComponent");
|
||||||
Constructor constructor = licenseComponentClass.getConstructor(new Class[] { ApplicationContext.class} );
|
Constructor constructor = licenseComponentClass.getConstructor(new Class[] { ApplicationContext.class, Descriptor.class} );
|
||||||
licenseService = (LicenseService)constructor.newInstance(new Object[] { applicationContext } );
|
licenseService = (LicenseService)constructor.newInstance(new Object[] { applicationContext, createCurrentRepositoryDescriptor() } );
|
||||||
}
|
}
|
||||||
catch (ClassNotFoundException e)
|
catch (ClassNotFoundException e)
|
||||||
{
|
{
|
||||||
|
@ -85,6 +85,10 @@ public class ImporterBootstrap implements ApplicationListener
|
|||||||
private Locale locale = null;
|
private Locale locale = null;
|
||||||
private AuthenticationComponent authenticationComponent;
|
private AuthenticationComponent authenticationComponent;
|
||||||
|
|
||||||
|
// Bootstrap performed?
|
||||||
|
private boolean bootstrapPerformed = false;
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Set whether we write or not
|
* Set whether we write or not
|
||||||
*
|
*
|
||||||
@ -264,6 +268,16 @@ public class ImporterBootstrap implements ApplicationListener
|
|||||||
this.logEnabled = logEnabled;
|
this.logEnabled = logEnabled;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Determine if bootstrap was performed?
|
||||||
|
*
|
||||||
|
* @return true => bootstrap was performed
|
||||||
|
*/
|
||||||
|
public boolean hasPerformedBootstrap()
|
||||||
|
{
|
||||||
|
return bootstrapPerformed;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Boostrap the Repository
|
* Boostrap the Repository
|
||||||
*/
|
*/
|
||||||
@ -394,6 +408,9 @@ public class ImporterBootstrap implements ApplicationListener
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// a bootstrap was performed
|
||||||
|
bootstrapPerformed = !useExistingStore;
|
||||||
}
|
}
|
||||||
userTransaction.commit();
|
userTransaction.commit();
|
||||||
}
|
}
|
||||||
|
@ -44,9 +44,9 @@ public interface DescriptorService
|
|||||||
public Descriptor getInstalledRepositoryDescriptor();
|
public Descriptor getInstalledRepositoryDescriptor();
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Gets the License Service
|
* Gets the License Descriptor
|
||||||
*
|
*
|
||||||
* @return the license service
|
* @return the license descriptor
|
||||||
*/
|
*/
|
||||||
public LicenseDescriptor getLicenseDescriptor();
|
public LicenseDescriptor getLicenseDescriptor();
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user