Skip to main content

Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

Difference between revisions of "COSMOS Design 208274"

(Initial Design)
(Initial Design)
Line 21: Line 21:
 
==Initial Design==
 
==Initial Design==
  
'''To create a new MDR'''
+
'''To create a new Data Manager project'''
  
 
'''File/New/Cosmos/'''
 
'''File/New/Cosmos/'''
 
 
Projects
+
<ul>
Create MDR Project
+
<li> Projects
<ol>
+
<ul>
 +
<li> Create Data Manager Project
 +
<ul>
 
<li> Creates org.eclipse.cosmos.*mdrname.mdr project
 
<li> Creates org.eclipse.cosmos.*mdrname.mdr project
 
<li> Creates org.eclipse.cosmos.*mdrname.mdr.test junit project
 
<li> Creates org.eclipse.cosmos.*mdrname.mdr.test junit project
Line 39: Line 41:
 
 
 
<li> Creates Plug-in Dependencies
 
<li> Creates Plug-in Dependencies
<ol>
+
<ul>
 
<li> org.apache.xerces_2.8.0*
 
<li> org.apache.xerces_2.8.0*
 
<li> org.apache.xml.resolver*
 
<li> org.apache.xml.resolver*
Line 51: Line 53:
 
<li> org.eclipse.cosmos.management.common
 
<li> org.eclipse.cosmos.management.common
 
<li> org.eclipse.cosmos.samples.cmdbf.services
 
<li> org.eclipse.cosmos.samples.cmdbf.services
</ol>
+
</ul>
</ol>
+
</ul>
 +
</ul>
 +
</ul>
  
  
  
'''Create Mdr Properties Wizard.'''  
+
'''Create Data Manager Properties Wizard.'''  
  
When the 'Create Mdr' wizard is launched, the following properties can be set:
+
When the 'Create Data Manager' wizard is launched, the following properties can be set:
 
<ol>
 
<ol>
 
<li>MdrName
 
<li>MdrName
<li>Resouce_ID
+
<li>Resource_ID
 
<li>Display Name
 
<li>Display Name
 
<li>Description
 
<li>Description
Line 70: Line 74:
  
  
'''Mdr Project Details:'''
+
'''Data Manager Project Details:'''
  
 
Activator.java
 
Activator.java

Revision as of 17:47, 21 January 2008

WIP

https://bugs.eclipse.org/bugs/show_bug.cgi?id=208274

COSMOS Toolkit/SDK

  • Development environment - install a number of plugins into eclipse workbench
  • Include examples and documentation on how to extend the COSMOS framework.
  • Developers will create extensions to the COSMOS framework in the eclipse workbench environment.
  • Testing environment: WSDM Tooling allows the launching of endpoints within eclipse
  • Export the end result into deployment enviroment
    • J2EE, OSGi
    • Server component
    • Client component


Design Considerations

  • Decide on project multiplicity, e.g. one for client, one for server etc...
  • What other things are available, e.g. STP or WTP may have annotations for web services.



Initial Design

To create a new Data Manager project

File/New/Cosmos/

  • Projects
    • Create Data Manager Project
      • Creates org.eclipse.cosmos.*mdrname.mdr project
      • Creates org.eclipse.cosmos.*mdrname.mdr.test junit project
      • Creates Activator.java
      • Creates *mdrnameMdr.java
      • Creates Junit test *mdrnameTest.java
      • Create config.proprties
      • Create domainEPR.xml
      • Create MANIFEST.MF
      • Creates Plug-in Dependencies
        • org.apache.xerces_2.8.0*
        • org.apache.xml.resolver*
        • muse-complete-2.2.0.jar
        • org.eclipse.osgi_3.3.2.R33x*
        • org.eclipse.cosmos.common
        • org.eclipse.dc.cmdbf.services
        • org.eclipse.dc.dataManager
        • org.eclipse.dc.mdr
        • org.eclipse.dc.mdr.common
        • org.eclipse.cosmos.management.common
        • org.eclipse.cosmos.samples.cmdbf.services


Create Data Manager Properties Wizard.

When the 'Create Data Manager' wizard is launched, the following properties can be set:

  1. MdrName
  2. Resource_ID
  3. Display Name
  4. Description
  5. Management Domain EPR file name
  6. Machine and port
  7. Deployment target (Tomcat/OSGI)


Data Manager Project Details:

Activator.java

package org.eclipse.cosmos.*mdrname.mdr;

import org.eclipse.cosmos.dc.dataManager.api.IDataManager;
import org.eclipse.cosmos.dc.dataManager.impl.AbstractDataManagerActivator;

public class Activator extends AbstractDataManagerActivator {

	@Override
	protected IDataManager getDataManagerInstance() {
		return new *MdrnameMdr();
	}

}

*MdrnameMdr.java

package org.eclipse.cosmos.*mdrname.mdr;

import org.eclipse.cosmos.dc.cmdbf.services.query.service.IQueryHandlerFactory;
import org.eclipse.cosmos.dc.dataManager.api.IDataManager;
import org.eclipse.cosmos.dc.mdr.api.IMdrQuery;
import org.eclipse.cosmos.dc.mdr.impl.AbstractMdr;
import org.eclipse.cosmos.dc.mgmt.annotations.ManagedResource;
import org.eclipse.cosmos.samples.cmdbf.services.query.ICMDBfSampleConstants;
import org.eclipse.cosmos.samples.cmdbf.services.query.QueryHandlerFactory;
import org.eclipse.cosmos.samples.cmdbf.services.query.XMLRepository;

@ManagedResource
public class *MdrnameMdr extends AbstractMdr implements IDataManager, IMdrQuery 
{	
	public ExampleMdr() 
	{
	}

	@Override
	public IQueryHandlerFactory getQueryHandlerFactory() 
	{
		return QueryHandlerFactory.getInstance();
	}

}

config.properties

RESOURCE_ID=Example
DISPLAY_NAME=MDR Example
DESCRIPTION=An example of an MDR
MGMT_DOMAIN_EPR_FILE=META-INF/domainEPR.xml

domainEPR.xml

<?xml version="1.0" encoding="UTF-8"?>
<wsa:EndpointReference xmlns:wsa="http://www.w3.org/2005/08/addressing">
    <wsa:Address>http://localhost:8080/cosmos/services/domain</wsa:Address>
</wsa:EndpointReference>

MANIFEST.MF

Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: Example MDR
Bundle-SymbolicName: org.eclipse.cosmos.*mdrname.mdr
Bundle-Version: 1.0.0
Bundle-Activator: org.eclipse.cosmos.*mdrname.mdr.Activator
Import-Package: org.osgi.framework;version="1.3.0"
Require-Bundle: org.eclipse.cosmos.dc.mdr,
 org.apache.xerces,
 org.eclipse.cosmos.common,
 org.eclipse.cosmos.dc.cmdbf.services,
 org.apache.muse.complete,
 org.eclipse.cosmos.samples.cmdbf.services
Export-Package: org.eclipse.cosmos.*mdrname.mdr

Back to the top