001// license-header java merge-point 002// 003// Attention: generated code (by Metafacade.vsl) - do not modify! 004// 005package org.andromda.metafacades.uml; 006 007import java.util.Collection; 008 009/** 010 * Represents a service. 011 * 012 * Metafacade interface to be used by AndroMDA cartridges. 013 */ 014public interface Service 015 extends ClassifierFacade 016{ 017 /** 018 * Indicates the metafacade type (used for metafacade mappings). 019 * 020 * @return boolean always <code>true</code> 021 */ 022 public boolean isServiceMetaType(); 023 024 /** 025 * Returns a collection of all entities this service and its ancestors have a relation to. 026 * @return Collection<DependencyFacade> 027 */ 028 public Collection<DependencyFacade> getAllEntityReferences(); 029 030 /** 031 * All messaging destinations that belong to this service and all decendent services. 032 * @return Collection<Destination> 033 */ 034 public Collection<Destination> getAllMessagingDestinations(); 035 036 /** 037 * All roles associated with the service, this includes both roles that have access to the 038 * entire service, and any roles that have access to a single operation. 039 * @return Collection<Role> 040 */ 041 public Collection<Role> getAllRoles(); 042 043 /** 044 * Returns a collection of all services this service and its ancestors have a relation to. 045 * @return Collection<DependencyFacade> 046 */ 047 public Collection<DependencyFacade> getAllServiceReferences(); 048 049 /** 050 * References to all entities to which this service has a dependency. 051 * @return Collection<DependencyFacade> 052 */ 053 public Collection<DependencyFacade> getEntityReferences(); 054 055 /** 056 * All messaging destinations available to this service. 057 * @return Collection<Destination> 058 */ 059 public Collection<Destination> getMessagingDestinations(); 060 061 /** 062 * The roles of the service, these are the actor's that can access this service. 063 * @return Collection<Role> 064 */ 065 public Collection<Role> getRoles(); 066 067 /** 068 * References to all services to which this service has a dependency. 069 * @return Collection<DependencyFacade> 070 */ 071 public Collection<DependencyFacade> getServiceReferences(); 072}