@Override public void fromData(DataInput in) throws IOException, ClassNotFoundException { this.prId = in.readInt(); this.scope = Scope.fromOrdinal(in.readByte()); this.pAttrs = PartitionAttributesImpl.createFromData(in); this.isDestroying = in.readBoolean(); this.isColocationComplete = in.readBoolean(); this.nodes = new VersionedArrayList(); InternalDataSerializer.invokeFromData(this.nodes, in); this.partitionResolver = DataSerializer.readString(in); this.colocatedWith = DataSerializer.readString(in); this.fullPath = DataSerializer.readString(in); this.ea = EvictionAttributesImpl.createFromData(in); this.regionIdleTimeout = ExpirationAttributes.createFromData(in); this.regionTimeToLive = ExpirationAttributes.createFromData(in); this.entryIdleTimeout = ExpirationAttributes.createFromData(in); this.entryTimeToLive = ExpirationAttributes.createFromData(in); this.firstDataStoreCreated = in.readBoolean(); this.elderFPAs = DataSerializer.readObject(in); if (this.elderFPAs == null) { this.elderFPAs = new LinkedHashSet<FixedPartitionAttributesImpl>(); } this.partitionListenerClassNames = DataSerializer.readArrayList(in); this.gatewaySenderIds = DataSerializer.readObject(in); if (this.gatewaySenderIds == null) { this.gatewaySenderIds = Collections.emptySet(); } }
@SuppressWarnings("unchecked") void load(DataInput dis) throws IOException { type = dis.readByte(); int size = dis.readInt(); list = new ArrayList<T>(); for (int i = 0; i < size; i++) { Tag tag = Tag.newTag(type, null); tag.load(dis); list.add((T) tag); } }
public void readFrom(DataInput in) throws Exception { type = in.readByte(); boolean isMergeView = in.readBoolean(); if (isMergeView) view = (View) Util.readStreamable(MergeView.class, in); else view = (View) Util.readStreamable(View.class, in); mbr = Util.readAddress(in); mbrs = Util.readAddresses(in, ArrayList.class); join_rsp = (JoinRsp) Util.readStreamable(JoinRsp.class, in); my_digest = (Digest) Util.readStreamable(Digest.class, in); merge_id = (MergeId) Util.readStreamable(MergeId.class, in); merge_rejected = in.readBoolean(); useFlushIfPresent = in.readBoolean(); }
/** Deserialize an unknown InferredType from the given input stream */ public static InferredType readType(DataInput in) throws IOException { InferredType it = null; byte b = in.readByte(); String name = in.readUTF(); if (b == BASE_TYPE) { it = new BaseType(name); } else if (b == STRUCT_TYPE) { it = new StructType(name); } else if (b == ARRAY_TYPE) { it = new ArrayType(name); } else if (b == UNION_TYPE) { it = new UnionType(name); } else { throw new IOException("No type found: " + b); } it.readFields(in); return it; }
public static QuantileDigest deserialize(DataInput input) { try { double maxError = input.readDouble(); double alpha = input.readDouble(); QuantileDigest result = new QuantileDigest(maxError, alpha); result.landmarkInSeconds = input.readLong(); result.min = input.readLong(); result.max = input.readLong(); result.totalNodeCount = input.readInt(); Deque<Node> stack = new ArrayDeque<>(); for (int i = 0; i < result.totalNodeCount; i++) { int flags = input.readByte(); Node node = deserializeNode(input); if ((flags & Flags.HAS_RIGHT) != 0) { node.right = stack.pop(); } if ((flags & Flags.HAS_LEFT) != 0) { node.left = stack.pop(); } stack.push(node); result.weightedCount += node.weightedCount; if (node.weightedCount >= ZERO_WEIGHT_THRESHOLD) { result.nonZeroNodeCount++; } } if (!stack.isEmpty()) { Preconditions.checkArgument( stack.size() == 1, "Tree is corrupted. Expected a single root node"); result.root = stack.pop(); } return result; } catch (IOException e) { throw Throwables.propagate(e); } }
public void readFrom(DataInput in) throws Exception { type = Type.values()[in.readByte()]; // We can't use Util.readObject since it's size is limited to 2^15-1 try { short first = in.readShort(); if (first == -1) { object = Util.readGenericStreamable(in); } else { ByteBuffer bb = ByteBuffer.allocate(4); bb.putShort(first); bb.putShort(in.readShort()); int size = bb.getInt(0); byte[] bytes = new byte[size]; in.readFully(bytes, 0, size); object = Util.objectFromByteBuffer(bytes); } } catch (IOException e) { throw e; } catch (Exception e) { throw new IOException("Exception encountered while serializing execution request", e); } request = in.readLong(); }
/** Read a {@link Writable}, {@link String}, primitive type, or an array of the preceding. */ @SuppressWarnings("unchecked") public static Object readObject(DataInput in, ObjectWritable objectWritable, Configuration conf) throws IOException { String className = UTF8.readString(in); Class<?> declaredClass = PRIMITIVE_NAMES.get(className); if (declaredClass == null) { declaredClass = loadClass(conf, className); } Object instance; if (declaredClass.isPrimitive()) { // primitive types if (declaredClass == Boolean.TYPE) { // boolean instance = Boolean.valueOf(in.readBoolean()); } else if (declaredClass == Character.TYPE) { // char instance = Character.valueOf(in.readChar()); } else if (declaredClass == Byte.TYPE) { // byte instance = Byte.valueOf(in.readByte()); } else if (declaredClass == Short.TYPE) { // short instance = Short.valueOf(in.readShort()); } else if (declaredClass == Integer.TYPE) { // int instance = Integer.valueOf(in.readInt()); } else if (declaredClass == Long.TYPE) { // long instance = Long.valueOf(in.readLong()); } else if (declaredClass == Float.TYPE) { // float instance = Float.valueOf(in.readFloat()); } else if (declaredClass == Double.TYPE) { // double instance = Double.valueOf(in.readDouble()); } else if (declaredClass == Void.TYPE) { // void instance = null; } else { throw new IllegalArgumentException("Not a primitive: " + declaredClass); } } else if (declaredClass.isArray()) { // array int length = in.readInt(); instance = Array.newInstance(declaredClass.getComponentType(), length); for (int i = 0; i < length; i++) { Array.set(instance, i, readObject(in, conf)); } } else if (declaredClass == String.class) { // String instance = UTF8.readString(in); } else if (declaredClass.isEnum()) { // enum instance = Enum.valueOf((Class<? extends Enum>) declaredClass, UTF8.readString(in)); } else { // Writable Class instanceClass = null; String str = UTF8.readString(in); instanceClass = loadClass(conf, str); Writable writable = WritableFactories.newInstance(instanceClass, conf); writable.readFields(in); instance = writable; if (instanceClass == NullInstance.class) { // null declaredClass = ((NullInstance) instance).declaredClass; instance = null; } } if (objectWritable != null) { // store values objectWritable.declaredClass = declaredClass; objectWritable.instance = instance; } return instance; }
public void readFrom(DataInput in) throws Exception { type = in.readByte(); short len = in.readShort(); version = new byte[len]; in.readFully(version); }