PartyManager partyManager = Connector.getPartyManager();
// Create test company security domain taxonomy
// We call PartyManager to create a new organization - a company called "Mega Corp" -
// and get back a unique identifier that we can use to identify the new company.
m_acmeCorpUuid =
partyManager.createOrganization(m_rootAuth,
"Acme Corporation", // Name of the company
"Realtime Delivery Service", // a description
null, // We're a top-level organization, so no parent
"Company", // The 'group type' of the organization
null); // no email address for the top organization
cleanupPartyUuids.add(m_acmeCorpUuid);
// Now let's create an engineering department within Mega Corp.
m_engineeringUuid =
partyManager.createOrganization(m_rootAuth,
"Engineering",
"Design and R&D",
m_acmeCorpUuid, // Mega Corp is our 'parent' organization
"Department",
"eng@acme.com"); // email address for Engineering
cleanupPartyUuids.add(m_engineeringUuid);
// Create a manufacturing department
m_manufacturingUuid =
partyManager.createOrganization(m_rootAuth,
"Manufacturing",
"The means of production",
m_acmeCorpUuid,
"Department",
"manuf@acme.com");
cleanupPartyUuids.add(m_manufacturingUuid);
// One thing to note is that "Company" and "Department" are not just free-form strings.
// They must correspond to the name of a GroupType database object. There are several pre-defined
// GroupTypes, of which "Company" and "Department" are two.
// The current set of GroupType objects can be found with the PartyManager method getGroupTypes().
// Create a 'Work Group'
m_safetyCommitteeUuid = partyManager.createWorkGroup(m_rootAuth,
"Site Safety Committee",
"No explosion to big",
m_acmeCorpUuid,
"Project Team",
"safety@acme.com" );
cleanupPartyUuids.add(m_safetyCommitteeUuid);
// Create a repository for the newly create root organization
RepositoryManager repositoryManager = Connector.getRepositoryManager();
String serverHostName = java.net.InetAddress.getLocalHost().getCanonicalHostName().toLowerCase();
ServerInfo serverInfo = null;
try
{
serverInfo = repositoryManager.getServer( m_rootAuth, serverHostName );
}
catch (Throwable t)
{
serverInfo = new com.clearstorysystems.ems.repository.ServerInfo();
serverInfo.setName(serverHostName);
serverInfo.setTmpDirPath(System.getProperty("java.io.tmpdir"));
serverInfo.setUuid(repositoryManager.createServer(m_rootAuth, serverInfo));
}
com.clearstorysystems.ems.repository.RepositoryInfo repositoryInfo =
new com.clearstorysystems.ems.repository.RepositoryInfo();
repositoryInfo.setServerUuid(serverInfo.getUuid());
repositoryInfo.setName("ExampleRepository-"+System.currentTimeMillis());
repositoryInfo.setRootPath(System.getProperty("java.io.tmpdir"));
repositoryInfo.setIsReadOnly(Boolean.FALSE);
repositoryInfo.setOwnerUuid(m_acmeCorpUuid);
m_repositoryUuid = repositoryManager.createRepository(m_rootAuth, repositoryInfo);