Package com.esotericsoftware.kryo

Examples of com.esotericsoftware.kryo.Registration


            type = DetachedProperty.class;
        else
            type = clazz;

        if (type == memoizedClass) return memoizedClassValue;
        final Registration registration = classToRegistration.get(type);
        if (registration != null) {
            memoizedClass = type;
            memoizedClassValue = registration;
        }
View Full Code Here


        if (null == type) {
            output.writeVarInt(Kryo.NULL, true);
            return null;
        }

        final Registration registration = kryo.getRegistration(type);
        if (registration.getId() == NAME)
            writeName(output, type);
        else
            output.writeVarInt(registration.getId() + 2, true);

        return registration;
    }
View Full Code Here

            case NAME + 2: // Offset for NAME and NULL.
                return readName(input);
        }

        if (classID == memoizedClassId) return memoizedClassIdValue;
        final Registration registration = idToRegistration.get(classID - 2);
        if (registration == null) throw new KryoException("Encountered unregistered class ID: " + (classID - 2));
        memoizedClassId = classID;
        memoizedClassIdValue = registration;
        return registration;
    }
View Full Code Here

      for (Object element : object)
        serializer.write(kryo, output, element);
    }

    public EnumSet read (Kryo kryo, Input input, Class<EnumSet> type) {
      Registration registration = kryo.readClass(input);
      EnumSet object = EnumSet.noneOf(registration.getType());
      Serializer serializer = registration.getSerializer();
      int length = input.readInt(true);
      for (int i = 0; i < length; i++)
        object.add(serializer.read(kryo, input, null));
      return object;
    }
View Full Code Here

            object[i] = kryo.readObject(input, elementClass, elementSerializer);
        }
      } else {
        for (int i = 0, n = object.length; i < n; i++) {
          // Propagate generics
          Registration registration = kryo.readClass(input);
          if (registration != null) {
            registration.getSerializer().setGenerics(kryo, generics);
            object[i] = kryo.readObject(input, registration.getType(), registration.getSerializer());
          } else {
            object[i] = null;
          }
        }
      }
View Full Code Here

      kryo.writeClass(output, object);
      output.writeByte(object.isPrimitive()?1:0);
    }

    public Class read (Kryo kryo, Input input, Class<Class> type) {
      Registration registration = kryo.readClass(input);
      int isPrimitive = input.read();
      Class typ = registration.getType();
      if (!typ.isPrimitive()) return typ;
      return (isPrimitive == 1) ? typ : getWrapperClass(typ);
    }
View Full Code Here

          // The concrete type of the field is unknown, write the class first.
          if (value == null) {
            kryo.writeClass(output, null);
            continue;
          }
          Registration registration = kryo.writeClass(output, value.getClass());
          if (serializer == null) serializer = registration.getSerializer();
          if (cachedField.generics != null) serializer.setGenerics(kryo, cachedField.generics);
          kryo.writeObject(output, value, serializer);
        } else {
          // The concrete type of the field is known, always use the same serializer.
          if (serializer == null) cachedField.serializer = serializer = kryo.getSerializer(cachedField.valueClass);
View Full Code Here

        Object value;

        Class concreteType = cachedField.valueClass;
        Serializer serializer = cachedField.serializer;
        if (concreteType == null) {
          Registration registration = kryo.readClass(input);
          if (registration == null)
            value = null;
          else {
            if (serializer == null) serializer = registration.getSerializer();
            if (cachedField.generics != null) serializer.setGenerics(kryo, cachedField.generics);
            value = kryo.readObject(input, registration.getType(), serializer);
          }
        } else {
          if (serializer == null) cachedField.serializer = serializer = kryo.getSerializer(cachedField.valueClass);
          if (cachedField.generics != null) serializer.setGenerics(kryo, cachedField.generics);
          if (cachedField.canBeNull)
View Full Code Here

          continue;
        }

        Serializer serializer = cachedField.serializer;
        if (cachedField.valueClass == null) {
          Registration registration = kryo.writeClass(outputChunked, value.getClass());
          if (serializer == null) serializer = registration.getSerializer();
          if (cachedField.generics != null) serializer.setGenerics(kryo, cachedField.generics);
          kryo.writeObject(outputChunked, value, serializer);
        } else {
          if (serializer == null) cachedField.serializer = serializer = kryo.getSerializer(cachedField.valueClass);
          if (cachedField.generics != null) serializer.setGenerics(kryo, cachedField.generics);
View Full Code Here

        Object value;

        Class concreteType = cachedField.valueClass;
        Serializer serializer = cachedField.serializer;
        if (concreteType == null) {
          Registration registration = kryo.readClass(inputChunked);
          if (registration == null)
            value = null;
          else {
            if (serializer == null) serializer = registration.getSerializer();
            if (cachedField.generics != null) serializer.setGenerics(kryo, cachedField.generics);
            value = kryo.readObject(inputChunked, registration.getType(), serializer);
          }
        } else {
          if (serializer == null) cachedField.serializer = serializer = kryo.getSerializer(concreteType);
          if (cachedField.generics != null) serializer.setGenerics(kryo, cachedField.generics);
          if (cachedField.canBeNull)
View Full Code Here

TOP

Related Classes of com.esotericsoftware.kryo.Registration

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.