edu.isi.pegasus.planner.dax

## Class CatalogType

- java.lang.Object
- - edu.isi.pegasus.planner.dax.CatalogType

Direct Known Subclasses:
  Executable, File

    public class CatalogType
    extends java.lang.Object

Abstract Type for RC and TC Sections of the DAX. Extended by `Executable` and `File`

Version:
  $Revision$
Author:
  gmehta
See Also:
  `Executable`, `File`

### Field Summary

Fields
`protected LogManager` `mLogger`
`protected java.util.List<MetaData>` `mMetadata`
`protected java.util.List<PFN>` `mPFNs`
`protected java.util.List<Profile>` `mProfiles`

### Constructor Summary

Constructors
`protected` `CatalogType()`
`protected` `CatalogType(CatalogType c)` Copy Constructor

### Method Summary

All Methods Instance Methods Concrete Methods
`CatalogType` `addMetaData(java.util.List<MetaData> metadata)` Add a List of `MetaData` objects to the Catalog entry object
`CatalogType` `addMetaData(MetaData metadata)` Add a `MetaData` object for the Catalog object
`CatalogType` `addMetaData(java.lang.String type, java.lang.String key, java.lang.String value)` Add a Metadata entry for the Catalog object
`CatalogType` `addPhysicalFile(PFN pfn)` Add a PFN object to the Catalog
`CatalogType` `addPhysicalFile(java.lang.String url)` Add a pfn url to the Catalog
`CatalogType` `addPhysicalFile(java.lang.String url, java.lang.String site)` Add a PFN url and a site id to the Catalog
`CatalogType` `addPhysicalFiles(java.util.List<PFN> pfns)` Add a list of PFN objects to the Catalog
`CatalogType` `addProfile(Profile.NAMESPACE namespace, java.lang.String key, java.lang.String value)` Add a profile to the catalog entry
`CatalogType` `addProfile(java.lang.String namespace, java.lang.String key, java.lang.String value)` Add a profile to the catalog entry
`CatalogType` `addProfiles(java.util.List<Profile> profiles)` Add a List of profile objects to this Catalog entry
`CatalogType` `addProfiles(Profile profile)` Add a Profile object to this Catalog entry
`java.util.List<MetaData>` `getMetaData()` Returns the List of MetaData objects associated with this Catalog entry object
`java.util.List<PFN>` `getPhysicalFiles()` Returns a List of PFN objects associated with this Catalog entry
`java.util.List<Profile>` `getProfiles()` Return the List of `Profile` objects associated with this Catalog entry
`boolean` `isExecutable()`
`boolean` `isFile()`
`void` `toXML(XMLWriter writer)` Write the XML representation of this object
`void` `toXML(XMLWriter writer, int indent)` Write the XML representation of this object

### Methods inherited from class java.lang.Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

### Field Detail

#### mProfiles

    protected java.util.List<Profile> mProfiles

#### mMetadata

    protected java.util.List<MetaData> mMetadata

#### mPFNs

    protected java.util.List<PFN> mPFNs

#### mLogger

    protected LogManager mLogger

### Constructor Detail

#### CatalogType

    protected CatalogType()

#### CatalogType

    protected CatalogType(CatalogType c)

Copy Constructor

Parameters:
  `c` -

### Method Detail

#### addPhysicalFile

    public CatalogType addPhysicalFile(java.lang.String url)

Add a pfn url to the Catalog

Parameters:
  `url` -
Returns:
  CatalogType

#### addPhysicalFile

    public CatalogType addPhysicalFile(java.lang.String url,
                                       java.lang.String site)

Add a PFN url and a site id to the Catalog

Parameters:
  `url` -
  `site` -
Returns:
  CatalogType

#### addPhysicalFile

    public CatalogType addPhysicalFile(PFN pfn)

Add a PFN object to the Catalog

Parameters:
  `pfn` -
Returns:
  CatalogType
See Also:
  `PFN`

#### addPhysicalFiles

    public CatalogType addPhysicalFiles(java.util.List<PFN> pfns)

Add a list of PFN objects to the Catalog

Parameters:
  `pfns` -
Returns:
  CatalogType
See Also:
  `PFN`

#### getPhysicalFiles

    public java.util.List<PFN> getPhysicalFiles()

Returns a List of PFN objects associated with this Catalog entry

Returns:
  List<PFN>
See Also:
  `PFN`

#### addMetaData

    public CatalogType addMetaData(java.lang.String type,
                                   java.lang.String key,
                                   java.lang.String value)

Add a Metadata entry for the Catalog object

Parameters:
  `type` - String type of metadata
  `key` - String key for the metadata entry
  `value` - String value for the metadata entry
Returns:
  CatalogType

#### addMetaData

    public CatalogType addMetaData(MetaData metadata)

Add a `MetaData` object for the Catalog object

Parameters:
  `metadata` -
Returns:
  CatalogType
See Also:
  `MetaData`

#### addMetaData

    public CatalogType addMetaData(java.util.List<MetaData> metadata)

Add a List of `MetaData` objects to the Catalog entry object

Parameters:
  `metadata` -
Returns:
  CatalogType
See Also:
  `MetaData`

#### getMetaData

    public java.util.List<MetaData> getMetaData()

Returns the List of MetaData objects associated with this Catalog entry object

Returns:
  List<MetaData>
See Also:
  `MetaData`

#### addProfile

    public CatalogType addProfile(java.lang.String namespace,
                                  java.lang.String key,
                                  java.lang.String value)

Add a profile to the catalog entry

Parameters:
  `namespace` - String Namespace of the profile. See `Profile.NAMESPACE` for a list of valid namespaces
  `key` - String Key of the profile
  `value` - String Value of the profile
Returns:
  CatalogType
See Also:
  `Profile.NAMESPACE`

#### addProfile

    public CatalogType addProfile(Profile.NAMESPACE namespace,
                                  java.lang.String key,
                                  java.lang.String value)

Add a profile to the catalog entry

Parameters:
  `namespace` - `Profile.NAMESPACE` Namespace of the profile
  `key` - String Key of the profile
  `value` - String Value of the profile
Returns:
  CatalogType
See Also:
  `Profile.NAMESPACE`

#### addProfiles

    public CatalogType addProfiles(java.util.List<Profile> profiles)

Add a List of profile objects to this Catalog entry

Parameters:
  `profiles` - List of Profile objects
Returns:
  CatalogType
See Also:
  `Profile`

#### addProfiles

    public CatalogType addProfiles(Profile profile)

Add a Profile object to this Catalog entry

Parameters:
  `profile` -
Returns:
  CatalogType
See Also:
  `Profile`

#### getProfiles

    public java.util.List<Profile> getProfiles()

Return the List of `Profile` objects associated with this Catalog entry

Returns:
  List<Profile>
See Also:
  `Profile`

#### isFile

    public boolean isFile()

#### isExecutable

    public boolean isExecutable()

#### toXML

    public void toXML(XMLWriter writer)

Write the XML representation of this object

Parameters:
  `writer` -
See Also:
  `XMLWriter`

#### toXML

    public void toXML(XMLWriter writer,
                      int indent)

Write the XML representation of this object

Parameters:
  `writer` -
  `indent` -
See Also:
  `XMLwriter`