commit-gnue
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

gnue/appserver src/geasRpcServer.py grpc/GEAS.g...


From: Jan Ischebeck
Subject: gnue/appserver src/geasRpcServer.py grpc/GEAS.g...
Date: Mon, 25 Nov 2002 18:24:20 -0500

CVSROOT:        /cvsroot/gnue
Module name:    gnue
Changes by:     Jan Ischebeck <address@hidden>  02/11/25 18:24:20

Modified files:
        appserver/src  : geasRpcServer.py 
        appserver/grpc : GEAS.grpc 
Added files:
        appserver/src  : geasRpcClient2.py test2.py 

Log message:
        changes to allow the use of the new api [1.part]

CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/appserver/src/geasRpcClient2.py?rev=1.1
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/appserver/src/test2.py?rev=1.1
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/appserver/src/geasRpcServer.py.diff?tr1=1.13&tr2=1.14&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/gnue/gnue/appserver/grpc/GEAS.grpc.diff?tr1=1.3&tr2=1.4&r1=text&r2=text

Patches:
Index: gnue/appserver/grpc/GEAS.grpc
diff -c gnue/appserver/grpc/GEAS.grpc:1.3 gnue/appserver/grpc/GEAS.grpc:1.4
*** gnue/appserver/grpc/GEAS.grpc:1.3   Sun May 26 05:22:15 2002
--- gnue/appserver/grpc/GEAS.grpc       Mon Nov 25 18:24:20 2002
***************
*** 1,6 ****
--- 1,55 ----
  <?xml version = '1.0' ?>
  <gnurpc>
    <service name="SessionManager" binding="SessionManager">
+     <method name="open" helptext="open a new session">
+       <argument name="authentification" type="integer" default="0"/>
+     </method>
+     <method name="close" helptext="close a session">
+       <argument name="session_id" type="integer" default="0"/>
+       <argument name="commit" type="boolean" default="false"/>
+     </method>
+     <method name="commit" helptext="commit all changes in a session">
+       <argument name="session_id" type="integer" default="0"/>
+     </method>
+     <method name="rollback" helptext="rollback all changes in a session">
+       <argument name="session_id" type="integer" default="0"/>
+     </method>
+     <method name="requestList" helptext="shuts the server down">
+       <argument name="sessionid" type="integer" default="0"/>
+         <argument name="context" type="integer" default="0"/>
+         <argument name="classname" type="integer" default="0"/>
+       <argument name="conditions" type="integer" default="0"/>
+       <argument name="sortorder" type="integer" default="0"/>
+       <argument name="propertylist" type="integer" default="0"/>
+     </method>
+     <method name="count" return="string">
+       <argument name="sessionid" type="string"/>
+       <argument name="listid" type="integer"/>
+     </method>
+     <method name="fetch" return="array">
+       <argument name="sessionid" type="string"/>
+       <argument name="listid" type="integer"/>
+       <argument name="start" type="integer"/>
+       <argument name="count" type="integer"/>
+     </method>
+     <method name="load" return="array">
+       <argument name="sessionid" type="string"/>
+       <argument name="objids" type="list of objids"/>
+       <argument name="propertylist" type="stringlist"/>
+     </method>
+     <method name="store" return="array">
+       <argument name="sessionid" type="string"/>
+       <argument name="objids" type="list of objids"/>
+       <argument name="propertylist" type="stringlist"/>
+       <argument name="data" type="stringlist"/>
+     </method>
+     <method name="call" return="array">
+       <argument name="sessionid" type="string"/>
+       <argument name="objids" type="list of objids"/>
+       <argument name="methodname" type="string"/>
+       <argument name="parameters" type="stringlist"/>
+     </method>
+ 
      <method name="getNewSession" return="&lt;SessionManager.geasSession&gt;" 
helptext="Return an new geasSession object"/>
        <method name="Restart" helptext="Restarts the server"/>
        <method name="Shutdown" helptext="shuts the server down">
Index: gnue/appserver/src/geasRpcServer.py
diff -c gnue/appserver/src/geasRpcServer.py:1.13 
gnue/appserver/src/geasRpcServer.py:1.14
*** gnue/appserver/src/geasRpcServer.py:1.13    Tue Sep 17 11:27:43 2002
--- gnue/appserver/src/geasRpcServer.py Mon Nov 25 18:24:20 2002
***************
*** 19,25 ****
  #
  # Copyright 2001-2002 Free Software Foundation
  #
! # $Id: geasRpcServer.py,v 1.13 2002/09/17 15:27:43 jcater Exp $
  
  from geasList import *
  from geasSession import *
--- 19,25 ----
  #
  # Copyright 2001-2002 Free Software Foundation
  #
! # $Id: geasRpcServer.py,v 1.14 2002/11/25 23:24:20 siesel Exp $
  
  from geasList import *
  from geasSession import *
***************
*** 55,60 ****
--- 55,124 ----
        return "Running (no sessions created yet)"
      else:
        return "Running (%s session created)" % self._sessNo
+ 
+   #####
+   # here the new API begins  
+   #
+ 
+   def open(self,authentification):
+     session_id=self.getNewSession()
+     session_id.login(authentification['user'],authentification['password'])
+     return session_id
+ 
+   def close(self,session_id,commit):
+     if commit:
+       self.commit(session_id)
+ 
+     session_id.logoff()
+ 
+   def commit(self,session_id):
+     session_id.commit()
+ 
+   def rollback(self,session_id):
+     session_id.rollback()
+ 
+   def requestList(self,session_id,context,classname,conditions,
+                   sortorder,propertylist):
+ 
+     a_list=session_id.createList(classname)
+ 
+     a_list.setPrefetch (propertylist)
+     a_list.setConditions (conditions)
+     a_list.setSort (sortorder)
+     a_list.populate ()
+     return a_list;
+ 
+   def count(self,session_id,list_id):
+     return list_id.count();
+ 
+   def fetch(self,session_id,list_id,start,count):
+     rset=[]
+     c=0
+     row=list_id.firstInstance ()
+     while (row!=None) and (c<start+count):
+       if c>=start:
+         rrow={}
+         for field in list_id._prefetch:
+           rrow[field]=row.get(field)
+         rrow['_myID']=row
+         rset.append(rrow)
+         
+       c+=1
+       row=list_id.nextInstance ()
+     
+     return rset;
+ 
+   def load(self,session_id,obj_id_list,propertylist):
+     return rset;
+   
+   def store(self,session_id,obj_id_list,propertylist,data):
+     return null;
+   
+   def call(self,session_id,obj_id_list,methodname,parameters):
+     return null;
+   # 
+   # thats the end of the new API
+   #####
  
  from gnue.common import GComm, GLoginHandler, GConfig
  from gnue.common.FileUtils import openResource




reply via email to

[Prev in Thread] Current Thread [Next in Thread]