public PipeConfig(T messageSchema, byte[] byteConst, int minimumFragmentsOnRing, int maximumLenghOfVariableLengthFields) { FieldReferenceOffsetManager from = MessageSchema.from(messageSchema); int biggestFragment = FieldReferenceOffsetManager.maxFragmentSize(from); int primaryMinSize = minimumFragmentsOnRing*biggestFragment; this.slabBits = (byte)(32 - Integer.numberOfLeadingZeros(primaryMinSize - 1)); try { int maxVarFieldsInRingAtOnce = FieldReferenceOffsetManager.maxVarLenFieldsPerPrimaryRingSize(from, 1<<slabBits); int totalBlobSize = maxVarFieldsInRingAtOnce * maximumLenghOfVariableLengthFields; this.blobBits = ((0==maximumLenghOfVariableLengthFields) | (0==maxVarFieldsInRingAtOnce))? (byte)0 : (byte)(32 - Integer.numberOfLeadingZeros(totalBlobSize - 1)); this.byteConst = byteConst; this.schema = messageSchema; validate(messageSchema, minimumFragmentsOnRing, maximumLenghOfVariableLengthFields); } catch (UnsupportedOperationException t) { logger.info("unable to define pipe with size {},{} for type {} ",minimumFragmentsOnRing,maximumLenghOfVariableLengthFields,messageSchema); throw(t); } }
public PipeConfig(T messageSchema, int minimumFragmentsOnRing, int maximumLenghOfVariableLengthFields, byte[] byteConst) { this.maximumLenghOfVariableLengthFields = maximumLenghOfVariableLengthFields; int biggestFragment = FieldReferenceOffsetManager.maxFragmentSize(MessageSchema.from(messageSchema)); int primaryMinSize = minimumFragmentsOnRing * biggestFragment; this.slabBits = (byte)(32 - Integer.numberOfLeadingZeros(primaryMinSize - 1)); int maxVarFieldsInRingAtOnce = FieldReferenceOffsetManager.maxVarLenFieldsPerPrimaryRingSize(MessageSchema.from(messageSchema), 1<<slabBits); int secondaryMinSize = maxVarFieldsInRingAtOnce * maximumLenghOfVariableLengthFields; this.blobBits = ((0==maximumLenghOfVariableLengthFields) | (0==maxVarFieldsInRingAtOnce))? (byte)0 : (byte)(32 - Integer.numberOfLeadingZeros(secondaryMinSize - 1)); this.byteConst = byteConst; this.schema = messageSchema; validate(messageSchema, minimumFragmentsOnRing, maximumLenghOfVariableLengthFields ); }
public PipeConfig(T messageSchema, int minimumFragmentsOnRing, int maximumLenghOfVariableLengthFields, byte[] byteConst) { int biggestFragment = FieldReferenceOffsetManager.maxFragmentSize(MessageSchema.from(messageSchema)); int primaryMinSize = minimumFragmentsOnRing*biggestFragment; this.slabBits = (byte)(32 - Integer.numberOfLeadingZeros(primaryMinSize - 1)); int maxVarFieldsInRingAtOnce = FieldReferenceOffsetManager.maxVarLenFieldsPerPrimaryRingSize(MessageSchema.from(messageSchema), 1<<slabBits); int secondaryMinSize = maxVarFieldsInRingAtOnce * maximumLenghOfVariableLengthFields; this.blobBits = ((0==maximumLenghOfVariableLengthFields) | (0==maxVarFieldsInRingAtOnce))? (byte)0 : (byte)(32 - Integer.numberOfLeadingZeros(secondaryMinSize - 1)); this.byteConst = byteConst; this.schema = messageSchema; validate(messageSchema, minimumFragmentsOnRing, maximumLenghOfVariableLengthFields ); }
public PipeConfig(T messageSchema, int minimumFragmentsOnRing, int maximumLenghOfVariableLengthFields, byte[] byteConst) { this.maximumLenghOfVariableLengthFields = maximumLenghOfVariableLengthFields; int biggestFragment = FieldReferenceOffsetManager.maxFragmentSize(MessageSchema.from(messageSchema)); int primaryMinSize = minimumFragmentsOnRing * biggestFragment; this.slabBits = (byte)(32 - Integer.numberOfLeadingZeros(primaryMinSize - 1)); int maxVarFieldsInRingAtOnce = FieldReferenceOffsetManager.maxVarLenFieldsPerPrimaryRingSize(MessageSchema.from(messageSchema), 1<<slabBits); int secondaryMinSize = maxVarFieldsInRingAtOnce * maximumLenghOfVariableLengthFields; this.blobBits = ((0==maximumLenghOfVariableLengthFields) | (0==maxVarFieldsInRingAtOnce))? (byte)0 : (byte)(32 - Integer.numberOfLeadingZeros(secondaryMinSize - 1)); this.byteConst = byteConst; this.schema = messageSchema; validate(messageSchema, minimumFragmentsOnRing, maximumLenghOfVariableLengthFields ); }
this.schema = messageSchema; validate(messageSchema, minimumFragmentsOnRing, maximumLenghOfVariableLengthFields); } catch (UnsupportedOperationException t) { logger.info("unable to define pipe with size {},{} for type {} ",minimumFragmentsOnRing,maximumLenghOfVariableLengthFields,messageSchema);
this.schema = messageSchema; validate(messageSchema, minimumFragmentsOnRing, maximumLenghOfVariableLengthFields); } catch (UnsupportedOperationException t) { logger.info("unable to define pipe with size {},{} for type {} ",minimumFragmentsOnRing,maximumLenghOfVariableLengthFields,messageSchema);