Thread: SF.net SVN: fclient:[790] trunk/fclient/src/fclient/impl/lib/fcp2
Status: Pre-Alpha
Brought to you by:
jurner
|
From: <jU...@us...> - 2008-07-27 20:57:04
|
Revision: 790
http://fclient.svn.sourceforge.net/fclient/?rev=790&view=rev
Author: jUrner
Date: 2008-07-27 20:57:12 +0000 (Sun, 27 Jul 2008)
Log Message:
-----------
revert laszt checkin. we can not deal with invalid keys. wait for bug reports..
Modified Paths:
--------------
trunk/fclient/src/fclient/impl/lib/fcp2/__init__.py
trunk/fclient/src/fclient/impl/lib/fcp2/key.py
Modified: trunk/fclient/src/fclient/impl/lib/fcp2/__init__.py
===================================================================
--- trunk/fclient/src/fclient/impl/lib/fcp2/__init__.py 2008-07-27 20:05:32 UTC (rev 789)
+++ trunk/fclient/src/fclient/impl/lib/fcp2/__init__.py 2008-07-27 20:57:12 UTC (rev 790)
@@ -22,7 +22,7 @@
ConstRequestModified, ConstRequestStatus, ConstPutMultiple, ConstReturnType,
ConstTimeDeltaPostfix, ConstUploadFrom, ConstVerbosity, Error, ErrorIOBroken, ErrorIOClosed,
ErrorIOConnectFailed, ErrorIOTimeout, ErrorMessageParse, FcpFalse, FcpTrue)
-from .key import (ErrorKey, Key, KeyAny, KeyCHK, KeyKSK, KeySSK, KeyTypesAll, KeyUSK, TypeKey, base64UrlsaveDecode, keyNormkey)
+from .key import (ErrorKey, Key, KeyCHK, KeyKSK, KeySSK, KeyTypesAll, KeyUSK, TypeKey, base64UrlsaveDecode, keyNormkey)
from .message import (MessagesAll, MsgAddPeer, MsgAllData, MsgClientDisconnected, MsgClientGet, MsgClientHello,
MsgClientPut, MsgClientPutComplexDir, MsgClientPutDiskDir, MsgClientSocketDied,
MsgClientSocketTimeout, MsgCloseConnectionDuplicateClientName, MsgConfigData, MsgDataFound,
Modified: trunk/fclient/src/fclient/impl/lib/fcp2/key.py
===================================================================
--- trunk/fclient/src/fclient/impl/lib/fcp2/key.py 2008-07-27 20:05:32 UTC (rev 789)
+++ trunk/fclient/src/fclient/impl/lib/fcp2/key.py 2008-07-27 20:57:12 UTC (rev 790)
@@ -134,20 +134,6 @@
raise NotImplementedError()
-class KeyAny(object):
- """key object that may contain any string, wether it is a vlaid key or not
- """
- def __init__(self, string):
- self.string = string
-
- def toString(self):
- return self.string
-
- @classmethod
- def fromString(clss, string):
- self.key = string
-
-
class KeyCHK(_KeyBase):
""""""
_key_pattern_ = '''
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <jU...@us...> - 2008-07-30 22:19:44
|
Revision: 827
http://fclient.svn.sourceforge.net/fclient/?rev=827&view=rev
Author: jUrner
Date: 2008-07-30 22:19:52 +0000 (Wed, 30 Jul 2008)
Log Message:
-----------
connection attempt duration was flawed. fixed pt2
Modified Paths:
--------------
trunk/fclient/src/fclient/impl/lib/fcp2/client.py
trunk/fclient/src/fclient/impl/lib/fcp2/iohandler.py
Modified: trunk/fclient/src/fclient/impl/lib/fcp2/client.py
===================================================================
--- trunk/fclient/src/fclient/impl/lib/fcp2/client.py 2008-07-30 22:18:50 UTC (rev 826)
+++ trunk/fclient/src/fclient/impl/lib/fcp2/client.py 2008-07-30 22:19:52 UTC (rev 827)
@@ -489,7 +489,7 @@
msg = self.next(dispatch=False)
if msg == message.MsgClientSocketTimeout:
disconnectReason = consts.ConstDisconnectReason.NoNodeHello
- timeElapsed += time.time() - t0
+ timeElapsed = time.time() - t0
yield None
elif msg == message.MsgNodeHello:
self._nodeHelloMessage = msg
Modified: trunk/fclient/src/fclient/impl/lib/fcp2/iohandler.py
===================================================================
--- trunk/fclient/src/fclient/impl/lib/fcp2/iohandler.py 2008-07-30 22:18:50 UTC (rev 826)
+++ trunk/fclient/src/fclient/impl/lib/fcp2/iohandler.py 2008-07-30 22:19:52 UTC (rev 827)
@@ -210,7 +210,7 @@
# continue polling
consts.ConstLogger.IOHandler.info(consts.ConstLogMessages.RetryingConnect)
- timeElapsed += time.time() - t0
+ timeElapsed = time.time() - t0
time.sleep(timeout)
raise StopIteration
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <jU...@us...> - 2008-07-31 16:41:46
|
Revision: 832
http://fclient.svn.sourceforge.net/fclient/?rev=832&view=rev
Author: jUrner
Date: 2008-07-31 16:41:55 +0000 (Thu, 31 Jul 2008)
Log Message:
-----------
methods no longer return requestIdentifier. instead return request directly
Modified Paths:
--------------
trunk/fclient/src/fclient/impl/lib/fcp2/client.py
trunk/fclient/src/fclient/impl/lib/fcp2/test/test_client.py
Modified: trunk/fclient/src/fclient/impl/lib/fcp2/client.py
===================================================================
--- trunk/fclient/src/fclient/impl/lib/fcp2/client.py 2008-07-31 16:40:52 UTC (rev 831)
+++ trunk/fclient/src/fclient/impl/lib/fcp2/client.py 2008-07-31 16:41:55 UTC (rev 832)
@@ -144,9 +144,17 @@
#
#FIX: at least some are implemented in the client
#--------------------------------------------------------------------------------------------------------------------------------------------------
+# [0002483: PersistentGet never arrives]
+#
+# Client.GetkeyInfo() is most likely not a good idea. from my observations requests are flagged
+# in downloads.dat wether they are successful or not. looks like an unsuccessful Client.GetkeyInfo(),
+# even though failure is intended, will mark dls as Succeded=false in downloads.dat with unwanted
+# side effects
+#
+# FIX none, drop Client.GetkeyInfo()?
+#-------------------------------------------------------------------------------------------------------------------------------------------------
-
# Todos
#------------------------------------------------------------------------------------------------------------------------------------------------
# clean up
@@ -817,7 +825,7 @@
initialRequest['RequestStatus'] |= consts.ConstRequestStatus.Success
initialRequest['MetadataContentType'] = msg.get('Metadata.ContentType', '')
- initialRequest['MetadataSize'] = msg.get('DataLength', '')
+ initialRequest['MetadataSize'] = msg.get('DataLength', 0)
initialRequest['ProgressSucceeeded'] = initialRequest['ProgressRequired']
# except from GetData all requests are complete here. Next GetData will run through AllData...
@@ -866,7 +874,7 @@
# check if it is one of our requests for key information
if code == consts.ConstFetchError.TooBig and initialRequest['IsGetKeyInfo']:
initialRequest['MetadataContentType'] = msg.get('ExpectedMetadata.ContentType', '')
- initialRequest['DataLength'] = msg.get('ExpectedDataLength', -1)
+ initialRequest['MetadataSize'] = msg.get('ExpectedDataLength', 0)
initialRequest['RequestStatus'] |= consts.ConstRequestStatus.Success
self._finalizeRequest(msg, initialRequest, self.events.RequestCompleted)
return True
@@ -1295,7 +1303,7 @@
@param handlePermanentRedirect: (bool) if True, permanent redirect are handled automatically. for example USK@.../-1
will look for the current edition. if handlePermanentRedirect is True, the request is automatically resend to retrieve the current edition
- @return: (str) request identifier
+ @return: request
@event: L{events.Events.RequestCompleted} triggered as soon as the request is complete
@event: L{events.Events.RequestFailed} triggered if the request failes
@@ -1330,7 +1338,7 @@
userData=userData,
)
self.sendMessage(msg)
- return msg['Identifier']
+ return msg
def getFile(self,
@@ -1408,7 +1416,7 @@
userData=userData,
)
self.sendMessage(msg)
- return msg['Identifier']
+ return msg
def getKeyInfo(self,
@@ -1438,7 +1446,7 @@
@param handlePermanentRedirect: (bool) if True, permanent redirect are handled automatically. for example USK@.../-1
will look for the current edition. if handlePermanentRedirect is True, the request is automatically resend to retrieve the current edition
- @return: (str) request identifier
+ @return: request
@event: RequestCompleted(event, message) triggered when the request is complete
@event: RequestFailed(event, message) triggered when the request failes
@@ -1474,14 +1482,14 @@
userData=userData,
)
self.sendMessage(msg)
- return msg['Identifier']
+ return msg
def subscribeUSK(self, uri, dontPoll=True):
"""Asks the node to notify the client when an USK is updated
@param uri: (L{key.KeyUSK}) key to subscribe to
@param dontPoll: if True, does whatever ???
- @return: (str) identifer of the request
+ @return: request
@note: this request can not be removed or modified so the L{consts.ConstRequestStatus.Completed}
flag is always set
@@ -1492,10 +1500,10 @@
URI=uri,
DontPoll=dontPoll,
)
- self.registerRequest(msg, consts.ConstRequestType.SubscribeUSK)
+ self.registerRequest(msg)
msg['RequestStatus'] |= consts.ConstRequestStatus.Completed
self.sendMessage(msg)
- return msg['Identifier']
+ return msg
########################################################
@@ -1529,11 +1537,14 @@
@param userData: any non persistent data to associate to the request
@param persistentUserData: any string to associate to the request as persistent data
+ @return: request
+
@event: (L{events.Events.RequestCompleted}) triggered when the request is complete
@event: (L{events.Events.RequestFailed}) triggered when the request failes
@event: (L{events.Events.RequestFetchable}) triggered as soon as the request is fetchable
@event: (L{events.Events.RequestCompressionStarted}) triggered when the request is about to be compressed
@event: (L{events.Events.RequestCompressionCompleted}) triggered as soon as compressing of the request is completed
+
@note: if the upload is successful the node will create a L{consts.ConstKeyType.CHK} key under wich
the data can be retreieved. The key can be accessed as 'URI' member of the request as soon
@@ -1579,7 +1590,7 @@
userData=userData,
)
self.sendMessage(msg)
- return msg['Identifier']
+ return msg
def putDir(self,
@@ -1606,6 +1617,8 @@
if it encounters an unreadavle file
@param defaultName: name of the directory item that should be displayed when accessing the directory
without any filename appended to the uri
+
+ @return: request
@note: for other params see L{putData}
@note: once uploaded, items of the directory can be accessed under Key/MyItemName/MyItemSubname
@@ -1651,7 +1664,7 @@
userData=userData,
)
self.sendMessage(msg)
- return msg['Identifier']
+ return msg
def putFile(self,
@@ -1670,6 +1683,7 @@
"""Uploads a file
@param uri: (L{key._KeyBase}) key under wich to upload the file
@param filename: (str) file to upload
+ @return: request
@note: for other params see L{putData}
@@ -1711,7 +1725,7 @@
userData=userData,
)
self.sendMessage(msg)
- return msg['Identifier']
+ return msg
def putMultiple(self,
@@ -1732,6 +1746,7 @@
@param uri: (L{key._KeyBase}) key under wich to upload the file
@param items: (list) list of items to upload
+ @return: request
@note: for other params see L{putDir}
@note: to upload multiple items at once pass a dict for each item containig the following members:
@@ -1847,7 +1862,7 @@
userData=userData,
)
self.sendMessage(msg)
- return msg['Identifier']
+ return msg
def putRedirect(self,
@@ -1867,7 +1882,7 @@
@param priorityClass: (L{consts.ConstPriority}) priority of the request
@param persistentUserData: (str) persistent data to be assosiated to the request
@param userData: (any) any data to be associated to the request at runtime
- @return: (str) request identifier
+ @return: request
"""
#
if uri.KeyType == consts.ConstKeyType.CHK:
@@ -1902,7 +1917,7 @@
userData=userData,
)
self.sendMessage(msg)
- return msg['Identifier']
+ return msg
########################################################
##
@@ -1924,9 +1939,9 @@
return self._requests
- def modifyRequest(self, requestIdentifier, persistentUserData=None, priorityClass=None):
+ def modifyRequest(self, request, persistentUserData=None, priorityClass=None):
"""Modifies a request
- @param requestIdentifier: identifier of the request to modify
+ @param request: request to modify
@param persistentUserData: (str) persistent user data or None
@param priorityClass: (L{consts.ConstPriority}) new priority or None
@@ -1939,65 +1954,63 @@
@todo: currently we ignore any attempts to change priority class for requests with persistence == connection
Fcp does not provide means to do so.
"""
- initialRequest = self._requests[requestIdentifier]
- if not initialRequest == message.MsgClientGet or \
- initialRequest == message.MsgClientPut or \
- initialRequest == message.MsgClientPutDiskDir or \
- initialRequest == message.MsgClientPutComplexDir:
- raise ValueError('Can not modify request: %s' % initialRequest.name)
+ if not request == message.MsgClientGet or \
+ request == message.MsgClientPut or \
+ request == message.MsgClientPutDiskDir or \
+ request == message.MsgClientPutComplexDir:
+ raise ValueError('Can not modify request: %s' % request.name)
#FIX: [0002083]
# no way to change priority for non-persistent requests..this is simply not implemented in the protocol
# persistentUserData is ok, priority can not be changed. no idea how to handle this.
- if initialRequest['Persistence'] == consts.ConstPersistence.Connection:
+ if request['Persistence'] == consts.ConstPersistence.Connection:
modified = {}
#if priorityClass is not None:
# raise ValueError('Can not modify priority of requests with Persistence=connection')
if persistentUserData is not None:
- initialRequest['PersistentUserData'] = persistentUserData
- initialRequest['ClientToken'] = initialRequest.updatePersistentParams()
+ request['PersistentUserData'] = persistentUserData
+ request['ClientToken'] = request.updatePersistentParams()
modified[consts.ConstRequestModified.PersistentUserData] = None
- initialRequest['Modified'] = modified
- self.events.RequestModified(initialRequest)
+ request['Modified'] = modified
+ self.events.RequestModified(request)
return
#/FIX: [0002083]
msg = message.MsgModifyPersistentRequest(
- Identifier=initialRequest['Identifier'],
+ Identifier=request['Identifier'],
Global=False,
)
if persistentUserData is not None:
- oldClientToken = initialRequest['ClientToken']
- initialRequest['PersistentUserData'] = persistentUserData
- initialRequest.updatePersistentParams()
- msg['ClientToken'] = initialRequest['ClientToken']
- initialRequest['ClientToken'] = oldClientToken
+ oldClientToken = request['ClientToken']
+ request['PersistentUserData'] = persistentUserData
+ request.updatePersistentParams()
+ msg['ClientToken'] = request['ClientToken']
+ request['ClientToken'] = oldClientToken
if priorityClass is not None:
msg['PriorityClass'] = priorityClass
self.sendMessage(msg)
- def removeRequest(self, requestIdentifier):
+ def removeRequest(self, request):
"""Removes a request
- @param requestIdentifier: (str) identifier of the request to remove
+ @param request: request to remove
"""
- initialRequest = self._requests[requestIdentifier]
- initialRequest['RequestStatus'] |= consts.ConstRequestStatus.Removed | consts.ConstRequestStatus.Completed
- if initialRequest == message.MsgClientGet or \
- initialRequest == message.MsgClientPut or \
- initialRequest == message.MsgClientPutDiskDir or \
- initialRequest == message.MsgClientPutComplexDir:
+ request['RequestStatus'] |= consts.ConstRequestStatus.Removed | consts.ConstRequestStatus.Completed
+ if request == message.MsgClientGet or \
+ request == message.MsgClientPut or \
+ request == message.MsgClientPutDiskDir or \
+ request == message.MsgClientPutComplexDir:
self.sendMessage(
message.MsgRemoveRequest(
Global=False,
- Identifier=requestIdentifier,
+ Identifier=request['Identifier'],
)
)
else:
- del self._requests[requestIdentifier]
+ del self._requests[request['Identifier']]
########################################################
##
@@ -2123,7 +2136,7 @@
"""Requests information about a plugin
@param pluginName: (str) name of the plugin to request info for
@param detailed: (bool) If True, detailed information is returned
- @return: (str) request identifier
+ @return: request
"""
msg = message.MsgGetPluginInfo(
PluginName=pluginName,
@@ -2131,7 +2144,7 @@
)
self.registerRequest(msg)
self.sendMessage(msg)
- return msg['Identifier']
+ return msg
def sendPluginMessage(self, pluginName, identifier, params, data=None):
@@ -2170,7 +2183,7 @@
"""Generates a public / private keypair
@param keyPairType: type of keypair to generate (either L{consts.ConstKeyType.SSK} or L{consts.ConstKeyType.SSK})
- @return: identifier of the request
+ @return: request
@event: L{events.Events.KeypairGenerated} triggered as soon as the request is complete
"""
@@ -2179,6 +2192,6 @@
msg = message.MsgGenerateSSK(KeyPairType=keyPairType)
self.registerRequest(msg)
self.sendMessage(msg)
- return msg['Identifier']
+ return msg
Modified: trunk/fclient/src/fclient/impl/lib/fcp2/test/test_client.py
===================================================================
--- trunk/fclient/src/fclient/impl/lib/fcp2/test/test_client.py 2008-07-31 16:40:52 UTC (rev 831)
+++ trunk/fclient/src/fclient/impl/lib/fcp2/test/test_client.py 2008-07-31 16:41:55 UTC (rev 832)
@@ -879,16 +879,15 @@
def test_100_request_registered(self):
self.connectClient()
myKey = fcp2.Key('KSK@foo')
- myIdentifier = self.client.getData(myKey)
+ myRequest = self.client.getData(myKey)
requestsAll = self.client.getRequests()
- self.failUnless(myIdentifier in requestsAll)
- myRequest = self.client.getRequest(myIdentifier)
-
+ self.failUnless(myRequest['Identifier'] in requestsAll)
+
def test_300_message_send(self):
self.connectClient()
myKey = fcp2.Key('KSK@foo')
- myIdentifier = self.client.getData(myKey)
+ myRequest = self.client.getData(myKey)
requestsAll = self.client.getRequests()
self.assertHasNextMessage(
@@ -905,13 +904,13 @@
self.connectClient()
myKey = fcp2.Key('KSK@foo')
- myIdentifier = self.client.getData(myKey)
+ myRequest = self.client.getData(myKey)
requestsAll = self.client.getRequests()
self.assertHasNextMessage(fcp2.MsgClientGet)
self.sendResponseMessage(
'SimpleProgress',
- Identifier=myIdentifier,
+ Identifier=myRequest['Identifier'],
Total=0,
Required=0,
Failed=0,
@@ -933,13 +932,13 @@
self.connectClient()
myKey = fcp2.Key('KSK@foo')
- myIdentifier = self.client.getData(myKey)
+ myRequest = self.client.getData(myKey)
requestsAll = self.client.getRequests()
self.assertHasNextMessage(fcp2.MsgClientGet)
data = 'foo'
params = {
- 'Identifier': myIdentifier,
+ 'Identifier': myRequest,
'Global': 'false',
'DataLength': len(data),
'Metadata.ContentType': 'any',
@@ -953,7 +952,7 @@
self.sendResponseMessage(
'AllData',
data=data,
- Identifier=myIdentifier,
+ Identifier=myRequest['Identifier'],
Global='false',
DataLength=len(data),
)
@@ -970,7 +969,7 @@
)
# non persistent requests are removed emidiately
- self.failIf(myIdentifier in requestsAll)
+ self.failIf(myRequest in requestsAll)
self.assertHasNextEvent(None)
self.assertHasNextMessage(None)
@@ -980,14 +979,14 @@
def test_600_completed_with_error(self):
self.connectClient()
myKey = fcp2.Key('KSK@foo')
- myIdentifier = self.client.getData(myKey)
+ myRequest = self.client.getData(myKey)
requestsAll = self.client.getRequests()
self.assertHasNextMessage(fcp2.MsgClientGet)
self.sendResponseMessage(
fcp2.MsgGetFailed.name,
Code='28', # All data not found
- Identifier=myIdentifier,
+ Identifier=myRequest['Identifier'],
Global='false',
# blah.. more here
)
@@ -1001,7 +1000,7 @@
)
# non persistent requests are removed emidiately
- self.failIf(myIdentifier in requestsAll)
+ self.failIf(myRequest in requestsAll)
self.assertHasNextEvent(None)
self.assertHasNextMessage(None)
@@ -1012,14 +1011,14 @@
self.connectClient()
myKey = fcp2.Key('KSK@foo')
- myIdentifier = self.client.getData(myKey, persistence=fcp2.ConstPersistence.Forever)
+ myRequest = self.client.getData(myKey, persistence=fcp2.ConstPersistence.Forever)
requestsAll = self.client.getRequests()
self.assertHasNextMessage(fcp2.MsgClientGet)
data = 'foo'
params = {
- 'Identifier': myIdentifier,
+ 'Identifier': myRequest['Identifier'],
'Global': 'false',
'DataLength': len(data),
'Metadata.ContentType': 'any',
@@ -1040,7 +1039,7 @@
def test_800_peristent_request_not_removed_on_success(self):
self.connectClient()
myKey = fcp2.Key('KSK@foo')
- myIdentifier = self.client.getData(myKey, persistence=fcp2.ConstPersistence.Forever)
+ myRequest = self.client.getData(myKey, persistence=fcp2.ConstPersistence.Forever)
requestsAll = self.client.getRequests()
self.assertHasNextMessage(fcp2.MsgClientGet)
@@ -1048,7 +1047,7 @@
self.sendResponseMessage(
'AllData',
data=data,
- Identifier=myIdentifier,
+ Identifier=myRequest['Identifier'],
Global='false',
DataLength=len(data),
)
@@ -1056,7 +1055,7 @@
self.assertHasNextEvent(self.client.events.RequestCompleted)
# persistent requests are not removed emidiately
- self.failUnless(myIdentifier in requestsAll)
+ self.failUnless(myRequest['Identifier'] in requestsAll)
self.assertHasNextEvent(None)
self.assertHasNextMessage(None)
@@ -1066,14 +1065,14 @@
def test_900_peristent_request_not_removed_on_error(self):
self.connectClient()
myKey = fcp2.Key('KSK@foo')
- myIdentifier = self.client.getData(myKey, persistence=fcp2.ConstPersistence.Forever)
+ myRequest = self.client.getData(myKey, persistence=fcp2.ConstPersistence.Forever)
requestsAll = self.client.getRequests()
self.assertHasNextMessage(fcp2.MsgClientGet)
self.sendResponseMessage(
'GetFailed',
Code='28', # All data not found
- Identifier=myIdentifier,
+ Identifier=myRequest['Identifier'],
Global='false',
# blah.. more here
)
@@ -1081,7 +1080,7 @@
self.assertHasNextEvent(self.client.events.RequestFailed)
# persistent requests are not removed emidiately
- self.failUnless(myIdentifier in requestsAll)
+ self.failUnless(myRequest['Identifier'] in requestsAll)
self.assertHasNextEvent(None)
self.assertHasNextMessage(None)
@@ -1091,38 +1090,36 @@
def test_910_restore_peristent_request_failure(self):
self.connectClient()
requestsAll = self.client.getRequests()
- myIdentifier = '123456789'
+ myRequest = '123456789'
self.sendResponseMessage(
'PersistentGet',
- Identifier=myIdentifier,
+ Identifier=myRequest,
ClientToken='i-am-invalid',
Global='false',
callNext=False
)
self.assertRaises(fcp2.ErrorMessageParse, self.client.next)
- self.failIf(myIdentifier in requestsAll)
+ self.failIf(myRequest in requestsAll)
def test_920_restore_peristent_request_success(self):
self.connectClient()
requestsAll = self.client.getRequests()
myKey = fcp2.Key('KSK@foo')
- myIdentifier = self.client.getData(myKey, persistence=fcp2.ConstPersistence.Forever)
- self.failUnless(myIdentifier in requestsAll)
- myRequest = self.client.getRequest(myIdentifier)
- del requestsAll[myIdentifier]
+ myRequest = self.client.getData(myKey, persistence=fcp2.ConstPersistence.Forever)
+ self.failUnless(myRequest['Identifier'] in requestsAll)
+ del requestsAll[myRequest['Identifier']]
self.sendResponseMessage(
'PersistentGet',
**myRequest.params
)
- self.failUnless(myIdentifier in requestsAll)
- myRequest = self.client.getRequest(myIdentifier)
+ self.failUnless(myRequest['Identifier'] in requestsAll)
msg = self.assertHasNextEvent(
self.client.events.RequestStarted,
fcp2.MsgClientGet,
- ('Identifier', myIdentifier),
+ ('Identifier', myRequest['Identifier']),
('RequestStatus', fcp2.ConstRequestStatus.Restored), # no RequestStatus.Pending flag should be set here
)
@@ -1136,34 +1133,32 @@
def test_100_request_registered(self):
self.connectClient()
myKey = fcp2.Key('KSK@foo')
- myIdentifier = self.client.getFile(myKey, 'foo.txt')
+ myRequest = self.client.getFile(myKey, 'foo.txt')
requestsAll = self.client.getRequests()
- self.failUnless(myIdentifier in requestsAll)
- myRequest = self.client.getRequest(myIdentifier)
-
+ self.failUnless(myRequest['Identifier'] in requestsAll)
+
def test_200_key_object_is_accepted(self):
self.connectClient()
myKey = fcp2.Key('KSK@foo')
- myIdentifier = self.client.getFile(myKey, 'foo.txt')
+ myRequest = self.client.getFile(myKey, 'foo.txt')
requestsAll = self.client.getRequests()
def test_300_dda_denied(self):
self.connectClient()
myKey = fcp2.Key('KSK@foo')
- myIdentifier = self.client.getFile(
+ myRequest = self.client.getFile(
myKey,
os.path.join(DIR, 'DDATest.txt')
)
- myRequest = self.client.getRequest(myIdentifier)
requestsAll = self.client.getRequests()
self.assertHasNextMessage(fcp2.MsgClientGet)
self.sendResponseMessage(
'ProtocolError',
Code=25, # DDADenied
- Identifier=myIdentifier,
+ Identifier=myRequest['Identifier'],
ExtraDescription='An error occured',
Fatal='false',
Global='false',
@@ -1220,7 +1215,7 @@
**msg.params
)
- self.failUnless(myIdentifier in requestsAll)
+ self.failUnless(myRequest ['Identifier']in requestsAll)
self.assertHasNextEvent(self.client.events.RequestStarted)
self.assertHasNextMessage(None)
@@ -1236,32 +1231,30 @@
def test_100_request_registered(self):
self.connectClient()
myKey = fcp2.Key('KSK@foo')
- myIdentifier = self.client.getKeyInfo(myKey)
+ myRequest = self.client.getKeyInfo(myKey)
requestsAll = self.client.getRequests()
- self.failUnless(myIdentifier in requestsAll)
- myRequest = self.client.getRequest(myIdentifier)
-
+ self.failUnless(myRequest['Identifier'] in requestsAll)
+
def test_200_key_object_is_accepted(self):
self.connectClient()
myKey = fcp2.Key('KSK@foo')
- myIdentifier = self.client.getKeyInfo(myKey)
+ myRequest = self.client.getKeyInfo(myKey)
requestsAll = self.client.getRequests()
def test_300_getKeyInfo_Success(self):
self.connectClient()
myKey = fcp2.Key('KSK@foo')
- myIdentifier = self.client.getKeyInfo(myKey)
- myRequest = self.client.getRequest(myIdentifier)
+ myRequest = self.client.getKeyInfo(myKey)
requestsAll = self.client.getRequests()
self.assertHasNextMessage(fcp2.MsgClientGet)
data = 'foo'
params = {
- 'Identifier': myIdentifier,
+ 'Identifier': myRequest['Identifier'],
'Global': 'false',
'DataLength': 123456,
'Metadata.ContentType': 'any',
@@ -1278,7 +1271,7 @@
fcp2.ConstRequestStatus.Completed
),
)
- self.failIf(myIdentifier in requestsAll)
+ self.failIf(myRequest in requestsAll)
self.assertHasNextEvent(None)
self.assertHasNextMessage(None)
self.failUnless(self.ioOpen())
@@ -1290,15 +1283,14 @@
# test specdial case where ProtocolError.TooBig is handled as success
# request a arbitrary uri
myKey = fcp2.Key('KSK@foo')
- myIdentifier = self.client.getKeyInfo(myKey)
- myRequest = self.client.getRequest(myIdentifier)
+ myRequest = self.client.getKeyInfo(myKey)
requestsAll = self.client.getRequests()
self.assertHasNextMessage(fcp2.MsgClientGet)
self.sendResponseMessage(
'GetFailed',
Code='21', # Too big
- Identifier=myIdentifier,
+ Identifier=myRequest['Identifier'],
Global='false',
# blah.. more here
)
@@ -1310,7 +1302,7 @@
fcp2.ConstRequestStatus.Completed
),
)
- self.failIf(myIdentifier in requestsAll)
+ self.failIf(myRequest in requestsAll)
self.assertHasNextEvent(None)
self.assertHasNextMessage(None)
self.failUnless(self.ioOpen())
@@ -1321,15 +1313,14 @@
# request a arbitrary file
myKey = fcp2.Key('KSK@foo')
- myIdentifier = self.client.getKeyInfo(myKey)
- myRequest = self.client.getRequest(myIdentifier)
+ myRequest = self.client.getKeyInfo(myKey)
requestsAll = self.client.getRequests()
self.assertHasNextMessage(fcp2.MsgClientGet)
self.sendResponseMessage(
'GetFailed',
Code='28', # All data not found
- Identifier=myIdentifier,
+ Identifier=myRequest['Identifier'],
Global='false',
# blah.. more here
)
@@ -1341,7 +1332,7 @@
fcp2.ConstRequestStatus.Completed
),
)
- self.failIf(myIdentifier in requestsAll)
+ self.failIf(myRequest in requestsAll)
self.assertHasNextEvent(None)
self.assertHasNextMessage(None)
self.failUnless(self.ioOpen())
@@ -1488,19 +1479,17 @@
self.connectClient()
myKey = fcp2.KeyKSK('foo')
- myIdentifier = self.client.putData(
+ myRequest = self.client.putData(
myKey,
'any data here'
)
- myRequest = self.client.getRequest(myIdentifier)
requestsAll = self.client.getRequests()
-
self.assertHasNextMessage(fcp2.MsgClientPut)
- self.failUnless(myIdentifier in requestsAll)
+ self.failUnless(myRequest['Identifier'] in requestsAll)
self.sendResponseMessage(
'PutSuccessful',
- Identifier=myIdentifier,
+ Identifier=myRequest['Identifier'],
URI=myKey
)
@@ -1522,20 +1511,18 @@
self.connectClient()
myKey = fcp2.KeyKSK('foo')
- myIdentifier = self.client.putData(
+ myRequest = self.client.putData(
myKey,
'any data here'
)
- myRequest = self.client.getRequest(myIdentifier)
requestsAll = self.client.getRequests()
-
self.assertHasNextMessage(fcp2.MsgClientPut)
- self.failUnless(myIdentifier in requestsAll)
+ self.failUnless(myRequest['Identifier'] in requestsAll)
self.sendResponseMessage(
'PutFailed',
- Identifier=myIdentifier,
+ Identifier=myRequest['Identifier'],
Code='5', # rout not found
)
@@ -1561,19 +1548,17 @@
self.connectClient()
myKey = fcp2.KeyKSK('foo')
- myIdentifier = self.client.putDir(
+ myRequest = self.client.putDir(
myKey,
'myDirectory'
)
- myRequest = self.client.getRequest(myIdentifier)
requestsAll = self.client.getRequests()
-
self.assertHasNextMessage(fcp2.MsgClientPutDiskDir)
- self.failUnless(myIdentifier in requestsAll)
+ self.failUnless(myRequest['Identifier'] in requestsAll)
self.sendResponseMessage(
'PutSuccessful',
- Identifier=myIdentifier,
+ Identifier=myRequest['Identifier'],
URI=myKey
)
@@ -1595,19 +1580,18 @@
self.connectClient()
myKey = fcp2.KeyKSK('foo')
- myIdentifier = self.client.putDir(
+ myRequest = self.client.putDir(
myKey,
'myDirectory'
)
- myRequest = self.client.getRequest(myIdentifier)
requestsAll = self.client.getRequests()
self.assertHasNextMessage(fcp2.MsgClientPutDiskDir)
- self.failUnless(myIdentifier in requestsAll)
+ self.failUnless(myRequest['Identifier'] in requestsAll)
self.sendResponseMessage(
'PutFailed',
- Identifier=myIdentifier,
+ Identifier=myRequest['Identifier'],
Code='5', # rout not found
)
@@ -1633,19 +1617,17 @@
self.connectClient()
myKey = fcp2.KeyKSK('foo')
- myIdentifier = self.client.putFile(
+ myRequest = self.client.putFile(
myKey,
'myFile.txt'
)
- myRequest = self.client.getRequest(myIdentifier)
requestsAll = self.client.getRequests()
-
self.assertHasNextMessage(fcp2.MsgClientPut)
- self.failUnless(myIdentifier in requestsAll)
+ self.failUnless(myRequest['Identifier'] in requestsAll)
self.sendResponseMessage(
'PutSuccessful',
- Identifier=myIdentifier,
+ Identifier=myRequest['Identifier'],
URI=myKey
)
@@ -1667,19 +1649,17 @@
self.connectClient()
myKey = fcp2.KeyKSK('foo')
- myIdentifier = self.client.putFile(
+ myRequest = self.client.putFile(
myKey,
'myFile.txt'
)
- myRequest = self.client.getRequest(myIdentifier)
requestsAll = self.client.getRequests()
-
self.assertHasNextMessage(fcp2.MsgClientPut)
- self.failUnless(myIdentifier in requestsAll)
+ self.failUnless(myRequest['Identifier'] in requestsAll)
self.sendResponseMessage(
'PutFailed',
- Identifier=myIdentifier,
+ Identifier=myRequest['Identifier'],
Code='5', # rout not found
)
@@ -1728,11 +1708,10 @@
# request a arbitrary file
myKey = fcp2.KeyKSK('foo')
- myIdentifier = self.client.putMultiple(
+ myRequest = self.client.putMultiple(
myKey,
items
)
- myRequest = self.client.getRequest(myIdentifier)
requestsAll = self.client.getRequests()
msg = self.assertHasNextMessage(
@@ -1759,11 +1738,11 @@
#for k, v in sorted(msg.params.items()):
# print k, v
- self.failUnless(myIdentifier in requestsAll)
+ self.failUnless(myRequest['Identifier'] in requestsAll)
self.sendResponseMessage(
'PutSuccessful',
- Identifier=myIdentifier,
+ Identifier=myRequest['Identifier'],
URI=myKey
)
@@ -1821,19 +1800,18 @@
# request a arbitrary file
myRedirect = fcp2.KeyKSK('foo')
myKey = fcp2.Key('CHK@' + DummyKeyData)
- myIdentifier = self.client.putRedirect(
+ myRequest = self.client.putRedirect(
myRedirect,
myKey,
)
- myRequest = self.client.getRequest(myIdentifier)
requestsAll = self.client.getRequests()
self.assertHasNextMessage(fcp2.MsgClientPut)
- self.failUnless(myIdentifier in requestsAll)
+ self.failUnless(myRequest['Identifier'] in requestsAll)
self.sendResponseMessage(
'PutSuccessful',
- Identifier=myIdentifier,
+ Identifier=myRequest['Identifier'],
URI=myRedirect
)
@@ -1857,19 +1835,18 @@
# request a arbitr...
[truncated message content] |