com.esotericsoftware.kryo.Registration.getType()方法的使用及代码示例

x33g5p2x  于2022-01-29 转载在 其他  
字(9.2k)|赞(0)|评价(0)|浏览(85)

本文整理了Java中com.esotericsoftware.kryo.Registration.getType方法的一些代码示例,展示了Registration.getType的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Registration.getType方法的具体详情如下:
包路径:com.esotericsoftware.kryo.Registration
类名称:Registration
方法名:getType

Registration.getType介绍

暂无

代码示例

代码示例来源:origin: apache/hive

@Override
public Registration readClass(Input input) {
 Registration reg = super.readClass(input);
 if (reg != null) {
  ponderGlobalPreReadHook(reg.getType()); // Needed to intercept readClassAndObject.
 }
 return reg;
}

代码示例来源:origin: apache/hive

@Override
public List<?> read(final Kryo kryo, final Input input, final Class<List<?>> type) {
 final int length = input.readInt(true);
 Class<?> componentType = kryo.readClass(input).getType();
 if (componentType.isPrimitive()) {
  componentType = getPrimitiveWrapperClass(componentType);
 }
 try {
  final Object items = Array.newInstance(componentType, length);
  for (int i = 0; i < length; i++) {
   Array.set(items, i, kryo.readClassAndObject(input));
  }
  return Arrays.asList((Object[]) items);
 } catch (final Exception e) {
  throw new RuntimeException(e);
 }
}

代码示例来源:origin: orbit/orbit

@Override
  public ReferenceReplacement read(Kryo kryo, Input input, Class<ReferenceReplacement> type)
  {
    ReferenceReplacement referenceReplacement = new ReferenceReplacement();
    referenceReplacement.interfaceClass = kryo.readClass(input).getType();
    referenceReplacement.id = kryo.readClassAndObject(input);
    referenceReplacement.address = readNodeAddress(input);
    return referenceReplacement;
  }
}

代码示例来源:origin: atomix/atomix

boolean matches = false;
for (Class<?> type : types) {
 if (existing.getType() == type) {
  matches = true;
  break;
   friendlyName(), types, id, existing.getType());
   Arrays.toString(types), id, existing.getType()));
 if (r.getId() != id) {
  LOGGER.debug("{}: {} already registered as {}. Skipping {}.",
    friendlyName(), r.getType(), r.getId(), id);
 LOGGER.trace("{} registered as {}", r.getType(), r.getId());

代码示例来源:origin: apache/flink

/**
 * Tests that the registered classes in Kryo did not change.
 *
 * <p>Once we have proper serializer versioning this test will become obsolete.
 * But currently a change in the serializers can break savepoint backwards
 * compatibility between Flink versions.
 */
@Test
public void testDefaultKryoRegisteredClassesDidNotChange() throws Exception {
  final Kryo kryo = new KryoSerializer<>(Integer.class, new ExecutionConfig()).getKryo();
  try (BufferedReader reader = new BufferedReader(new InputStreamReader(
      getClass().getClassLoader().getResourceAsStream("flink_11-kryo_registrations")))) {
    String line;
    while ((line = reader.readLine()) != null) {
      String[] split = line.split(",");
      final int tag = Integer.parseInt(split[0]);
      final String registeredClass = split[1];
      Registration registration = kryo.getRegistration(tag);
      if (registration == null) {
        fail(String.format("Registration for %d = %s got lost", tag, registeredClass));
      }
      else if (!registeredClass.equals(registration.getType().getName())) {
        fail(String.format("Registration for %d = %s changed to %s",
            tag, registeredClass, registration.getType().getName()));
      }
    }
  }
}

代码示例来源:origin: apache/flink

for (int i = 0; i < nextId; i++) {
  Registration registration = kryo.getRegistration(i);
  String str = registration.getId() + "," + registration.getType().getName();
  writer.write(str, 0, str.length());
  writer.newLine();

代码示例来源:origin: EsotericSoftware/kryonet

public void read (Kryo kryo, Input input) {
    objectID = input.readInt(true);
    int methodClassID = input.readInt(true);
    Class methodClass = kryo.getRegistration(methodClassID).getType();
    byte methodIndex = input.readByte();
    try {
      cachedMethod = getMethods(kryo, methodClass)[methodIndex];
    } catch (IndexOutOfBoundsException ex) {
      throw new KryoException("Invalid method index " + methodIndex + " for class: " + methodClass.getName());
    }
    Serializer[] serializers = cachedMethod.serializers;
    Class[] parameterTypes = cachedMethod.method.getParameterTypes();
    Object[] args = new Object[serializers.length];
    this.args = args;
    for (int i = 0, n = args.length; i < n; i++) {
      Serializer serializer = serializers[i];
      if (serializer != null)
        args[i] = kryo.readObjectOrNull(input, parameterTypes[i], serializer);
      else
        args[i] = kryo.readClassAndObject(input);
    }
    responseData = input.readByte();
  }
}

代码示例来源:origin: spring-projects/spring-integration

private void validateRegistrations() {
  List<Integer> ids = new ArrayList<Integer>();
  List<Class<?>> types = new ArrayList<Class<?>>();
  for (Registration registration : getRegistrations()) {
    Assert.isTrue(registration.getId() >= MIN_REGISTRATION_VALUE,
        "registration ID must be >= " + MIN_REGISTRATION_VALUE);
    if (ids.contains(registration.getId())) {
      throw new RuntimeException(String.format("Duplicate registration ID found: %d",
          registration.getId()));
    }
    ids.add(registration.getId());
    if (types.contains(registration.getType())) {
      throw new RuntimeException(String.format("Duplicate registration found for type: %s",
          registration.getType()));
    }
    types.add(registration.getType());
    if (log.isInfoEnabled()) {
      log.info(String.format("configured Kryo registration %s with serializer %s", registration,
          registration.getSerializer().getClass().getName()));
    }
  }
}

代码示例来源:origin: de.javakaffee/kryo-serializers

@SuppressWarnings( { "unchecked", "rawtypes" } )
private EnumMap<? extends Enum<?>, ?> create(final Kryo kryo, final Input input,
  final Class<? extends EnumMap<? extends Enum<?>, ?>> type) {
  final Class<? extends Enum<?>> keyType = kryo.readClass( input ).getType();
  return new EnumMap( keyType );
}

代码示例来源:origin: magro/kryo-serializers

@SuppressWarnings( { "unchecked", "rawtypes" } )
private EnumMap<? extends Enum<?>, ?> create(final Kryo kryo, final Input input,
  final Class<? extends EnumMap<? extends Enum<?>, ?>> type) {
  final Class<? extends Enum<?>> keyType = kryo.readClass( input ).getType();
  return new EnumMap( keyType );
}

代码示例来源:origin: de.javakaffee/kryo-serializers

@Override
public EnumSet read(final Kryo kryo, final Input input, final Class<? extends EnumSet<? extends Enum<?>>> type) {
  final Class<Enum> elementType = kryo.readClass( input ).getType();
  final EnumSet result = EnumSet.noneOf( elementType );
  final int size = input.readInt(true);
  final Enum<?>[] enumConstants = elementType.getEnumConstants();
  for ( int i = 0; i < size; i++ ) {
    result.add( enumConstants[input.readInt(true)] );
  }
  return result;
}

代码示例来源:origin: com.esotericsoftware/kryo

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

代码示例来源:origin: com.esotericsoftware.kryo/kryo

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

代码示例来源:origin: com.esotericsoftware.kryo/kryo

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;
}

代码示例来源:origin: com.esotericsoftware/kryo-shaded

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

代码示例来源:origin: com.esotericsoftware/kryo

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;
}

代码示例来源:origin: com.esotericsoftware/kryo-shaded

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;
}

代码示例来源:origin: DataSystemsLab/GeoSpark

private Object readUserData(Kryo kryo, Input input)
{
  Object userData = null;
  if (input.readBoolean()) {
    Registration clazz = kryo.readClass(input);
    userData = kryo.readObject(input, clazz.getType());
  }
  return userData;
}

代码示例来源:origin: hank-whu/turbo-rpc

@SuppressWarnings("unchecked")
public static Object slowRead(Kryo kryo, Input input) {
  Registration registration = kryo.readClass(input);
  if (registration == null) {
    return null;
  } else {
    Serializer<?> serializer = registration.getSerializer();
    return kryo.readObject(input, registration.getType(), serializer);
  }
}

代码示例来源:origin: de.javakaffee/kryo-serializers

@Override
public Object read(final Kryo kryo, final Input input, final Class<? extends Object> type) {
  final Class<?> superclass = kryo.readClass( input ).getType();
  final Class<?>[] interfaces = kryo.readObject(input, Class[].class);
  final Callback[] callbacks = kryo.readObject(input, Callback[].class);
  return createProxy( superclass, interfaces, callbacks );
}

相关文章