SF.net SVN: fclient: [236] trunk/sandbox/fcp/fcp2_0_client.py
Status: Pre-Alpha
Brought to you by:
jurner
|
From: <ju...@us...> - 2008-02-21 13:08:35
|
Revision: 236
http://fclient.svn.sourceforge.net/fclient/?rev=236&view=rev
Author: jurner
Date: 2008-02-21 05:08:36 -0800 (Thu, 21 Feb 2008)
Log Message:
-----------
fix: run did not run untill all requests where completed if a request was removed or modified
Modified Paths:
--------------
trunk/sandbox/fcp/fcp2_0_client.py
Modified: trunk/sandbox/fcp/fcp2_0_client.py
===================================================================
--- trunk/sandbox/fcp/fcp2_0_client.py 2008-02-20 17:48:09 UTC (rev 235)
+++ trunk/sandbox/fcp/fcp2_0_client.py 2008-02-21 13:08:36 UTC (rev 236)
@@ -375,7 +375,6 @@
if event is not None:
event(request)
- request['FcRequestStatus'] |= consts.RequestStatus.Completed
if removeRequest:
del self._requests[request['Identifier']]
@@ -765,12 +764,12 @@
elif code == consts.ProtocolError.NoSuchPlugin:
if initialRequest.name == consts.Message.GetPluginInfo:
initialRequest['FcErrorMessage'] = msg
- initialRequest['FcRequestStatus'] |= consts.RequestStatus.Error
+ initialRequest['FcRequestStatus'] |= consts.RequestStatus.Error | consts.RequestStatus.Completed
self._finalizeRequest(msg, initialRequest, self.events.PluginInfoFailed)
return True
elif initialRequest.name == consts.Message.FCPPluginMessage:
initialRequest['FcErrorMessage'] = msg
- initialRequest['FcRequestStatus'] |= consts.RequestStatus.Error
+ initialRequest['FcRequestStatus'] |= consts.RequestStatus.Error | consts.RequestStatus.Completed
self._finalizeRequest(msg, initialRequest, self.events.PluginMessageFailed)
return True
@@ -792,7 +791,7 @@
# NOTE: Fcp already removed the request
initialRequest['FcErrorMessage'] = msg
- initialRequest['FcRequestStatus'] = consts.RequestStatus.Error
+ initialRequest['FcRequestStatus'] |= consts.RequestStatus.Error | consts.RequestStatus.Completed
self._finalizeRequest(msg, initialRequest, self.events.RequestFailed)
return True
@@ -872,7 +871,7 @@
if testFailed:
#TODO: check if errorMsg gives reasonable feedback
- initialRequest['FcRequestStatus'] = consts.RequestStatus.Error
+ initialRequest['FcRequestStatus'] = consts.RequestStatus.Error | consts.RequestStatus.Completed
initialRequest['FcErrorMessage'] = initialRequest['FcTestDDA']['ErrorMsg']
self._finalizeRequest(msg, initialRequest, self.events.RequestFailed)
return True
@@ -906,7 +905,7 @@
if initialRequest is None:
return False
- initialRequest['FcRequestStatus'] |= consts.RequestStatus.Success
+ initialRequest['FcRequestStatus'] |= consts.RequestStatus.Success | consts.RequestStatus.Completed
initialRequest.data = msg.data
self._finalizeRequest(msg, initialRequest, self.events.RequestCompleted)
return True
@@ -923,7 +922,7 @@
# For GetData with persistence != connection the node sends no All Data message
# whatever that is good for ..fix this here to get all GetData request to complete on
- # All Data, too.
+ # All Data.
if initialRequest['FcRequestType'] == consts.RequestType.GetData:
if initialRequest['Persistence'] != consts.Persistence.Connection:
self.sendMessage(
@@ -933,9 +932,9 @@
OnlyData=True
)
else:
+ initialRequest['FcRequestStatus'] |= consts.RequestStatus.Completed
self._finalizeRequest(msg, initialRequest, self.events.RequestCompleted)
-
-
+
return True
@@ -951,11 +950,11 @@
if code == consts.FetchError.TooBig and initialRequest['FcRequestType'] == consts.RequestType.GetKeyInfo:
initialRequest['FcMetadataContentType'] = msg.get('ExpectedMetadata.ContentType', '')
initialRequest['FcDataLength'] = msg.get('ExpectedDataLength', -1)
- initialRequest['FcRequestStatus'] |= consts.RequestStatus.Success
+ initialRequest['FcRequestStatus'] |= consts.RequestStatus.Success | consts.RequestStatus.Completed
self._finalizeRequest(msg, initialRequest, self.events.RequestCompleted)
else:
initialRequest['FcErrorMessage'] = msg
- initialRequest['FcRequestStatus'] |= consts.RequestStatus.Error
+ initialRequest['FcRequestStatus'] |= consts.RequestStatus.Error | consts.RequestStatus.Completed
self._finalizeRequest(msg, initialRequest, self.events.RequestFailed)
return True
@@ -1035,7 +1034,7 @@
if initialRequest is None:
return False
- initialRequest['FcRequestStatus'] |= consts.RequestStatus.Removed
+ initialRequest['FcRequestStatus'] |= consts.RequestStatus.Removed | consts.RequestStatus.Completed
self._finalizeRequest(msg, initialRequest, self.events.RequestRemoved)
return True
@@ -1107,7 +1106,7 @@
if code == consts.InsertError.Canceled:
return False
- initialRequest['FcRequestStatus'] |= consts.RequestStatus.Error
+ initialRequest['FcRequestStatus'] |= consts.RequestStatus.Error | consts.RequestStatus.Completed
initialRequest['FcErrorMessage'] = msg
self._finalizeRequest(msg, initialRequest, self.events.RequestFailed)
return True
@@ -1128,7 +1127,7 @@
# TODO: StartupTime and CompletionTime are passed, but
# as long as no corrosponding params are passed in DataFound
# we ignore them
- initialRequest['FcRequestStatus'] |= consts.RequestStatus.Success
+ initialRequest['FcRequestStatus'] |= consts.RequestStatus.Success | consts.RequestStatus.Completed
initialRequest['URI'] = msg['URI']
self._finalizeRequest(msg, initialRequest, self.events.RequestCompleted)
return True
@@ -1195,14 +1194,14 @@
if initialRequest is None:
return False
- initialRequest['FcRequestStatus'] |= consts.RequestStatus.Success
+ initialRequest['FcRequestStatus'] |= consts.RequestStatus.Success | consts.RequestStatus.Completed
self._finalizeRequest(msg, initialRequest, self.events.PluginInfo)
return True
elif msg.name == consts.Message.FCPPluginReply:
if initialRequest is None:
return False
- initialRequest['FcRequestStatus'] |= consts.RequestStatus.Success
+ initialRequest['FcRequestStatus'] |= consts.RequestStatus.Success | consts.RequestStatus.Completed
initialRequest['FcPluginReply'] = msg
self._finalizeRequest(msg, initialRequest, self.events.PluginMessage)
return True
@@ -1236,7 +1235,7 @@
initialRequest['FcPrivateKey'] = insertURI
initialRequest['FcPublicKey'] = requestURI
- initialRequest['FcRequestStatus'] |= consts.RequestStatus.Success
+ initialRequest['FcRequestStatus'] |= consts.RequestStatus.Success | consts.RequestStatus.Completed
self._finalizeRequest(msg, initialRequest, self.events.KeypairGenerated)
return True
@@ -1304,7 +1303,7 @@
# check if we have running requests. Assert False
haveRunningRequests = False
for request in self._requests.values():
- if not request.params['FcRequestStatus'] & consts.RequestStatus.Completed:
+ if not request['FcRequestStatus'] & consts.RequestStatus.Completed:
haveRunningRequests = True
break
@@ -2074,6 +2073,7 @@
return
+ initialRequest['FcRequestStatus'] &= ~consts.RequestStatus.Completed
msg = self.Message(
consts.Message.ModifyPersistentRequest,
Identifier=initialRequest['Identifier'],
@@ -2093,15 +2093,16 @@
@param requestIdentifier: (str) identifier of the request to remove
"""
initialRequest = self._requests[requestIdentifier]
- initialRequest['FcRequestStatus'] |= consts.RequestStatus.Removed
+ initialRequest['FcRequestStatus'] |= consts.RequestStatus.Removed | consts.RequestStatus.Completed
if initialRequest['FcRequestType'] & (consts.RequestType.MaskGet | consts.RequestType.MaskPut):
# remove Persistence.Connection emidiately
- #todo so we make up a PersistentRequestRemoved message
+ # ..make up a PersistentRequestRemoved message for this case
if initialRequest['Persistence'] == consts.Persistence.Connection:
msg = self.Message(consts.Message.PersistentRequestRemoved, Identifier=requestIdentifier, Global=False)
self._finalizeRequest(msg, initialRequest, self.events.RequestRemoved)
else:
+ initialRequest['FcRequestStatus'] &= ~consts.RequestStatus.Completed
self.sendMessage(
consts.Message.RemovePersistentRequest,
Global=False,
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|