COSMOS Design 224215

From Eclipsepedia

Jump to: navigation, search

Updates to data manager toolkit to support vanilla web services

This is the design document for bugzilla 224215.

Change History

Name: Date: Revised Sections:
Hubert Leung, David Whiteman 4/10/2008 Initial design

Design Notes

Notes from Hubert as to what needs to be done to support defect 224215.

  • dynamic web project
  • axis2 project facets

COSMOS contents:

  • Under WebContent/WEB-INF/services/ (this directory was added by axis2 facet)
    • add a directory with name of the MDR. (e.g. ExampleMDR) This directory name will be used as the "Group name" for Axis2 service group. The value is taken from input.
    • under the above directory, add a META-INF directory.
    • under the META-INF directory, add
      • cmdbfQuery.wsdl
        • unmodified from CMDBf standard.
        • Add this file if Query Service is supported.
      • cmdbfRegistration.wsdl
        • unmodified from CMDBf standard.
        • Add this file if Registration Service is supported.
      • QueryService.wsdl
        • from COSMOS. It is a WSDL that wraps the standard WSDL.
        • It adds the binding and service declarations. (also WS-Policy... TBD)
        • The service name in this wsdl file needs to be updated.
          <wsdl:service name="______________">
          The value can be generated by concatenating the MDR name (e.g. ExampleMdr) with "QueryService" (e.g. ExampleMdrQueryService). This service name need to be unique on a server, and assuming each MDR only has one implementation of the CMDBf Query Service, this name will be unique.
      • RegistrationService.wsdl
        • from COSMOS. It is a WSDL that wraps the standard WSDL.
        • It adds the binding and service declarations.
        • The service name in this WSDL need to be set. Using the same logic as the query service, the service name can be generated by concatinating the MDR name (ExampleMdr) with "RegistrationService".
      • services.xml
        • this file defines the services of the service group.
        • There are three standard services:
          • Data Manager
          • Query Service
          • Registration service
        • The data manager service will be there for all COSMOS data managers
        • the query service and registration service are optional. The declaration should be there if the service(s) are supported.
        • For each service, a template can be used. Only the service name need to be set.
        • For the query and registration services, the service name need to match the name defined in the WSDL.
    • under the WebContent/WEB-INF/lib directory, add COSMOS framework jar files:
      • CMDBfCommon.jar
      • CMDBfMetadata.jar
      • CMDBfQueryService.jar
      • CMDBfQueryTransformation.jar
      • CMDBfRegistrationService.jar
      • CMDBfRegistrationTransformation.jar
      • cmdbf-ws.jar
      • datamanager.jar
      • org.eclipse.cosmos.common_1.0.0.v200803291200.jar
    • Service Class
      • Generate one class for query service, and one for the registration service.
      • generate the class only if the corresponding service is supported.
      • extend AbstractQueryService and AbstractRegistrationService respectively
      • generate the stub method for the abstract methods from super class.