def default(self, obj): if isinstance(obj, User): dic={'login':obj.login,'p':obj.p,'name':obj.name,'logged':obj.logged} return dic if isinstance(obj, Repository): dic={'org':obj.org,'name':obj.name,'directory':obj.directory,'json_exists':obj.json_exists,'exists':obj.exists,'content':obj.content,'file_name':obj.file_name} return dic else: JSONEncoder.default(self, obj)
def default(self, obj): if isinstance(obj, date): return dateutil.simple_format_date(obj) elif isinstance(obj, datetime): return dateutil.simple_format_datetime(obj) elif isinstance(obj, Iterable) and not isinstance(obj, (dict, list, set)): # 这个实现可能有问题 return JSONEncoder.default(self, list(obj)) return JSONEncoder.default(self, obj)
def default(self, obj): from datatypes import User app.logger.debug("running custom jsonencoder") if isinstance(obj, User): # Implement code to convert Passport object to a dict user_dict = {"name": obj.displayName(), "userID": obj.userID, "isAdmin": obj.isAdmin, "isMCRMember": obj.isMCRMember, "isAssociateMember": obj.isAssociateMember, "isCRA": obj.isCRA, "isCollegeBill": obj.isCollegeBill} return user_dict else: JSONEncoder.default(self, obj)
def default(self, obj): try: if isinstance(obj, date): return JSONEncoder.default( self, datetime(obj.year, obj.month, obj.day)) iterable = iter(obj) except TypeError: pass else: return list(iterable) return JSONEncoder.default(self, obj)
def default(self, obj): if isinstance(obj, Character): return obj.__dict__ elif isinstance(obj, Weapon): return obj.__dict__ else: return JSONEncoder.default(self, obj)
def default(self, o): if isinstance(o, Segment): return { 'id': o.id, 'text_id': o.text_id, 'slug': o.slug, 'content': xml_transform(o.content), } elif isinstance(o, Text): return { 'id': o.id, 'name': o.name, 'slug': o.slug, 'xmlid_prefix': o.xmlid_prefix } elif isinstance(o, Card): return { 'primary': self.default(o.primary), 'translations': [self.default(x) for x in o.translations], 'commentaries': [self.default(x) for x in o.commentaries], } elif isinstance(o, ChildCard): return { 'text_id': o.text_id, 'segments': [self.default(x) for x in o.segments], } return JSONEncoder.default(self, o)
def default(self, obj): try: if isinstance(obj, datetime): if obj.utcoffset() is not None: obj = obj - obj.utcoffset() millis = int( calendar.timegm(obj.timetuple()) * 1000 + obj.microsecond / 1000 ) return millis if isinstance(obj, date): millis = int( calendar.timegm(obj.timetuple()) * 1000 ) return millis if isinstance(obj, np.int64): val = int(obj) return val iterable = iter(obj) except TypeError: pass else: return list(iterable) return JSONEncoder.default(self, obj)
def default(self, obj): try: if isinstance(obj, datetime): return serialize_datatime(obj) except TypeError: pass return JSONEncoder.default(self, obj)
def default(self, obj): if isinstance(obj, datetime): if obj.utcoffset() is not None: obj = obj - obj.utcoffset() return str(obj) else: return JSONEncoder.default(self, obj)
def default(self, obj): if isinstance(obj, ObjectId): return json_util.dumps(obj) elif isinstance(obj, datetime.datetime): return calendar.timegm(obj.utctimetuple())*1000 else: return JSONEncoder.default(self, obj)
def default(self, o): # pylint: disable=method-hidden """Convert unserializable types for JSON encoding.""" if isinstance(o, datetime): # Stuffr uses ISO dates return o.isoformat() return JSONEncoder.default(self, o)
def default(self, obj): try: if isinstance(obj, datetime): if obj.utcoffset() is not None: obj = obj - obj.utcoffset() millis = int( calendar.timegm(obj.timetuple()) * 1000 + obj.microsecond / 1000 ) return millis if isinstance(obj, sqlalchemy.orm.state.InstanceState): return "" if isinstance(obj, ScannerStatistic): return "" if isinstance(obj, ScannerLocation): return "" iterable = iter(obj) except TypeError: pass else: return list(iterable) return JSONEncoder.default(self, obj)
def default(self, o): if isinstance(o, PersistentID): return o.hex elif isinstance(o, Enum): return o.name else: return FlaskJSONEncoder.default(self, o)
def default(self, obj): if hasattr(obj, 'to_json') and hasattr(obj.to_json, '__call__'): return obj.to_json() if isinstance(obj, datetime): return obj.isoformat() if isinstance(obj, int) and obj >= (1 << 31): return str(obj) return JSONEncoder.default(self, obj)
def default(self, o): if isinstance(o, datetime.date): if isinstance(o, datetime.datetime): return str(o.replace(microsecond=0)) return str(o) if hasattr(o, 'as_dict'): return o.as_dict() return JSONEncoder.default(self, o)
def default(self, obj): if hasattr(obj, '__getitem__') and hasattr(obj, 'keys'): return dict(obj) if isinstance(obj, datetime.datetime): return obj.strftime('%Y-%m-%d %H:%M:%S') if isinstance(obj, ObjectId): return str(obj) return _JSONEncoder.default(self, obj)
def default(self, obj): try: if isinstance(obj, Activity): return obj.serialize() except TypeError: pass else: return JSONEncoder.default(self, obj)
def default(self, o): if hasattr(o, '__getitem__') and hasattr(o, 'keys'): return dict(o) if isinstance(o ,datetime.datetime): return o.strftime('%Y-%m-%d %H:%M:%S') return _JSONEncoder.default(self, o)
def default(self, obj): try: if isinstance(obj, Decimal): if obj % 2 in (Decimal(0), Decimal(1)): return int(obj) return float(obj) except TypeError: pass return JSONEncoder.default(self, obj)
def default(self, o): if isinstance(o, time.struct_time): return "{}/{}/{} {}:{}:{}".format(o.tm_mon, o.tm_mday, o.tm_year, o.tm_hour, o.tm_min, o.tm_sec) return JSONEncoder.default(self, o)
def default(self, obj): if isinstance(obj, Workflow): return self._workflow_to_dict(obj) elif isinstance(obj, logging.LogRecord): return self._logrecord_to_dict(obj) elif isinstance(obj, Event): return self._event_to_dict(obj) else: return JSONEncoder.default(self, obj)
def default(self, obj): try: if isinstance(obj, datetime.date): return obj.isoformat() except TypeError: pass #else: # return list(iterable) return JSONEncoder.default(self, obj)
def default(self, obj): try: if isinstance(obj, datetime): return obj.strftime("%Y/%m/%d") iterable = iter(obj) except TypeError: pass else: return list(iterable) return JSONEncoder.default(self, obj)
def default(self, obj): try: if isinstance(obj, Enum): return obj.value iterable = iter(obj) except TypeError: pass else: return list(iterable) return JSONEncoder.default(self, obj)
def default(self, obj): try: if isinstance(obj, Email): return obj.to_json() iterable = iter(obj) except TypeError: pass else: return list(iterable) return JSONEncoder.default(self, obj)
def default(self, obj): try: if isinstance(obj, datetime): return int(time.mktime(obj.timetuple())) * 1000 + obj.microsecond / 1000 iterable = iter(obj) except TypeError: pass else: return list(iterable) return JSONEncoder.default(self, obj)
def default(self, o): try: if isinstance(o, datetime): return o.strftime("%Y-%m-%dT%H:%M:%S%z") iterable = iter(o) except TypeError: pass else: return list(iterable) return JSONEncoder.default(self, o)
def default(self, obj): try: if isinstance(obj, Arrow): return obj.timestamp iterable = iter(obj) except TypeError: pass else: return list(iterable) return JSONEncoder.default(self, obj)
def default(self, obj): try: if isinstance(obj, Mol): return MolToMolBlock(obj) iterable = iter(obj) except TypeError: pass else: return list(iterable) return JSONEncoder.default(self, obj)
def default(self, obj): if isinstance(obj, ndb.Key): return obj.id() elif isinstance(obj, ndb.Model): # call model's to_dict() and tack on the id as well return dict(obj.to_dict(), **dict(id=obj.key.id())) elif isinstance(obj, (datetime, date, time)): return str(obj) # todo: make sure this is what we want return JSONEncoder.default(self, obj)
def default(self, obj): try: if isinstance(obj, datetime): if obj is None: return None return date.to_iso8601(obj) iterable = iter(obj) except TypeError: pass else: return list(iterable) return JSONEncoder.default(self, obj)
def default(self, obj): if isinstance(obj, datetime): return obj.strftime("%Y-%m-%dT%H:%M:%S") elif isinstance(obj, date): return obj.strftime('%Y-%m-%d') elif isinstance(obj, time): return obj.strftime('%H:%M:%S') elif isinstance(obj, timedelta): return {'day': obj.days, 'seconds': obj.seconds} elif isinstance(obj, ObjectId): return str(obj) return JSONEncoder.default(self, obj)
def default(self, obj): try: if isinstance(obj, datetime): return obj.strftime(ISO_DATETIME) if isinstance(obj, date): return obj.strftime(ISO_DATE) iterable = iter(obj) except TypeError: pass else: return list(iterable) return JSONEncoder.default(self, obj)
def default(self, obj): try: if isinstance(obj, datetime): # bokeh graphs need milliseconds since epoch as the datetime return (obj - datetime.utcfromtimestamp(0)).total_seconds() * 1000 iterable = iter(obj) except TypeError: pass else: return list(iterable) return JSONEncoder.default(self, obj)
def default(self, obj): try: if isinstance(obj, Device): deviceDict = obj.__dict__ deviceDict['_type'] = obj.__class__.__name__ return deviceDict iterable = iter(obj) except TypeError: print type(obj) else: return list(iterable) return JSONEncoder.default(self, obj)
def default(self, obj): try: if isinstance(obj, date): return obj.isoformat() if isinstance(obj, Base): return obj.as_dict() iterable = iter(obj) except TypeError: pass else: return list(iterable) return JSONEncoder.default(self, obj)
def default(self, obj): try: if isinstance(obj, (bytes, bytearray)): return obj.decode("ASCII") elif isinstance(obj, Decimal): return float(obj) elif isinstance(obj, datetime): millis = int(time.mktime(obj.timetuple()) * 1000) return millis except TypeError: raise return JSONEncoder.default(self, obj)
def default(self, obj): try: if isinstance(obj, date): return obj.isoformat() elif isinstance(obj, Enum): return obj.name iterable = iter(obj) except TypeError: pass else: return list(iterable) return JSONEncoder.default(self, obj)
def default(self, obj): try: if isinstance(obj, GerritUser): return { 'id': obj.id, 'name': obj.name, 'username': obj.username, 'avatars': obj.avatars } except TypeError: pass return JSONEncoder.default(self, obj)
def default(self, obj: typing.Any): """ allows handling to set as list and decimals as int for flask json encoder :param obj: object to serialize :return: object json encoded """ if isinstance(obj, set): return list(obj) if isinstance(obj, Decimal): return int(obj) return JSONEncoder.default(self, obj)
def default(self, obj): try: if isinstance(obj, datetime): return obj.strftime('%Y-%m-%d %H:%M:%S') elif isinstance(obj, date): return obj.strftime('%Y-%m-%d') iterable = iter(obj) except TypeError: pass else: return list(iterable) return JSONEncoder.default(self, obj)
def default(self, obj): try: if isinstance(obj, datetime): return obj.strftime(CustomJSONEncoder.datetime_format) elif isinstance(obj, Decimal): # 不转换为float是为了防止精度丢失 return str(obj) iterable = iter(obj) except TypeError: pass else: return list(iterable) return JSONEncoder.default(self, obj)
def default(self, obj): try: if isinstance(obj, date): if obj.hour != 0: # ToDo: fix this work around return Converter.datetime2str(obj) else: return Converter.convert(obj, Types.TYPE_STRING) iterable = iter(obj) except TypeError: pass else: return list(iterable) return JSONEncoder.default(self, obj)
def default(self, obj): try: if isinstance(obj, datetime): if obj.utcoffset() is not None: obj = obj - obj.utcoffset() # Convert datetime to POSIX timestamp in milliseconds. return int(obj.replace(tzinfo=timezone.utc).timestamp() * 1000) iterable = iter(obj) except TypeError: pass else: return list(iterable) return JSONEncoder.default(self, obj)
def default(self, o): try: if isinstance(o, (datetime, date, time)): return o.isoformat() if isinstance(o, ObjectId): return str(o) else: iterable = iter(o) except TypeError: pass else: return list(iterable) return JSONEncoder.default(self, o)
def default(self, obj): try: if isinstance(obj, datetime): return obj.isoformat(sep=' ') elif isinstance(obj, CSRFError): print(obj) return obj iterable = iter(obj) except TypeError: pass else: return list(iterable) return JSONEncoder.default(self, obj)
def default(self, obj): if isinstance(obj, User): dic = { 'login': obj.login, 'p': obj.p, 'name': obj.name, 'logged': obj.logged } return dic if isinstance(obj, Repository): dic = { 'org': obj.org, 'name': obj.name, 'directory': obj.directory, 'json_exists': obj.json_exists, 'exists': obj.exists, 'content': obj.content, 'file_name': obj.file_name } return dic else: JSONEncoder.default(self, obj)
def default(self, o): # pylint: disable=E0202 if isinstance(o, (time, date, datetime)): return o.isoformat() elif isinstance(o, (timedelta)): hours, minutes = convert_timedelta(o) hours = hours.zfill(2) minutes = minutes.zfill(2) data = '{}:{}'.format(hours, minutes) return data elif isinstance(o, (bytes)): o = o.decode('utf-8') return str(o) return JSONEncoder.default(self, o)
def default(self, obj): try: # convert all dates to the ISO format (assume UTC without timezone) if isinstance(obj, datetime): return obj.isoformat() + 'Z' elif isinstance(obj, date): return obj.isoformat() iterable = iter(obj) except TypeError: pass else: return list(iterable) return JSONEncoder.default(self, obj)
def default(self, obj): if isinstance(obj, datetime): return obj.replace(tzinfo=SimpleUTC()).isoformat() elif isinstance(obj, date): return obj.isoformat() elif isinstance(obj, timedelta): return str(obj) elif isinstance(obj, UUID): return str(obj) elif isinstance(obj, db.Model): return obj.cols_dict() else: return JSONEncoder.default(obj)
def default(self, obj): if isinstance(obj, (ObjectId, DBRef)): return str(obj) if isinstance(obj, datetime): return float(calendar.timegm(obj.utctimetuple())) if isinstance(obj, UUID): return str(obj) if isinstance(obj, (set, ValuesView)): # ValuesView is e.g. dict_values return list(obj) if isinstance(obj, (Cursor, QuerySet)): return list(obj) return JSONEncoder.default(self, obj)
def default(self, obj): try: if isinstance(obj, decimal.Decimal): # wanted a simple yield str(o) in the next line, # but that would mean a yield on the line with super(...), # which wouldn't work (see my comment below), so... return (str(o) for o in [obj]) iterable = iter(obj) except TypeError: pass else: return list(iterable) return JSONEncoder.default(self, obj)
def default(self, obj): try: if isinstance(obj, datetime): if obj.utcoffset() is not None: obj = obj - obj.utcoffset() millis = int(calendar.timegm(obj.timetuple()) - 28800) return millis iterable = iter(obj) except TypeError: pass else: return list(iterable) return JSONEncoder.default(self, obj)
def default(self, obj): try: if isinstance(obj, BaseModel): return obj.__dict__() if isinstance(obj, date): return obj.strftime('%Y-%m-%d') iterable = iter(obj) except TypeError: pass else: return list(iterable) return JSONEncoder.default(self, obj)
def default(self, obj): """ Method consist of operations performed to encode different data-types into JSON format :param obj: :return: """ if isinstance(obj, ObjectId): return str(obj) if isinstance(obj, datetime): return str(obj) if isinstance(obj, CommandCursor): return list(obj) return JSONEncoder.default(self, obj)
def default(self, obj: Any): """Our default handler.""" if isinstance(obj, lib.GrampsType): return str(obj) for gramps_class in self.gramps_classes: if isinstance(obj, gramps_class): return self.api_filter(obj) if isinstance(obj, DbBookmarks): return self.api_filter(obj) return JSONEncoder.default(self, obj)
def default(self, obj): try: if isinstance(obj, Enum): return str(obj) iterable = [{ 'key': '.'.join(str(element).split('.')[1:]), 'value': element.value } for element in obj] except TypeError: pass else: return iterable return JSONEncoder.default(self, obj)
def default(self, o: Any): if isinstance(o, Robot): return { "id": o.id, "current_pose": o.current_pose, "current_state": o.current_state.name } if isinstance(o, Command): return { "category_id": o.category_id, "command_id": o.command_id, "parameters": o.parameters, "message_id": o.message_id, } if isinstance(o, Response): return { "message_id": o.message_id, "return_code": o.return_code, "data": o.data } if isinstance(o, TestScenario): return { "success": o.success, "finished": o.finished, "test_steps": o.test_steps, "robot_id": o.robot_id, "percent_complete": o.percent_complete, "result": o.result } if isinstance(o, Pose): return { "position": o.position, "angle": o.angle } if isinstance(o, ConfigValueInformation): return { "name": o.name, "type": o.type, "id": o.id, "value": o.value } if isinstance(o, Enum): return o.name return JSONEncoder.default(self, o)
def default(self, o): # pylint: disable=E0202 if isinstance(o, Decimal): return float(o) elif isinstance(o, (datetime.date, Amount, Position)): return str(o) elif isinstance(o, (set, frozenset)): return list(o) try: return JSONEncoder.default(self, o) except TypeError: # workaround for #472 if isinstance(o, DisplayContext): o.ccontexts.pop(MISSING, None) return str(o)
def default(self, o): # pylint: disable=E0202 if isinstance(o, datetime): return o.strftime('%Y-%m-%dT%H:%M:%SZ') elif isinstance(o, date): return o.strftime('%Y-%m-%d') elif isinstance(o, Decimal): return float(o) elif isinstance(o, Amount): return str(o) elif isinstance(o, Position): return str(o) elif isinstance(o, (set, frozenset)): return list(o) return JSONEncoder.default(self, o)