Package Peach :: Package Publishers :: Module process
[hide private]

Source Code for Module Peach.Publishers.process

 1   
 2  ''' 
 3  Start a process with data as parameter. 
 4   
 5  @author: Michael Eddington 
 6  @version: $Id: process.py 1112 2008-07-30 04:51:26Z meddingt $ 
 7  ''' 
 8   
 9  # 
10  # Copyright (c) 2007-2008 Michael Eddington 
11  # 
12  # Permission is hereby granted, free of charge, to any person obtaining a copy  
13  # of this software and associated documentation files (the "Software"), to deal 
14  # in the Software without restriction, including without limitation the rights  
15  # to use, copy, modify, merge, publish, distribute, sublicense, and/or sell  
16  # copies of the Software, and to permit persons to whom the Software is  
17  # furnished to do so, subject to the following conditions: 
18  # 
19  # The above copyright notice and this permission notice shall be included in     
20  # all copies or substantial portions of the Software. 
21  # 
22  # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR  
23  # IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,  
24  # FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE  
25  # AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER  
26  # LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 
27  # OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 
28  # SOFTWARE. 
29  # 
30   
31  # Authors: 
32  #   Michael Eddington (mike@phed.org) 
33   
34  # $Id: process.py 1112 2008-07-30 04:51:26Z meddingt $ 
35   
36   
37  from Peach.publisher import Publisher 
38  import os 
39   
40 -class Command(Publisher):
41 ''' 42 Run a command line program passing generated data as 43 parameters. 44 ''' 45
46 - def call(self, method, args):
47 ''' 48 Call method on COM object. 49 50 @type method: string 51 @param method: Command to execute 52 @type args: array of objects 53 @param args: Arguments to pass 54 ''' 55 56 realArgs = [method] 57 for a in args: 58 realArgs.append(a) 59 60 return os.spawnv(os.P_WAIT, method, realArgs )
61 62 # end 63