Interface CDOPackageInfo

All Superinterfaces:
Adapter, Comparable<CDOPackageInfo>, EPackage.Descriptor
All Known Subinterfaces:
InternalCDOPackageInfo

public interface CDOPackageInfo extends Adapter, EPackage.Descriptor, Comparable<CDOPackageInfo>
Describes a single package instance of the nested package tree strucure represented by the containing package unit.

While the containing package unit is in the PROXY state this package info acts as a package descriptor in the associated package registry. When that package unit is loaded all contained package infos/descriptors are resolved and replaced by their actual packages. At the same time the describing package info objects are attached as adapters to the resolved packages. This way the descriptive information is available before and after loading the packages.

Author:
Eike Stepper
No Implement
This interface is not intended to be implemented by clients.
No Extend
This interface is not intended to be extended by clients.
  • Method Details

    • getPackageUnit

      CDOPackageUnit getPackageUnit()
      Returns the package unit containing this package info.
    • getPackageURI

      String getPackageURI()
      Returns the namespace URI of the package described by this package info.
    • getParentURI

      String getParentURI()
      Returns the namespace URI of the super package of the package described by this package info.
    • getEPackage

      EPackage getEPackage(boolean loadOnDemand)
      Returns the package described by this package info.
      Parameters:
      loadOnDemand - If true and the containing package unit is not LOADED the package unit is implicitely loaded. If false and this package unit is not LOADED null is returned.
    • isCorePackage

      boolean isCorePackage()
      Returnes true if the package described by this package info is the Ecore model, false oterwise.
    • isResourcePackage

      boolean isResourcePackage()
      Returnes true if the package described by this package info is the Eresource model, false oterwise.
    • isTypePackage

      boolean isTypePackage()
      Returnes true if the package described by this package info is the Etypes model, false oterwise.
      Since:
      4.0
    • isSystemPackage

      boolean isSystemPackage()
      Returns true is this package info describes one of the models Ecore, Eresource or Etypes, false otherwise.

      Note that the models Eresource and Etypes are expected to present as generated NATIVE models in all deployments.