package org.cagrid.mms.service; import gov.nih.nci.cagrid.metadata.ServiceMetadata; import gov.nih.nci.cagrid.metadata.security.ServiceSecurityMetadata; import java.rmi.RemoteException; import org.cagrid.mms.model.ModelSourceMetadata; import org.cagrid.mms.model.NamespaceToProjectMapping; import org.cagrid.mms.model.UMLAssociationExclude; import org.cagrid.mms.model.UMLProjectIdentifer; import org.cagrid.wsrf.properties.ResourceHome; /** * The Metadata Model Service (MMS) provides operations for generating and * semantically annotating standard caGrid metadata instances using information * extracted from external metadata repositories. * * This class is autogenerated, DO NOT EDIT. * * This interface represents the API which is accessable on the grid service * from the client. * * @created by Introduce Toolkit version 1.3 * */ public interface MetadataModelService { ResourceHome getResourceHome(); ServiceSecurityMetadata getServiceSecurityMetadata(); ServiceMetadata getServiceMetadata(); /** * Generates a complete DomainModel for the specified Project * * @param umlProjectIdentifer * The project to generate a DomainModel for. * @throws InvalidUMLProjectIndentifier * */ public gov.nih.nci.cagrid.metadata.dataservice.DomainModel generateDomainModelForProject( UMLProjectIdentifer umlProjectIdentifer) throws RemoteException, InvalidUMLProjectIndentifier; /** * Generates a DomainModel for the specified Project, including only the * specified packages * * @param umlProjectIdentifer * The project to generate a DomainModel for * @param packageNames * The package names to include * @throws InvalidUMLProjectIndentifier * */ public gov.nih.nci.cagrid.metadata.dataservice.DomainModel generateDomainModelForPackages( UMLProjectIdentifer umlProjectIdentifer, java.lang.String[] packageNames) throws RemoteException, InvalidUMLProjectIndentifier; /** * Generates a complete DomainModel for the specified Project, including * only the identified Classes * * @param umlProjectIdentifer * The project to generate a DomainModel for * @param fullyQualifiedClassNames * The fully qualified classnames to include in the model * @throws InvalidUMLProjectIndentifier * */ public gov.nih.nci.cagrid.metadata.dataservice.DomainModel generateDomainModelForClasses( UMLProjectIdentifer umlProjectIdentifer, java.lang.String[] fullyQualifiedClassNames) throws RemoteException, InvalidUMLProjectIndentifier; /** * Generates a DomainModel for the specified Project, including only the * specified Classes, but excluding the specified Associations * * @param umlProjectIdentifer * The project to generate a DomainModel for * @param fullyQualifiedClassNames * The fully qualified Class names to include in the model * @param umlAssociationExclude * A collection of UML Associations to exclude from the model * @throws InvalidUMLProjectIndentifier * */ public gov.nih.nci.cagrid.metadata.dataservice.DomainModel generateDomainModelForClassesWithExcludes( UMLProjectIdentifer umlProjectIdentifer, java.lang.String[] fullyQualifiedClassNames, UMLAssociationExclude[] umlAssociationExclude) throws RemoteException, InvalidUMLProjectIndentifier; /** * Annotates the specified ServiceMetadata model with semantic information * from the specified model, by mapping QNames to UMLClasses * * @param serviceMetadata * The unannotated ServiceMetadata model * @param namespaceToProjectMappings * An optional collection of mappings from URI Namespace to * UMLProjects * @throws InvalidUMLProjectIndentifier * Thrown if the identifier is null or contains invalid * properties. */ public gov.nih.nci.cagrid.metadata.ServiceMetadata annotateServiceMetadata( gov.nih.nci.cagrid.metadata.ServiceMetadata serviceMetadata, NamespaceToProjectMapping[] namespaceToProjectMappings) throws RemoteException, InvalidUMLProjectIndentifier; /** * Returns the metadata detailing the supported Model sources and their * characteristics * */ public ModelSourceMetadata getModelSourceMetadata() throws RemoteException; }