Changeset 1684

Show
Ignore:
Timestamp:
09/15/08 00:03:44 (3 months ago)
Author:
nick
Message:

Work so far

Location:
pyamf/branches/messaging-static-attrs-357/pyamf
Files:
2 modified

Legend:

Unmodified
Added
Removed
  • pyamf/branches/messaging-static-attrs-357/pyamf/flex/messaging.py

    r1433 r1684  
    2121    'ErrorMessage' 
    2222] 
     23 
     24NAMESPACE = 'flex.messaging.messages' 
    2325 
    2426class AbstractMessage(object): 
     
    8486        return m + " />" 
    8587 
     88pyamf.register_class(AbstractMessage, attrs=['body', 'clientId', 'destination', 
     89    'headers', 'messageId', 'timeToLive', 'timestamp']) 
     90 
    8691class AsyncMessage(AbstractMessage): 
    8792    """ 
     
    104109        self.correlationId = kwargs.get('correlationId', None) 
    105110 
     111pyamf.register_class(AsyncMessage, '%s.%s' % (NAMESPACE, AsyncMessage.__name__), 
     112    attrs=['correlationId'], metadata=['amf3']) 
     113 
    106114class AcknowledgeMessage(AsyncMessage): 
    107115    """ 
     
    118126    #: generated an error. 
    119127    ERROR_HINT_HEADER = "DSErrorHint" 
     128 
     129pyamf.register_class(AcknowledgeMessage, '%s.%s' % (NAMESPACE, AcknowledgeMessage.__name__), metadata=['amf3']) 
    120130 
    121131class CommandMessage(AsyncMessage): 
     
    178188        self.messageRefType = kwargs.get('messageRefType', None) 
    179189 
     190pyamf.register_class(CommandMessage, '%s.%s' % (NAMESPACE, CommandMessage.__name__), 
     191    attrs=['operation', 'messageRefType'], metadata=['amf3']) 
     192 
    180193class ErrorMessage(AcknowledgeMessage): 
    181194    """ 
     
    212225        self.rootCause = kwargs.get('rootCause', {}) 
    213226 
     227pyamf.register_class(ErrorMessage, '%s.%s' % (NAMESPACE, ErrorMessage.__name__), 
     228    attrs=['extendedData', 'faultCode', 'faultDetail', 'faultString'], metadata=['amf3']) 
     229 
    214230class RemotingMessage(AbstractMessage): 
    215231    """ 
     
    228244        self.source = kwargs.get('source', None) 
    229245 
    230 for x in (RemotingMessage, ErrorMessage, CommandMessage, AcknowledgeMessage, AsyncMessage): 
    231     pyamf.register_class(x, 'flex.messaging.messages.%s' % x.__name__, metadata=['amf3']) 
    232 del x 
     246pyamf.register_class(RemotingMessage, '%s.%s' % (NAMESPACE, RemotingMessage.__name__), 
     247    attrs=['operation', 'source'], metadata=['amf3']) 
  • pyamf/branches/messaging-static-attrs-357/pyamf/tests/test_flex_messaging.py

    r1416 r1684  
    1313 
    1414from pyamf.flex import messaging 
     15import pyamf 
    1516 
    1617class AbstractMessageTestCase(unittest.TestCase): 
     
    2526            self.fail() 
    2627 
     28class EncodingTestcase(unittest.TestCase): 
     29    def test_async_message(self): 
     30        m = messaging.AsyncMessage() 
     31 
     32        self.assertEquals(pyamf.encode(m).getvalue(), '') 
     33 
    2734def suite(): 
    2835    suite = unittest.TestSuite() 
    2936 
    3037    suite.addTest(unittest.makeSuite(AbstractMessageTestCase)) 
     38    suite.addTest(unittest.makeSuite(EncodingTestcase)) 
    3139 
    3240    return suite