Ignore:
Timestamp:
Jan 15, 2011 5:52:15 PM (13 years ago)
Author:
Ted Faber <faber@…>
Branches:
axis_example, compt_changes, info-ops, master
Children:
aaf7f41
Parents:
ac15159 (diff), 944b746 (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the (diff) links above to see all the changes relative to each parent.
git-author:
Ted Faber <faber@…> (01/15/11 17:51:40)
git-committer:
Ted Faber <faber@…> (01/15/11 17:52:15)
Message:

merge from current

File:
1 edited

Legend:

Unmodified
Added
Removed
  • fedd/federation/remote_service.py

    rac15159 r0a49bd7  
    1616import httplib
    1717
     18from proof import proof
    1819from service_error import service_error
    1920from xmlrpclib import ServerProxy, dumps, loads, Fault, Error, Binary
     
    2122    import fedd_services
    2223    import fedd_internal_services
     24    service_port_name = 'getfeddPortType'
     25    internal_service_port_name = 'getfeddInternalPortType'
    2326except ImportError:
    24     import fedd_server
    2527    import fedd_client
     28    import fedd_internal_client
     29    fedd_services = fedd_client
     30    fedd_internal_services = fedd_internal_client
     31    service_port_name = 'getfeddPort'
     32    internal_service_port_name = 'getfedd_internalPort'
    2633
    2734from util import fedd_ssl_context
     
    6067    # A map used to encapsulate fedids into xmlrpclib.Binary objects
    6168    encap_fedids = (('fedid', to_binary),)
     69
     70    # fields that are never unicoded, because they represent non strings.
     71    do_not_unicode = set(['credential'])
    6272
    6373    @staticmethod
     
    166176        if isinstance(obj, dict):
    167177            for k in obj.keys():
    168                 obj[k] = remote_service_base.make_unicode(obj[k])
     178                if k not in remote_service_base.do_not_unicode:
     179                    obj[k] = remote_service_base.make_unicode(obj[k])
    169180            return obj
    170181        elif isinstance(obj, basestring) and not isinstance(obj, unicode):
     
    283294        self.service_name = service_name
    284295
     296<<<<<<< HEAD
    285297        try:
    286298            if getattr(fedd_services.feddBindingSOAP, service_name, None):
     
    300312                self.port_name = 'getfedd_internalPort'
    301313
     314=======
     315        if getattr(fedd_services.feddBindingSOAP, service_name, None):
     316            self.locator = fedd_services.feddServiceLocator
     317            self.port_name = service_port_name
     318        elif getattr(fedd_internal_services.feddInternalBindingSOAP,
     319                service_name, None):
     320            self.locator = fedd_internal_services.feddInternalServiceLocator
     321            self.port_name = internal_service_port_name
     322>>>>>>> 944b746d2f97c5803ca28f587dd7100a57e25a69
    302323
    303324        if request_message: self.request_message = request_message
    304325        else:
    305326            request_message_name = "%sRequestMessage" % service_name
     327<<<<<<< HEAD
    306328            try:
    307329                self.request_message = \
     
    314336                        getattr(fedd_internal_client, request_message_name,
    315337                                None)
     338=======
     339            self.request_message = \
     340                    getattr(fedd_services, request_message_name, None) or \
     341                    getattr(fedd_internal_services, request_message_name,
     342                            None)
     343>>>>>>> 944b746d2f97c5803ca28f587dd7100a57e25a69
    316344            if not self.request_message and strict:
    317345                raise service_error(service_error.internal,
     
    523551                            'desc': e.fault.string or "Something Weird" }
    524552                if ee:
     553                    if 'proof' in ee:
     554                        pl = [ proof.from_dict(p) for p in ee['proof']]
     555                    else:
     556                        pl = None
    525557                    raise service_error(ee.get('code', 'no code'),
    526                             ee.get('desc','no desc'))
     558                            ee.get('desc','no desc'), proof=pl)
    527559                else:
    528560                    raise service_error(service_error.internal,
Note: See TracChangeset for help on using the changeset viewer.