//JAVA TO C# CONVERTER WARNING: Method 'throws' clauses are not available in .NET: //ORIGINAL LINE: @Override public index.BinaryDocValues getBinary(index.FieldInfo fieldInfo) throws java.io.IOException public override BinaryDocValues getBinary(FieldInfo fieldInfo) { //JAVA TO C# CONVERTER WARNING: The original Java variable was marked 'final': //ORIGINAL LINE: final OneField field = fields.get(fieldInfo.name); OneField field = fields[fieldInfo.name]; // SegmentCoreReaders already verifies this field is // valid: Debug.Assert(field != null); //JAVA TO C# CONVERTER WARNING: The original Java variable was marked 'final': //ORIGINAL LINE: final store.IndexInput in = data.clone(); IndexInput @in = data.clone(); //JAVA TO C# CONVERTER WARNING: The original Java variable was marked 'final': //ORIGINAL LINE: final util.BytesRef scratch = new util.BytesRef(); BytesRef scratch = new BytesRef(); //JAVA TO C# CONVERTER WARNING: The original Java variable was marked 'final': //ORIGINAL LINE: final java.text.DecimalFormat decoder = new java.text.DecimalFormat(field.pattern, new java.text.DecimalFormatSymbols(java.util.Locale.ROOT)); DecimalFormat decoder = new DecimalFormat(field.pattern, new DecimalFormatSymbols(Locale.ROOT)); return(new BinaryDocValuesAnonymousInnerClassHelper(this, field, @in, scratch, decoder)); }
public void FieldTest() { var timingHelper = new TimingHelper(_warmupIterations, _iterations); // One field. var oneFieldType = this._assembly.GetType("AssemblyToProcess.Performance.OneField"); var instance = (dynamic)Activator.CreateInstance(oneFieldType); var oneField = new OneField(); timingHelper.TimeIt("One Field", new TimingHelper.Data("Deep Copy", () => instance.DeepCopy()), new TimingHelper.Data("Hand Copy", () => instance.HCopy()), new TimingHelper.Data("Clone", () => oneField.Clone()) ); // Five fields. var fiveFieldsType = this._assembly.GetType("AssemblyToProcess.Performance.FiveFields"); instance = (dynamic)Activator.CreateInstance(fiveFieldsType); var fiveFields = new FiveFields(); timingHelper.TimeIt("Five Fields", new TimingHelper.Data("Deep Copy", () => instance.DeepCopy()), new TimingHelper.Data("Hand Copy", () => instance.HCopy()), new TimingHelper.Data("Clone", () => fiveFields.Clone()) ); // Ten fields. var tenFieldsType = this._assembly.GetType("AssemblyToProcess.Performance.TenFields"); instance = (dynamic)Activator.CreateInstance(tenFieldsType); var tenFields = new TenFields(); timingHelper.TimeIt("Ten Fields", new TimingHelper.Data("Deep Copy", () => instance.DeepCopy()), new TimingHelper.Data("Hand Copy", () => instance.HCopy()), new TimingHelper.Data("Clone", () => tenFields.Clone()) ); }
public SimpleTextDocValuesReader(SegmentReadState state, string ext) { DATA = state.Directory.OpenInput( IndexFileNames.SegmentFileName(state.SegmentInfo.Name, state.SegmentSuffix, ext), state.Context); MAX_DOC = state.SegmentInfo.DocCount; while (true) { ReadLine(); if (SCRATCH.Equals(SimpleTextDocValuesWriter.END)) { break; } Debug.Assert(StartsWith(SimpleTextDocValuesWriter.FIELD), SCRATCH.Utf8ToString()); var fieldName = StripPrefix(SimpleTextDocValuesWriter.FIELD); var field = new OneField(); FIELDS[fieldName] = field; ReadLine(); Debug.Assert(StartsWith(SimpleTextDocValuesWriter.TYPE), SCRATCH.Utf8ToString()); var dvType = (FieldInfo.DocValuesType_e) Enum.Parse(typeof(FieldInfo.DocValuesType_e), StripPrefix(SimpleTextDocValuesWriter.TYPE)); if (dvType == FieldInfo.DocValuesType_e.NUMERIC) { ReadLine(); Debug.Assert(StartsWith(SimpleTextDocValuesWriter.MINVALUE), "got " + SCRATCH.Utf8ToString() + " field=" + fieldName + " ext=" + ext); field.MinValue = Convert.ToInt64(StripPrefix(SimpleTextDocValuesWriter.MINVALUE)); ReadLine(); Debug.Assert(StartsWith(SimpleTextDocValuesWriter.PATTERN)); field.Pattern = StripPrefix(SimpleTextDocValuesWriter.PATTERN); field.DataStartFilePointer = DATA.FilePointer; DATA.Seek(DATA.FilePointer + (1 + field.Pattern.Length + 2) * MAX_DOC); } else if (dvType == FieldInfo.DocValuesType_e.BINARY) { ReadLine(); Debug.Assert(StartsWith(SimpleTextDocValuesWriter.MAXLENGTH)); field.MaxLength = Convert.ToInt32(StripPrefix(SimpleTextDocValuesWriter.MAXLENGTH)); ReadLine(); Debug.Assert(StartsWith(SimpleTextDocValuesWriter.PATTERN)); field.Pattern = StripPrefix(SimpleTextDocValuesWriter.PATTERN); field.DataStartFilePointer = DATA.FilePointer; DATA.Seek(DATA.FilePointer + (9 + field.Pattern.Length + field.MaxLength + 2) * MAX_DOC); } else if (dvType == FieldInfo.DocValuesType_e.SORTED || dvType == FieldInfo.DocValuesType_e.SORTED_SET) { ReadLine(); Debug.Assert(StartsWith(SimpleTextDocValuesWriter.NUMVALUES)); field.NumValues = Convert.ToInt64(StripPrefix(SimpleTextDocValuesWriter.NUMVALUES)); ReadLine(); Debug.Assert(StartsWith(SimpleTextDocValuesWriter.MAXLENGTH)); field.MaxLength = Convert.ToInt32(StripPrefix(SimpleTextDocValuesWriter.MAXLENGTH)); ReadLine(); Debug.Assert(StartsWith(SimpleTextDocValuesWriter.PATTERN)); field.Pattern = StripPrefix(SimpleTextDocValuesWriter.PATTERN); ReadLine(); Debug.Assert(StartsWith(SimpleTextDocValuesWriter.ORDPATTERN)); field.OrdPattern = StripPrefix(SimpleTextDocValuesWriter.ORDPATTERN); field.DataStartFilePointer = DATA.FilePointer; DATA.Seek(DATA.FilePointer + (9 + field.Pattern.Length + field.MaxLength) * field.NumValues + (1 + field.OrdPattern.Length) * MAX_DOC); } else { throw new InvalidEnumArgumentException(); } } // We should only be called from above if at least one // field has DVs: Debug.Assert(FIELDS.Count > 0); }
public BinaryDocValuesAnonymousInnerClassHelper(SimpleTextDocValuesReader outerInstance, OneField field, IndexInput input, BytesRef scratch) { _outerInstance = outerInstance; _field = field; _input = input; _scratch = scratch; }
// LUCENENET NOTE: Changed from public to internal because the class had to be made public, but is not for public use. internal SimpleTextDocValuesReader(SegmentReadState state, string ext) { data = state.Directory.OpenInput( IndexFileNames.SegmentFileName(state.SegmentInfo.Name, state.SegmentSuffix, ext), state.Context); maxDoc = state.SegmentInfo.DocCount; while (true) { ReadLine(); if (scratch.Equals(SimpleTextDocValuesWriter.END)) { break; } Debug.Assert(StartsWith(SimpleTextDocValuesWriter.FIELD), scratch.Utf8ToString()); var fieldName = StripPrefix(SimpleTextDocValuesWriter.FIELD); var field = new OneField(); fields[fieldName] = field; ReadLine(); Debug.Assert(StartsWith(SimpleTextDocValuesWriter.TYPE), scratch.Utf8ToString()); var dvType = (DocValuesType) Enum.Parse(typeof(DocValuesType), StripPrefix(SimpleTextDocValuesWriter.TYPE)); if (dvType == DocValuesType.NUMERIC) { ReadLine(); Debug.Assert(StartsWith(SimpleTextDocValuesWriter.MINVALUE), "got " + scratch.Utf8ToString() + " field=" + fieldName + " ext=" + ext); field.MinValue = Convert.ToInt64(StripPrefix(SimpleTextDocValuesWriter.MINVALUE), CultureInfo.InvariantCulture); ReadLine(); Debug.Assert(StartsWith(SimpleTextDocValuesWriter.PATTERN)); field.Pattern = StripPrefix(SimpleTextDocValuesWriter.PATTERN); field.DataStartFilePointer = data.GetFilePointer(); data.Seek(data.GetFilePointer() + (1 + field.Pattern.Length + 2) * maxDoc); } else if (dvType == DocValuesType.BINARY) { ReadLine(); Debug.Assert(StartsWith(SimpleTextDocValuesWriter.MAXLENGTH)); field.MaxLength = Convert.ToInt32(StripPrefix(SimpleTextDocValuesWriter.MAXLENGTH), CultureInfo.InvariantCulture); ReadLine(); Debug.Assert(StartsWith(SimpleTextDocValuesWriter.PATTERN)); field.Pattern = StripPrefix(SimpleTextDocValuesWriter.PATTERN); field.DataStartFilePointer = data.GetFilePointer(); data.Seek(data.GetFilePointer() + (9 + field.Pattern.Length + field.MaxLength + 2) * maxDoc); } else if (dvType == DocValuesType.SORTED || dvType == DocValuesType.SORTED_SET) { ReadLine(); Debug.Assert(StartsWith(SimpleTextDocValuesWriter.NUMVALUES)); field.NumValues = Convert.ToInt64(StripPrefix(SimpleTextDocValuesWriter.NUMVALUES), CultureInfo.InvariantCulture); ReadLine(); Debug.Assert(StartsWith(SimpleTextDocValuesWriter.MAXLENGTH)); field.MaxLength = Convert.ToInt32(StripPrefix(SimpleTextDocValuesWriter.MAXLENGTH), CultureInfo.InvariantCulture); ReadLine(); Debug.Assert(StartsWith(SimpleTextDocValuesWriter.PATTERN)); field.Pattern = StripPrefix(SimpleTextDocValuesWriter.PATTERN); ReadLine(); Debug.Assert(StartsWith(SimpleTextDocValuesWriter.ORDPATTERN)); field.OrdPattern = StripPrefix(SimpleTextDocValuesWriter.ORDPATTERN); field.DataStartFilePointer = data.GetFilePointer(); data.Seek(data.GetFilePointer() + (9 + field.Pattern.Length + field.MaxLength) * field.NumValues + (1 + field.OrdPattern.Length) * maxDoc); } else { throw new ArgumentOutOfRangeException(); } } // We should only be called from above if at least one // field has DVs: Debug.Assert(fields.Count > 0); }
// LUCENENET NOTE: Changed from public to internal because the class had to be made public, but is not for public use. internal SimpleTextDocValuesReader(SegmentReadState state, string ext) { data = state.Directory.OpenInput( IndexFileNames.SegmentFileName(state.SegmentInfo.Name, state.SegmentSuffix, ext), state.Context); maxDoc = state.SegmentInfo.DocCount; while (true) { ReadLine(); if (scratch.Equals(SimpleTextDocValuesWriter.END)) { break; } // LUCENENET specific - use wrapper BytesRefFormatter struct to defer building the string unless string.Format() is called if (Debugging.AssertsEnabled) { Debugging.Assert(StartsWith(SimpleTextDocValuesWriter.FIELD), "{0}", new BytesRefFormatter(scratch, BytesRefFormat.UTF8)); } var fieldName = StripPrefix(SimpleTextDocValuesWriter.FIELD); var field = new OneField(); fields[fieldName] = field; ReadLine(); // LUCENENET specific - use wrapper BytesRefFormatter struct to defer building the string unless string.Format() is called if (Debugging.AssertsEnabled) { Debugging.Assert(StartsWith(SimpleTextDocValuesWriter.TYPE), "{0}", new BytesRefFormatter(scratch, BytesRefFormat.UTF8)); } var dvType = (DocValuesType)Enum.Parse(typeof(DocValuesType), StripPrefix(SimpleTextDocValuesWriter.TYPE)); // if (Debugging.AssertsEnabled) Debugging.Assert(dvType != null); // LUCENENET: Not possible for an enum to be null in .NET if (dvType == DocValuesType.NUMERIC) { ReadLine(); // LUCENENET specific - use wrapper BytesRefFormatter struct to defer building the string unless string.Format() is called if (Debugging.AssertsEnabled) { Debugging.Assert(StartsWith(SimpleTextDocValuesWriter.MINVALUE), "got {0} field={1} ext={2}", new BytesRefFormatter(scratch, BytesRefFormat.UTF8), fieldName, ext); } field.MinValue = Convert.ToInt64(StripPrefix(SimpleTextDocValuesWriter.MINVALUE), CultureInfo.InvariantCulture); ReadLine(); if (Debugging.AssertsEnabled) { Debugging.Assert(StartsWith(SimpleTextDocValuesWriter.PATTERN)); } field.Pattern = StripPrefix(SimpleTextDocValuesWriter.PATTERN); field.DataStartFilePointer = data.GetFilePointer(); data.Seek(data.GetFilePointer() + (1 + field.Pattern.Length + 2) * maxDoc); } else if (dvType == DocValuesType.BINARY) { ReadLine(); if (Debugging.AssertsEnabled) { Debugging.Assert(StartsWith(SimpleTextDocValuesWriter.MAXLENGTH)); } field.MaxLength = Convert.ToInt32(StripPrefix(SimpleTextDocValuesWriter.MAXLENGTH), CultureInfo.InvariantCulture); ReadLine(); if (Debugging.AssertsEnabled) { Debugging.Assert(StartsWith(SimpleTextDocValuesWriter.PATTERN)); } field.Pattern = StripPrefix(SimpleTextDocValuesWriter.PATTERN); field.DataStartFilePointer = data.GetFilePointer(); data.Seek(data.GetFilePointer() + (9 + field.Pattern.Length + field.MaxLength + 2) * maxDoc); } else if (dvType == DocValuesType.SORTED || dvType == DocValuesType.SORTED_SET) { ReadLine(); if (Debugging.AssertsEnabled) { Debugging.Assert(StartsWith(SimpleTextDocValuesWriter.NUMVALUES)); } field.NumValues = Convert.ToInt64(StripPrefix(SimpleTextDocValuesWriter.NUMVALUES), CultureInfo.InvariantCulture); ReadLine(); if (Debugging.AssertsEnabled) { Debugging.Assert(StartsWith(SimpleTextDocValuesWriter.MAXLENGTH)); } field.MaxLength = Convert.ToInt32(StripPrefix(SimpleTextDocValuesWriter.MAXLENGTH), CultureInfo.InvariantCulture); ReadLine(); if (Debugging.AssertsEnabled) { Debugging.Assert(StartsWith(SimpleTextDocValuesWriter.PATTERN)); } field.Pattern = StripPrefix(SimpleTextDocValuesWriter.PATTERN); ReadLine(); if (Debugging.AssertsEnabled) { Debugging.Assert(StartsWith(SimpleTextDocValuesWriter.ORDPATTERN)); } field.OrdPattern = StripPrefix(SimpleTextDocValuesWriter.ORDPATTERN); field.DataStartFilePointer = data.GetFilePointer(); data.Seek(data.GetFilePointer() + (9 + field.Pattern.Length + field.MaxLength) * field.NumValues + (1 + field.OrdPattern.Length) * maxDoc); } else { throw new ArgumentOutOfRangeException(); } } // We should only be called from above if at least one // field has DVs: if (Debugging.AssertsEnabled) { Debugging.Assert(fields.Count > 0); } }
public SimpleTextDocValuesReader(SegmentReadState state, string ext) { DATA = state.Directory.OpenInput( IndexFileNames.SegmentFileName(state.SegmentInfo.Name, state.SegmentSuffix, ext), state.Context); MAX_DOC = state.SegmentInfo.DocCount; while (true) { ReadLine(); if (SCRATCH.Equals(SimpleTextDocValuesWriter.END)) { break; } Debug.Assert(StartsWith(SimpleTextDocValuesWriter.FIELD), SCRATCH.Utf8ToString()); var fieldName = StripPrefix(SimpleTextDocValuesWriter.FIELD); var field = new OneField(); FIELDS[fieldName] = field; ReadLine(); Debug.Assert(StartsWith(SimpleTextDocValuesWriter.TYPE), SCRATCH.Utf8ToString()); var dvType = (FieldInfo.DocValuesType_e) Enum.Parse(typeof (FieldInfo.DocValuesType_e), StripPrefix(SimpleTextDocValuesWriter.TYPE)); if (dvType == FieldInfo.DocValuesType_e.NUMERIC) { ReadLine(); Debug.Assert(StartsWith(SimpleTextDocValuesWriter.MINVALUE), "got " + SCRATCH.Utf8ToString() + " field=" + fieldName + " ext=" + ext); field.MinValue = Convert.ToInt64(StripPrefix(SimpleTextDocValuesWriter.MINVALUE)); ReadLine(); Debug.Assert(StartsWith(SimpleTextDocValuesWriter.PATTERN)); field.Pattern = StripPrefix(SimpleTextDocValuesWriter.PATTERN); field.DataStartFilePointer = DATA.FilePointer; DATA.Seek(DATA.FilePointer + (1 + field.Pattern.Length + 2)*MAX_DOC); } else if (dvType == FieldInfo.DocValuesType_e.BINARY) { ReadLine(); Debug.Assert(StartsWith(SimpleTextDocValuesWriter.MAXLENGTH)); field.MaxLength = Convert.ToInt32(StripPrefix(SimpleTextDocValuesWriter.MAXLENGTH)); ReadLine(); Debug.Assert(StartsWith(SimpleTextDocValuesWriter.PATTERN)); field.Pattern = StripPrefix(SimpleTextDocValuesWriter.PATTERN); field.DataStartFilePointer = DATA.FilePointer; DATA.Seek(DATA.FilePointer + (9 + field.Pattern.Length + field.MaxLength + 2)*MAX_DOC); } else if (dvType == FieldInfo.DocValuesType_e.SORTED || dvType == FieldInfo.DocValuesType_e.SORTED_SET) { ReadLine(); Debug.Assert(StartsWith(SimpleTextDocValuesWriter.NUMVALUES)); field.NumValues = Convert.ToInt64(StripPrefix(SimpleTextDocValuesWriter.NUMVALUES)); ReadLine(); Debug.Assert(StartsWith(SimpleTextDocValuesWriter.MAXLENGTH)); field.MaxLength = Convert.ToInt32(StripPrefix(SimpleTextDocValuesWriter.MAXLENGTH)); ReadLine(); Debug.Assert(StartsWith(SimpleTextDocValuesWriter.PATTERN)); field.Pattern = StripPrefix(SimpleTextDocValuesWriter.PATTERN); ReadLine(); Debug.Assert(StartsWith(SimpleTextDocValuesWriter.ORDPATTERN)); field.OrdPattern = StripPrefix(SimpleTextDocValuesWriter.ORDPATTERN); field.DataStartFilePointer = DATA.FilePointer; DATA.Seek(DATA.FilePointer + (9 + field.Pattern.Length + field.MaxLength)*field.NumValues + (1 + field.OrdPattern.Length)*MAX_DOC); } else { throw new InvalidEnumArgumentException(); } } // We should only be called from above if at least one // field has DVs: Debug.Assert(FIELDS.Count > 0); }
public SortedSetDocValuesAnonymousInnerClassHelper(SimpleTextDocValuesReader outerInstance, OneField field, IndexInput input, BytesRef scratch) { _outerInstance = outerInstance; _field = field; _input = input; _scratch = scratch; _decoderFormat = field.Pattern; _currentOrds = new string[0]; _currentIndex = 0; }
public SortedDocValuesAnonymousInnerClassHelper(SimpleTextDocValuesReader outerInstance, OneField field, IndexInput input, BytesRef scratch) { _outerInstance = outerInstance; _field = field; _input = input; _scratch = scratch; _decoderFormat = field.Pattern; _ordDecoderFormat = field.OrdPattern; }
public NumericDocValuesAnonymousInnerClassHelper(SimpleTextDocValuesReader outerInstance, OneField field, IndexInput input, BytesRef scratch) { _outerInstance = outerInstance; _field = field; _input = input; _scratch = scratch; }
//JAVA TO C# CONVERTER WARNING: Method 'throws' clauses are not available in .NET: //ORIGINAL LINE: public SimpleTextDocValuesReader(index.SegmentReadState state, String ext) throws java.io.IOException public SimpleTextDocValuesReader(SegmentReadState state, string ext) { // System.out.println("dir=" + state.directory + " seg=" + state.segmentInfo.name + " file=" + IndexFileNames.segmentFileName(state.segmentInfo.name, state.segmentSuffix, ext)); data = state.directory.openInput(IndexFileNames.segmentFileName(state.segmentInfo.name, state.segmentSuffix, ext), state.context); maxDoc = state.segmentInfo.DocCount; while (true) { readLine(); //System.out.println("READ field=" + scratch.utf8ToString()); if (scratch.Equals(END)) { break; } Debug.Assert(startsWith(FIELD), scratch.utf8ToString()); string fieldName = stripPrefix(FIELD); //System.out.println(" field=" + fieldName); OneField field = new OneField(); fields[fieldName] = field; readLine(); Debug.Assert(startsWith(TYPE), scratch.utf8ToString()); FieldInfo.DocValuesType dvType = FieldInfo.DocValuesType.valueOf(stripPrefix(TYPE)); Debug.Assert(dvType != null); if (dvType == FieldInfo.DocValuesType.NUMERIC) { readLine(); Debug.Assert(startsWith(MINVALUE), "got " + scratch.utf8ToString() + " field=" + fieldName + " ext=" + ext); field.minValue = Convert.ToInt64(stripPrefix(MINVALUE)); readLine(); Debug.Assert(startsWith(PATTERN)); field.pattern = stripPrefix(PATTERN); field.dataStartFilePointer = data.FilePointer; data.seek(data.FilePointer + (1 + field.pattern.Length + 2) * maxDoc); } else if (dvType == FieldInfo.DocValuesType.BINARY) { readLine(); Debug.Assert(startsWith(MAXLENGTH)); field.maxLength = Convert.ToInt32(stripPrefix(MAXLENGTH)); readLine(); Debug.Assert(startsWith(PATTERN)); field.pattern = stripPrefix(PATTERN); field.dataStartFilePointer = data.FilePointer; data.seek(data.FilePointer + (9 + field.pattern.Length + field.maxLength + 2) * maxDoc); } else if (dvType == FieldInfo.DocValuesType.SORTED || dvType == FieldInfo.DocValuesType.SORTED_SET) { readLine(); Debug.Assert(startsWith(NUMVALUES)); field.numValues = Convert.ToInt64(stripPrefix(NUMVALUES)); readLine(); Debug.Assert(startsWith(MAXLENGTH)); field.maxLength = Convert.ToInt32(stripPrefix(MAXLENGTH)); readLine(); Debug.Assert(startsWith(PATTERN)); field.pattern = stripPrefix(PATTERN); readLine(); Debug.Assert(startsWith(ORDPATTERN)); field.ordPattern = stripPrefix(ORDPATTERN); field.dataStartFilePointer = data.FilePointer; data.seek(data.FilePointer + (9 + field.pattern.Length + field.maxLength) * field.numValues + (1 + field.ordPattern.Length) * maxDoc); } else { throw new AssertionError(); } } // We should only be called from above if at least one // field has DVs: Debug.Assert(fields.Count > 0); }
public void ShouldConsiderConformingOneFieldObjectsEqual() { var first = new OneField(1); var second = new OneField(1); Assert.That(first.Equals(second), Is.True); }
public void ShouldGenerateStringForOneFieldObject() { var value = new OneField(1); Assert.That(value.ToString(), Is.EqualTo("value: 1")); }
public void ShouldGenerateHashCodeForOneFieldObject() { var value = new OneField(10); Assert.That(value.GetHashCode(), Is.EqualTo(HashCode.From(10))); }
public void ShouldConsiderDifferingOneFieldObjectsNotEqual() { var first = new OneField(0); var second = new OneField(1); Assert.That(first.Equals(second), Is.False); }