NAME

Pegasus::DAX::Executable - stores an included transformation catalog entry.

SYNOPSIS

    use Pegasus::DAX::Executable; 

    my $a = Pegasus::DAX::Executable(); 
    $a->namespace( 'somewhere' ); 
    $a->name( 'lfn' );
    $a->version( '1.0' ); 
    $a->os( 'x86_64' ); 
  

DESCRIPTION

This class remembers an included Pegasus transformation catalog entry.

CONSTANTS

These constants describe the architecture for which an executable was compiled. Note that multi-architectures as available on Mac OS X are currently not supported.

ARCH_IA64
ARCH_PPC
ARCH_PPC_64
ARCH_SPARCV7
ARCH_SPARCV9
ARCH_X86
ARCH_X86_64
ARCH_AMD64

These constants describe the operating system platform. Some of them are aliases mapping to the same string.

OS_AIX

The IBM AIX Unix platform.

OS_LINUX

The Linux platform.

OS_DARWIN

The Mac OS X platform.

OS_MACOSX

An alias for the Mac OS X platform.

OS_SUNOS

The SUN Sparc and SUN Intel platforms.

OS_SOLARIS

An alias for the SUN platforms.

OS_WINDOWS

The Microsoft Windows family of platforms.

METHODS

new()
new( a => b, c => d, ... )
new( { a => b, c => d, ... } )

The default constructor will create an empty instance whose scalar attributes can be adjusted using the getters and setters provided by the AUTOLOAD inherited method.

Other means of construction is to use named lists. However, you will have to be aware of the internals to be able to use these lists successfully.

namespace

Setter and getter for the optional logical transformation namespace string.

name

Setter and getter for the logical transformation's name string.

version

Setter and getter for the optional logical transformation version number string.

arch

Setter and getter for the optional architecture string.

os

Setter and getter for the optional operating system identifier.

osrelease

Setter and getter for the optional OS release string.

osversion

Setter and getter for the optional OS version string.

glibc

Setter and getter for the optional GNU libc platform identifier string.

key

This function munges all above attributes of this instance into a binary string that can be used as unique identifier for this instance in a hash.

toXML( $handle, $indent, $xmlns )

The purpose of the toXML function is to recursively generate XML from the internal data structures. The first argument is a file handle open for writing. This is where the XML will be generated. The second argument is a string with the amount of white-space that should be used to indent elements for pretty printing. The third argument may not be defined. If defined, all element tags will be prefixed with this name space.

INHERITED METHODS

Please refer to Pegasus::DAX::CatalogType for inherited methods.

addMeta( $key, $type, $value )
addMeta( $metadata_instance )
addPFN( $url )
addPFN( $url, $site )
addPFN( $pfn_instance )
addProfile( $namespace, $key, $value )
addProfile( $profile_instance )

Please refer to Pegasus::DAX::InvokeMixin for inherited methods.

addInvoke( $when, $cmd )
invoke( $when, $cmd )
notify( $when, $cmd )

SEE ALSO

Pegasus::DAX::CatalogType

Base class.

Pegasus::DAX::InvokeMixin

Base class.

Pegasus::DAX::ADAG

Class using Pegasus::DAX::File.

COPYRIGHT AND LICENSE

Copyright 2007-2011 University Of Southern California

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.