How to use the jsonpickle.handlers.registry.register function in jsonpickle

To help you get started, we’ve selected a few jsonpickle examples, based on popular ways it is used in public projects.

Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.

github robbyFux / Ragpicker / src / manager.py View on Github external
def writeJsonReportFile(exportDir, dbresults, fileName):
    try:
        jsonpickle.set_encoder_options('simplejson', indent=4)
        jsonpickle.handlers.registry.register(datetime.datetime, DatetimeHandler)
        jsonpickle.handlers.registry.register(uuid.UUID, UUIDHandler)
        jsonReport = jsonpickle.encode(dbresults)
    except (UnicodeError, TypeError):
        jsonReport = jsonpickle.encode(convertDirtyDict2ASCII(dbresults))
    try:
        if not os.path.exists(exportDir + fileName):
            report = codecs.open(os.path.join(exportDir, fileName), "w", "utf-8")
            report.write(jsonReport)
            report.close()
    except (TypeError, IOError) as e:
        raise Exception("Failed to generate JSON report: %s" % e)
github netzob / netzob / src / netzob / Common / Utils / Serializer.py View on Github external
def restore(self, data):
        return uuid.UUID(hex=data['hex'])

class BitarrayJsonPickleHandler(jsonpickle.handlers.BaseHandler):
    """Handler used to process serialization of 'uuid' objects, as
    they are, by default, un-deserializable with jsonpickle.
    """

    def flatten(self, obj, data):
        data['value01'] = obj.to01()
        return data 

    def restore(self, data):
        return bitarray.bitarray(data['value01'])

jsonpickle.handlers.registry.register(uuid.UUID, UUIDJsonPickleHandler)
jsonpickle.handlers.registry.register(bitarray.bitarray, BitarrayJsonPickleHandler)

class Serializer(object):
    """Class providing static methods for object serialization and
    deserialization. The current implementation relies on
    jsonpickle. As such, and for security reasons, important care
    should be taken when deserializing data from untrusted source.
    """

    @staticmethod
    def dump(obj):
        if obj is not None:
            return jsonpickle.encode(obj)
        else:
            logging.warn("Cannot serialize None.")
            return None
github Evilcry / malware-crawler / MalwareCrawler / src / manager.py View on Github external
def writeJsonReportFile(exportDir, dbresults, fileName):
    try:
        jsonpickle.set_encoder_options('simplejson', indent=4)
        jsonpickle.handlers.registry.register(datetime.datetime, DatetimeHandler)
        jsonpickle.handlers.registry.register(uuid.UUID, UUIDHandler)
        jsonReport = jsonpickle.encode(dbresults)
    except (UnicodeError, TypeError):
        jsonReport = jsonpickle.encode(convertDirtyDict2ASCII(dbresults))
    try:
        if not os.path.exists(exportDir + fileName):
            report = codecs.open(os.path.join(exportDir, fileName), "w", "utf-8")
            report.write(jsonReport)
            report.close()
    except (TypeError, IOError) as e:
        raise Exception("Failed to generate JSON report: %s" % e)
github tech-quantum / sia-cog / Interface / __init__.py View on Github external
cors = CORS(app, resources={r"/api/*": {"origins": "*"}})

app.trainingstatus = 0

class NumpyFloatHandler(jsonpickle.handlers.BaseHandler):
    """
    Automatic conversion of numpy float  to python floats
    Required for jsonpickle to work correctly
    """
    def flatten(self, obj, data):
        """
        Converts and rounds a Numpy.float* to Python float
        """
        return round(obj,6)

jsonpickle.handlers.registry.register(numpy.int, NumpyFloatHandler)
jsonpickle.handlers.registry.register(numpy.int32, NumpyFloatHandler)
jsonpickle.handlers.registry.register(numpy.int64, NumpyFloatHandler)
jsonpickle.handlers.registry.register(numpy.float, NumpyFloatHandler)
jsonpickle.handlers.registry.register(numpy.float32, NumpyFloatHandler)
jsonpickle.handlers.registry.register(numpy.float64, NumpyFloatHandler)
jsonpickle.handlers.registry.register(numpy.double, NumpyFloatHandler)
github Evilcry / malware-crawler / MalwareCrawler / src / reporting / jsondump.py View on Github external
try:
            if not os.path.exists(dumpdir):
                os.makedirs(dumpdir)  
            d = tempfile.mkdtemp(dir=dumpdir)
        except Exception as e:
            raise Exception('Could not open %s for writing (%s)', dumpdir, e)
        else:
            os.rmdir(d)
        
        url_md5 = results["Info"]["url"]["md5"]
        file_md5 = results["Info"]["file"]["md5"]
        jfile = url_md5 + "_" + file_md5 + ".json"

        try:
            jsonpickle.set_encoder_options('simplejson', indent=4) 
            jsonpickle.handlers.registry.register(datetime.datetime, DatetimeHandler)
            jsonpickle.handlers.registry.register(uuid.UUID, UUIDHandler)
            jsonReport = jsonpickle.encode(results)
        except (UnicodeError, TypeError):
            jsonReport = jsonpickle.encode(convertDirtyDict2ASCII(results))
        
        try:  
            if not os.path.exists(dumpdir + jfile):
                report = codecs.open(os.path.join(dumpdir, jfile), "w", "utf-8")      
                report.write(jsonReport)
                report.close()
        except (TypeError, IOError) as e:
            raise Exception("Failed to generate JSON report: %s" % e)
github rik0 / pynetsym / pynetsym / agent_db.py View on Github external
jsonpickle.handlers.registry.register(numpy.float, NumpyFloatHandler)
    jsonpickle.handlers.registry.register(numpy.float32, NumpyFloatHandler)
    jsonpickle.handlers.registry.register(numpy.float64, NumpyFloatHandler)

    class NumpyIntHandler(jsonpickle.handlers.BaseHandler):
        """
        Automatic conversion of numpy float  to python floats
        Required for jsonpickle to work correctly
        """
        def flatten(self, obj, data):
            """
            Converts and rounds a Numpy.float* to Python float
            """
            return int(obj)

    jsonpickle.handlers.registry.register(numpy.int8,  NumpyIntHandler)
    jsonpickle.handlers.registry.register(numpy.int16, NumpyIntHandler)
    jsonpickle.handlers.registry.register(numpy.int32, NumpyIntHandler)
    jsonpickle.handlers.registry.register(numpy.int64, NumpyIntHandler)
    jsonpickle.handlers.registry.register(numpy.int_,  NumpyIntHandler)

    class JSONPickler(SingletonHasStrictTraits):
        implements(ISerialize)
        pickle_module = Module

        def __init__(self):
            self.pickle_module = jsonpickle

        def loads(self, pickled_representation):
            try:
                return self.pickle_module.decode(pickled_representation)
            except Exception as e: