Overview | Package | Class | Use | Tree | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## com.togethersoft.openapi.sci
Interface SciPackage

public interface SciPackage
extends SciContainer, SciObject

A container of source code files (for Java language represents a Java package). `SciPackage` interface provides a set of methods for accessing the information about files, classes and subpackages contained in this package.

It is possible to get a package content as an enumeration of files, classes or subpackages using `files`, `classes` or `subpackages` methods respectively:

     SciModel model = SciModelAccess.getModel();
     SciPackageEnumeration roots = model.rootPackages(SciModelPart.MODEL);
     while (roots.hasMoreElements()){
       SciPackage nextRoot = roots.nextSciPackage();
       SciClassEnumeration classes=nextRoot.classes();
       while (classes.hasMoreElements()){
          SciClass nextClass = classes.nextSciClass();
          myCoolMethodThatProcessesAClass(nextClass);
       }
     }

Every package has a string called qualified name. Qualified name is language-specific. It contains full name of this package in a valid systax construction for the programming language. For example, the qualified name for a java package will look like a standard Java language package name: "com.togethersoft.openapi.sci.enum".

Note, that you can find a package by its qualified name. For example: ``

       SciPackage justFoundPackage = model.findPackage("com.togethersoft.openapi.sci.enum", SciModelPart.MODEL);

Note that `classes` method returns an enumeration of upper-level classes only without their inner classes. For accessing the information about inner classes of an upper-level class, the `innerClasses` method should be used.

Author:
  TogetherSoft
See Also: files(), classes(), SciClass.innerClasses(), subpackages()

Method Summary
`boolean` | `canSetName(String name)` Checks whether the specified name can be set as the name for this package.
`SciClassEnumeration` | `classes()` Returns an enumeration of upper-level classes in this package.
`SciFileEnumeration` | `files()` Returns an enumeration of all files in this package.
`String` | `getModelPart()` Returns a string representing the kind of this package.
`String` | `getName()` Returns the string with the name of this package.
`SciPackage` | `getParentPackage()` Returns the package this package belongs to.
`String` | `getQualifiedName()` Returns the fully-qualified name which uniquely identifies this package.
`void` | `setName(String name)` Sets the name for this package.
`SciPackageEnumeration` | `subpackages()` Returns an enumeration of subpackages in this package.

Methods inherited from interface com.togethersoft.openapi.sci.SciContainer
`canPaste, objects, paste`

Methods inherited from interface com.togethersoft.openapi.sci.SciObject
`canCut, canDelete, canReplace, copy, cut, delete, getContainingFile, getContainingScope, getLanguage, getPositions, getText, getUserProperty, isReadOnly, replace, setUserProperty`

Method Detail

### canSetName

    public boolean canSetName(String name)

  Checks whether the specified name can be set as the name for this package. Returns `true` if it can be done, `false` otherwise.
  Parameters:
    name - the string with the name which needs to be set for this package
  Returns: `true` if the `name` can be set as a name for this package, `false` otherwise

### classes

    public SciClassEnumeration classes()

  Returns an enumeration of upper-level classes in this package. For accessing the information about inner classes of an upper-level one, the `innerClasses` method should be used.
  Returns: an enumeration of upper-level classes in this package
  See Also:
    SciClass.innerClasses()

### files

    public SciFileEnumeration files()

  Returns an enumeration of all files in this package.
  Returns: an enumeration of all files in this package

### getModelPart

    public String getModelPart()

  Returns a string representing the kind of this package. For examplation see description of SciModelPart interface.

  The returned value can be:

  - `SciModelPart.MODEL` - model packages (packages that keep the model's data).
  - `SciModelPart.IMPORT` - imported packages
  - `SciModelPart.COMPONENT` - contains components
  - `null` - for newly created packages. For example, if you create a package in your scipt using the SciFactory.newPackage, this method will return `null` for that package.
  Returns: a string representing the kind of this package.

### getName

    public String getName()

  Returns the string with the name of this package. The `getQualifiedName` method returns the fully-qualified name which uniquely identifies this package.
  Returns: the string with the name of this package
  See Also:
    getQualifiedName()

### getParentPackage

    public SciPackage getParentPackage()

  Returns the package this package belongs to. For root packages returns `null`.
  Returns: the package this package belongs to

### getQualifiedName

    public String getQualifiedName()

  Returns the fully-qualified name which uniquely identifies this package.
  Returns: the fully-qualified name which uniquely identifies this package

### setName

    public void setName(String name)

  Sets the name for this package.
  Parameters:
    name - the string with the name for this package

### subpackages

    public SciPackageEnumeration subpackages()

  Returns an enumeration of subpackages in this package.
  Returns: an enumeration of subpackages in this package

Overview | Package | Class | Use | Tree | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD