当前位置: 首页>>代码示例>>Java>>正文


Java Registration.getId方法代码示例

本文整理汇总了Java中com.esotericsoftware.kryo.Registration.getId方法的典型用法代码示例。如果您正苦于以下问题:Java Registration.getId方法的具体用法?Java Registration.getId怎么用?Java Registration.getId使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在com.esotericsoftware.kryo.Registration的用法示例。


在下文中一共展示了Registration.getId方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: writeDefaultKryoRegistrations

import com.esotericsoftware.kryo.Registration; //导入方法依赖的package包/类
/**
 * Creates a Kryo serializer and writes the default registrations out to a
 * comma separated file with one entry per line:
 *
 * <pre>
 * id,class
 * </pre>
 *
 * <p>The produced file is used to check that the registered IDs don't change
 * in future Flink versions.
 *
 * <p>This method is not used in the tests, but documents how the test file
 * has been created and can be used to re-create it if needed.
 *
 * @param filePath File path to write registrations to
 */
private void writeDefaultKryoRegistrations(String filePath) throws IOException {
	final File file = new File(filePath);
	if (file.exists()) {
		assertTrue(file.delete());
	}

	final Kryo kryo = new KryoSerializer<>(Integer.class, new ExecutionConfig()).getKryo();
	final int nextId = kryo.getNextRegistrationId();

	try (BufferedWriter writer = new BufferedWriter(new FileWriter(file))) {
		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();
		}

		System.out.println("Created file with registrations at " + file.getAbsolutePath());
	}
}
 
开发者ID:axbaretto,项目名称:flink,代码行数:37,代码来源:AvroKryoSerializerRegistrationsTest.java

示例2: register

import com.esotericsoftware.kryo.Registration; //导入方法依赖的package包/类
public Registration register (Registration registration) {
	if (registration == null) throw new IllegalArgumentException("registration cannot be null.");
	if (registration.getId() != NAME) {
		if (TRACE) {
			trace("kryo", "Register class ID " + registration.getId() + ": " + className(registration.getType()) + " ("
				+ registration.getSerializer().getClass().getName() + ")");
		}
		idToRegistration.put(registration.getId(), registration);
	} else if (TRACE) {
		trace("kryo", "Register class name: " + className(registration.getType()) + " ("
			+ registration.getSerializer().getClass().getName() + ")");
	}
	classToRegistration.put(registration.getType(), registration);
	if (registration.getType().isPrimitive()) classToRegistration.put(getWrapperClass(registration.getType()), registration);
	return registration;
}
 
开发者ID:HoratiusTang,项目名称:EsperDist,代码行数:17,代码来源:DefaultClassResolver.java

示例3: register

import com.esotericsoftware.kryo.Registration; //导入方法依赖的package包/类
public Registration register (Registration registration) {
	if (registration == null) throw new IllegalArgumentException("registration cannot be null.");
	if (TRACE) {
		if (registration.getId() == NAME) {
			trace("kryo", "Register class name: " + className(registration.getType()) + " ("
				+ registration.getSerializer().getClass().getName() + ")");
		} else {
			trace("kryo", "Register class ID " + registration.getId() + ": " + className(registration.getType()) + " ("
				+ registration.getSerializer().getClass().getName() + ")");
		}
	}
	classToRegistration.put(registration.getType(), registration);
	idToRegistration.put(registration.getId(), registration);
	if (registration.getType().isPrimitive()) classToRegistration.put(getWrapperClass(registration.getType()), registration);
	return registration;
}
 
开发者ID:HoratiusTang,项目名称:EsperDist,代码行数:17,代码来源:DefaultClassResolver.java

示例4: register

import com.esotericsoftware.kryo.Registration; //导入方法依赖的package包/类
/**
 * Register {@code type} and {@code serializer} to {@code kryo} instance.
 *
 * @param kryo       Kryo instance
 * @param type       type to register
 * @param serializer Specific serializer to register or null to use default.
 * @param id         type registration id to use
 */
private void register(Kryo kryo, Class<?> type, Serializer<?> serializer, int id) {
    Registration existing = kryo.getRegistration(id);
    if (existing != null) {
        if (existing.getType() != type) {
            log.error("{}: Failed to register {} as {}, {} was already registered.",
                      friendlyName(), type, id, existing.getType());

            throw new IllegalStateException(String.format(
                      "Failed to register %s as %s, %s was already registered.",
                      type, id, existing.getType()));
        }
        // falling through to register call for now.
        // Consider skipping, if there's reasonable
        // way to compare serializer equivalence.
    }
    Registration r;
    if (serializer == null) {
        r = kryo.register(type, id);
    } else {
        r = kryo.register(type, serializer, id);
    }
    if (r.getId() != id) {
        log.warn("{}: {} already registed as {}. Skipping {}.",
                 friendlyName(), r.getType(), r.getId(), id);
    }
    log.trace("{} registered as {}", r.getType(), r.getId());
}
 
开发者ID:shlee89,项目名称:athena,代码行数:36,代码来源:KryoNamespace.java

示例5: writeClass

import com.esotericsoftware.kryo.Registration; //导入方法依赖的package包/类
public Registration writeClass (Output output, Class type) {
	if (type == null) {
		if (TRACE || (DEBUG && kryo.getDepth() == 1)) log("Write", null);
		output.writeVarInt(Kryo.NULL, true);
		return null;
	}
	Registration registration = kryo.getRegistration(type);
	if (registration.getId() == NAME)
		writeName(output, type, registration);
	else {
		if (TRACE) trace("kryo", "Write class " + registration.getId() + ": " + className(type));
		output.writeVarInt(registration.getId() + 2, true);
	}
	return registration;
}
 
开发者ID:HoratiusTang,项目名称:EsperDist,代码行数:16,代码来源:DefaultClassResolver.java


注:本文中的com.esotericsoftware.kryo.Registration.getId方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。