Package Ganga :: Package Lib :: Package Splitters :: Module GenericSplitter' :: Class GenericSplitter :: Class _proxyClass
[hide private]
[frames] | no frames]

Class _proxyClass

source code

    object --+    
             |    
GPIProxyObject --+
                 |
                Lib.Splitters.GenericSplitter'.GenericSplitter._proxyClass


    Split job by changing arbitrary job attribute.

    This splitter allows the creation of a series of subjobs where
    the only difference between different jobs can be defined by giving 
    the "attribute" and "values" of the splitter object.

    For example, to split a job according to the given application arguments:

      s = GenericSplitter()
      s.attribute = 'application.args'
      s.values = [["hello","1"],["hello","2"]]
      ... ...
      j = Job(splitter=s)
      j.submit()

    To split a job into two LCG jobs running on two different CEs:

      s = GenericSplitter()
      s.attribute = 'backend.CE'
      s.value = ["quanta.grid.sinica.edu.tw:2119/jobmanager-lcgpbs-atlas","lcg00125.grid.sinica.edu.tw:2119/jobmanager-lcgpbs-atlas"]
      ... ...
      j = Job(backend=LCG(),splitter=s)
      j.submit()

    Known issues of this generic splitter:
      - it will not work if specifying different backends for the subjobs

    

Properties:

     attribute The attribute on which the job is splitted. (simple property,
               default='',comparable)

     values    A list of the values corresponding to the attribute of the
               subjobs. (simple property, list, default=[],comparable)

Nested Classes [hide private]
  _impl
This is a Ganga.GPI.GenericSplitter implementation class.
Instance Methods [hide private]
 
__eq__(self, x)
Equality operator (==), compare the GenericSplitter properties which are declared as [comparable].
source code
 
__init__(self, *args, **kwds)
GPI GenericSplitter object constructor: GenericSplitter() : create genericsplitter with default settings; GenericSplitter(g) : make a copy of g; GenericSplitter(g,x=a,...): make a copy of g and set property 'x' to a, etc..
source code
 
__ne__(self, x)
Non-equality operator (!=).
source code
 
__repr__(self)
Return an short representation of GenericSplitter object.
source code
 
__setattr__(self, x, v)
Set a property of GenericSplitter with consistency and safety checks.
source code
 
__str__(self)
Return a printable string representing GenericSplitter object as a tree of properties.
source code
 
copy(self)
Make an identical copy of self.
source code

Inherited from object: __delattr__, __format__, __getattribute__, __hash__, __new__, __reduce__, __reduce_ex__, __sizeof__, __subclasshook__

Class Variables [hide private]
  attribute = <Ganga.GPIDev.Base.Proxy.ProxyDataDescriptor objec...
  values = <Ganga.GPIDev.Base.Proxy.ProxyDataDescriptor object a...
Properties [hide private]

Inherited from object: __class__

Method Details [hide private]

__init__(self, *args, **kwds)
(Constructor)

source code 

GPI GenericSplitter object constructor: GenericSplitter() : create genericsplitter with default settings; GenericSplitter(g) : make a copy of g; GenericSplitter(g,x=a,...): make a copy of g and set property 'x' to a, etc..

Overrides: object.__init__

__repr__(self)
(Representation operator)

source code 

Return an short representation of GenericSplitter object.

Overrides: object.__repr__

__setattr__(self, x, v)

source code 

Set a property of GenericSplitter with consistency and safety checks. Setting a [protected] or a unexisting property raises AttributeError.

Overrides: object.__setattr__

__str__(self)
(Informal representation operator)

source code 

Return a printable string representing GenericSplitter object as a tree of properties.

Overrides: object.__str__

Class Variable Details [hide private]

attribute

Value:
<Ganga.GPIDev.Base.Proxy.ProxyDataDescriptor object at 0x1cb1690>

values

Value:
<Ganga.GPIDev.Base.Proxy.ProxyDataDescriptor object at 0x1cb1710>