def build_args_str(self, _def, include_self=True):
        args = []
        if include_self:
            args.append('self')

        for key, val in (_def or {}).iteritems():
            if isinstance(val, basestring):
                if val.startswith("!"):
                    val = val.strip("!")
                    if val in self.enums_by_name:
                        # Get default enum value
                        enum_def = self.enums_by_name[val]
                        val = "interface.objects." + val + "." + enum_def["default"]
                    else:
                        val = "None"
                else:
                    val = "'%s'" % (val)
            elif isinstance(val, datetime.datetime):
                # TODO: generate the datetime code
                val = "'%s'" % (val)
            # For collections, default to an empty collection of the same base type
            elif isinstance(val, list):
                val = "None"
            elif isinstance(val, dict):
                val = "None"
            elif isinstance(val, tuple):
                val = "None"
            args.append(templates['arg'].substitute(name=key, val=val))

        args_str = ', '.join(args)
        return args_str

    #
    # Generate validation report
    #
Handle case where method has no parameters
dataset/ETHPy150Open ooici/pyon/pyon/core/interfaces/service_object_generator.py/ServiceObjectGenerator.build_args_str