fclient-commit Mailing List for fclient (Page 20)
Status: Pre-Alpha
Brought to you by:
jurner
You can subscribe to this list here.
| 2007 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
(23) |
Nov
(54) |
Dec
|
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 2008 |
Jan
(17) |
Feb
(209) |
Mar
(63) |
Apr
(31) |
May
(7) |
Jun
(39) |
Jul
(390) |
Aug
(122) |
Sep
(6) |
Oct
|
Nov
|
Dec
|
|
From: <jU...@us...> - 2008-07-04 08:25:48
|
Revision: 487
http://fclient.svn.sourceforge.net/fclient/?rev=487&view=rev
Author: jUrner
Date: 2008-07-04 01:25:43 -0700 (Fri, 04 Jul 2008)
Log Message:
-----------
combed over keys. many a changes..
Modified Paths:
--------------
trunk/fcp2/src/fcp2/key.py
Modified: trunk/fcp2/src/fcp2/key.py
===================================================================
--- trunk/fcp2/src/fcp2/key.py 2008-07-02 10:00:16 UTC (rev 486)
+++ trunk/fcp2/src/fcp2/key.py 2008-07-04 08:25:43 UTC (rev 487)
@@ -24,6 +24,9 @@
_ReMatchExact = '\A%s\Z'
KeyTypesAll = {}
+# save url chars as defined in [freenet/src/support/URLEncoder.java]
+SafeURLChars = '*-_./0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ_abcdefghijklmnopqrstuvwxyz'
+
#**************************************************************************************
# freenet base64 for keys
#**************************************************************************************
@@ -39,9 +42,7 @@
altchars = '-~'
# padding may be ommitted or not
- padding = 4 - len(string) % 4
- if padding:
- string += '=' * padding
+ string += '=' * (len(string) % 4)
return base64.b64decode(string, altchars)
@@ -56,7 +57,13 @@
return result
#**************************************************************************************
-#
+# freenet keys
+#
+# KeyType@base64(routingbKey), base64(cryptoKey), base64(extra)
+#
+# Freenet seems to use base64 without padding along with the following altchars for urlsave
+# encode: - for + and ~ for / see: [freenet/support/base64.java]
+#
#**************************************************************************************
#TODO: too bad, can not move this to types.py ...cross import
class TypeKey(object):
@@ -69,12 +76,12 @@
>>> key.toString()
'CHK@aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa,aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa,AAAAAAA/foo/'
- >>> key = TypeKey.fcpToPython('SSK@aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa,aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa,AAAAAAA/foo')
+ >>> key = TypeKey.fcpToPython('SSK@aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa,aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa,AAAAAAA/foo-1')
>>> key.toString()
- 'SSK@aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa,aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa,AAAAAAA/foo/'
- >>> key = TypeKey.fcpToPython('SSK@aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa,aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa,AAAAAAA/foo/')
+ 'SSK@aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa,aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa,AAAAAAA/foo-1/'
+ >>> key = TypeKey.fcpToPython('SSK@aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa,aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa,AAAAAAA/foo-1/')
>>> key.toString()
- 'SSK@aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa,aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa,AAAAAAA/foo/'
+ 'SSK@aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa,aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa,AAAAAAA/foo-1/'
>>> key = TypeKey.fcpToPython('USK@aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa,aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa,AAAAAAA/foo/0')
>>> key.toString()
@@ -115,19 +122,7 @@
return key.toString()
#****************************************************************************************
-# freenet keys
#
-# KeyType@32 bytes hash, 32 bytes encryption key, 5 bytes extra
-#
-# all byte components are base64 encoded. Freenet uses base64 without padding
-# along with the following altchars for urlsave encode: - for + and ~ for /
-# see: freenet/support/base64.java
-#
-# so a key as the user gets it to see is:
-# KeyType@43 bytes, 43 bytes, 7 bytes ..of [A-Za-z0-9\-~]
-#
-# see: [freenet/src/support/base64.java]
-#
#***************************************************************************************
class _KeyMeta(type):
"""Metaclass for freenet keys"""
@@ -181,31 +176,31 @@
_key_pattern_ = '''
(?P<keyType>CHK@)
(?P<keyData>
- (?P<hash>[a-z0-9\-~]{43}),
- (?P<cryptoKey>[a-z0-9\-~]{43}),
- (?P<extra>[a-z0-9\-~]{7})
+ (?P<routingKey>[a-z0-9\-~]+?),
+ (?P<cryptoKey>[a-z0-9\-~]+?),
+ (?P<extra>[a-z0-9\-~]+?)
)
- (?: / (?P<filename>[^/]+?)? (?: /)?)?
+ (?: / (?P<docName>[^/]+?)? (?: /)?)?
'''
KeyType = consts.ConstKeyType.CHK
KeyPattern = re.compile(_key_pattern_, re.I | re.X)
ExactKeyPattern = re.compile(_ReMatchExact % _key_pattern_, re.I | re.X)
- def __init__(self, keyData=None, filename=None):
+ def __init__(self, keyData=None, docName=None):
"""Creates a CHK key
@param keyData: (str) key data or None
- @param filename: (str) filename to add to the key or None
+ @param docName: (str) docName to add to the key or None
"""
self.keyData = keyData
- self.filename = filename
+ self.docName = docName
def toString(self):
out = self.KeyType
if self.keyData is not None:
out += self.keyData + '/'
- if self.filename is not None:
- out += self.filename + '/'
+ if self.docName is not None:
+ out += self.docName + '/'
return out
@classmethod
@@ -213,7 +208,7 @@
result = clss.ExactKeyPattern.match(stripKey(string))
if result is not None:
d = result.groupdict()
- key = clss(d['keyData'], filename=d['filename'])
+ key = clss(d['keyData'], docName=d['docName'])
return key
@@ -221,29 +216,34 @@
_key_pattern_ = '''
(?P<keyType>SSK@)
(?P<keyData>
- (?P<hash>[a-z0-9\-~]{43}),
- (?P<cryptoKey>[a-z0-9\-~]{43}),
- (?P<extra>[a-z0-9\-~]{7})
+ (?P<routingKey>[a-z0-9\-~]+?),
+ (?P<cryptoKey>[a-z0-9\-~]+?),
+ (?P<extra>[a-z0-9\-~]+?)
)
(
- (?: / (?P<filename>[^/]+?))
- (?: /)?
+ (?: / (?P<docName>[^/]+?))
+ -
+ (?: (?P<edition>[\d]+))
)?
+ (?: /)?
'''
KeyType = consts.ConstKeyType.SSK
KeyPattern = re.compile(_key_pattern_, re.I | re.X)
ExactKeyPattern = re.compile(_ReMatchExact % _key_pattern_, re.I | re.X)
- def __init__(self, keyData, filename=None):
- self.filename = filename
+ def __init__(self, keyData, docName=None, edition=0):
+ self.docName = docName
+ self.edition = edition
self.keyData = keyData
def toString(self):
out = self.KeyType
if self.keyData is not None:
out += self.keyData + '/'
- if self.filename is not None:
- out += self.filename + '/'
+ if self.docName is not None:
+ if self.edition is None:
+ raise ValueError('no edition number specified')
+ out += self.docName + '-' + str(self.edition) + '/'
return out
@classmethod
@@ -251,14 +251,17 @@
result = clss.ExactKeyPattern.match(stripKey(string))
if result is not None:
d = result.groupdict()
- return clss(d['keyData'], d['filename'])
+ edition = d['edition']
+ if edition is not None:
+ edition = int(edition)
+ return clss(d['keyData'], d['docName'], edition=edition)
class KeyKSK(_KeyBase):
_key_pattern_ = '''
(?P<keyType>KSK@)
- (?P<filename>[^/]+?)
+ (?P<docName>[^/]+?)
(?: /)?
'''
KeyType = consts.ConstKeyType.KSK
@@ -266,13 +269,13 @@
ExactKeyPattern = re.compile(_ReMatchExact % _key_pattern_, re.I | re.X)
- def __init__(self, filename):
- self.filename = filename
+ def __init__(self, docName):
+ self.docName = docName
def toString(self):
out = self.KeyType
- if self.filename is not None:
- out += self.filename + '/'
+ if self.docName is not None:
+ out += self.docName + '/'
return out
@classmethod
@@ -280,20 +283,22 @@
result = clss.ExactKeyPattern.match(stripKey(string))
if result is not None:
d = result.groupdict()
- return clss(filename=d['filename'])
+ return clss(docName=d['docName'])
-
+#TODO: is docName obligatory?
class KeyUSK(_KeyBase):
_key_pattern_ = '''
(?P<keyType>USK@)
(?P<keyData>
- (?P<hash>[a-z0-9\-~]{43}),
- (?P<cryptoKey>[a-z0-9\-~]{43}),
- (?P<extra>[a-z0-9\-~]{7})
+ (?P<routingKey>[a-z0-9\-~]+?),
+ (?P<cryptoKey>[a-z0-9\-~]+?),
+ (?P<extra>[a-z0-9\-~]+?)
)
- (?: / (?P<filename>[^/]+?) )
- (?: / (?P<edition>[\d]+))
+ (
+ (?: / (?P<docName>[^/]+?) )
+ (?: / (?P<edition>-?[\d]+))
+ )?
(?: /)?
'''
@@ -301,23 +306,23 @@
KeyPattern = re.compile(_key_pattern_, re.I | re.X)
ExactKeyPattern = re.compile(_ReMatchExact % _key_pattern_, re.I | re.X)
- def __init__(self, keyData, filename=None, edition=0):
+ def __init__(self, keyData, docName=None, edition=0):
"""Creates a USK key
@param keyData: (str) public key
- @param filename: (str) filename
+ @param docName: (str) docName
@param edition: (int) edition number
"""
self.edition = edition
- self.filename = filename
+ self.docName = docName
self.keyData = keyData
def toString(self):
out = self.KeyType
if self.keyData is not None:
out += self.keyData + '/'
- if self.filename is not None:
- out += self.filename + '/'
+ if self.docName is not None:
+ out += self.docName + '/'
if self.edition is not None:
out += str(self.edition) + '/'
return out
@@ -327,7 +332,10 @@
result = clss.ExactKeyPattern.match(stripKey(string))
if result is not None:
d = result.groupdict()
- return clss(d['keyData'], d['filename'], edition=d['edition'])
+ edition = d['edition']
+ if edition is not None:
+ edition = int(edition)
+ return clss(d['keyData'], d['docName'], edition=edition)
__all__ = [i for i in dir() if i[0].isupper() and not i.startswith('_')]
@@ -336,4 +344,4 @@
#*****************************************************************************
if __name__ == '__main__':
import doctest
- print 'doctests failed: %s/%s' % doctest.testmod()
+ #print 'doctests failed: %s/%s' % doctest.testmod()
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <jU...@us...> - 2008-07-02 10:00:08
|
Revision: 486
http://fclient.svn.sourceforge.net/fclient/?rev=486&view=rev
Author: jUrner
Date: 2008-07-02 03:00:16 -0700 (Wed, 02 Jul 2008)
Log Message:
-----------
fixed doctests
Modified Paths:
--------------
trunk/fcp2/src/fcp2/key.py
Modified: trunk/fcp2/src/fcp2/key.py
===================================================================
--- trunk/fcp2/src/fcp2/key.py 2008-07-02 09:59:48 UTC (rev 485)
+++ trunk/fcp2/src/fcp2/key.py 2008-07-02 10:00:16 UTC (rev 486)
@@ -62,31 +62,31 @@
class TypeKey(object):
"""key type for type conversions
- >>> key = FcpTypeKey.fcpToPython('CHK@aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa,aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa,AAAAAAA/foo')
+ >>> key = TypeKey.fcpToPython('CHK@aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa,aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa,AAAAAAA/foo')
>>> key.toString()
'CHK@aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa,aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa,AAAAAAA/foo/'
- >>> key = FcpTypeKey.fcpToPython('CHK@aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa,aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa,AAAAAAA/foo/')
+ >>> key = TypeKey.fcpToPython('CHK@aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa,aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa,AAAAAAA/foo/')
>>> key.toString()
'CHK@aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa,aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa,AAAAAAA/foo/'
- >>> key = FcpTypeKey.fcpToPython('SSK@aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa,aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa,AAAAAAA/foo')
+ >>> key = TypeKey.fcpToPython('SSK@aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa,aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa,AAAAAAA/foo')
>>> key.toString()
'SSK@aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa,aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa,AAAAAAA/foo/'
- >>> key = FcpTypeKey.fcpToPython('SSK@aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa,aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa,AAAAAAA/foo/')
+ >>> key = TypeKey.fcpToPython('SSK@aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa,aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa,AAAAAAA/foo/')
>>> key.toString()
'SSK@aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa,aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa,AAAAAAA/foo/'
- >>> key = FcpTypeKey.fcpToPython('USK@aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa,aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa,AAAAAAA/foo/0')
+ >>> key = TypeKey.fcpToPython('USK@aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa,aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa,AAAAAAA/foo/0')
>>> key.toString()
'USK@aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa,aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa,AAAAAAA/foo/0/'
- >>> key = FcpTypeKey.fcpToPython('USK@aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa,aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa,AAAAAAA/foo/0/')
+ >>> key = TypeKey.fcpToPython('USK@aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa,aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa,AAAAAAA/foo/0/')
>>> key.toString()
'USK@aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa,aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa,AAAAAAA/foo/0/'
- >>> key = FcpTypeKey.fcpToPython('KSK@abcde')
+ >>> key = TypeKey.fcpToPython('KSK@abcde')
>>> key.toString()
'KSK@abcde/'
- >>> key = FcpTypeKey.fcpToPython('KSK@abcde/')
+ >>> key = TypeKey.fcpToPython('KSK@abcde/')
>>> key.toString()
'KSK@abcde/'
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <jU...@us...> - 2008-07-02 09:59:39
|
Revision: 485
http://fclient.svn.sourceforge.net/fclient/?rev=485&view=rev
Author: jUrner
Date: 2008-07-02 02:59:48 -0700 (Wed, 02 Jul 2008)
Log Message:
-----------
beautify
Modified Paths:
--------------
trunk/fcp2/src/fcp2/key.py
Modified: trunk/fcp2/src/fcp2/key.py
===================================================================
--- trunk/fcp2/src/fcp2/key.py 2008-07-02 07:05:37 UTC (rev 484)
+++ trunk/fcp2/src/fcp2/key.py 2008-07-02 09:59:48 UTC (rev 485)
@@ -54,34 +54,6 @@
if result.startswith('/'):
result = result[1:]
return result
-
-#****************************************************************************************
-# freenet keys
-#
-# KeyType@32 bytes hash, 32 bytes encryption key, 5 bytes extra
-#
-# all byte components are base64 encoded. Freenet uses base64 without padding
-# along with the following altchars for urlsave encode: - for + and ~ for /
-# see: freenet/support/base64.java
-#
-# so a key as the user gets it to see is:
-# KeyType@43 bytes, 43 bytes, 7 bytes ..of [A-Za-z0-9\-~]
-#
-# see: [freenet/src/support/base64.java]
-#
-#***************************************************************************************
-class _KeyMeta(type):
- """Metaclass for freenet keys"""
-
- def __new__(klass, name, bases, kws):
- """Registers a key type to L{KeyTypesAll}
- @note: if KeyType of the the key type is None it will not get registered
- """
-
- newClass = type.__new__(klass, name, bases, kws)
- if newClass.KeyType is not None:
- KeyTypesAll[newClass.KeyType] = newClass
- return newClass
#**************************************************************************************
#
@@ -141,6 +113,34 @@
@return: (str) fcp key
"""
return key.toString()
+
+#****************************************************************************************
+# freenet keys
+#
+# KeyType@32 bytes hash, 32 bytes encryption key, 5 bytes extra
+#
+# all byte components are base64 encoded. Freenet uses base64 without padding
+# along with the following altchars for urlsave encode: - for + and ~ for /
+# see: freenet/support/base64.java
+#
+# so a key as the user gets it to see is:
+# KeyType@43 bytes, 43 bytes, 7 bytes ..of [A-Za-z0-9\-~]
+#
+# see: [freenet/src/support/base64.java]
+#
+#***************************************************************************************
+class _KeyMeta(type):
+ """Metaclass for freenet keys"""
+
+ def __new__(klass, name, bases, kws):
+ """Registers a key type to L{KeyTypesAll}
+ @note: if KeyType of the the key type is None it will not get registered
+ """
+
+ newClass = type.__new__(klass, name, bases, kws)
+ if newClass.KeyType is not None:
+ KeyTypesAll[newClass.KeyType] = newClass
+ return newClass
def Key(string):
@@ -216,7 +216,6 @@
key = clss(d['keyData'], filename=d['filename'])
return key
-
class KeySSK(_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-02 07:05:30
|
Revision: 484
http://fclient.svn.sourceforge.net/fclient/?rev=484&view=rev
Author: jUrner
Date: 2008-07-02 00:05:37 -0700 (Wed, 02 Jul 2008)
Log Message:
-----------
fixed broken docstrings
Modified Paths:
--------------
trunk/fcp2/src/fcp2/types.py
Modified: trunk/fcp2/src/fcp2/types.py
===================================================================
--- trunk/fcp2/src/fcp2/types.py 2008-07-02 07:05:32 UTC (rev 483)
+++ trunk/fcp2/src/fcp2/types.py 2008-07-02 07:05:37 UTC (rev 484)
@@ -130,7 +130,7 @@
class TypeTimeDelta(Type):
"""Time durations passed as tuple((int) number, modifier).
- For modifiers see : L{consts.TimeDeltaPostfix}. Number can be -1
+ For modifiers see : L{consts.ConstTimeDeltaPostfix}. Number can be -1
aswell, meaniong 'not set' or 'undefined'.
>>> TypeTimeDelta.fcpToPython('1000day')
@@ -172,7 +172,7 @@
class TypeByteAmount(Type):
"""Byte amounts are passed as tuple((int, float) number, modifier).
- For modifiers see : L{consts.ByteAmountPostfix}. Number of bytes can be -1
+ For modifiers see : L{consts.ConstByteAmountPostfix}. Number of bytes can be -1
aswell, meaniong 'not set' or 'undefined'.
>>> TypeByteAmount.fcpToPython('1000k')
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <jU...@us...> - 2008-07-02 07:05:23
|
Revision: 483
http://fclient.svn.sourceforge.net/fclient/?rev=483&view=rev
Author: jUrner
Date: 2008-07-02 00:05:32 -0700 (Wed, 02 Jul 2008)
Log Message:
-----------
fixed broken docstrings
Modified Paths:
--------------
trunk/fcp2/src/fcp2/test_fcp/test_client.py
Modified: trunk/fcp2/src/fcp2/test_fcp/test_client.py
===================================================================
--- trunk/fcp2/src/fcp2/test_fcp/test_client.py 2008-07-02 07:05:23 UTC (rev 482)
+++ trunk/fcp2/src/fcp2/test_fcp/test_client.py 2008-07-02 07:05:32 UTC (rev 483)
@@ -113,7 +113,7 @@
):
"""Tests if we received a certain event from the client
@param expectedEvent: the event expected or None if no event is expected
- @param messageName: expected mesageName or None if no message is expected
+ @param message: expected mesage or None if no message is expected
@param param1: tuple(paramName, value) of a message parameter expected
@param data: data expected along with the message or None
@@ -174,7 +174,7 @@
data=None
):
"""Tests if we received a certain message from the client
- @param messageName: expected mesageName or None if no message is expected
+ @param message: expected mesage or None if no message is expected
@param param1: tuple(paramName, value) of a message parameter expected
@param data: data expected along with the message or None
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <jU...@us...> - 2008-07-02 07:05:19
|
Revision: 482
http://fclient.svn.sourceforge.net/fclient/?rev=482&view=rev
Author: jUrner
Date: 2008-07-02 00:05:23 -0700 (Wed, 02 Jul 2008)
Log Message:
-----------
fixed broken docstrings
Modified Paths:
--------------
trunk/fcp2/src/fcp2/key.py
Modified: trunk/fcp2/src/fcp2/key.py
===================================================================
--- trunk/fcp2/src/fcp2/key.py 2008-07-02 07:05:11 UTC (rev 481)
+++ trunk/fcp2/src/fcp2/key.py 2008-07-02 07:05:23 UTC (rev 482)
@@ -145,7 +145,7 @@
def Key(string):
"""creates a key object from a string
- @return: L{KeyBase}
+ @return: (L{_KeyBase})
"""
return TypeKey.fcpToPython(string)
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <jU...@us...> - 2008-07-02 07:05:09
|
Revision: 481
http://fclient.svn.sourceforge.net/fclient/?rev=481&view=rev
Author: jUrner
Date: 2008-07-02 00:05:11 -0700 (Wed, 02 Jul 2008)
Log Message:
-----------
fixed broken docstrings
Modified Paths:
--------------
trunk/fcp2/src/fcp2/iohandler.py
Modified: trunk/fcp2/src/fcp2/iohandler.py
===================================================================
--- trunk/fcp2/src/fcp2/iohandler.py 2008-07-02 07:05:02 UTC (rev 480)
+++ trunk/fcp2/src/fcp2/iohandler.py 2008-07-02 07:05:11 UTC (rev 481)
@@ -48,7 +48,7 @@
@param kwargs: any additional keyword arguments passed to L{IOHandler.connect}
@return: always None
- @raise L{consts.IOConnectFailedError}: in case something goes wrong
+ @raise L{consts.ErrorIOConnectFailed}: in case something goes wrong
"""
raise consts.ErrorIOConnectFailed('Failed', consts.ConstLogger.IO.error)
@@ -56,8 +56,8 @@
"""Should read n bytes from the device
@return: always None
- @raise L{consts.IOBrokenError}: in case something goes wrong
- @raise L{consts.IOTimeoutError}: if the read operation times out
+ @raise L{consts.ErrorIOBroken}: in case something goes wrong
+ @raise L{consts.ErrorIOTimeout}: if the read operation times out
"""
raise consts.ErrorIOBroken('Broken', consts.ConstLogger.IO.error)
@@ -65,7 +65,7 @@
"""Should write bytes to the device
@return: always None
- @raise L{consts.IOBrokenError}: in case something goes wrong
+ @raise L{consts.ErrorIOBroken}: in case something goes wrong
"""
raise consts.ErrorIOBroken('Broken', consts.ConstLogger.IO.error)
@@ -73,7 +73,7 @@
"""Should close the io device
@return: always None
- @raise L{consts.IOClosedError}: if the device is already closed
+ @raise L{consts.ErrorIOClosed}: if the device is already closed
"""
raise consts.ErrorIOClosed('Closed', consts.ConstLogger.IO.error)
@@ -265,9 +265,9 @@
@return: (Message) next message from the socket
- @raise IOBrokenError: (L{consts.IOBrokenError}) if the io breaks unexpectedly
- @raise IOTimeoutError: (L{consts.IOTimeoutError}) if no message is in the io
- @raise MessageParseError: (L{consts.IMessageParseError}) if the message is invalid
+ @raise IOBrokenError: (L{consts.ErrorIOBroken}) if the io breaks unexpectedly
+ @raise IOTimeoutError: (L{consts.ErrorIOTimeout}) if no message is in the io
+ @raise MessageParseError: (L{consts.ErrorMessageParse}) if the message is invalid
@note: if something goes wrong the according exception is raised
"""
@@ -341,7 +341,7 @@
"""Sends a message to freenet
@param msg: (Message) message to send
@return: Message
- @raise L{consts.IOBrokenError}: if the connection to the io dies unexpectedly
+ @raise L{consts.ErrorIOBroken}: if the connection to the io dies unexpectedly
"""
consts.ConstLogger.IOHandler.debug(consts.ConstLogMessages.Sending + msg.pprint())
self.io.write(msg.toString())
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <jU...@us...> - 2008-07-02 07:04:56
|
Revision: 480
http://fclient.svn.sourceforge.net/fclient/?rev=480&view=rev
Author: jUrner
Date: 2008-07-02 00:05:02 -0700 (Wed, 02 Jul 2008)
Log Message:
-----------
fixed broken docstrings
Modified Paths:
--------------
trunk/fcp2/src/fcp2/events.py
Modified: trunk/fcp2/src/fcp2/events.py
===================================================================
--- trunk/fcp2/src/fcp2/events.py 2008-07-02 07:04:52 UTC (rev 479)
+++ trunk/fcp2/src/fcp2/events.py 2008-07-02 07:05:02 UTC (rev 480)
@@ -113,11 +113,11 @@
The 'FcModified' member of the request will contain
a dict indicating wich aspect of the request was modified.
- The dict is a mapping of one or more [L{consts.RequestModified}] flag to the modified value.
- Modified value will always be None, except when the aspect is [L{consts.RequestModified.Identifier}]
- or [L{consts.RequestModified.Filename}]
+ The dict is a mapping of one or more [L{consts.ConstRequestModified}] flag to the modified value.
+ Modified value will always be None, except when the aspect is [L{consts.ConstRequestModified.Identifier}]
+ or [L{consts.ConstRequestModified.Filename}]
- @note: due to internal reasons the [L{consts.RequestModified.PersistentUserData}] member will
+ @note: due to internal reasons the [L{consts.ConstRequestModified.PersistentUserData}] member will
always be present
"""
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <jU...@us...> - 2008-07-02 07:04:43
|
Revision: 479
http://fclient.svn.sourceforge.net/fclient/?rev=479&view=rev
Author: jUrner
Date: 2008-07-02 00:04:52 -0700 (Wed, 02 Jul 2008)
Log Message:
-----------
fixed broken docstrings
Modified Paths:
--------------
trunk/fcp2/src/fcp2/config.py
Modified: trunk/fcp2/src/fcp2/config.py
===================================================================
--- trunk/fcp2/src/fcp2/config.py 2008-07-02 07:04:45 UTC (rev 478)
+++ trunk/fcp2/src/fcp2/config.py 2008-07-02 07:04:52 UTC (rev 479)
@@ -23,7 +23,7 @@
ConfigItems carry a values dict where the actual values for a key are stored.
-Values can be accessed by specifying the desired value class (see L{consts.ConfigValueClass})::
+Values can be accessed by specifying the desired value class (see L{ConfigValueClass})::
value, valueType = configItem.values[consts.ConfigValueClass.Current]
@@ -41,8 +41,8 @@
Note that Fcp passes some basic information about value types. This package does
a bit more work and passes detailed information about the value type (as far as it is
-known) as one of the L{types.FcpType} subclasses. Unknown value types are passed
-as L{types.FcpType}.
+known) as one of the L{types.Type} subclasses. Unknown value types are passed
+as L{types.Type}.
"""
import os, sys
@@ -402,7 +402,7 @@
@return: (bool) True if the key has been added, False otherwise
@note: if the item does not already exist it is created
- @note: if the key is unknown its type will always be set to L{types.FcpType}
+ @note: if the key is unknown its type will always be set to L{types.Type}
"""
paramClass, components = _ConfigMessageParamTypes.splitParamClass(key)
paramType = _ConfigMessageParamTypes.get(key, None)
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <jU...@us...> - 2008-07-02 07:04:37
|
Revision: 478
http://fclient.svn.sourceforge.net/fclient/?rev=478&view=rev
Author: jUrner
Date: 2008-07-02 00:04:45 -0700 (Wed, 02 Jul 2008)
Log Message:
-----------
fixed broken docstrings
Modified Paths:
--------------
trunk/fcp2/src/fcp2/client.py
Modified: trunk/fcp2/src/fcp2/client.py
===================================================================
--- trunk/fcp2/src/fcp2/client.py 2008-07-01 18:48:31 UTC (rev 477)
+++ trunk/fcp2/src/fcp2/client.py 2008-07-02 07:04:45 UTC (rev 478)
@@ -432,7 +432,7 @@
@param duration: (int) how many seconds try to connect before giving up
@param timeout: (int) how much time to wait before another attempt to connect
- @return: (L{message.MsgMessage}) NodeHello or None if no connection could be established
+ @return: (L{message.MsgNodeHello}) or None if no connection could be established
"""
nodeHello = None
for nodeHello in self.iterConnect(host=host, port=port, duration=duration, timeout=timeout):
@@ -454,7 +454,7 @@
@param duration: (int) how many seconds try to connect before giving up
@param timeout: (int) how much time to wait before another attempt to connect
- @return: (L{message.MsgMessage}) NodeHello if successful, None otherwise for the next iteration
+ @return: (L{message.MsgNodeHello}) if successful, None otherwise for the next iteration
@event: ClientConnected(event, message) is triggered as soon as the client is connected
"""
@@ -542,7 +542,7 @@
def newIdentifier(self, identifiers=None):
"""Creates a new identifier to be used as request identifer or whatever
- @param identifiersuuids: if desired any iterable containing identifiers to enshure the identifier is unique within the iterable
+ @param identifiers: if desired any iterable containing identifiers to enshure the identifier is unique within the iterable
@return: (str) identifier
"""
@@ -1185,8 +1185,8 @@
def sendMessage(self, msg):
"""Sends a message to freenet
- @param msg: (L{message.MsgMessage}) message to send
- @return: (L{message.MsgMessage}) disconnect if something went wrong
+ @param msg: (L{message._MessageBase}) message to send
+ @return: always None
@note: If an error occurs the client is closed
@note: you can use this method to send a message to the node, bypassing all
@@ -1260,7 +1260,7 @@
**messageParams
):
"""Requests a key from the node
- @param uri: (L{key.KeyBase}) key to request
+ @param uri: (L{key._KeyBase}) key to request
@param requestType: (L{consts.ConstRequestType}) sub type of the message
@param userData: any non persistent data to associate to the request or None
@param persistentUserData: any string to associate to the request as persistent data or None
@@ -1303,7 +1303,7 @@
):
"""Requests datae from the node
- @param uri: (L{key.KeyBase}) key to request
+ @param uri: (L{key._KeyBase}) key to request
@param allowedMimeTypes: (str) list of allowed mime types
@param binaryBlob: (bool) if True, the file is retrieved as binary blob file
@@ -1370,7 +1370,7 @@
):
"""Requests a file from the node
- @param uri: (L{key.KeyBase}) key to request
+ @param uri: (L{key._KeyBase}) key to request
@param filename: (full path) filename to store the file to
@param allowedMimeTypes: (str) list of allowed mime types
@@ -1434,7 +1434,7 @@
):
"""Requests info about a key
- @param uri: (L{key.KeyBase}) key to request
+ @param uri: (L{key._KeyBase}) key to request
@param dsOnly: if True, retrieves the file from the local data store only
@param ignoreDS: If True, ignores the local data store
@@ -1479,7 +1479,7 @@
def subscribeUSK(self, uri, dontPoll=True):
"""Asks the node to notify the client when an USK is updated
- @param uri: (L{key.USK}) key to subscribe to
+ @param uri: (L{key.KeyUSK}) key to subscribe to
@param dontPoll: if True, does whatever ???
@return: (str) identifer of the request
@@ -1660,7 +1660,7 @@
):
"""Uploads data
- @param uri: (L{key.KeyBase}) key under wich to upload the data
+ @param uri: (L{key._KeyBase}) key under wich to upload the data
@param data: (bytes) data to upload
@param contentType: (str) content type. If not specified, the node will guess the content type
@@ -1726,7 +1726,7 @@
):
"""Uploads the contents of a directory
- @param uri: (L{key.KeyBase}) key under wich to upload the directory
+ @param uri: (L{key._KeyBase}) key under wich to upload the directory
@param directory: (str) directory to upload
@param allowUnreadableFiles: if True, unreadable files in the directory are ignored, if False the request fails
if it encounters an unreadavle file
@@ -1776,7 +1776,7 @@
):
"""Uploads a file
- @param uri: (L{key.KeyBase}) key under wich to upload the file
+ @param uri: (L{key._KeyBase}) key under wich to upload the file
@param filename: (str) file to upload
@note: for other params see L{putData}
@@ -1821,7 +1821,7 @@
):
"""Uploads multiple items at once to be retrievable under one key
- @param uri: (L{key.KeyBase}) key under wich to upload the file
+ @param uri: (L{key._KeyBase}) key under wich to upload the file
@param items: (list) list of items to upload
@note: for other params see L{putDir}
@@ -1872,7 +1872,7 @@
persistentUserData='',
):
"""Uploads a redirect to another key
- @param uri: (L{key.KSK}) to insert as redirect
+ @param uri: (L{key.KeyKSK}) to insert as redirect
@param targetKey: (key.KeyBase) key to redirect to
@param maxRetries: (int) maximum number of tretries or -1 to leave the decission up to the node
@param persistence: (L{consts.ConstPersistence}) of the request
@@ -1900,7 +1900,7 @@
def getRequest(self, requestIdentifier):
"""Returns a (initial) message, given its identifier
@param requestIdentifier: identifier of the message
- @return: L{message.MsgMessage}
+ @return: L{message._MessageBase}
"""
return self._requests[requestIdentifier]
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <jU...@us...> - 2008-07-01 18:48:37
|
Revision: 477
http://fclient.svn.sourceforge.net/fclient/?rev=477&view=rev
Author: jUrner
Date: 2008-07-01 11:48:31 -0700 (Tue, 01 Jul 2008)
Log Message:
-----------
superfluous import
Modified Paths:
--------------
trunk/fcp2/src/fcp2/config.py
Modified: trunk/fcp2/src/fcp2/config.py
===================================================================
--- trunk/fcp2/src/fcp2/config.py 2008-07-01 18:42:55 UTC (rev 476)
+++ trunk/fcp2/src/fcp2/config.py 2008-07-01 18:48:31 UTC (rev 477)
@@ -60,7 +60,6 @@
from fcp2 import consts
from fcp2 import types
from fcp2 import key
-from fcp2.fcp_lib import uuid
del hack, _RelImportHack
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <jU...@us...> - 2008-07-01 18:44:13
|
Revision: 476
http://fclient.svn.sourceforge.net/fclient/?rev=476&view=rev
Author: jUrner
Date: 2008-07-01 11:42:55 -0700 (Tue, 01 Jul 2008)
Log Message:
-----------
superfluous import
Modified Paths:
--------------
trunk/fcp2/src/fcp2/test_fcp/test_client.py
Modified: trunk/fcp2/src/fcp2/test_fcp/test_client.py
===================================================================
--- trunk/fcp2/src/fcp2/test_fcp/test_client.py 2008-07-01 18:41:38 UTC (rev 475)
+++ trunk/fcp2/src/fcp2/test_fcp/test_client.py 2008-07-01 18:42:55 UTC (rev 476)
@@ -38,7 +38,7 @@
"""Base class for all tests"""
client = fcp2.Client(
- #debugVerbosity=Client.fcp2.DebugVerbosity.Debug
+ #debugVerbosity=fcp2.ConstDebugVerbosity.Debug,
debugVerbosity=fcp2.ConstDebugVerbosity.Quiet
)
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <jU...@us...> - 2008-07-01 18:42:21
|
Revision: 475
http://fclient.svn.sourceforge.net/fclient/?rev=475&view=rev
Author: jUrner
Date: 2008-07-01 11:41:38 -0700 (Tue, 01 Jul 2008)
Log Message:
-----------
superfluous import
Modified Paths:
--------------
trunk/fcp2/src/fcp2/message.py
Modified: trunk/fcp2/src/fcp2/message.py
===================================================================
--- trunk/fcp2/src/fcp2/message.py 2008-07-01 18:39:17 UTC (rev 474)
+++ trunk/fcp2/src/fcp2/message.py 2008-07-01 18:41:38 UTC (rev 475)
@@ -19,7 +19,6 @@
from fcp2 import types
from fcp2 import key
from fcp2.fcp_lib import node
-from fcp2.fcp_lib import uuid
del hack, _RelImportHack
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <jU...@us...> - 2008-07-01 18:41:11
|
Revision: 474
http://fclient.svn.sourceforge.net/fclient/?rev=474&view=rev
Author: jUrner
Date: 2008-07-01 11:39:17 -0700 (Tue, 01 Jul 2008)
Log Message:
-----------
_newUuid() is now newidentifier()
++ this and that
Modified Paths:
--------------
trunk/fcp2/src/fcp2/client.py
Modified: trunk/fcp2/src/fcp2/client.py
===================================================================
--- trunk/fcp2/src/fcp2/client.py 2008-07-01 18:36:31 UTC (rev 473)
+++ trunk/fcp2/src/fcp2/client.py 2008-07-01 18:39:17 UTC (rev 474)
@@ -202,6 +202,7 @@
import logging
import subprocess
import time
+import uuid
#--> rel import hack
@@ -220,12 +221,11 @@
from fcp2 import iohandler
from fcp2 import types
from fcp2 import key
+import random
from fcp2.fcp_lib import namespace
from fcp2.fcp_lib import tools
-from fcp2.fcp_lib import uuid
-
del hack, _RelImportHack
#<-- rel import hack
@@ -323,7 +323,6 @@
self.ioHandler.close()
- #TODO: check if this method is still needed
def _finalizeRequest(self, msg, request, event):
"""Finalzes a request
@param msg: message that is the reason for finalizing
@@ -350,21 +349,8 @@
if removeRequest:
del self._requests[request['Identifier']]
-
- def _newUuid(self, uuids=None):
- """Creates a new unique identifier
- @param uuids: if desired any iterable containing uuids to enshure the identifier is unique in the iterable
- @return: (str) uuid
-
- """
- uuid_ = uuid.uuid_time()
- if uuids is not None:
- while uuid_ in uuids:
- uuid_ = uuid_time()
- return uuid_
-
def _registerRequest(self,
msg,
requestType,
@@ -387,12 +373,12 @@
@return: (str) identifer of therequest
@note: the identifier returned is unique to the client but may not be unique to the node
"""
- identifier = self._newUuid(uuids=self._requests) if identifier is None else identifier
+ identifier = self.newIdentifier(identifiers=self._requests) if identifier is None else identifier
# equip requests with some additional params
#TODO: keep an eye on additional params, they may collide with Fcp parameters
- msg['Identifier'] = self._newUuid(uuids=self._requests) if identifier is None else identifier
+ msg['Identifier'] = self.newIdentifier(identifiers=self._requests) if identifier is None else identifier
msg['RequestType'] = requestType
msg['InitTime'] = time.time() if initTime is None else initTime
if requestType & consts.ConstRequestType.MaskGet:
@@ -459,9 +445,8 @@
@return: (bool) True if so, False otherwise
"""
return self.ioHandler.isOpen()
+
-
-
def iterConnect(self, host=DefaultFcpHost, port=DefaultFcpPort, duration=20, timeout=0.5):
"""Iterator to stablish a connection to a freenet node
@param host: (str) host of th node
@@ -537,7 +522,7 @@
@param connectionName: (str) connection name or None to use an arbitrary connection name
@return: (str) connection name
"""
- self._connectionName = self._newUuid() if connectionName is None else connectionName
+ self._connectionName = self.newIdentifier() if connectionName is None else connectionName
return self._connectionName
@@ -548,15 +533,26 @@
return consts.ConstLogger.Client.getEffectiveLevel()
-
def setDebugVerbosity(self, debugVerbosity):
"""Sets the verbosity level of the client
@param debugVerbosity: L{consts.ConstDebugVerbosity}
"""
consts.ConstLogger.Client.setLevel(debugVerbosity)
-
+
+ def newIdentifier(self, identifiers=None):
+ """Creates a new identifier to be used as request identifer or whatever
+ @param identifiersuuids: if desired any iterable containing identifiers to enshure the identifier is unique within the iterable
+ @return: (str) identifier
+
+ """
+ identifier = str(hex(random.getrandbits(128)))
+ if identifiers is not None:
+ while identifier in identifiers:
+ identifier = str(hex(random.getrandbits(128)))
+ return identifier
+
def startNode(self, cmdline):
"""Starts the freenet node
@param cmdline: commandline to start freenet (like '/freenet/run.sh start' or 'c:\freenet\start.bat')
@@ -612,7 +608,7 @@
return False
# resend request with new identifier
- newIdentifier = self._newUuid(uuids=self._requests)
+ newIdentifier = self.newIdentifier(identifiers=self._requests)
self._requests[newIdentifier] = initialRequest
del self._requests[requestIdentifier]
initialRequest['Identifier'] = newIdentifier
@@ -764,6 +760,7 @@
raise ValueError('No initial message found in TestDDAComplete')
# remove test and clean tmp data
+ #TODO: reset TestDDA params or not?
self._ddaTests.remove(initialRequest)
if initialRequest['TestDDA']['TmpFile'] is not None:
tools.saveRemoveFile(initialRequest['TestDDA']['TmpFile'])
@@ -847,7 +844,9 @@
code = msg['Code']
if code == consts.ConstFetchError.Canceled:
- initialRequest['RequestStatus'] |= consts.ConstRequestStatus.Removed | consts.ConstRequestStatus.Completed | consts.ConstRequestStatus.RemovedFromQueue
+ initialRequest['RequestStatus'] |= consts.ConstRequestStatus.Removed | \
+ consts.ConstRequestStatus.Completed | \
+ consts.ConstRequestStatus.RemovedFromQueue
del self._requests[requestIdentifier]
self.events.RequestRemoved(initialRequest)
return True
@@ -897,7 +896,7 @@
self.events.RequestRestored(initialRequest)
return True
- # ignore
+ #TODO: ignore handshake?
return False
@@ -1196,8 +1195,8 @@
# Reminder to self:
#
- # if socket dies on sendall ther is no way to determine if and how much data was send
- # ...so assume data was send, cos there is no way to proove it was not send
+ # if socket dies on sendall there is no way to determine if and how much data was send
+ # ...so assume data was send
try:
self.ioHandler.sendMessage(msg)
except consts.ErrorIOBroken, details:
@@ -1237,9 +1236,8 @@
WithDataTypes=withDataTypes,
)
)
+
-
-
def modifyConfig(self, params):
"""Modifies node configuration values
@param params: (dict) containing parameters to modify
@@ -1286,7 +1284,6 @@
)
self.sendMessage(msg)
return msg['Identifier']
-
def getData(self,
@@ -1352,8 +1349,7 @@
ReturnType=consts.ConstReturnType.Direct,
Verbosity=consts.ConstVerbosity.ReportProgress,
)
-
-
+
def getFile(self,
uri,
@@ -1424,7 +1420,6 @@
)
-
def getKeyInfo(self,
uri,
@@ -1482,7 +1477,6 @@
)
-
def subscribeUSK(self, uri, dontPoll=True):
"""Asks the node to notify the client when an USK is updated
@param uri: (L{key.USK}) key to subscribe to
@@ -1868,7 +1862,6 @@
)
-
def putRedirect(self,
uri,
targetKey,
@@ -1984,8 +1977,7 @@
)
else:
del self._requests[requestIdentifier]
-
-
+
########################################################
##
## Peer related methods
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <jU...@us...> - 2008-07-01 18:38:12
|
Revision: 473
http://fclient.svn.sourceforge.net/fclient/?rev=473&view=rev
Author: jUrner
Date: 2008-07-01 11:36:31 -0700 (Tue, 01 Jul 2008)
Log Message:
-----------
no longer needed
Removed Paths:
-------------
trunk/fcp2/src/fcp2/fcp_lib/uuid.py
Deleted: trunk/fcp2/src/fcp2/fcp_lib/uuid.py
===================================================================
--- trunk/fcp2/src/fcp2/fcp_lib/uuid.py 2008-07-01 13:35:38 UTC (rev 472)
+++ trunk/fcp2/src/fcp2/fcp_lib/uuid.py 2008-07-01 18:36:31 UTC (rev 473)
@@ -1,456 +0,0 @@
-
-"""handling RFC 4122 compatible UUIDs"""
-
-"""Copyright (c) 2006-2007 Juergen Urner
-
-Permission is hereby granted, free of charge, to any person obtaining a copy of this software
-and associated documentation files (the "Software"), to deal in the Software without restriction,
-including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense,
-and/or sell copies of the Software, and to permit persons to whom the Software is furnished to
-do so, subject to the following conditions:
-
-The above copyright notice and this permission notice shall be included in all copies or substantial
-portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED,
-INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A
-PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
-HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF
-CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE
-OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
-"""
-
-
-__version__ = "0.3.2"
-
-import calendar as _calendar
-import md5 as _md5
-import random as _random
-import re as _re
-import sha as _sha
-import sys as _sys
-import time as _time
-#***********************************************************************************************
-# consts
-#***********************************************************************************************
-
-VARIANT_UNKNOWN = 0 # unknown variant
-VARIANT_NCS = 1 # reserved for NCS backward compatibility
-VARIANT_RFC4122 = 2 # RFC4122 compatible (produced by this module)
-VARIANT_MS = 3 # Reserved for Microsoft backward compatibility
-VARIANT_FUTURE = 4 # Reserved for future definition
-
-
-VERSION_UNKNOWN = 0 # unknown version
-VERSION_TIME = 1 # time based UUID
-VERSION_DCE = 2 # DCE Security version
-VERSION_MD5 = 3 # name based UUID with MD5 hashing
-VERSION_RANDOM = 4 # randomly generated UUID
-VERSION_SHA1 = 5 # name based UUID with SHA1 hashing
-
-
-NAMESPACE_DNS = '{6ba7b810-9dad-11d1-80b4-00c04fd430c8}' # DNS namespace UUID
-NAMESPACE_URL = '{6ba7b811-9dad-11d1-80b4-00c04fd430c8}' # URL namespace UUID
-NAMESPACE_OID = '{6ba7b812-9dad-11d1-80b4-00c04fd430c8}' # OID namespace UUID
-NAMESPACE_X500 = '{6ba7b814-9dad-11d1-80b4-00c04fd430c8}' # X500 namespace UUID
-
-UUID_NIL = '{00000000-0000-0000-0000-000000000000}' # UUID NULL
-
-
-# TODO: the thrown in getrandbits() replacement may not work as expected
-# check if getrandbits is available (requires python 2.4)
-try:
- _getrandbits = _random.getrandbits
-except:
- def _getrandbits(num_bits): # took this from: http://www.zopelabs.com/cookbook/1067449107
- rnd = _random.Random()
- bytes = 0L
- for i in range(0, num_bits):
- bytes += long(rnd.randint(0,1)) << i
- return bytes
-
-
-# throw in replacement in for socket.htonl and friends (enshures we always get a ulong in return)
-def _DWORD(num): return num & 0xFFFFFFFFL
-def _WORD(num): return num & 0xFFFF
-
-if _sys.byteorder == 'big':
- def _htonl(dw): return _DWORD(dw)
- def _htons(w): return _WORD(w)
-else:
- def _htons(w):
- w = _WORD(w)
- return ((w & 0xff00) >> 8) | ((w & 0x00ff) << 8)
- def _htonl(dw):
- dw = _DWORD(dw)
- return ((dw & 0xff000000L) >> 24) | \
- ((dw & 0x00ff0000L) >> 8) | \
- ((dw & 0x0000ff00L) << 8) | \
- ((dw & 0x000000ffL) << 24)
-_ntohs = _htons
-_ntohl = _htonl
-
-#***********************************************************************************************
-# regex patterns
-#***********************************************************************************************
-
-# matches any string that looks like it could contain an uuid (ignoring curly braces)
-UUID_PAT = _re.compile(r'([0-9a-f]{8}\-[0-9a-f]{4}\-[0-9a-f]{4}\-[0-9a-f]{4}\-[0-9a-f]{12})', _re.I)
-
-# matches any string that looks like it could contain an uuid (incluing curly braces)
-UUID_MATCH_PAT = _re.compile(r'(\{([0-9a-f]{8}\-[0-9a-f]{4}\-[0-9a-f]{4}\-[0-9a-f]{4}\-[0-9a-f]{12})\})', _re.I)
-
-# matches any string that is an uuid (incluing curly braces)
-UUID_EXACT_MATCH_PAT = _re.compile(r'(\A\{([0-9a-f]{8}\-[0-9a-f]{4}\-[0-9a-f]{4}\-[0-9a-f]{4}\-[0-9a-f]{12})\})\Z', _re.I)
-
-#***********************************************************************************************
-# others
-#***********************************************************************************************
-class UuidError(Exception):
- """default error"""
-
-
-class _GeneratorState(object):
-
- CLOCK_SEQ_MAX = 0x3FFF
-
- # TODO: how to calculate time resolution ?
- # holds the number of 100ns ticks of the actual resolution of the system's clock
- # the current implementation just limits the number or UUIDs generated/tick to 10.000,
- # no matter what tick is
- UUIDS_PER_TICK = 10000
-
- # time delta in 100ns steps from system epoch to uuid epoch (00:00:00.00, 15 October 1582)
- # calculate delta of the actual epoch relative to UNIX_EPOCH
- GM_UNIX_EPOCH = (1970, 1, 1, 0, 0, 0, 3, 1, 0)
- UNIX_EPOCH = _calendar.timegm(GM_UNIX_EPOCH) * 10000000
- UNIX_OFFSET = 0x01b21dd213814000 # offset in nanoseconds to uuid epoch
- TDELTA = UNIX_OFFSET - UNIX_EPOCH
-
- def __init__(self):
- self.is_inited = False
- self.time_last = 0
- self.clock_seq = 0
- self.uuids_per_tick = 0
-
- def load(self):
- """supposed to read state from storage"""
- #try:
- # read state from storage
- # self.is_inited = True
- #except:
- # self.clock_seq = _getrandbits(14)
- # self.is_inited = False
- self.clock_seq = _getrandbits(14)
-
- def dump(self):
- """supposed to dump state to storage"""
-
-#***********************************************************************************************
-# uuid generator
-#***********************************************************************************************
-class UuidGen(object):
-
-
- def __init__(self):
-
- self._state = _GeneratorState()
-
-
- # public methods -----------------------------------------------------------
-
- def uuid_time(self):
- time_now = self._get_time_now()
- clock_seq = self._state.clock_seq
-
- time_low = time_now & 0xFFFFFFFFL
- time_mid = (time_now >> 32) & 0xFFFF
- time_hi_and_version = (time_now>> 48) & 0x0FFFF
- node = _getrandbits(47) # throw in random bits instead of MAC address
- node |= (1 << 47) # set unicast / multicast bit
-
- # put in variant and version bits
- time_hi_and_version |= (1 << 12)
- clock_seq_low = clock_seq & 0xFF
- clock_seq_hi_and_reserved = (clock_seq & 0x3F00) >> 8
- clock_seq_hi_and_reserved |= 0x80
-
- return self._format(time_low, time_mid, time_hi_and_version,
- clock_seq_hi_and_reserved, clock_seq_low, node)
-
-
- def uuid_random(self):
- rnd = _getrandbits(128)
- time_low = rnd & 0xFFFFFFFFL
- time_mid = (rnd >> 32) & 0x0FFFF
- time_hi_and_version = (rnd >> 48) & 0x0FFFF
- clock_seq_hi_and_reserved = (rnd >> 64) & 0x0FF
- clock_seq_low= (rnd >> 72) & 0x0FF
- node = (rnd >> 80)
-
- # put in variant and version bits
- time_hi_and_version &= 0x0FFF;
- time_hi_and_version |= (4 << 12)
- clock_seq_hi_and_reserved &= 0x3F
- clock_seq_hi_and_reserved |= 0x80
-
- return self._format(time_low, time_mid, time_hi_and_version,
- clock_seq_hi_and_reserved, clock_seq_low, node)
-
-
- def uuid_md5(self, nsuuid, name):
- return self._format_uuid_v3or5(nsuuid, name, _md5, 3)
-
-
- def uuid_sha1(self, nsuuid, name):
- return self._format_uuid_v3or5(nsuuid, name, _sha, 5)
-
-
- # helper methods --------------------------------------------------------
-
- def _format(self, *args):
- return '{%08x-%04x-%04x-%02x%02x-%012x}' % args
-
-
- def _int_to_bytes(self, num):
- out = ''
- while num:
- num, tail = divmod(num, 256)
- out += chr(tail)
- return out[-1::-1]
-
-
- def _bytes_to_int(self, bytes):
- num = 0
- for char in bytes:
- num = (num << 8) + ord(char)
- return num
-
-
- # helper for md5 and sha1 UUIDS
- def _format_uuid_v3or5(self, nsuuid, name, hasher, ver):
- try:
- nsuuid = clean(nsuuid)
- except:
- raise UuidError('invalid namespace uuid: %r' % nsuuid)
- # convert UUID bytes to network byte order
- time_low = _htonl(long(nsuuid[:8], 16))
- time_mid = _htons(long(nsuuid[9:13], 16))
- time_hi_and_version = _htons(long(nsuuid[14:18], 16))
-
- # hash the stuff
- h = hasher.new()
- h.update(self._int_to_bytes(time_low))
- h.update(self._int_to_bytes(time_mid))
- h.update(self._int_to_bytes(time_hi_and_version))
- h.update(name)
- hash_ = h.digest()[:16]
-
- # convert hash to back to host byte order
- time_low = _ntohl(self._bytes_to_int(hash_[:4]))
- time_mid = _ntohs(self._bytes_to_int(hash_[4:6]))
- time_hi_and_version = _ntohs(self._bytes_to_int(hash_[6:8]))
- clock_seq_hi_and_reserved = _ntohs(self._bytes_to_int(hash_[8:9]))
- clock_seq_low= self._bytes_to_int(hash_[9:10])
- node = self._bytes_to_int(hash_[10:])
-
- # throw in variant and version bits
- time_hi_and_version &= 0x0FFF;
- time_hi_and_version |= (ver << 12)
- clock_seq_hi_and_reserved &= 0x3F
- clock_seq_hi_and_reserved |= 0x80
-
- return self._format(time_low, time_mid, time_hi_and_version,
- clock_seq_hi_and_reserved, clock_seq_low, node)
-
-
-
- # returns a new timestamp for time based UUIDs
- def _get_time_now(self):
-
- self._state.load()
-
- while True:
-
- time_now = _time.time() * 10000000
-
- if time_now < self._state.time_last - self._state.uuids_per_tick: # adjust clock_seq if time turned backwards
- if self._state.is_inited:
- self._state.clock_seq += 1
- if self._state.clock_seq > self._state.CLOCK_SEQ_MAX:
- self._state.clock_seq = 0
- self._state.uuids_per_tick = 0
- break
-
- elif time_now <= self._state.time_last: # patch/slow down if more then 1 uuid is requested / tick
- self._state.uuids_per_tick += 1
- if self._state.uuids_per_tick < self._state.UUIDS_PER_TICK:
- time_now += self._state.uuids_per_tick
- break
-
- else:
- self._state.uuids_per_tick = 0
- break
-
- ##
- self._state.time_last = time_now
- self._state.dump()
- return long(time_now) + self._state.TDELTA
-
-
-
-#***********************************************************************************************
-# functions
-#***********************************************************************************************
-def uuid_time():
- return UuidGen().uuid_time()
-
-
-def uuid_random():
- return UuidGen().uuid_random()
-
-
-def uuid_md5(nsuuid, name):
- return UuidGen().uuid_md5(nsuuid, name)
-
-
-def uuid_sha1(nsuuid, name):
- return UuidGen().uuid_sha1(nsuuid, name)
-
-
-def clean(uuid, pattern=UUID_EXACT_MATCH_PAT):
- match = pattern.match(uuid)
- if not match:
- raise ValueError('invalid UUID: %r' % uuid)
- return match.group(2)
-
-
-def get_variant(uuid):
- uuid = clean(uuid)
- variant = long(uuid[19:21], 16)
- if not variant & 0x80:
- return VARIANT_NCS
- elif not variant & 0x40 and variant & 0x80:
- return VARIANT_RFC4122
- elif not variant & 0x20 and variant & 0x40 and variant & 0x80:
- return VARIANT_MS
- elif variant & 0x20 and variant & 0x40 and variant & 0x80:
- return VARIANT_FUTURE
- else:
- return VARIANT_UNKNOWN
-
-
-def get_version(uuid):
- uuid = clean(uuid)
- time_hi_and_version = long(uuid[14:18], 16)
- version = time_hi_and_version >> 12
- if 1 < version > 5:
- version = VERSION_UNKNOWN
- return version
-
-
-def get_time(uuid):
- uuid = clean(uuid)
- time_low = long(uuid[:8], 16)
- time_mid = long(uuid[9:13], 16)
- time_hi_and_version = long(uuid[14:18], 16)
- variant = long(uuid[19:21], 16)
- version = time_hi_and_version >> 12
- if version == 1 and(variant & 0x80) and not (variant & 0x40):
- time_hi_and_version &= ~(version << 12)
- time_now = time_low | (time_mid << 32) | (time_hi_and_version << 48)
- return (float(time_now) - _GeneratorState.TDELTA) / 10000000
- return 0
-
-
-def get_mac_address(uuid):
- uuid = clean(uuid)
- node = long(uuid[24:], 16)
- time_hi_and_version = long(uuid[14:18], 16)
- variant = long(uuid[19:21], 16)
- version = time_hi_and_version >> 12
- if version == 1 and(variant & 0x80) and not (variant & 0x40):
- return node
- return 0
-
-
-def format_mac_address(mac_addr):
- return '%02x-%02x-%02x-%02x-%02x-%02x' % (
- (mac_addr & 0xFF0000000000) >> 40,
- (mac_addr & 0xFF00000000)>> 32,
- (mac_addr & 0xFF000000) >> 24,
- (mac_addr & 0xFF0000) >> 16,
- (mac_addr& 0xFF00) >> 8,
- mac_addr & 0xFF
- )
-
-#***********************************************************************************************
-# commandline interface
-#***********************************************************************************************
-if __name__ == '__main__':
- import sys
- import getopt
-
-
- USAGE = """'generates a UUID of the specified type and prints it to stdout
-
-usage:
- uuid.py [-h] [-t <type> [-s <namespace uuid> -n <name>]]
-
- -h prints out this help message
- -t type of uuid (time, random, md5, sha1)
- -s namespace uuid (required for md5 or sha1)
- -n name (required for md5 or sha1)
-"""
- try:
- o, args = getopt.getopt(sys.argv[1:], 'ht:s:n:')
- o = dict(o)
- if '-h' in o:
- print USAGE
- else:
- type_uuid = o.get('-t', None)
- if type_uuid == 'time':
- print uuid_time()
- elif type_uuid == 'random':
- print uuid_random()
- elif type_uuid == 'md5':
- print uuid_md5(o['-s'], o['-n'])
- elif type_uuid == 'sha1':
- print uuid_sha1(o['-s'], o['-n'])
- else:
- raise UuidError('')
- except:
- print USAGE
- sys.exit()
-
-####################
-# #
-# test #
-# #
-####################
-
-def test():
- g = globals().items()
- variants = dict([(value, name) for name, value in g \
- if name.startswith('VARIANT_')])
- versions = dict([(value, name) for name, value in g \
- if name.startswith('VERSION_')])
-
- UUIDS = (
- uuid_time(),
- uuid_random(),
- uuid_md5(NAMESPACE_DNS, 'foo'),
- uuid_sha1(NAMESPACE_DNS, 'bar'),
- )
-
- print
- for UUID in (UUIDS):
- print 'UUID: %r' % UUID
- print 'variant: ', variants.get(get_variant(UUID), 'unknown')
- print 'verson: ', versions.get(get_version(UUID), 'unknown')
- print 'time: ', _time.ctime(get_time(UUID)), '(%ss since epoch)' \
- % get_time(UUID)
- print 'MAC: %s' % format_mac_address(get_mac_address(UUID))
- print
-
-#test()
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <jU...@us...> - 2008-07-01 13:36:18
|
Revision: 472
http://fclient.svn.sourceforge.net/fclient/?rev=472&view=rev
Author: jUrner
Date: 2008-07-01 06:35:38 -0700 (Tue, 01 Jul 2008)
Log Message:
-----------
a few fixes
Modified Paths:
--------------
trunk/fcp2/src/fcp2/iohandler.py
Modified: trunk/fcp2/src/fcp2/iohandler.py
===================================================================
--- trunk/fcp2/src/fcp2/iohandler.py 2008-07-01 13:31:48 UTC (rev 471)
+++ trunk/fcp2/src/fcp2/iohandler.py 2008-07-01 13:35:38 UTC (rev 472)
@@ -125,7 +125,7 @@
if p == '':
raise socket.error('Socket closed by host')
except socket.timeout, details:
- raise consts.ErrorIOTimeout(details, consts.ConstLogger.IO.log, consts.DebugVerbosity.Chatty)
+ raise consts.ErrorIOTimeout(details, consts.ConstLogger.IO.log, consts.ConstDebugVerbosity.Chatty)
except socket.error, details:
self.close()
raise consts.ErrorIOBroken(details, consts.ConstLogger.IO.error)
@@ -301,7 +301,7 @@
msgName = p.pop(0)
msgClass = message.MessagesAll.get(msgName, None)
if msgClass is None:
- consts.ConstLogger.IOHandler.debug(consts.ConstLogMessages.CreatingNewMessageType + ' "%s"' % msgClassname)
+ consts.ConstLogger.IOHandler.debug(consts.ConstLogMessages.CreatingNewMessageType + ' "%s"' % msgName)
msgClass = message.newMessageClass(msgName)
msg = msgClass()
@@ -319,7 +319,7 @@
if not isinstance(n, (int, long)):
#HACK:
if hackyInvalidMessageCallback is not None:
- ackyInvalidMessageCallback(msg)
+ hackyInvalidMessageCallback(msg)
raise consts.ErrorMessageParse('DataLength must be type(int)')
if n > 0:
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <jU...@us...> - 2008-07-01 13:32:03
|
Revision: 471
http://fclient.svn.sourceforge.net/fclient/?rev=471&view=rev
Author: jUrner
Date: 2008-07-01 06:31:48 -0700 (Tue, 01 Jul 2008)
Log Message:
-----------
renames
Modified Paths:
--------------
trunk/fcp2/src/fcp2/message.py
Modified: trunk/fcp2/src/fcp2/message.py
===================================================================
--- trunk/fcp2/src/fcp2/message.py 2008-07-01 13:30:41 UTC (rev 470)
+++ trunk/fcp2/src/fcp2/message.py 2008-07-01 13:31:48 UTC (rev 471)
@@ -46,7 +46,7 @@
#********************************************************************************
#
#********************************************************************************
-class _PMessageMeta(type):
+class _MessageMeta(type):
def __new__(klass, name, bases, kws):
newClass = type.__new__(klass, name, bases, kws)
@@ -59,7 +59,7 @@
#********************************************************************************
#
#********************************************************************************
-class _PMessageBase(object):
+class _MessageBase(object):
"""Class wrapping a Fcp message
Sample use::
@@ -77,7 +77,7 @@
@ivar name: (str) message name
@ivar params: (dict) message params
"""
- __metaclass__ = _PMessageMeta
+ __metaclass__ = _MessageMeta
name = ''
_additional_params_ = {}
@@ -222,7 +222,7 @@
# as private so they don't get send to the node
#
#********************************************************************************
-_GetParams = {
+_AdditionalGetParams = {
# persistent params that will go into identifier
_PrivateParam('RequestType'): consts.ConstRequestType.Null, # identifies sub message types
@@ -254,7 +254,7 @@
}
-_PutParams = {
+_AdditionalPutParams = {
# persistent params that will go into identifier
_PrivateParam('RequestType'): consts.ConstRequestType.Null, # identifies sub message types
@@ -356,26 +356,26 @@
'_persistent_params_': () if persistentParams is None else persistentParams,
'_param_types_': {} if paramTypes is None else paramTypes,
}
- return type(name, (_PMessageBase, ), kws)
+ return type(name, (_MessageBase, ), kws)
#********************************************************************************
# some messages defined by the client
#********************************************************************************
-class MsgClientDisconnected(_PMessageBase):
+class MsgClientDisconnected(_MessageBase):
name = consts.ConstMessage.ClientDisconnected
_additional_params_ = {}
_param_types_ = {
'DisconnectReason': types.TypeInt,
}
-class MsgClientSocketDied(_PMessageBase):
+class MsgClientSocketDied(_MessageBase):
name = consts.ConstMessage.ClientSocketDied
_additional_params_ = {}
_param_types_ = {
}
-class MsgClientSocketTimeout(_PMessageBase):
+class MsgClientSocketTimeout(_MessageBase):
name = consts.ConstMessage.ClientSocketTimeout
_additional_params_ = {}
_param_types_ = {
@@ -384,7 +384,7 @@
#********************************************************************************
# fcp messages
#********************************************************************************
-class MsgAddPeer(_PMessageBase):
+class MsgAddPeer(_MessageBase):
name = consts.ConstMessage.AddPeer
_additional_params_ = {}
_param_types_ = {
@@ -432,7 +432,7 @@
'''
-class MsgAllData(_PMessageBase):
+class MsgAllData(_MessageBase):
name = consts.ConstMessage.AllData
_additional_params_ = {}
_param_types_ = {
@@ -444,9 +444,9 @@
return self['DataLength']
-class MsgClientGet(_PMessageBase):
+class MsgClientGet(_MessageBase):
name = consts.ConstMessage.ClientGet
- _additional_params_ = _GetParams
+ _additional_params_ = _AdditionalGetParams
_persistent_params_ = _PersistentParamsGet
_param_types_ = {
'BinaryBlob': types.TypeBool,
@@ -461,19 +461,19 @@
}
def _restoreParams(self, params):
- _PMessageBase._restoreParams(self, params)
+ _MessageBase._restoreParams(self, params)
try:
- _PMessageBase._setPersistentParams(self, self['ClientToken'])
+ _MessageBase._setPersistentParams(self, self['ClientToken'])
except Exception, d:
#print Exception, d
return False
return True
def updatePersistentParams(self):
- self['ClientToken'] = _PMessageBase._getPersistentParams(self)
+ self['ClientToken'] = _MessageBase._getPersistentParams(self)
-class MsgClientHello(_PMessageBase):
+class MsgClientHello(_MessageBase):
name = consts.ConstMessage.ClientHello
_additional_params_ = {}
_param_types_ = {
@@ -481,9 +481,9 @@
}
-class MsgClientPut(_PMessageBase):
+class MsgClientPut(_MessageBase):
name = consts.ConstMessage.ClientPut
- _additional_params_ = _PutParams
+ _additional_params_ = _AdditionalPutParams
_persistent_params_ = _PersistentParamsPut
_param_types_ = {
'BinaryBlob': types.TypeBool,
@@ -501,16 +501,16 @@
return self['DataLength']
def _restoreParams(self, params):
- _PMessageBase._restoreParams(self, params)
+ _MessageBase._restoreParams(self, params)
try:
- _PMessageBase._setPersistentParams(self, self['ClientToken'])
+ _MessageBase._setPersistentParams(self, self['ClientToken'])
except Exception, d:
#print Exception, d
return False
return True
def updatePersistentParams(self):
- self['ClientToken'] = _PMessageBase._getPersistentParams(self)
+ self['ClientToken'] = _MessageBase._getPersistentParams(self)
class MsgClientPutComplexDir(MsgClientPut):
@@ -544,7 +544,7 @@
name = consts.ConstMessage.ClientPutDiskDir
-class MsgCloseConnectionDuplicateClientName(_PMessageBase):
+class MsgCloseConnectionDuplicateClientName(_MessageBase):
name = consts.ConstMessage.CloseConnectionDuplicateClientName
_additional_params_ = {}
_param_types_ = {
@@ -552,13 +552,13 @@
#########################################
#########################################
-class MsgConfigData(_PMessageBase):
+class MsgConfigData(_MessageBase):
name = consts.ConstMessage.ConfigData
_additional_params_ = {}
_param_types_ = config._ConfigMessageParamTypes
-class MsgDataFound(_PMessageBase):
+class MsgDataFound(_MessageBase):
name = consts.ConstMessage.DataFound
_additional_params_ = {}
_param_types_ = {
@@ -567,35 +567,35 @@
}
-class MsgEndListPeerNotes(_PMessageBase):
+class MsgEndListPeerNotes(_MessageBase):
name = consts.ConstMessage.EndListPeerNotes
_additional_params_ = {}
_param_types_ = {
}
-class MsgEndListPeers(_PMessageBase):
+class MsgEndListPeers(_MessageBase):
name = consts.ConstMessage.EndListPeers
_additional_params_ = {}
_param_types_ = {
}
-class MsgEndListPersistentRequests(_PMessageBase):
+class MsgEndListPersistentRequests(_MessageBase):
name = consts.ConstMessage.EndListPersistentRequests
_additional_params_ = {}
_param_types_ = {
}
-class MsgFCPPluginMessage(_PMessageBase):
+class MsgFCPPluginMessage(_MessageBase):
name = consts.ConstMessage.FCPPluginMessage
_additional_params_ = {}
_param_types_ = {
}
-class MsgFCPPluginReply(_PMessageBase):
+class MsgFCPPluginReply(_MessageBase):
name = consts.ConstMessage.FCPPluginReply
_additional_params_ = {}
_param_types_ = {
@@ -603,7 +603,7 @@
}
-class MsgFinishedCompression(_PMessageBase):
+class MsgFinishedCompression(_MessageBase):
name = consts.ConstMessage.FinishedCompression
_additional_params_ = {}
_param_types_ = {
@@ -612,14 +612,14 @@
}
-class MsgGenerateSSK(_PMessageBase):
+class MsgGenerateSSK(_MessageBase):
name = consts.ConstMessage.GenerateSSK
_additional_params_ = _GenerateSSKParams
_param_types_ = {
}
-class MsgGetConfig(_PMessageBase):
+class MsgGetConfig(_MessageBase):
name = consts.ConstMessage.GetConfig
_additional_params_ = {}
_param_types_ = {
@@ -634,7 +634,7 @@
}
-class MsgGetFailed(_PMessageBase):
+class MsgGetFailed(_MessageBase):
name = consts.ConstMessage.GetFailed
_additional_params_ = {}
_param_types_ = {
@@ -647,7 +647,7 @@
}
-class MsgGetNode(_PMessageBase):
+class MsgGetNode(_MessageBase):
name = consts.ConstMessage.GetNode
_additional_params_ = {}
_param_types_ = {
@@ -657,7 +657,7 @@
}
-class MsgGetPluginInfo(_PMessageBase):
+class MsgGetPluginInfo(_MessageBase):
name = consts.ConstMessage.GetPluginInfo
_additional_params_ = _PluginInfoParams
_param_types_ = {
@@ -665,7 +665,7 @@
}
-class MsgGetRequestStatus(_PMessageBase):
+class MsgGetRequestStatus(_MessageBase):
name = consts.ConstMessage.GetRequestStatus
_additional_params_ = {}
_param_types_ = {
@@ -674,7 +674,7 @@
}
-class MsgIdentifierCollision(_PMessageBase):
+class MsgIdentifierCollision(_MessageBase):
name = consts.ConstMessage.IdentifierCollision
_additional_params_ = {}
_param_types_ = {
@@ -682,7 +682,7 @@
}
-class MsgListPeer(_PMessageBase):
+class MsgListPeer(_MessageBase):
name = consts.ConstMessage.ListPeer
_additional_params_ = {}
_param_types_ = {
@@ -691,7 +691,7 @@
}
-class MsgListPeerNotes(_PMessageBase):
+class MsgListPeerNotes(_MessageBase):
name = consts.ConstMessage.ListPeerNotes
_additional_params_ = {}
_param_types_ = {
@@ -699,7 +699,7 @@
-class MsgListPeers(_PMessageBase):
+class MsgListPeers(_MessageBase):
name = consts.ConstMessage.ListPeers
_additional_params_ = {}
_param_types_ = {
@@ -708,7 +708,7 @@
}
-class MsgListPersistentRequests(_PMessageBase):
+class MsgListPersistentRequests(_MessageBase):
name = consts.ConstMessage.ListPersistentRequests
_additional_params_ = {}
_param_types_ = {
@@ -716,21 +716,21 @@
#####################################
#####################################
-class MsgModifyConfig(_PMessageBase):
+class MsgModifyConfig(_MessageBase):
name = consts.ConstMessage.ModifyConfig
_additional_params_ = {}
_param_types_ = config._ConfigMessageParamTypes
#####################################
#####################################
-class MsgModifyPeer(_PMessageBase):
+class MsgModifyPeer(_MessageBase):
name = consts.ConstMessage.ModifyPeer
_additional_params_ = {}
_param_types_ = {
}
-class MsgModifyPeerNote(_PMessageBase):
+class MsgModifyPeerNote(_MessageBase):
name = consts.ConstMessage.ModifyPeerNote
_additional_params_ = {}
_param_types_ = {
@@ -738,7 +738,7 @@
}
-class MsgModifyPersistentRequest(_PMessageBase):
+class MsgModifyPersistentRequest(_MessageBase):
name = consts.ConstMessage.ModifyPersistentRequest
_additional_params_ = {}
_param_types_ = {
@@ -747,7 +747,7 @@
###################################
###################################
-class MsgNodeData(_PMessageBase):
+class MsgNodeData(_MessageBase):
name = consts.ConstMessage.NodeData
_additional_params_ = {}
_param_types_ = {
@@ -860,7 +860,7 @@
'''
-class MsgNodeHello(_PMessageBase):
+class MsgNodeHello(_MessageBase):
name = consts.ConstMessage.NodeHello
_additional_params_ = {}
_param_types_ = {
@@ -873,13 +873,13 @@
#######################################
#######################################
-class MsgPeer(_PMessageBase):
+class MsgPeer(_MessageBase):
name = consts.ConstMessage.Peer
_additional_params_ = {}
_param_types_ = MsgAddPeer._param_types_
-class MsgPeerNote(_PMessageBase):
+class MsgPeerNote(_MessageBase):
name = consts.ConstMessage.PeerNote
_additional_params_ = {}
_param_types_ = {
@@ -887,7 +887,7 @@
}
-class MsgPeerRemoved(_PMessageBase):
+class MsgPeerRemoved(_MessageBase):
name = consts.ConstMessage.PeerRemoved
_additional_params_ = {}
_param_types_ = {
@@ -895,17 +895,17 @@
#######################################
#######################################
-class MsgPersistentGet(_PMessageBase):
+class MsgPersistentGet(_MessageBase):
name = consts.ConstMessage.PersistentGet
- _additional_params_ = _GetParams
+ _additional_params_ = _AdditionalGetParams
_persistent_params_ = _PersistentParamsGet
_param_types_ = MsgClientGet._param_types_.copy()
_param_types_['Started'] = types.TypeBool
def _restoreParams(self, params):
- _PMessageBase._restoreParams(self, params)
+ _MessageBase._restoreParams(self, params)
try:
- _PMessageBase._setPersistentParams(self, self['ClientToken'])
+ _MessageBase._setPersistentParams(self, self['ClientToken'])
except Exception, d:
#print Exception, d
return False
@@ -913,33 +913,33 @@
#######################################
#######################################
-class MsgPersistentPut(_PMessageBase):
+class MsgPersistentPut(_MessageBase):
name = consts.ConstMessage.PersistentPut
- _additional_params_ = _PutParams
+ _additional_params_ = _AdditionalPutParams
_persistent_params_ = _PersistentParamsPut
_param_types_ = MsgClientPut._param_types_.copy()
_param_types_['Started'] = types.TypeBool
def _restoreParams(self, params):
- _PMessageBase._restoreParams(self, params)
+ _MessageBase._restoreParams(self, params)
try:
- _PMessageBase._setPersistentParams(self, self['ClientToken'])
+ _MessageBase._setPersistentParams(self, self['ClientToken'])
except Exception, d:
#print Exception, d
return False
return True
-class MsgPersistentPutDir(_PMessageBase):
+class MsgPersistentPutDir(_MessageBase):
name = consts.ConstMessage.PersistentPutDir
- _additional_params_ = _PutParams
+ _additional_params_ = _AdditionalPutParams
_persistent_params_ = _PersistentParamsPut
_param_types_ = MsgClientPutDiskDir._param_types_.copy()
_param_types_['Started'] = types.TypeBool
def _restoreParams(self, params):
- _PMessageBase._restoreParams(self, params)
+ _MessageBase._restoreParams(self, params)
for paramName, paramValue in self.params.items():
tmp_paramName = paramName.split('.')
@@ -949,14 +949,14 @@
self[paramName] = n
try:
- _PMessageBase._setPersistentParams(self, self['ClientToken'])
+ _MessageBase._setPersistentParams(self, self['ClientToken'])
except Exception, d:
#print Exception, d
return False
return True
-class MsgPersistentRequestModified(_PMessageBase):
+class MsgPersistentRequestModified(_MessageBase):
name = consts.ConstMessage.PersistentRequestModified
_additional_params_ = {}
_param_types_ = {
@@ -964,7 +964,7 @@
}
-class MsgPersistentRequestRemoved(_PMessageBase):
+class MsgPersistentRequestRemoved(_MessageBase):
name = consts.ConstMessage.PersistentRequestRemoved
_additional_params_ = {}
_param_types_ = {
@@ -972,14 +972,14 @@
}
-class MsgPluginInfo(_PMessageBase):
+class MsgPluginInfo(_MessageBase):
name = consts.ConstMessage.PluginInfo
_additional_params_ = {}
_param_types_ = {
}
-class MsgProtocolError(_PMessageBase):
+class MsgProtocolError(_MessageBase):
name = consts.ConstMessage.ProtocolError
_additional_params_ = {}
_param_types_ = {
@@ -989,7 +989,7 @@
-class MsgPutFailed(_PMessageBase):
+class MsgPutFailed(_MessageBase):
name = consts.ConstMessage.PutFailed
_additional_params_ = {}
_param_types_ = {
@@ -999,7 +999,7 @@
}
-class MsgPutFetchable(_PMessageBase):
+class MsgPutFetchable(_MessageBase):
name = consts.ConstMessage.PutFetchable
_additional_params_ = {}
_param_types_ = {
@@ -1011,7 +1011,7 @@
######################################
#!! not implemented
#TODO: has more params
-class MsgPutSuccessful(_PMessageBase):
+class MsgPutSuccessful(_MessageBase):
name = consts.ConstMessage.PutSuccessful
_additional_params_ = {}
_param_types_ = {
@@ -1020,14 +1020,14 @@
}
-class MsgRemovePeer(_PMessageBase):
+class MsgRemovePeer(_MessageBase):
name = consts.ConstMessage.RemovePeer
_additional_params_ = {}
_param_types_ = {
}
-class MsgRemoveRequest(_PMessageBase):
+class MsgRemoveRequest(_MessageBase):
name = consts.ConstMessage.RemoveRequest
_additional_params_ = {}
_param_types_ = {
@@ -1035,7 +1035,7 @@
}
-class MsgSSKKeypair(_PMessageBase):
+class MsgSSKKeypair(_MessageBase):
name = consts.ConstMessage. SSKKeypair
_additional_params_ = {}
_param_types_ = {
@@ -1044,14 +1044,14 @@
}
-class MsgShutdown(_PMessageBase):
+class MsgShutdown(_MessageBase):
name = consts.ConstMessage.Shutdown
_additional_params_ = {}
_param_types_ = {
}
-class MsgSimpleProgress(_PMessageBase):
+class MsgSimpleProgress(_MessageBase):
name = consts.ConstMessage.SimpleProgress
_additional_params_ = {}
_param_types_ = {
@@ -1064,14 +1064,14 @@
}
-class MsgStartedCompression(_PMessageBase):
+class MsgStartedCompression(_MessageBase):
name = consts.ConstMessage.StartedCompression
_additional_params_ = {}
_param_types_ = {
}
-class MsgSubscribeUSK(_PMessageBase):
+class MsgSubscribeUSK(_MessageBase):
name = consts.ConstMessage.SubscribeUSK
_additional_params_ = _SubscribeUSKParams
_param_types_ = {
@@ -1080,7 +1080,7 @@
}
-class MsgSubscribedUSKUpdate(_PMessageBase):
+class MsgSubscribedUSKUpdate(_MessageBase):
name = consts.ConstMessage.SubscribedUSKUpdate
_additional_params_ = {}
_param_types_ = {
@@ -1089,7 +1089,7 @@
}
-class MsgTestDDAComplete(_PMessageBase):
+class MsgTestDDAComplete(_MessageBase):
name = consts.ConstMessage.TestDDAComplete
_additional_params_ = {}
_param_types_ = {
@@ -1098,14 +1098,14 @@
}
-class MsgTestDDAReply(_PMessageBase):
+class MsgTestDDAReply(_MessageBase):
name = consts.ConstMessage.TestDDAReply
_additional_params_ = {}
_param_types_ = {
}
-class MsgTestDDARequest(_PMessageBase):
+class MsgTestDDARequest(_MessageBase):
name = consts.ConstMessage.TestDDARequest
_additional_params_ = {}
_param_types_ = {
@@ -1114,14 +1114,14 @@
}
-class MsgTestDDAResponse(_PMessageBase):
+class MsgTestDDAResponse(_MessageBase):
name = consts.ConstMessage.TestDDAResponse
_additional_params_ = {}
_param_types_ = {
}
-class MsgURIGenerated(_PMessageBase):
+class MsgURIGenerated(_MessageBase):
name = consts.ConstMessage.URIGenerated
_additional_params_ = {}
_param_types_ = {
@@ -1129,21 +1129,21 @@
}
-class MsgUnknownNodeIdentifier(_PMessageBase):
+class MsgUnknownNodeIdentifier(_MessageBase):
name = consts.ConstMessage.UnknownNodeIdentifier
_additional_params_ = {}
_param_types_ = {
}
-class MsgUnknownPeerNoteType(_PMessageBase):
+class MsgUnknownPeerNoteType(_MessageBase):
name = consts.ConstMessage.UnknownPeerNoteType
_additional_params_ = {}
_param_types_ = {
}
-class MsgWatchGlobal(_PMessageBase):
+class MsgWatchGlobal(_MessageBase):
name = consts.ConstMessage.WatchGlobal
_additional_params_ = {}
_param_types_ = {
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <jU...@us...> - 2008-07-01 13:31:22
|
Revision: 470
http://fclient.svn.sourceforge.net/fclient/?rev=470&view=rev
Author: jUrner
Date: 2008-07-01 06:30:41 -0700 (Tue, 01 Jul 2008)
Log Message:
-----------
added requirements
Modified Paths:
--------------
trunk/fcp2/src/fcp2/__init__.py
Modified: trunk/fcp2/src/fcp2/__init__.py
===================================================================
--- trunk/fcp2/src/fcp2/__init__.py 2008-07-01 13:24:16 UTC (rev 469)
+++ trunk/fcp2/src/fcp2/__init__.py 2008-07-01 13:30:41 UTC (rev 470)
@@ -1,6 +1,8 @@
"""Python wrapper for the freenet client protocol version-2
See: [http://www.freenetproject.org] and [http://wiki.freenetproject.org/FreenetFCPSpec2Point0]
+
+@requires: python >= 2.5
"""
import os, sys
@@ -29,7 +31,6 @@
del hack, _RelImportHack
#<-- rel import hack
-
#****************************************************************************************
#
#****************************************************************************************
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <jU...@us...> - 2008-07-01 13:25:27
|
Revision: 469
http://fclient.svn.sourceforge.net/fclient/?rev=469&view=rev
Author: jUrner
Date: 2008-07-01 06:24:16 -0700 (Tue, 01 Jul 2008)
Log Message:
-----------
a few fixes
Modified Paths:
--------------
trunk/fcp2/src/fcp2/config.py
Modified: trunk/fcp2/src/fcp2/config.py
===================================================================
--- trunk/fcp2/src/fcp2/config.py 2008-07-01 13:23:33 UTC (rev 468)
+++ trunk/fcp2/src/fcp2/config.py 2008-07-01 13:24:16 UTC (rev 469)
@@ -70,7 +70,7 @@
#****************************************************************************************
ConfigKeySep = '.'
-class ConfigDataType:#
+class ConfigDataType:
"""Basic data types in config messages"""
Boolean = 'boolean'
Number = 'number'
@@ -343,7 +343,7 @@
out.append(parent.name)
parent = parent.parent
out.reverse()
- return consts.ConfigKeySep.join(out)
+ return ConfigKeySep.join(out)
def walk(self):
@@ -430,8 +430,8 @@
@return: (str) key
@note: if the key does not contain the paramClass it is returned unchanged
"""
- head, tail = message.ConfigMessageParamTypes.splitParamClass(key)
- if head in message.ConfigMessageParamTypes.ParamClasses:
+ head, tail = _ConfigMessageParamTypes.splitParamClass(key)
+ if head in _ConfigMessageParamTypes.ParamClasses:
return tail
return tail
@@ -446,7 +446,7 @@
continue
key = node.key()
- result = node.values.get(consts.ConfigValueClass.Current, None)
+ result = node.values.get(ConfigValueClass.Current, None)
if result is not None:
out[key] = result[0]
return out
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <jU...@us...> - 2008-07-01 13:24:01
|
Revision: 468
http://fclient.svn.sourceforge.net/fclient/?rev=468&view=rev
Author: jUrner
Date: 2008-07-01 06:23:33 -0700 (Tue, 01 Jul 2008)
Log Message:
-----------
removed some leftovers
Modified Paths:
--------------
trunk/fcp2/src/fcp2/__init__.py
Modified: trunk/fcp2/src/fcp2/__init__.py
===================================================================
--- trunk/fcp2/src/fcp2/__init__.py 2008-07-01 11:29:17 UTC (rev 467)
+++ trunk/fcp2/src/fcp2/__init__.py 2008-07-01 13:23:33 UTC (rev 468)
@@ -33,5 +33,4 @@
#****************************************************************************************
#
#****************************************************************************************
-for i in sorted(dir()): print i
-print '<<<<<<<<<<<<<<<<<<<'
\ No newline at end of file
+
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <jU...@us...> - 2008-07-01 11:29:09
|
Revision: 467
http://fclient.svn.sourceforge.net/fclient/?rev=467&view=rev
Author: jUrner
Date: 2008-07-01 04:29:17 -0700 (Tue, 01 Jul 2008)
Log Message:
-----------
epydoc does not create docs for imported symbols. use showimports as workaround
Modified Paths:
--------------
trunk/fcp2/src/fcp2/scripts/gen_docs.py
Modified: trunk/fcp2/src/fcp2/scripts/gen_docs.py
===================================================================
--- trunk/fcp2/src/fcp2/scripts/gen_docs.py 2008-07-01 11:28:33 UTC (rev 466)
+++ trunk/fcp2/src/fcp2/scripts/gen_docs.py 2008-07-01 11:29:17 UTC (rev 467)
@@ -50,6 +50,7 @@
'-v',
'-o%s' % EPYDOC_DIR,
'--src-code-tab-width', '4',
+ '--show-imports',
#'--debug',
PACKAGE_DIR,
]
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <jU...@us...> - 2008-07-01 11:28:24
|
Revision: 466
http://fclient.svn.sourceforge.net/fclient/?rev=466&view=rev
Author: jUrner
Date: 2008-07-01 04:28:33 -0700 (Tue, 01 Jul 2008)
Log Message:
-----------
for ease of use, all necessary symbols are now imported to main
Modified Paths:
--------------
trunk/fcp2/src/fcp2/types.py
Modified: trunk/fcp2/src/fcp2/types.py
===================================================================
--- trunk/fcp2/src/fcp2/types.py 2008-07-01 11:28:16 UTC (rev 465)
+++ trunk/fcp2/src/fcp2/types.py 2008-07-01 11:28:33 UTC (rev 466)
@@ -24,7 +24,7 @@
#*************************************************************************************
#
#*************************************************************************************
-class FcpType(object):
+class Type(object):
@classmethod
def pythonToFcp(clss, value):
@@ -35,7 +35,7 @@
return value
-class FcpTypeString(FcpType):
+class TypeString(Type):
@classmethod
def pythonToFcp(clss, value):
@@ -46,7 +46,7 @@
return value
-class FcpTypeBool(FcpType):
+class TypeBool(Type):
@classmethod
def pythonToFcp(clss, value):
@@ -57,7 +57,7 @@
return value == consts.FcpTrue
-class FcpTypeInt(FcpType):
+class TypeInt(Type):
@classmethod
def pythonToFcp(clss, value):
@@ -68,7 +68,7 @@
return int(value)
-class FcpTypeFloat(FcpType):
+class TypeFloat(Type):
@classmethod
def pythonToFcp(clss, value):
@@ -80,7 +80,7 @@
# GetFailed sets the ExpectedDataLenght field to '' (empty string). Fix this to show up as -1
-class FcpTypeInt_GetFailed_ExpectedDataLenght(FcpType):
+class TypeInt_GetFailed_ExpectedDataLenght(Type):
@classmethod
def pythonToFcp(clss, value):
@@ -93,7 +93,7 @@
return int(value)
-class FcpTypeIntWithBounds(FcpType):
+class TypeIntWithBounds(Type):
def __init__(self, lowerBound, upperBound):
self.lowerBound = lowerBound
@@ -106,7 +106,7 @@
return int(value)
-class FcpTypeBase64EncodedString(FcpType):
+class TypeBase64EncodedString(Type):
@classmethod
def pythonToFcp(clss, value):
@@ -117,7 +117,7 @@
return base64.b64decode(value)
-class FcpTypeTime(FcpType):
+class TypeTime(Type):
@classmethod
def pythonToFcp(clss, value):
@@ -127,19 +127,19 @@
def fcpToPython(clss, value):
return int(value) / 1000
-class FcpTypeTimeDelta(FcpType):
+class TypeTimeDelta(Type):
"""Time durations passed as tuple((int) number, modifier).
For modifiers see : L{consts.TimeDeltaPostfix}. Number can be -1
aswell, meaniong 'not set' or 'undefined'.
- >>> FcpTypeTimeDelta.fcpToPython('1000day')
+ >>> TypeTimeDelta.fcpToPython('1000day')
(1000, 'day')
- >>> FcpTypeTimeDelta.fcpToPython('arbitrary')
+ >>> TypeTimeDelta.fcpToPython('arbitrary')
(-1, '')
- >>> FcpTypeTimeDelta.pythonToFcp( (1000, 'day') )
+ >>> TypeTimeDelta.pythonToFcp( (1000, 'day') )
'1000day'
"""
@@ -160,31 +160,31 @@
return (num, tail)
return (-1, consts.TimeDeltaPostfix.Second)
-class FcpTypePercent(FcpTypeFloat): pass
-class FcpTypeUri(FcpType): pass
+class TypePercent(TypeFloat): pass
+class TypeUri(Type): pass
-class FcpTypeIP(FcpType): pass
-class FcpTypeIPList(FcpType): pass
-class FcpTypeIPort(FcpType): pass
-class FcpTypeStringList(FcpType): pass
-class FcpTypeDirname(FcpType): pass
-class FcpTypeFilename(FcpType): pass
-class FcpTypeByteAmount(FcpType):
+class TypeIP(Type): pass
+class TypeIPList(Type): pass
+class TypeIPort(Type): pass
+class TypeStringList(Type): pass
+class TypeDirname(Type): pass
+class TypeFilename(Type): pass
+class TypeByteAmount(Type):
"""Byte amounts are passed as tuple((int, float) number, modifier).
For modifiers see : L{consts.ByteAmountPostfix}. Number of bytes can be -1
aswell, meaniong 'not set' or 'undefined'.
- >>> FcpTypeByteAmount.fcpToPython('1000k')
+ >>> TypeByteAmount.fcpToPython('1000k')
(1000, 'k')
- >>> FcpTypeByteAmount.fcpToPython('1.3k')
+ >>> TypeByteAmount.fcpToPython('1.3k')
(1.3, 'k')
- >>> FcpTypeByteAmount.fcpToPython('arbitrary')
+ >>> TypeByteAmount.fcpToPython('arbitrary')
(-1, '')
- >>> FcpTypeByteAmount.pythonToFcp( (1000, 'k') )
+ >>> TypeByteAmount.pythonToFcp( (1000, 'k') )
'1000k'
"""
@@ -207,14 +207,14 @@
return (num, tail)
return (-1, consts.ByteAmountPostfix.Bytes)
-class FcpTypePercent(FcpTypeFloat): pass
-class FcpTypeUri(FcpType): pass
+class TypePercent(TypeFloat): pass
+class TypeUri(Type): pass
# special choice types for config message
-class FcpTypeChoiceFProxyCss(FcpType):
+class TypeChoiceFProxyCss(Type):
Clean = 'Clean'
Boxed = 'boxed'
GrayAndBlue = 'grayandblue'
@@ -223,7 +223,7 @@
ChoicesAll = (Clean, Boxed, GrayAndBlue, Sky)
ChoicesAllowMultiple = False
-class FcpTypeChoiceLoggerPriority(FcpType):
+class TypeChoiceLoggerPriority(Type):
Error = 'ERROR'
Normal = 'NORMAL'
Minor = 'MINOR'
@@ -232,7 +232,7 @@
ChoicesAll = (Error, Normal, Minor, Debug)
ChoicesAllowMultiple = False
-class FcpTypeChoiceNodeDownloadAllowedDirs(FcpType):
+class TypeChoiceNodeDownloadAllowedDirs(Type):
All = 'all'
Downloads = 'downloads'
Nowhere = ''
@@ -240,13 +240,13 @@
ChoicesAll = (All, Downloads, Nowhere)
ChoicesAllowMultiple = False
-class FcpTypeChoiceNodeUploadAllowedDirs(FcpType):
+class TypeChoiceNodeUploadAllowedDirs(Type):
All = 'all'
Nowhere = ''
ChoicesAll = (All, Nowhere)
ChoicesAllowMultiple = False
-class FcpTypeChoicePriorityPolicy(FcpType):
+class TypeChoicePriorityPolicy(Type):
Hard = 'HARD'
Soft = 'SOFT'
@@ -254,7 +254,7 @@
ChoicesAllowMultiple = False
-class FcpTypeChoiceSSLVersion(FcpType):
+class TypeChoiceSSLVersion(Type):
Stl = 'STL'
SslV3 = 'SSLV3'
TlsV1 = 'TLSv1'
@@ -262,6 +262,8 @@
ChoicesAll = (Stl, SslV3, TlsV1)
ChoicesAllowMultiple = False
+
+__all__ = [i for i in dir() if i[0].isupper() and not i.startswith('_')]
#********************************************************************************************
#
#********************************************************************************************
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <jU...@us...> - 2008-07-01 11:28:17
|
Revision: 465
http://fclient.svn.sourceforge.net/fclient/?rev=465&view=rev
Author: jUrner
Date: 2008-07-01 04:28:16 -0700 (Tue, 01 Jul 2008)
Log Message:
-----------
for ease of use, all necessary symbols are now imported to main
Modified Paths:
--------------
trunk/fcp2/src/fcp2/test_fcp/test_key.py
Modified: trunk/fcp2/src/fcp2/test_fcp/test_key.py
===================================================================
--- trunk/fcp2/src/fcp2/test_fcp/test_key.py 2008-07-01 11:28:03 UTC (rev 464)
+++ trunk/fcp2/src/fcp2/test_fcp/test_key.py 2008-07-01 11:28:16 UTC (rev 465)
@@ -13,36 +13,38 @@
def __del__(self): sys.path.pop(0)
hack = _RelImportHack(3)
-from fcp2.client import Client
-from fcp2 import consts
-from fcp2 import key
-from fcp2 import types
+import fcp2
-
-
del hack
#<-- rel import hack
+
#****************************************************************************************
#
#****************************************************************************************
+# for testing some valid key data
+DummyKeyData = 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa,aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa,AAAAAAA'
+
+#****************************************************************************************
+#
+#****************************************************************************************
class Test_CHK(unittest.TestCase):
def test_fromString(self):
- p = 'CHK@' + key.DummyKeyData + '/'
- myKey = key.CHK.fromString(p)
- self.assertEqual(myKey.keyData, key.DummyKeyData)
+ p = 'CHK@' + DummyKeyData + '/'
+ myKey = fcp2.KeyCHK.fromString(p)
+ self.assertEqual(myKey.keyData, DummyKeyData)
self.failUnless(myKey.filename is None)
self.assertEqual(myKey.toString(), p)
- p = 'CHK@' + key.DummyKeyData + '/foo/'
- myKey = key.CHK.fromString(p)
- self.assertEqual(myKey.keyData, key.DummyKeyData)
+ p = 'CHK@' + DummyKeyData + '/foo/'
+ myKey = fcp2.KeyCHK.fromString(p)
+ self.assertEqual(myKey.keyData, DummyKeyData)
self.assertEqual(myKey.filename, 'foo')
self.assertEqual(myKey.toString(), p)
p = 'CHK@'
- myKey = key.CHK.fromString(p)
+ myKey = fcp2.KeyCHK.fromString(p)
self.failUnless(myKey is None)
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <jU...@us...> - 2008-07-01 11:28:00
|
Revision: 464
http://fclient.svn.sourceforge.net/fclient/?rev=464&view=rev
Author: jUrner
Date: 2008-07-01 04:28:03 -0700 (Tue, 01 Jul 2008)
Log Message:
-----------
for ease of use, all necessary symbols are now imported to main
Modified Paths:
--------------
trunk/fcp2/src/fcp2/test_fcp/test_config.py
Modified: trunk/fcp2/src/fcp2/test_fcp/test_config.py
===================================================================
--- trunk/fcp2/src/fcp2/test_fcp/test_config.py 2008-07-01 11:27:56 UTC (rev 463)
+++ trunk/fcp2/src/fcp2/test_fcp/test_config.py 2008-07-01 11:28:03 UTC (rev 464)
@@ -13,12 +13,8 @@
def __del__(self): sys.path.pop(0)
hack = _RelImportHack(3)
-from fcp2.client import Client
-from fcp2 import consts
-from fcp2 import types
+import fcp2
-
-
del hack
#<-- rel import hack
#****************************************************************************************
@@ -35,7 +31,7 @@
'default.console.enabled': 'false',
}
- cfg = Client.config.Config(Msg)
+ cfg = fcp2.Config(Msg)
# check if all items and values have been set as expected
consoleItem = cfg.children.get('console', None)
@@ -44,18 +40,18 @@
enabled = consoleItem.children.get('enabled', None)
self.failIf(enabled is None)
- current = enabled.values.get(consts.ConfigValueClass.Current, None)
+ current = enabled.values.get(fcp2.ConfigValueClass.Current, None)
self.failIf(current is None)
value, valueType = current
self.assertEqual(value, 'true')
- self.assertEqual(valueType, types.FcpTypeBool)
+ self.assertEqual(valueType, fcp2.TypeBool)
- default = enabled.values.get(consts.ConfigValueClass.Default, None)
+ default = enabled.values.get(fcp2.ConfigValueClass.Default, None)
self.failIf(default is None)
value, valueType = default
self.assertEqual(value, 'false')
- self.assertEqual(valueType, types.FcpTypeBool)
+ self.assertEqual(valueType, fcp2.TypeBool)
#*********************************************************************************
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|
|
From: <jU...@us...> - 2008-07-01 11:27:47
|
Revision: 463
http://fclient.svn.sourceforge.net/fclient/?rev=463&view=rev
Author: jUrner
Date: 2008-07-01 04:27:56 -0700 (Tue, 01 Jul 2008)
Log Message:
-----------
for ease of use, all necessary symbols are now imported to main
Modified Paths:
--------------
trunk/fcp2/src/fcp2/test_fcp/test_client.py
Modified: trunk/fcp2/src/fcp2/test_fcp/test_client.py
===================================================================
--- trunk/fcp2/src/fcp2/test_fcp/test_client.py 2008-07-01 11:27:47 UTC (rev 462)
+++ trunk/fcp2/src/fcp2/test_fcp/test_client.py 2008-07-01 11:27:56 UTC (rev 463)
@@ -17,13 +17,8 @@
def __del__(self): sys.path.pop(0)
hack = _RelImportHack(3)
-from fcp2 import client
-from fcp2.client import Client
-from fcp2 import consts
+import fcp2
-from fcp2 import iohandler
-from fcp2 import message
-
del hack
#<-- rel import hack
@@ -34,16 +29,17 @@
DIR = os.path.dirname(os.path.abspath(__file__))
##TestAgainstNode = 0 # don't know how to test against node. Do not touch this!
-
+# for testing some valid key data
+DummyKeyData = 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa,aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa,AAAAAAA'
#***********************************************************************************
#
#***********************************************************************************
class BaseTestClient(unittest.TestCase):
"""Base class for all tests"""
- client = Client(
- #debugVerbosity=Client.consts.DebugVerbosity.Debug
- debugVerbosity=Client.consts.DebugVerbosity.Quiet
+ client = fcp2.Client(
+ #debugVerbosity=Client.fcp2.DebugVerbosity.Debug
+ debugVerbosity=fcp2.ConstDebugVerbosity.Quiet
)
client.ioHandler.setIOPrototype(DummyIO)
@@ -88,7 +84,7 @@
self.assertHasNextEvent(
self.client.events.ClientConnected,
- consts.Message.NodeHello,
+ fcp2.MsgNodeHello,
)
self.assertHasNextEvent(None)
self.assertHasNextMessage(None)
@@ -100,14 +96,14 @@
self.client.close()
self.assertHasNextEvent(
self.client.events.ClientDisconnected,
- consts.Message.ClientDisconnected,
- ('DisconnectReason', consts.DisconnectReason.Close),
+ fcp2.MsgClientDisconnected,
+ ('DisconnectReason', fcp2.ConstDisconnectReason.Close),
)
def assertHasNextEvent(self,
expectedEvent=None,
- messageName=None,
+ message=None,
param1=None,
param2=None,
param3=None,
@@ -130,8 +126,8 @@
event, msg = self.events.pop(0)
self.assertEqual(event, expectedEvent)
- if messageName is not None:
- self.assertEqual(msg.name, messageName)
+ if message is not None:
+ self.assertEqual(msg.name, message.name)
if param1 is not None:
param1, value1 = param1
self.failUnless(param1 in msg.params)
@@ -159,7 +155,7 @@
return msg
def assertHasNextMessage(self,
- messageName,
+ message,
param1=None,
param2=None,
param3=None,
@@ -185,11 +181,11 @@
@return: message if a message was received or None
"""
msg = self.getNextMessage()
- if messageName is None:
+ if message is None:
self.failUnless(msg is None)
else:
self.failIf(msg is None)
- self.assertEqual(msg.name, messageName)
+ self.assertEqual(msg.name, message.name)
if param1 is not None:
param1, value1 = param1
self.failUnless(param1 in msg.params)
@@ -256,10 +252,10 @@
def sendResponseMessage(self, messageName, data=None, callNext=True, **params):
"""Sends a message to the client"""
- if messageName in message.MessagesAll:
- msgClass = message.MessagesAll[messageName]
+ if messageName in fcp2.MessagesAll:
+ msgClass = fcp2.MessagesAll[messageName]
else:
- msgClass = message.newMessageClass(messageName)
+ msgClass = fcp2.newMessageClass(messageName)
msg = msgClass(data=data, **params)
self.client.ioHandler.io.readBuffer += msg.toString()
if callNext:
@@ -280,7 +276,7 @@
self.client.ioHandler.io.setReverseDirection(True)
try:
msg = self.client.ioHandler.readMessage()
- except consts.IOTimeoutError:
+ except fcp2.ErrorIOTimeout:
return None
finally:
self.client.ioHandler.io.setReverseDirection(False)
@@ -328,8 +324,8 @@
self.client.close()
self.assertHasNextEvent(
self.client.events.ClientDisconnected,
- consts.Message.ClientDisconnected,
- ('DisconnectReason', consts.DisconnectReason.Close),
+ fcp2.MsgClientDisconnected,
+ ('DisconnectReason', fcp2.ConstDisconnectReason.Close),
)
def test_close_connected_client(self):
@@ -337,8 +333,8 @@
self.client.close()
self.assertHasNextEvent(
self.client.events.ClientDisconnected,
- consts.Message.ClientDisconnected,
- ('DisconnectReason', consts.DisconnectReason.Close),
+ fcp2.MsgClientDisconnected,
+ ('DisconnectReason', fcp2.ConstDisconnectReason.Close),
)
#***********************************************************************************
@@ -388,7 +384,7 @@
self.assertHasNextEvent(
self.client.events.ClientConnected,
- consts.Message.NodeHello,
+ fcp2.MsgNodeHello,
)
self.assertHasNextEvent(None)
self.assertHasNextMessage(None)
@@ -403,8 +399,8 @@
self.failUnless(nodeHello is None)
self.assertHasNextEvent(
self.client.events.ClientDisconnected,
- consts.Message.ClientDisconnected,
- ('DisconnectReason', consts.DisconnectReason.IOConnectFailed),
+ fcp2.MsgClientDisconnected,
+ ('DisconnectReason', fcp2.ConstDisconnectReason.IOConnectFailed),
)
self.assertHasNextEvent(None)
self.assertHasNextMessage(None)
@@ -418,8 +414,8 @@
self.failUnless(nodeHello is None)
self.assertHasNextEvent(
self.client.events.ClientDisconnected,
- consts.Message.ClientDisconnected,
- ('DisconnectReason', consts.DisconnectReason.NoNodeHello),
+ fcp2.MsgClientDisconnected,
+ ('DisconnectReason', fcp2.ConstDisconnectReason.NoNodeHello),
)
self.assertHasNextEvent(None)
self.assertHasNextMessage(None)
@@ -434,12 +430,12 @@
enum.next()
except StopIteration:
break
- except consts.IOBrokenError, d:
+ except fcp2.ErrorIOBroken, d:
errorRaised = True
self.assertHasNextEvent(
self.client.events.ClientDisconnected,
- consts.Message.ClientDisconnected,
- ('DisconnectReason', consts.DisconnectReason.ConnectionDied),
+ fcp2.MsgClientDisconnected,
+ ('DisconnectReason', fcp2.ConstDisconnectReason.ConnectionDied),
#('Param', None),
)
break
@@ -462,8 +458,8 @@
self.failUnless(nodeHello is None)
self.assertHasNextEvent(
self.client.events.ClientDisconnected,
- consts.Message.ClientDisconnected,
- ('DisconnectReason', consts.DisconnectReason.UnknownNodeHello),
+ fcp2.MsgClientDisconnected,
+ ('DisconnectReason', fcp2.ConstDisconnectReason.UnknownNodeHello),
)
self.assertHasNextEvent(None)
self.assertHasNextMessage(None)
@@ -491,7 +487,7 @@
self.assertHasNextEvent(
self.client.events.ClientConnected,
- consts.Message.NodeHello,
+ fcp2.MsgNodeHello,
)
self.assertHasNextEvent(None)
#self.assertHasNextMessage(None) # due to our message hacking, NodeHello is still in io
@@ -522,12 +518,12 @@
self.assertHasNextEvent(
self.client.events.ClientDisconnected,
- consts.Message.ClientDisconnected,
- ('DisconnectReason', consts.DisconnectReason.Reconnect)
+ fcp2.MsgClientDisconnected,
+ ('DisconnectReason', fcp2.ConstDisconnectReason.Reconnect)
)
self.assertHasNextEvent(
self.client.events.ClientConnected,
- consts.Message.NodeHello,
+ fcp2.MsgNodeHello,
)
self.assertHasNextEvent(None)
#self.assertHasNextMessage(None) # due to our message hacking, NodeHello is still in io
@@ -556,8 +552,8 @@
self.assertHasNextEvent(
self.client.events.ClientDisconnected,
- consts.Message.ClientDisconnected,
- ('DisconnectReason', consts.DisconnectReason.VersionMissmatch)
+ fcp2.MsgClientDisconnected,
+ ('DisconnectReason', fcp2.ConstDisconnectReason.VersionMissmatch)
)
self.assertHasNextEvent(None)
self.assertHasNextMessage(None)
@@ -586,8 +582,8 @@
self.assertHasNextEvent(
self.client.events.ClientDisconnected,
- consts.Message.ClientDisconnected,
- ('DisconnectReason', consts.DisconnectReason.VersionMissmatch)
+ fcp2.MsgClientDisconnected,
+ ('DisconnectReason', fcp2.ConstDisconnectReason.VersionMissmatch)
)
self.assertHasNextEvent(None)
self.assertHasNextMessage(None)
@@ -608,8 +604,8 @@
self.assertHasNextEvent(
self.client.events.ClientDisconnected,
- consts.Message.ClientDisconnected,
- ('DisconnectReason', consts.DisconnectReason.DuplicateClientName)
+ fcp2.MsgClientDisconnected,
+ ('DisconnectReason', fcp2.ConstDisconnectReason.DuplicateClientName)
)
self.assertHasNextEvent(None)
self.assertHasNextMessage(None)
@@ -624,7 +620,7 @@
def test_closeNode(self):
self.connectClient()
self.client.closeNode()
- self.assertHasNextMessage('Shutdown')
+ self.assertHasNextMessage(fcp2.MsgShutdown)
self.sendResponseMessage(
'ProtocolError',
Code='18'
@@ -632,8 +628,8 @@
self.assertHasNextEvent(
self.client.events.ClientDisconnected,
- consts.Message.ClientDisconnected,
- ('DisconnectReason', consts.DisconnectReason.NodeClosing)
+ fcp2.MsgClientDisconnected,
+ ('DisconnectReason', fcp2.ConstDisconnectReason.NodeClosing)
)
self.assertHasNextEvent(None)
self.assertHasNextMessage(None)
@@ -665,7 +661,7 @@
def test_get_setDebugVerbosity(self):
oldVerbosity = self.client.getDebugVerbosity()
- self.client.setDebugVerbosity(self.client.consts.DebugVerbosity.Quiet)
+ self.client.setDebugVerbosity(fcp2.ConstDebugVerbosity.Quiet)
self.client.setDebugVerbosity(oldVerbosity)
#***********************************************************************************
@@ -727,7 +723,7 @@
msg = self.client.next()
msg2 = self.assertHasNextEvent(
self.client.events.Idle,
- self.client.message.ClientSocketTimeout.name,
+ fcp2.MsgClientSocketTimeout,
)
self.failUnless(msg == msg2)
@@ -736,11 +732,11 @@
self.connectClient()
self.getIO().setBroken(True)
- self.assertRaises(consts.IOBrokenError, self.client.next, )
+ self.assertRaises(fcp2.ErrorIOBroken, self.client.next, )
self.assertHasNextEvent(
self.client.events.ClientDisconnected,
- consts.Message.ClientDisconnected,
- ('DisconnectReason', consts.DisconnectReason.ConnectionDied)
+ fcp2.MsgClientDisconnected,
+ ('DisconnectReason', fcp2.ConstDisconnectReason.ConnectionDied)
)
self.assertHasNextEvent(None)
@@ -777,11 +773,11 @@
self.connectClient()
self.getIO().setBroken(True)
- self.assertRaises(consts.IOBrokenError, self.client.sendMessage, self.client.message.ClientHello())
+ self.assertRaises(fcp2.ErrorIOBroken, self.client.sendMessage, fcp2.MsgClientHello())
self.assertHasNextEvent(
self.client.events.ClientDisconnected,
- consts.Message.ClientDisconnected,
- ('DisconnectReason', consts.DisconnectReason.ConnectionDied)
+ fcp2.MsgClientDisconnected,
+ ('DisconnectReason', fcp2.ConstDisconnectReason.ConnectionDied)
)
self.assertHasNextEvent(None)
@@ -791,9 +787,9 @@
def test_messageSend(self):
self.connectClient()
- self.client.sendMessage(self.client.message.ClientHello())
+ self.client.sendMessage(fcp2.MsgClientHello())
msg = self.client.next()
- self.assertHasNextMessage('ClientHello')
+ self.assertHasNextMessage(fcp2.MsgClientHello)
self.assertHasNextEvent(self.client.events.Idle)
self.assertHasNextEvent(None)
@@ -818,7 +814,7 @@
withDataTypes=True,
)
msg = self.client.next()
- self.assertHasNextMessage('GetConfig',
+ self.assertHasNextMessage(fcp2.MsgGetConfig,
('WithCurrent', True),
('WithDefaults', True),
('WithExpertFlag', True),
@@ -836,7 +832,7 @@
)
self.assertHasNextEvent(
self.client.events.ConfigData,
- consts.Message.ConfigData,
+ fcp2.MsgConfigData,
('foo', '1234')
)
@@ -855,7 +851,7 @@
{'foo': '1234'}
)
msg = self.client.next()
- self.assertHasNextMessage('ModifyConfig',
+ self.assertHasNextMessage(fcp2.MsgModifyConfig,
('foo', '1234'),
)
self.assertHasNextEvent(self.client.events.Idle)
@@ -871,22 +867,22 @@
def test_100_request_registered(self):
self.connectClient()
- myKey = self.client.key.key('KSK@foo')
+ myKey = fcp2.Key('KSK@foo')
myIdentifier = self.client.getData(myKey)
requestsAll = self.client.getRequests()
self.failUnless(myIdentifier in requestsAll)
myRequest = self.client.getRequest(myIdentifier)
- self.assertEqual(myRequest['RequestType'], self.client.consts.RequestType.GetData)
+ self.assertEqual(myRequest['RequestType'], fcp2.ConstRequestType.GetData)
def test_300_message_send(self):
self.connectClient()
- myKey = self.client.key.key('KSK@foo')
+ myKey = fcp2.Key('KSK@foo')
myIdentifier = self.client.getData(myKey)
requestsAll = self.client.getRequests()
self.assertHasNextMessage(
- 'ClientGet',
+ fcp2.MsgClientGet,
('URI', myKey),
)
@@ -898,11 +894,11 @@
def test_400_progress(self):
self.connectClient()
- myKey = self.client.key.key('KSK@foo')
+ myKey = fcp2.Key('KSK@foo')
myIdentifier = self.client.getData(myKey)
requestsAll = self.client.getRequests()
- self.assertHasNextMessage('ClientGet')
+ self.assertHasNextMessage(fcp2.MsgClientGet)
self.sendResponseMessage(
'SimpleProgress',
Identifier=myIdentifier,
@@ -915,7 +911,7 @@
self.assertHasNextEvent(
self.client.events.RequestProgress,
- 'ClientGet',
+ fcp2.MsgClientGet,
)
self.assertHasNextEvent(None)
@@ -926,11 +922,11 @@
def test_500_completed_successfuly(self):
self.connectClient()
- myKey = self.client.key.key('KSK@foo')
+ myKey = fcp2.Key('KSK@foo')
myIdentifier = self.client.getData(myKey)
requestsAll = self.client.getRequests()
- self.assertHasNextMessage('ClientGet')
+ self.assertHasNextMessage(fcp2.MsgClientGet)
data = 'foo'
params = {
'Identifier': myIdentifier,
@@ -955,10 +951,10 @@
# client should complete and remove the request
self.assertHasNextEvent(
self.client.events.RequestCompleted,
- consts.Message.ClientGet,
- ('RequestStatus', consts.RequestStatus.Success |
- consts.RequestStatus.RemovedFromQueue |
- consts.RequestStatus.Completed
+ fcp2.MsgClientGet,
+ ('RequestStatus', fcp2.ConstRequestStatus.Success |
+ fcp2.ConstRequestStatus.RemovedFromQueue |
+ fcp2.ConstRequestStatus.Completed
),
data=data
)
@@ -973,13 +969,13 @@
def test_600_completed_with_error(self):
self.connectClient()
- myKey = self.client.key.key('KSK@foo')
+ myKey = fcp2.Key('KSK@foo')
myIdentifier = self.client.getData(myKey)
requestsAll = self.client.getRequests()
- self.assertHasNextMessage('ClientGet')
+ self.assertHasNextMessage(fcp2.MsgClientGet)
self.sendResponseMessage(
- 'GetFailed',
+ fcp2.MsgGetFailed.name,
Code='28', # All data not found
Identifier=myIdentifier,
Global='false',
@@ -987,10 +983,10 @@
)
self.assertHasNextEvent(
self.client.events.RequestFailed,
- consts.Message.ClientGet,
- ('RequestStatus', consts.RequestStatus.Error |
- consts.RequestStatus.RemovedFromQueue |
- consts.RequestStatus.Completed
+ fcp2.MsgClientGet,
+ ('RequestStatus', fcp2.ConstRequestStatus.Error |
+ fcp2.ConstRequestStatus.RemovedFromQueue |
+ fcp2.ConstRequestStatus.Completed
),
)
@@ -1005,11 +1001,11 @@
def test_700_peristent_request_auto_retrieve_data(self):
self.connectClient()
- myKey = self.client.key.key('KSK@foo')
- myIdentifier = self.client.getData(myKey, persistence=self.client.consts.Persistence.Forever)
+ myKey = fcp2.Key('KSK@foo')
+ myIdentifier = self.client.getData(myKey, persistence=fcp2.ConstPersistence.Forever)
requestsAll = self.client.getRequests()
- self.assertHasNextMessage('ClientGet')
+ self.assertHasNextMessage(fcp2.MsgClientGet)
data = 'foo'
params = {
@@ -1023,7 +1019,7 @@
**params
)
- self.assertHasNextMessage('GetRequestStatus')
+ self.assertHasNextMessage(fcp2.MsgGetRequestStatus)
self.assertHasNextEvent(None)
self.assertHasNextMessage(None)
@@ -1033,11 +1029,11 @@
def test_800_peristent_request_not_removed_on_success(self):
self.connectClient()
- myKey = self.client.key.key('KSK@foo')
- myIdentifier = self.client.getData(myKey, persistence=self.client.consts.Persistence.Forever)
+ myKey = fcp2.Key('KSK@foo')
+ myIdentifier = self.client.getData(myKey, persistence=fcp2.ConstPersistence.Forever)
requestsAll = self.client.getRequests()
- self.assertHasNextMessage('ClientGet')
+ self.assertHasNextMessage(fcp2.MsgClientGet)
data = 'foo'
self.sendResponseMessage(
'AllData',
@@ -1059,11 +1055,11 @@
def test_900_peristent_request_not_removed_on_error(self):
self.connectClient()
- myKey = self.client.key.key('KSK@foo')
- myIdentifier = self.client.getData(myKey, persistence=self.client.consts.Persistence.Forever)
+ myKey = fcp2.Key('KSK@foo')
+ myIdentifier = self.client.getData(myKey, persistence=fcp2.ConstPersistence.Forever)
requestsAll = self.client.getRequests()
- self.assertHasNextMessage('ClientGet')
+ self.assertHasNextMessage(fcp2.MsgClientGet)
self.sendResponseMessage(
'GetFailed',
Code='28', # All data not found
@@ -1094,15 +1090,15 @@
callNext=False
)
- self.assertRaises(consts.MessageParseError, self.client.next)
+ self.assertRaises(fcp2.ErrorMessageParse, self.client.next)
self.failIf(myIdentifier in requestsAll)
def test_920_restore_peristent_request_success(self):
self.connectClient()
requestsAll = self.client.getRequests()
- myKey = self.client.key.key('KSK@foo')
- myIdentifier = self.client.getData(myKey, persistence=self.client.consts.Persistence.Forever)
+ 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]
@@ -1115,9 +1111,9 @@
myRequest = self.client.getRequest(myIdentifier)
msg = self.assertHasNextEvent(
self.client.events.RequestRestored,
- 'ClientGet',
+ fcp2.MsgClientGet,
('Identifier', myIdentifier),
- ('RequestStatus', consts.RequestStatus.Restored), # no RequestStatus.Pending flag should be set here
+ ('RequestStatus', fcp2.ConstRequestStatus.Restored), # no RequestStatus.Pending flag should be set here
)
@@ -1129,24 +1125,24 @@
def test_100_request_registered(self):
self.connectClient()
- myKey = self.client.key.key('KSK@foo')
+ myKey = fcp2.Key('KSK@foo')
myIdentifier = self.client.getFile(myKey, 'foo.txt')
requestsAll = self.client.getRequests()
self.failUnless(myIdentifier in requestsAll)
myRequest = self.client.getRequest(myIdentifier)
- self.assertEqual(myRequest['RequestType'], self.client.consts.RequestType.GetFile)
+ self.assertEqual(myRequest['RequestType'], fcp2.ConstRequestType.GetFile)
def test_200_key_object_is_accepted(self):
self.connectClient()
- myKey = self.client.key.key('KSK@foo')
+ myKey = fcp2.Key('KSK@foo')
myIdentifier = self.client.getFile(myKey, 'foo.txt')
requestsAll = self.client.getRequests()
def test_300_dda_denied(self):
self.connectClient()
- myKey = self.client.key.key('KSK@foo')
+ myKey = fcp2.Key('KSK@foo')
myIdentifier = self.client.getFile(
myKey,
os.path.join(DIR, 'DDATest.txt')
@@ -1154,7 +1150,7 @@
myRequest = self.client.getRequest(myIdentifier)
requestsAll = self.client.getRequests()
- self.assertHasNextMessage('ClientGet')
+ self.assertHasNextMessage(fcp2.MsgClientGet)
self.sendResponseMessage(
'ProtocolError',
Code=25, # DDADenied
@@ -1166,7 +1162,7 @@
# client should respond with a TestDDARequest
self.assertHasNextMessage(
- consts.Message.TestDDARequest,
+ fcp2.MsgTestDDARequest,
('Directory', DIR),
('WantWriteDirectory', True)
)
@@ -1184,7 +1180,7 @@
# client should respond with a TestDDAResponse
self.assertHasNextMessage(
- consts.Message.TestDDAResponse,
+ fcp2.MsgTestDDAResponse,
('Directory', DIR)
)
@@ -1203,7 +1199,7 @@
self.failIf(os.path.isfile(fpath))
# client sahould send a new ClientGet
- msg = self.assertHasNextMessage(consts.Message.ClientGet)
+ msg = self.assertHasNextMessage(fcp2.MsgClientGet)
# no events should have been triggered upo to now
self.assertHasNextEvent(None)
@@ -1230,16 +1226,16 @@
def test_100_request_registered(self):
self.connectClient()
- myKey = self.client.key.key('KSK@foo')
+ myKey = fcp2.Key('KSK@foo')
myIdentifier = self.client.getKeyInfo(myKey)
requestsAll = self.client.getRequests()
self.failUnless(myIdentifier in requestsAll)
myRequest = self.client.getRequest(myIdentifier)
- self.assertEqual(myRequest['RequestType'], self.client.consts.RequestType.GetKeyInfo)
+ self.assertEqual(myRequest['RequestType'], fcp2.ConstRequestType.GetKeyInfo)
def test_200_key_object_is_accepted(self):
self.connectClient()
- myKey = self.client.key.key('KSK@foo')
+ myKey = fcp2.Key('KSK@foo')
myIdentifier = self.client.getKeyInfo(myKey)
requestsAll = self.client.getRequests()
@@ -1247,12 +1243,12 @@
def test_300_getKeyInfo_Success(self):
self.connectClient()
- myKey = self.client.key.key('KSK@foo')
+ myKey = fcp2.Key('KSK@foo')
myIdentifier = self.client.getKeyInfo(myKey)
myRequest = self.client.getRequest(myIdentifier)
requestsAll = self.client.getRequests()
- self.assertHasNextMessage('ClientGet')
+ self.assertHasNextMessage(fcp2.MsgClientGet)
data = 'foo'
params = {
@@ -1267,10 +1263,10 @@
)
self.assertHasNextEvent(
self.client.events.RequestCompleted,
- consts.Message.ClientGet,
- ('RequestStatus', consts.RequestStatus.Success |
- consts.RequestStatus.RemovedFromQueue |
- consts.RequestStatus.Completed
+ fcp2.MsgClientGet,
+ ('RequestStatus', fcp2.ConstRequestStatus.Success |
+ fcp2.ConstRequestStatus.RemovedFromQueue |
+ fcp2.ConstRequestStatus.Completed
),
)
self.failIf(myIdentifier in requestsAll)
@@ -1284,12 +1280,12 @@
# test specdial case where ProtocolError.TooBig is handled as success
# request a arbitrary uri
- myKey = self.client.key.key('KSK@foo')
+ myKey = fcp2.Key('KSK@foo')
myIdentifier = self.client.getKeyInfo(myKey)
myRequest = self.client.getRequest(myIdentifier)
requestsAll = self.client.getRequests()
- self.assertHasNextMessage(consts.Message.ClientGet)
+ self.assertHasNextMessage(fcp2.MsgClientGet)
self.sendResponseMessage(
'GetFailed',
Code='21', # Too big
@@ -1299,10 +1295,10 @@
)
self.assertHasNextEvent(
self.client.events.RequestCompleted,
- consts.Message.ClientGet,
- ('RequestStatus', consts.RequestStatus.Success |
- consts.RequestStatus.RemovedFromQueue |
- consts.RequestStatus.Completed
+ fcp2.MsgClientGet,
+ ('RequestStatus', fcp2.ConstRequestStatus.Success |
+ fcp2.ConstRequestStatus.RemovedFromQueue |
+ fcp2.ConstRequestStatus.Completed
),
)
self.failIf(myIdentifier in requestsAll)
@@ -1315,12 +1311,12 @@
self.connectClient()
# request a arbitrary file
- myKey = self.client.key.key('KSK@foo')
+ myKey = fcp2.Key('KSK@foo')
myIdentifier = self.client.getKeyInfo(myKey)
myRequest = self.client.getRequest(myIdentifier)
requestsAll = self.client.getRequests()
- self.assertHasNextMessage(consts.Message.ClientGet)
+ self.assertHasNextMessage(fcp2.MsgClientGet)
self.sendResponseMessage(
'GetFailed',
Code='28', # All data not found
@@ -1330,10 +1326,10 @@
)
self.assertHasNextEvent(
self.client.events.RequestFailed,
- consts.Message.ClientGet,
- ('RequestStatus', consts.RequestStatus.Error |
- consts.RequestStatus.RemovedFromQueue |
- consts.RequestStatus.Completed
+ fcp2.MsgClientGet,
+ ('RequestStatus', fcp2.ConstRequestStatus.Error |
+ fcp2.ConstRequestStatus.RemovedFromQueue |
+ fcp2.ConstRequestStatus.Completed
),
)
self.failIf(myIdentifier in requestsAll)
@@ -1351,8 +1347,8 @@
self.sendResponseMessage('CloseConnectionDuplicateClientName')
msg = self.assertHasNextEvent(
self.client.events.ClientDisconnected,
- consts.Message.ClientDisconnected,
- ('DisconnectReason', consts.DisconnectReason.DuplicateClientName),
+ fcp2.MsgClientDisconnected,
+ ('DisconnectReason', fcp2.ConstDisconnectReason.DuplicateClientName),
)
self.failIf(self.ioOpen())
@@ -1363,13 +1359,13 @@
def test_1001_SocketDied_Receive(self):
self.connectClient()
self.getIO().setBroken(True)
- self.assertRaises(consts.IOBrokenError, self.client.next)
+ self.assertRaises(fcp2.ErrorIOBroken, self.client.next)
# check if ClientDisconnected events has been triggered
msg = self.assertHasNextEvent(
self.client.events.ClientDisconnected,
- consts.Message.ClientDisconnected,
- ('DisconnectReason', consts.DisconnectReason.ConnectionDied),
+ fcp2.MsgClientDisconnected,
+ ('DisconnectReason', fcp2.ConstDisconnectReason.ConnectionDied),
)
self.failIf(self.ioOpen())
@@ -1383,13 +1379,13 @@
self.getIO().setBroken(True)
# send a test message
- self.assertRaises(consts.IOBrokenError, self.client.sendMessage, message.newMessageClass('test')())
+ self.assertRaises(fcp2.ErrorIOBroken, self.client.sendMessage, fcp2.newMessageClass('test')())
# check if ClientDisconnected events has been triggered
msg = self.assertHasNextEvent(
self.client.events.ClientDisconnected,
- consts.Message.ClientDisconnected,
- ('DisconnectReason', consts.DisconnectReason.ConnectionDied),
+ fcp2.MsgClientDisconnected,
+ ('DisconnectReason', fcp2.ConstDisconnectReason.ConnectionDied),
)
self.failIf(self.ioOpen())
@@ -1402,7 +1398,7 @@
self.connectClient()
self.client.closeNode()
- msg = self.assertHasNextMessage(consts.Message.Shutdown)
+ msg = self.assertHasNextMessage(fcp2.MsgShutdown)
self.sendResponseMessage(
'ProtocolError',
Code='18', # Shutting down
@@ -1411,8 +1407,8 @@
# check events the client triggered
msg = self.assertHasNextEvent(
self.client.events.ClientDisconnected,
- consts.Message.ClientDisconnected,
- ('DisconnectReason', consts.DisconnectReason.NodeClosing)
+ fcp2.MsgClientDisconnected,
+ ('DisconnectReason', fcp2.ConstDisconnectReason.NodeClosing)
)
self.failIf(self.ioOpen())
@@ -1426,7 +1422,7 @@
for n, nodeHello in enumerate(self.client.iterConnect(duration=1, timeout=0.1)):
if n == 2:
self.assertHasNextMessage(
- consts.Message.ClientHello
+ fcp2.MsgClientHello
)
self.sendResponseMessage(
'NodeHello',
@@ -1447,8 +1443,8 @@
# check events the client triggered
msg = self.assertHasNextEvent(
self.client.events.ClientDisconnected,
- consts.Message.ClientDisconnected,
- ('DisconnectReason', consts.DisconnectReason.VersionMissmatch)
+ fcp2.MsgClientDisconnected,
+ ('DisconnectReason', fcp2.ConstDisconnectReason.VersionMissmatch)
)
self.failIf(self.ioOpen())
@@ -1470,12 +1466,12 @@
myRequest = self.client.getRequest(myIdentifier)
requestsAll = self.client.getRequests()
- self.assertHasNextMessage(consts.Message.ClientGet)
+ self.assertHasNextMessage(fcp2.MsgClientGet)
self.assertHasNextEvent(None)
self.failUnless(myIdentifier in requestsAll)
self.assertEqual(myIdentifier, myRequest['Identifier'])
- self.assertEqual(myRequest['RequestStatus'], consts.RequestStatus.Null)
+ self.assertEqual(myRequest['RequestStatus'], fcp2.ConstRequestStatus.Null)
self.assertHasNextEvent(None)
self.assertHasNextMessage(None)
@@ -1494,7 +1490,7 @@
myRequest = self.client.getRequest(myIdentifier)
requestsAll = self.client.getRequests()
- self.assertHasNextMessage(consts.Message.ClientGet)
+ self.assertHasNextMessage(fcp2.MsgClientGet)
# respond to the file request
self.sendResponseMessage(
@@ -1544,23 +1540,23 @@
# client should complete and remove the request
self.assertHasNextEvent(
self.client.events.RequestCompleted,
- consts.Message.ClientGet,
- ('RequestStatus', consts.RequestStatus.Success |
- consts.RequestStatus.RemovedFromQueue |
- consts.RequestStatus.Completed
+ fcp2.MsgClientGet,
+ ('RequestStatus', fcp2.ConstRequestStatus.Success |
+ fcp2.ConstRequestStatus.RemovedFromQueue |
+ fcp2.ConstRequestStatus.Completed
),
data=data
)
self.failIf(myIdentifier in requestsAll)
- self.failUnless(myRequest['RequestStatus'] & consts.RequestStatus.Completed)
+ self.failUnless(myRequest['RequestStatus'] & fcp2.ConstRequestStatus.Completed)
# cheat a bit to test peristence == Forever (client should not remove request)
requestsAll[myIdentifier] =myRequest
- myRequest['Persistence'] = consts.Persistence.Forever
- myRequest['RequestStatus'] &= ~(consts.RequestStatus.Success |
- consts.RequestStatus.Completed |
- consts.RequestStatus.RemovedFromQueue
+ myRequest['Persistence'] = fcp2.Persistence.Forever
+ myRequest['RequestStatus'] &= ~(fcp2.ConstRequestStatus.Success |
+ fcp2.ConstRequestStatus.Completed |
+ fcp2.ConstRequestStatus.RemovedFromQueue
)
self.sendResponseMessage(
'AllData',
@@ -1573,12 +1569,12 @@
# client should complete but not remove the request
self.assertHasNextEvent(
self.client.events.RequestCompleted,
- consts.Message.ClientGet,
- ('RequestStatus', consts.RequestStatus.Success | consts.RequestStatus.Completed),
+ fcp2.MsgClientGet,
+ ('RequestStatus', fcp2.ConstRequestStatus.Success | fcp2.ConstRequestStatus.Completed),
data=data
)
self.failUnless(myIdentifier in requestsAll)
- self.failUnless(myRequest['RequestStatus'] & consts.RequestStatus.Completed)
+ self.failUnless(myRequest['RequestStatus'] & fcp2.ConstRequestStatus.Completed)
self.assertHasNextEvent(None)
self.assertHasNextMessage(None)
@@ -1596,7 +1592,7 @@
myRequest = self.client.getRequest(myIdentifier)
requestsAll = self.client.getRequests()
- self.assertHasNextMessage(consts.Message.ClientGet)
+ self.assertHasNextMessage(fcp2.MsgClientGet)
# respond to the file request
self.sendResponseMessage(
@@ -1617,10 +1613,10 @@
# client should complete request and remove it
self.assertHasNextEvent(
self.client.events.RequestFailed,
- consts.Message.ClientGet,
- ('RequestStatus', consts.RequestStatus.Error |
- consts.RequestStatus.RemovedFromQueue |
- consts.RequestStatus.Completed
+ fcp2.MsgClientGet,
+ ('RequestStatus', fcp2.ConstRequestStatus.Error |
+ fcp2.ConstRequestStatus.RemovedFromQueue |
+ fcp2.ConstRequestStatus.Completed
),
)
self.assertHasNextEvent(None)
@@ -1631,10 +1627,10 @@
# cheat a bit to test peristence == Forever (client should not remove request)
requestsAll[myIdentifier] =myRequest
- myRequest['Persistence'] = consts.Persistence.Forever
- myRequest['RequestStatus'] &= ~(consts.RequestStatus.Error |
- consts.RequestStatus.Completed |
- consts.RequestStatus.RemovedFromQueue
+ myRequest['Persistence'] = fcp2.Persistence.Forever
+ myRequest['RequestStatus'] &= ~(fcp2.ConstRequestStatus.Error |
+ fcp2.ConstRequestStatus.Completed |
+ fcp2.ConstRequestStatus.RemovedFromQueue
)
self.sendResponseMessage(
'GetFailed',
@@ -1647,8 +1643,8 @@
# client should complete but not remove the request
self.assertHasNextEvent(
self.client.events.RequestFailed,
- consts.Message.ClientGet,
- ('RequestStatus', consts.RequestStatus.Error | consts.RequestStatus.Completed),
+ fcp2.MsgClientGet,
+ ('RequestStatus', fcp2.ConstRequestStatus.Error | fcp2.ConstRequestStatus.Completed),
)
self.failUnless(myIdentifier in requestsAll)
self.assertHasNextEvent(None)
@@ -1668,7 +1664,7 @@
myRequest = self.client.getRequest(myIdentifier)
requestsAll = self.client.getRequests()
- self.assertHasNextMessage(consts.Message.ClientGet)
+ self.assertHasNextMessage(fcp2.MsgClientGet)
# respond to the file request
self.sendResponseMessage(
@@ -1691,14 +1687,14 @@
)
self.assertHasNextEvent(
self.client.events.RequestCompleted,
- consts.Message.ClientGet,
- ('RequestStatus', consts.RequestStatus.Success |
- consts.RequestStatus.RemovedFromQueue |
- consts.RequestStatus.Completed
+ fcp2.MsgClientGet,
+ ('RequestStatus', fcp2.ConstRequestStatus.Success |
+ fcp2.ConstRequestStatus.RemovedFromQueue |
+ fcp2.ConstRequestStatus.Completed
),
)
self.failIf(myIdentifier in requestsAll)
- self.failUnless(myRequest['RequestStatus'] & consts.RequestStatus.Completed)
+ self.failUnless(myRequest['RequestStatus'] & fcp2.ConstRequestStatus.Completed)
self.assertHasNextEvent(None)
self.assertHasNextMessage(None)
@@ -1715,7 +1711,7 @@
myRequest = self.client.getRequest(myIdentifier)
requestsAll = self.client.getRequests()
- self.assertHasNextMessage(consts.Message.ClientGet)
+ self.assertHasNextMessage(fcp2.MsgClientGet)
# respond to the file request
self.sendResponseMessage(
@@ -1735,10 +1731,10 @@
self.assertHasNextEvent(
self.client.events.RequestFailed,
- consts.Message.ClientGet,
- ('RequestStatus', consts.RequestStatus.Error |
- consts.RequestStatus.RemovedFromQueue |
- consts.RequestStatus.Completed
+ fcp2.MsgClientGet,
+ ('RequestStatus', fcp2.ConstRequestStatus.Error |
+ fcp2.ConstRequestStatus.RemovedFromQueue |
+ fcp2.ConstRequestStatus.Completed
),
)
self.failIf(myIdentifier in requestsAll)
@@ -1757,7 +1753,7 @@
myRequest = self.client.getRequest(myIdentifier)
requestsAll = self.client.getRequests()
- self.assertHasNextMessage(consts.Message.ClientGet)
+ self.assertHasNextMessage(fcp2.MsgClientGet)
# respond to the file request
self.sendResponseMessage(
@@ -1780,14 +1776,14 @@
)
self.assertHasNextEvent(
self.client.events.RequestCompleted,
- consts.Message.ClientGet,
- ('RequestStatus', consts.RequestStatus.Success |
- consts.RequestStatus.RemovedFromQueue |
- consts.RequestStatus.Completed
+ fcp2.MsgClientGet,
+ ('RequestStatus', fcp2.ConstRequestStatus.Success |
+ fcp2.ConstRequestStatus.RemovedFromQueue |
+ fcp2.ConstRequestStatus.Completed
),
)
self.failIf(myIdentifier in requestsAll)
- self.failUnless(myRequest['RequestStatus'] & consts.RequestStatus.Completed)
+ self.failUnless(myRequest['RequestStatus'] & fcp2.ConstRequestStatus.Completed)
self.assertHasNextEvent(None)
self.assertHasNextMessage(None)
@@ -1804,7 +1800,7 @@
myRequest = self.client.getRequest(myIdentifier)
requestsAll = self.client.getRequests()
- self.assertHasNextMessage(consts.Message.ClientGet)
+ self.assertHasNextMessage(fcp2.MsgClientGet)
# respond to the file request
self.sendResponseMessage(
@@ -1823,13 +1819,13 @@
)
self.assertHasNextEvent(
self.client.events.RequestCompleted,
- consts.Message.ClientGet,
- ('RequestStatus', consts.RequestStatus.Success |
- consts.RequestStatus.RemovedFromQueue |
- consts.RequestStatus.Completed
+ fcp2.MsgClientGet,
+ ('RequestStatus', fcp2.ConstRequestStatus.Success |
+ fcp2.ConstRequestStatus.RemovedFromQueue |
+ fcp2.ConstRequestStatus.Completed
),
)
- self.failUnless(myRequest['RequestStatus'] & consts.RequestStatus.Completed)
+ self.failUnless(myRequest['RequestStatus'] & fcp2.ConstRequestStatus.Completed)
self.assertHasNextEvent(None)
self.assertHasNextMessage(None)
@@ -1846,7 +1842,7 @@
myRequest = self.client.getRequest(myIdentifier)
requestsAll = self.client.getRequests()
- self.assertHasNextMessage(consts.Message.ClientGet)
+ self.assertHasNextMessage(fcp2.MsgClientGet)
# respond to the file request
self.sendResponseMessage(
@@ -1865,13 +1861,13 @@
)
self.assertHasNextEvent(
self.client.events.RequestFailed,
- consts.Message.ClientGet,
- ('RequestStatus', consts.RequestStatus.Error |
- consts.RequestStatus.RemovedFromQueue |
- consts.RequestStatus.Completed
+ fcp2.MsgClientGet,
+ ('RequestStatus', fcp2.ConstRequestStatus.Error |
+ fcp2.ConstRequestStatus.RemovedFromQueue |
+ fcp2.ConstRequestStatus.Completed
),
)
- self.failUnless(myRequest['RequestStatus'] & consts.RequestStatus.Completed)
+ self.failUnless(myRequest['RequestStatus'] & fcp2.ConstRequestStatus.Completed)
self.assertHasNextEvent(None)
self.assertHasNextMessage(None)
@@ -1886,7 +1882,7 @@
def test_putData_Success(self):
self.connectClient()
- myKey = self.client.key.KSK('foo')
+ myKey = fcp2.KeyKSK('foo')
myIdentifier = self.client.putData(
myKey,
'any data here'
@@ -1894,7 +1890,7 @@
myRequest = self.client.getRequest(myIdentifier)
requestsAll = self.client.getRequests()
- self.assertHasNextMessage(consts.Message.ClientPut)
+ self.assertHasNextMessage(fcp2.MsgClientPut)
self.failUnless(myIdentifier in requestsAll)
self.sendResponseMessage(
@@ -1905,10 +1901,10 @@
self.assertHasNextEvent(
self.client.events.RequestCompleted,
- consts.Message.ClientPut,
- ('RequestStatus', consts.RequestStatus.Success |
- consts.RequestStatus.RemovedFromQueue |
- consts.RequestStatus.Completed
+ fcp2.MsgClientPut,
+ ('RequestStatus', fcp2.ConstRequestStatus.Success |
+ fcp2.ConstRequestStatus.RemovedFromQueue |
+ fcp2.ConstRequestStatus.Completed
),
)
@@ -1920,7 +1916,7 @@
def test_putData_Failure(self):
self.connectClient()
- myKey = self.client.key.KSK('foo')
+ myKey = fcp2.KeyKSK('foo')
myIdentifier = self.client.putData(
myKey,
'any data here'
@@ -1929,7 +1925,7 @@
myRequest = self.client.getRequest(myIdentifier)
requestsAll = self.client.getRequests()
- self.assertHasNextMessage(consts.Message.ClientPut)
+ self.assertHasNextMessage(fcp2.MsgClientPut)
self.failUnless(myIdentifier in requestsAll)
self.sendResponseMessage(
@@ -1940,10 +1936,10 @@
self.assertHasNextEvent(
self.client.events.RequestFailed,
- consts.Message.ClientPut,
- ('RequestStatus', consts.RequestStatus.Error |
- consts.RequestStatus.RemovedFromQueue |
- consts.RequestStatus.Completed
+ fcp2.MsgClientPut,
+ ('RequestStatus', fcp2.ConstRequestStatus.Error |
+ fcp2.ConstRequestStatus.RemovedFromQueue |
+ fcp2.ConstRequestStatus.Completed
),
)
@@ -1957,7 +1953,7 @@
def test_putDir_Success(self):
self.connectClient()
- myKey = self.client.key.KSK('foo')
+ myKey = fcp2.KeyKSK('foo')
myIdentifier = self.client.putDir(
myKey,
'myDirectory'
@@ -1965,7 +1961,7 @@
myRequest = self.client.getRequest(myIdentifier)
requestsAll = self.client.getRequests()
- self.assertHasNextMessage(consts.Message.ClientPutDiskDir)
+ self.assertHasNextMessage(fcp2.MsgClientPutDiskDir)
self.failUnless(myIdentifier in requestsAll)
self.sendResponseMessage(
@@ -1976,10 +1972,10 @@
self.assertHasNextEvent(
self.client.events.RequestCompleted,
- consts.Message.ClientPutDiskDir,
- ('RequestStatus', consts.RequestStatus.Success |
- consts.RequestStatus.RemovedFromQueue |
- consts.RequestStatus.Completed
+ fcp2.MsgClientPutDiskDir,
+ ('RequestStatus', fcp2.ConstRequestStatus.Success |
+ fcp2.ConstRequestStatus.RemovedFromQueue |
+ fcp2.ConstRequestStatus.Completed
),
)
@@ -1991,7 +1987,7 @@
def test_putDir_Failure(self):
self.connectClient()
- myKey = self.client.key.KSK('foo')
+ myKey = fcp2.KeyKSK('foo')
myIdentifier = self.client.putDir(
myKey,
'myDirectory'
@@ -1999,7 +1995,7 @@
myRequest = self.client.getRequest(myIdentifier)
requestsAll = self.client.getRequests()
- self.assertHasNextMessage(consts.Message.ClientPutDiskDir)
+ self.assertHasNextMessage(fcp2.MsgClientPutDiskDir)
self.failUnless(myIdentifier in requestsAll)
self.sendResponseMessage(
@@ -2010,10 +2006,10 @@
self.assertHasNextEvent(
self.client.events.RequestFailed,
- consts.Message.ClientPutDiskDir,
- ('RequestStatus', consts.RequestStatus.Error |
- consts.RequestStatus.RemovedFromQueue |
- consts.RequestStatus.Completed
+ fcp2.MsgClientPutDiskDir,
+ ('RequestStatus', fcp2.ConstRequestStatus.Error |
+ fcp2.ConstRequestStatus.RemovedFromQueue |
+ fcp2.ConstRequestStatus.Completed
),
)
@@ -2029,7 +2025,7 @@
def test_putFile_Success(self):
self.connectClient()
- myKey = self.client.key.KSK('foo')
+ myKey = fcp2.KeyKSK('foo')
myIdentifier = self.client.putFile(
myKey,
'myFile.txt'
@@ -2037,7 +2033,7 @@
myRequest = self.client.getRequest(myIdentifier)
requestsAll = self.client.getRequests()
- self.assertHasNextMessage(consts.Message.ClientPut)
+ self.assertHasNextMessage(fcp2.MsgClientPut)
self.failUnless(myIdentifier in requestsAll)
self.sendResponseMessage(
@@ -2048,10 +2044,10 @@
self.assertHasNextEvent(
self.client.events.RequestCompleted,
- consts.Message.ClientPut,
- ('RequestStatus', consts.RequestStatus.Success |
- consts.RequestStatus.RemovedFromQueue |
- consts.RequestStatus.Completed
+ fcp2.MsgClientPut,
+ ('RequestStatus', fcp2.ConstRequestStatus.Success |
+ fcp2.ConstRequestStatus.RemovedFromQueue |
+ fcp2.ConstRequestStatus.Completed
),
)
@@ -2063,7 +2059,7 @@
def test_putFile_Failure(self):
self.connectClient()
- myKey = self.client.key.KSK('foo')
+ myKey = fcp2.KeyKSK('foo')
myIdentifier = self.client.putFile(
myKey,
'myFile.txt'
@@ -2071,7 +2067,7 @@
myRequest = self.client.getRequest(myIdentifier)
requestsAll = self.client.getRequests()
- self.assertHasNextMessage(consts.Message.ClientPut)
+ self.assertHasNextMessage(fcp2.MsgClientPut)
self.failUnless(myIdentifier in requestsAll)
self.sendResponseMessage(
@@ -2082,10 +2078,10 @@
self.assertHasNextEvent(
self.client.events.RequestFailed,
- consts.Message.ClientPut,
- ('RequestStatus', consts.RequestStatus.Error |
- consts.RequestStatus.RemovedFromQueue |
- consts.RequestStatus.Completed
+ fcp2.MsgClientPut,
+ ('RequestStatus', fcp2.ConstRequestStatus.Error |
+ fcp2.ConstRequestStatus.RemovedFromQueue |
+ fcp2.ConstRequestStatus.Completed
),
)
@@ -2102,29 +2098,29 @@
items = [
{
- 'RequestType': consts.RequestType.PutData,
+ 'RequestType': fcp2.ConstRequestType.PutData,
'Data': '12345',
'Name': 'myItem0',
},
{
- 'RequestType': consts.RequestType.PutFile,
+ 'RequestType': fcp2.ConstRequestType.PutFile,
'Filename': 'myFile.txt',
'Name': 'myItem1',
},
{
- 'RequestType': consts.RequestType.PutRedirect,
+ 'RequestType': fcp2.ConstRequestType.PutRedirect,
'TargetURI': 'CHK@123456789',
'Name': 'myItem2',
},
{
- 'RequestType': consts.RequestType.PutData,
+ 'RequestType': fcp2.ConstRequestType.PutData,
'Data': '67890',
'Name': 'myItem3',
},
]
# request a arbitrary file
- myKey = self.client.key.KSK('foo')
+ myKey = fcp2.KeyKSK('foo')
myIdentifier = self.client.putMultiple(
myKey,
items
@@ -2133,7 +2129,7 @@
requestsAll = self.client.getRequests()
msg = self.assertHasNextMessage(
- consts.Message.ClientPutComplexDir,
+ fcp2.MsgClientPutComplexDir,
('Files.0.Name', 'myItem0'),
('Files.0.UploadFrom', 'direct'),
('Files.0.DataLength', 5),
@@ -2166,10 +2162,10 @@
self.assertHasNextEvent(
self.client.events.RequestCompleted,
- consts.Message.ClientPutComplexDir,
- ('RequestStatus', consts.RequestStatus.Success |
- consts.RequestStatus.RemovedFromQueue |
- consts.RequestStatus.Completed
+ fcp2.MsgClientPutComplexDir,
+ ('RequestStatus', fcp2.ConstRequestStatus.Success |
+ fcp2.ConstRequestStatus.RemovedFromQueue |
+ fcp2.ConstRequestStatus.Completed
),
)
@@ -2184,12 +2180,12 @@
# upload directory is not allowed
items = [
{
- 'RequestType': consts.RequestType.PutDir,
+ 'RequestType': fcp2.ConstRequestType.PutDir,
'Data': '12345',
'Name': 'myItem0',
},
]
- myKey = self.client.key.KSK('foo')
+ myKey = fcp2.KeyKSK('foo')
self.assertRaises(ValueError, self.client.putMultiple, myKey, items)
#TODO: how to test required params?
@@ -2198,7 +2194,7 @@
# no request type specified
items = [
{
- #'RequestType': consts.RequestType.PutData,
+ #'RequestType': fcp2.ConstRequestType.PutData,
'Data': '12345',
'Name': 'myItem0',
},
@@ -2208,7 +2204,7 @@
# param missing (we enforce all required parameters)
items = [
{
- 'RequestType': consts.RequestType.PutData,
+ 'RequestType': fcp2.ConstRequestType.PutData,
#'Data': '12345',
#'Name': 'myItem0',
},
@@ -2225,8 +2221,8 @@
self.connectClient()
# request a arbitrary file
- myRedirect = self.client.key.KSK('foo')
- myKey = self.client.key.key('CHK@' + self.client.key.DummyKeyData)
+ myRedirect = fcp2.KeyKSK('foo')
+ myKey = fcp2.Key('CHK@' + DummyKeyData)
myIdentifier = self.client.putRedirect(
myRedirect,
myKey,
@@ -2234,7 +2230,7 @@
myRequest = self.client.getRequest(myIdentifier)
requestsAll = self.client.getRequests()
- self.assertHasNextMessage(consts.Message.ClientPut)
+ self.assertHasNextMessage(fcp2.MsgClientPut)
self.failUnless(myIdentifier in requestsAll)
self.sendResponseMessage(
@@ -2245,10 +2241,10 @@
self.assertHasNextEvent(
self.client.events.RequestCompleted,
- consts.Message.ClientPut,
- ('RequestStatus', consts.RequestStatus.Success |
- consts.RequestStatus.RemovedFromQueue |
- consts.RequestStatus.Completed
+ fcp2.MsgClientPut,
+ ('RequestStatus', fcp2.ConstRequestStatus.Success |
+ fcp2.ConstRequestStatus.RemovedFromQueue |
+ fcp2.ConstRequestStatus.Completed
),
)
@@ -2261,8 +2257,8 @@
self.connectClient()
# request a arbitrary file
- myRedirect = self.client.key.KSK('foo')
- myKey = self.client.key.key('CHK@' + self.client.key.DummyKeyData)
+ myRedirect = fcp2.KeyKSK('foo')
+ myKey = fcp2.Key('CHK@' + DummyKeyData)
myIdentifier = self.client.putRedirect(
myRedirect,
myKey,
@@ -2270,7 +2266,7 @@
myRequest = self.client.getRequest(myIdentifier)
requestsAll = self.client.getRequests()
- self.assertHasNextMessage(consts.Message.ClientPut)
+ self.assertHasNextMessage(fcp2.MsgClientPut)
self.failUnless(myIdentifier in requestsAll)
self.sendResponseMessage(
@@ -2281,10 +2277,10 @@
self.assertHasNextEvent(
self.client.events.RequestFailed,
- consts.Message.ClientPut,
- ('RequestStatus', consts.RequestStatus.Error |
- consts.RequestStatus.RemovedFromQueue |
- consts.RequestStatus.Completed
+ fcp2.MsgClientPut,
+ ('RequestStatus', fcp2.ConstRequestStatus.Error |
+ fcp2.ConstRequestStatus.RemovedFromQueue |
+ fcp2.ConstRequestStatus.Completed
),
)
@@ -2302,18 +2298,18 @@
# request a arbitrary file
- myKey = self.client.key.key('KSK@foo')
+ myKey = fcp2.Key('KSK@foo')
myIdentifier = self.client.getFile(
myKey,
'arbitryry.txt',
persistentUserData='foo',
- priorityClass=consts.Priority.Medium,
- persistence=consts.Persistence.Reboot,
+ priorityClass=fcp2.ConstPriority.Medium,
+ persistence=fcp2.ConstPersistence.Reboot,
)
myRequest = self.client.getRequest(myIdentifier)
requestsAll = self.client.getRequests()
- self.assertHasNextMessage(consts.Message.ClientGet)
+ self.assertHasNextMessage(fcp2.MsgClientGet)
# respond to the file request
self.sendResponseMessage(
@@ -2321,12 +2317,12 @@
Started='false',
**myRequest.params
)
- #self.assertNextMessage(consts.Message.ClientGet)
+ #self.assertNextMessage(fcp2.MsgClientGet)
# test modify persistent user data
- self.client.modifyRequest(myIdentifier, persistentUserData='bar', priorityClass=consts.Priority.High)
- msg = self.assertHasNextMessage(consts.Message.ModifyPersistentRequest)
+ self.client.modifyRequest(myIdentifier, persistentUserData='bar', priorityClass=fcp2.ConstPriority.High)
+ msg = self.assertHasNextMessage(fcp2.MsgModifyPersistentRequest)
# respond to the file request
self.sendResponseMessage(
@@ -2335,10 +2331,10 @@
)
self.assertHasNextEvent(self.client.events.RequestModified)
- self.failUnless(consts.RequestModified.PersistentUserData in myRequest['Modified'])
- self.failUnless(consts.RequestModified.PriorityClass in myRequest['Modified'])
+ self.failUnless(fcp2.ConstRequestModified.PersistentUserData in myRequest['Modified'])
+ self.failUnless(fcp2.ConstRequestModified.PriorityClass in myRequest['Modified'])
self.assertEqual('bar', myRequest['PersistentUserData'])
- self.assertEqual(consts.Priority.High, myRequest['PriorityClass'])
+ self.assertEqual(fcp2.ConstPriority.High, myRequest['PriorityClass'])
self.assertHasNextEvent(None)
self.assertHasNextMessage(None)
@@ -2351,17 +2347,17 @@
self.connectClient()
# request a arbitrary file
- myKey = self.client.key.key('KSK@foo')
+ myKey = fcp2.Key('KSK@foo')
myIdentifier = self.client.getFile(
myKey,
'arbitryry.txt',
persistentUserData='foo',
- priorityClass=consts.Priority.Medium,
+ priorityClass=fcp2.ConstPriority.Medium,
)
myRequest = self.client.getRequest(myIdentifier)
requestsAll = self.client.getRequests()
- self.assertHasNextMessage(consts.Message.ClientGet)
+ self.assertHasNextMessage(fcp2.MsgClientGet)
# respond to the file request
self.sendResponseMessage(
@@ -2371,12 +2367,12 @@
)
# test modify persistent user data
- self.client.modifyRequest(myIdentifier, persistentUserData='bar', priorityClass=consts.Priority.High)
+ self.client.modifyRequest(myIdentifier, persistentUserData='bar', priorityClass=fcp2.ConstPriority.High)
# no way to modify priority in Fcp. The client ignores all attempts to do so currently
# no message is send,instead the event is triggered emidiately
- #msg = self.assertHasNextMessage(consts.Message.ModifyPersistentRequest)
+ #msg = self.assertHasNextMessage(fcp2.MsgModifyPersistentRequest)
# respond to the file request
#self.sendResponseMessage(
# 'PersistentRequestModified',
@@ -2385,10 +2381,10 @@
self.assertHasNextEvent(self.client.events.RequestModified)
- self.failUnless(consts.RequestModified.PersistentUserData in myRequest['Modified'])
- #self.failUnless(consts.RequestModified.PriorityClass in myRequest['Modified'])
+ self.failUnless(fcp2.ConstRequestModified.PersistentUserData in myRequest['Modified'])
+ #self.failUnless(fcp2.RequestModified.PriorityClass in myRequest['Modified'])
self.assertEqual('bar', myRequest['PersistentUserData'])
- #self.assertEqual(consts.Priority.High, myRequest['PriorityClass'])
+ #self.assertEqual(fcp2.Priority.High, myRequest['PriorityClass'])
self.assertHasNextEvent(None)
self.assertHasNextMessage(None)
@@ -2404,7 +2400,7 @@
self.connectClient()
# request a file
- myKey = self.client.key.key('KSK@foo')
+ myKey = fcp2.Key('KSK@foo')
myIdentifier = self.client.getFile(
myKey,
'arbitrary.txt'
@@ -2412,7 +2408,7 @@
myRequest = self.client.getRequest(myIdentifier)
requestsAll = self.client.getRequests()
- self.assertHasNextMessage(consts.Message.ClientGet)
+ self.assertHasNextMessage(fcp2.MsgClientGet)
# respond to the file request
self.sendResponseMessage(
'PersistentGet',
@@ -2426,11 +2422,11 @@
# now cancel request
self.client.removeRequest(myIdentifier)
- self.assertHasNextMessage('RemoveRequest')
+ self.assertHasNextMessage(fcp2.MsgRemoveRequest)
# of our request should be marked as removed
- self.assertEqual(myRequest['RequestStatus'], consts.RequestStatus.Removed |
- consts.RequestStatus.Completed
+ self.assertEqual(myRequest['RequestStatus'], fcp2.ConstRequestStatus.Removed |
+ fcp2.ConstRequestStatus.Completed
)
# respond with a Getfailed
@@ -2444,10 +2440,10 @@
# now the request should have been removed
self.assertHasNextEvent(
self.client.events.RequestRemoved,
- consts.Message.ClientGet,
- ('RequestStatus', consts.RequestStatus.Removed |
- consts.RequestStatus.RemovedFromQueue |
- consts.RequestStatus.Completed
+ fcp2.MsgClientGet,
+ ('RequestStatus', fcp2.ConstRequestStatus.Removed |
+ fcp2.ConstRequestStatus.RemovedFromQueue |
+ fcp2.ConstRequestStatus.Completed
),
)
self.failIf(myIdentifier in requestsAll)
@@ -2468,7 +2464,7 @@
# throw an invalid PersistentRequest at the client
myIdentifier = '123456789'
self.assertRaises(
- consts.MessageParseError,
+ fcp2.ErrorMessageParse,
self.sendResponseMessage,
'PersistentGet',
Identifier=myIdentifier,
@@ -2489,14 +2485,14 @@
#NOTE: the client will recognize it as unknown request and query to remove it
#self.assertHasNextMessage(None)
- self.assertHasNextMessage(consts.Message.RemoveRequest)
+ self.assertHasNextMessage(fcp2.MsgRemoveRequest)
def test_restorePersistentGet_validIdentifier(self):
self.connectClient()
# we need a valid identifier to restore a request, so hack a bit
- myKey = self.client.key.key('KSK@foo')
+ myKey = fcp2.Key('KSK@foo')
myIdentifier = self.client.getFile(
myKey,
'arbitryry.txt'
@@ -2504,14 +2500,14 @@
myRequest = self.client.getRequest(myIdentifier)
requestsAll = self.client.getRequests()
- self.assertHasNextMessage(consts.Message.ClientGet)
+ self.assertHasNextMessage(fcp2.MsgClientGet)
self.client.removeRequest(myIdentifier)
self.sendResponseMessage(
'PersistentRequestRemoved',
Identifier=myIdentifier,
)
- self.assertHasNextMessage(self.client.message.RemoveRequest.name)
+ self.assertHasNextMessage(fcp2.MsgRemoveRequest)
self.assertHasNextEvent(self.client.events.RequestRemoved)
# throw a PersistentGet at the client with the identifier we hacked
@@ -2529,9 +2525,9 @@
# check if the client restored the request
msg = self.assertHasNextEvent(
self.client.events.RequestRestored,
- consts.Message.ClientGet,
+ fcp2.MsgClientGet,
('Identifier', myIdentifier),
- ('RequestStatus', consts.RequestStatus.Restored), # no RequestStatus.Pending flag should be set here
+ ('RequestStatus', fcp2.ConstRequestStatus.Restored), # no RequestStatus.Pending flag should be set here
)
self.failUnless(myIdentifier in requestsAll)
@@ -2553,7 +2549,7 @@
self.connectClient()
# request a file
- myKey = self.client.key.key('KSK@foo')
+ myKey = fcp2.Key('KSK@foo')
myIdentifier = self.client.getFile(
myKey,
os.path.join(DIR, 'DDATest.txt')
@@ -2562,7 +2558,7 @@
requestsAll = self.client.getRequests()
# client schould send a ClientGet
- self.assertHasNextMessage(consts.Message.ClientGet)
+ self.assertHasNextMessage(fcp2.MsgClientGet)
# respond with a ProtocolError
self.sendResponseMessage(
@@ -2576,14 +2572,14 @@
# client should respond with a TestDDARequest
self.assertHasNextMessage(
- consts.Message.TestDDARequest,
+ fcp2.MsgTestDDARequest,
('Directory', DIR),
('WantWriteDirectory', True)
)
#msg = self.nextMessage()
#self.failIf(msg is None)
- #self.assertEqual(msg.name, consts.Message.TestDDARequest)
+ #self.assertEqual(msg.name, fcp2.MsgTestDDARequest)
##self.assertEqual(msg['Directory'], DIR)
#self.failIf(not msg['WantWriteDirectory'])
@@ -2601,7 +2597,7 @@
# client should respond with a TestDDAResponse
self.assertHasNextMessage(
- consts.Message.TestDDAResponse,
+ fcp2.MsgTestDDAResponse,
('Directory', DIR)
)
@@ -2620,7 +2616,7 @@
self.failIf(os.path.isfile(fpath))
# client sahould send a new ClientGet
- msg = self.assertHasNextMessage(consts.Message.ClientGet)
+ msg = self.assertHasNextMessage(fcp2.MsgClientGet)
# no events should have been triggered upo to now
self.assertHasNextEvent(None)
@@ -2655,7 +2651,7 @@
self.connectClient()
# request a file
- myKey = self.client.key.key('KSK@foo')
+ myKey = fcp2.Key('KSK@foo')
myIdentifier = self.client.getFile(
myKey,
os.path.join(DIR, 'test.txt')
@@ -2664,7 +2660,7 @@
requestsAll = self.client.getRequests()
# client schould send a ClientGet
- self.assertHasNextMessage(consts.Message.ClientGet)
+ self.assertHasNextMessage(fcp2.MsgClientGet)
# respond with an IdentifierCollision
@@ -2674,16 +2670,16 @@
)
# client schould send a new ClientGet
- self.assertHasNextMessage(consts.Message.ClientGet)
+ self.assertHasNextMessage(fcp2.MsgClientGet)
# check if RequestModified event has been triggered
msg = self.assertHasNextEvent(
self.client.events.RequestModified,
- consts.Message.ClientGet,
+ fcp2.MsgClientGet,
)
- self.failUnless(consts.RequestModified.Identifier in msg['Modified'])
- oldIdentifier = msg['Modified'][consts.RequestModified.Identifier]
+ self.failUnless(fcp2.ConstRequestModified.Identifier in msg['Modified'])
+ oldIdentifier = msg['Modified'][fcp2.ConstRequestModified.Identifier]
newIdentifier = msg['Identifier']
self.assertEqual(oldIdentifier, myIdentifier)
self.assertNotEqual(newIdentifier, myIdentifier)
@@ -2703,17 +2699,17 @@
open(fpath, 'wb').close()
self.tmpfiles.append(fpath)
- myKey = self.client.key.key('KSK@foo')
+ myKey = fcp2.Key('KSK@foo')
myIdentifier = self.client.getFile(
myKey,
fpath,
- filenameCollision=consts.FilenameCollision.HandleRename,
+ filenameCollision=fcp2.ConstFilenameCollision.HandleRename,
)
myRequest = self.client.getRequest(myIdentifier)
requestsAll = self.client.getRequests()
# client schould send a ClientGet
- self.assertHasNextMessage(consts.Message.ClientGet)
+ self.assertHasNextMessage(fcp2.MsgClientGet)
# now respond with a ProtocolError
self.sendResponseMessage(
@@ -2726,23 +2722,23 @@
)
# client schould send a new ClientGet with a different filename
- self.assertHasNextMessage(consts.Message.ClientGet)
+ self.assertHasNextMessage(fcp2.MsgClientGet)
msg = self.assertHasNextEvent(
self.client.events.RequestModified,
- consts.Message.ClientGet
+ fcp2.MsgClientGet
)
- self.failUnless(consts.RequestModified.File...
[truncated message content] |