org.eclipse.ocl.examples.pivot.manager
Class OrphanPackageServer

java.lang.Object
  extended by org.eclipse.ocl.examples.library.executor.ExecutorPackage
      extended by org.eclipse.ocl.examples.library.executor.ReflectivePackage
          extended by org.eclipse.ocl.examples.pivot.manager.PackageServer
              extended by org.eclipse.ocl.examples.pivot.manager.RootPackageServer
                  extended by org.eclipse.ocl.examples.pivot.manager.OrphanPackageServer
All Implemented Interfaces:
DomainElement, DomainNamedElement, DomainNamespace, DomainPackage, Nameable

public class OrphanPackageServer
extends RootPackageServer

The OrphanPackageServer ensures that orphan types have their own servers. (Numerous Collection, Metaclass and Tuple types have the same basic name but are not the same type at all.)

Orphan types are maintained here rather than in the PackageManager so that weak references to the type ensure that stale types are garbage collected, and so that weka references to a stale cached server are also garbngae collected.


Field Summary
 
Fields inherited from class org.eclipse.ocl.examples.pivot.manager.PackageServer
packageManager
 
Fields inherited from class org.eclipse.ocl.examples.library.executor.ReflectivePackage
types
 
Fields inherited from class org.eclipse.ocl.examples.library.executor.ExecutorPackage
name, nsPrefix, nsURI, packageId
 
Constructor Summary
OrphanPackageServer(PackageManager packageManager, java.lang.String name, java.lang.String nsPrefix, java.lang.String nsURI, PackageId packageId)
           
 
Method Summary
 TypeServer getTypeServer(DomainType type)
           
 
Methods inherited from class org.eclipse.ocl.examples.pivot.manager.RootPackageServer
dispose, getNestingPackage
 
Methods inherited from class org.eclipse.ocl.examples.pivot.manager.PackageServer
addedMemberPackage, addTrackedPackage, createExecutorType, disposedNestedPackageServer, findPivotPackage, getDomainTypes, getEPackage, getMemberPackage, getMemberPackages, getMemberPackageServer, getMemberPackageServer, getMemberType, getMemberTypes, getMetaModelManager, getNestedPackage, getPackageManager, getPackageTracker, getPartialPackages, getPivotPackage, getStandardLibrary, toString
 
Methods inherited from class org.eclipse.ocl.examples.library.executor.ReflectivePackage
computeClasses, getInheritance, getOwnedType
 
Methods inherited from class org.eclipse.ocl.examples.library.executor.ExecutorPackage
getElementId, getName, getNsPrefix, getNsURI, getOwnedRule, getPackageId, getType
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

OrphanPackageServer

public OrphanPackageServer(@NonNull
                           PackageManager packageManager,
                           @NonNull
                           java.lang.String name,
                           @Nullable
                           java.lang.String nsPrefix,
                           @Nullable
                           java.lang.String nsURI,
                           @NonNull
                           PackageId packageId)
Method Detail

getTypeServer

@NonNull
public TypeServer getTypeServer(@NonNull
                                        DomainType type)