You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by ab...@apache.org on 2012/06/08 19:58:43 UTC

svn commit: r1348171 - in /lucene/dev/trunk: lucene/ lucene/analysis/common/src/java/org/apache/lucene/analysis/miscellaneous/ lucene/analysis/common/src/java/org/apache/lucene/analysis/payloads/ lucene/analysis/common/src/test/org/apache/lucene/analys...

Author: ab
Date: Fri Jun  8 17:58:41 2012
New Revision: 1348171

URL: http://svn.apache.org/viewvc?rev=1348171&view=rev
Log:
LUCENE-4122 Replace Payload with BytesRef.

Removed:
    lucene/dev/trunk/lucene/core/src/java/org/apache/lucene/index/Payload.java
Modified:
    lucene/dev/trunk/lucene/CHANGES.txt
    lucene/dev/trunk/lucene/analysis/common/src/java/org/apache/lucene/analysis/miscellaneous/PrefixAwareTokenFilter.java
    lucene/dev/trunk/lucene/analysis/common/src/java/org/apache/lucene/analysis/payloads/AbstractEncoder.java
    lucene/dev/trunk/lucene/analysis/common/src/java/org/apache/lucene/analysis/payloads/FloatEncoder.java
    lucene/dev/trunk/lucene/analysis/common/src/java/org/apache/lucene/analysis/payloads/IdentityEncoder.java
    lucene/dev/trunk/lucene/analysis/common/src/java/org/apache/lucene/analysis/payloads/IntegerEncoder.java
    lucene/dev/trunk/lucene/analysis/common/src/java/org/apache/lucene/analysis/payloads/NumericPayloadTokenFilter.java
    lucene/dev/trunk/lucene/analysis/common/src/java/org/apache/lucene/analysis/payloads/PayloadEncoder.java
    lucene/dev/trunk/lucene/analysis/common/src/java/org/apache/lucene/analysis/payloads/TokenOffsetPayloadTokenFilter.java
    lucene/dev/trunk/lucene/analysis/common/src/java/org/apache/lucene/analysis/payloads/TypeAsPayloadTokenFilter.java
    lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/core/TestAnalyzers.java
    lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/payloads/DelimitedPayloadTokenFilterTest.java
    lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/payloads/NumericPayloadTokenFilterTest.java
    lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/payloads/TokenOffsetPayloadTokenFilterTest.java
    lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/payloads/TypeAsPayloadTokenFilterTest.java
    lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/snowball/TestSnowball.java
    lucene/dev/trunk/lucene/core/src/java/org/apache/lucene/analysis/Token.java
    lucene/dev/trunk/lucene/core/src/java/org/apache/lucene/analysis/tokenattributes/PayloadAttribute.java
    lucene/dev/trunk/lucene/core/src/java/org/apache/lucene/analysis/tokenattributes/PayloadAttributeImpl.java
    lucene/dev/trunk/lucene/core/src/java/org/apache/lucene/index/FreqProxTermsWriterPerField.java
    lucene/dev/trunk/lucene/core/src/test/org/apache/lucene/analysis/TestToken.java
    lucene/dev/trunk/lucene/core/src/test/org/apache/lucene/index/TestDocumentWriter.java
    lucene/dev/trunk/lucene/core/src/test/org/apache/lucene/index/TestIndexWriterExceptions.java
    lucene/dev/trunk/lucene/core/src/test/org/apache/lucene/index/TestMultiLevelSkipList.java
    lucene/dev/trunk/lucene/core/src/test/org/apache/lucene/index/TestPayloadProcessorProvider.java
    lucene/dev/trunk/lucene/core/src/test/org/apache/lucene/index/TestPayloads.java
    lucene/dev/trunk/lucene/core/src/test/org/apache/lucene/search/payloads/PayloadHelper.java
    lucene/dev/trunk/lucene/core/src/test/org/apache/lucene/search/payloads/TestPayloadNearQuery.java
    lucene/dev/trunk/lucene/core/src/test/org/apache/lucene/search/payloads/TestPayloadTermQuery.java
    lucene/dev/trunk/lucene/core/src/test/org/apache/lucene/search/spans/TestBasics.java
    lucene/dev/trunk/lucene/core/src/test/org/apache/lucene/search/spans/TestPayloadSpans.java
    lucene/dev/trunk/lucene/facet/src/java/org/apache/lucene/facet/enhancements/EnhancementsCategoryTokenizer.java
    lucene/dev/trunk/lucene/facet/src/java/org/apache/lucene/facet/enhancements/association/AssociationListTokenizer.java
    lucene/dev/trunk/lucene/facet/src/java/org/apache/lucene/facet/index/streaming/CategoryTokenizerBase.java
    lucene/dev/trunk/lucene/facet/src/java/org/apache/lucene/facet/index/streaming/CountingListTokenizer.java
    lucene/dev/trunk/lucene/facet/src/test/org/apache/lucene/facet/search/CategoryListIteratorTest.java
    lucene/dev/trunk/lucene/test-framework/src/java/org/apache/lucene/analysis/MockFixedLengthPayloadFilter.java
    lucene/dev/trunk/lucene/test-framework/src/java/org/apache/lucene/analysis/MockPayloadAnalyzer.java
    lucene/dev/trunk/lucene/test-framework/src/java/org/apache/lucene/analysis/MockVariableLengthPayloadFilter.java
    lucene/dev/trunk/solr/core/src/java/org/apache/solr/handler/AnalysisRequestHandlerBase.java
    lucene/dev/trunk/solr/core/src/java/org/apache/solr/schema/JsonPreAnalyzedParser.java
    lucene/dev/trunk/solr/core/src/java/org/apache/solr/schema/SimplePreAnalyzedParser.java
    lucene/dev/trunk/solr/core/src/test/org/apache/solr/analysis/TestDelimitedPayloadTokenFilterFactory.java

Modified: lucene/dev/trunk/lucene/CHANGES.txt
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/CHANGES.txt?rev=1348171&r1=1348170&r2=1348171&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/CHANGES.txt (original)
+++ lucene/dev/trunk/lucene/CHANGES.txt Fri Jun  8 17:58:41 2012
@@ -527,6 +527,8 @@ API Changes
 * LUCENE-4063: FrenchLightStemmer no longer deletes repeated digits.
   (Tanguy Moal via Steve Rowe)
 
+* LUCENE-4122: Replace Payload with BytesRef. (Andrzej Bialecki)
+
 New features
 
 * LUCENE-2604: Added RegexpQuery support to QueryParser. Regular expressions

Modified: lucene/dev/trunk/lucene/analysis/common/src/java/org/apache/lucene/analysis/miscellaneous/PrefixAwareTokenFilter.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/analysis/common/src/java/org/apache/lucene/analysis/miscellaneous/PrefixAwareTokenFilter.java?rev=1348171&r1=1348170&r2=1348171&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/analysis/common/src/java/org/apache/lucene/analysis/miscellaneous/PrefixAwareTokenFilter.java (original)
+++ lucene/dev/trunk/lucene/analysis/common/src/java/org/apache/lucene/analysis/miscellaneous/PrefixAwareTokenFilter.java Fri Jun  8 17:58:41 2012
@@ -25,7 +25,7 @@ import org.apache.lucene.analysis.tokena
 import org.apache.lucene.analysis.tokenattributes.PositionIncrementAttribute;
 import org.apache.lucene.analysis.tokenattributes.CharTermAttribute;
 import org.apache.lucene.analysis.tokenattributes.TypeAttribute;
-import org.apache.lucene.index.Payload;
+import org.apache.lucene.util.BytesRef;
 
 import java.io.IOException;
 
@@ -93,7 +93,7 @@ public class PrefixAwareTokenFilter exte
       } else {
         previousPrefixToken.reinit(nextToken);
         // Make it a deep copy
-        Payload p = previousPrefixToken.getPayload();
+        BytesRef p = previousPrefixToken.getPayload();
         if (p != null) {
           previousPrefixToken.setPayload(p.clone());
         }

Modified: lucene/dev/trunk/lucene/analysis/common/src/java/org/apache/lucene/analysis/payloads/AbstractEncoder.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/analysis/common/src/java/org/apache/lucene/analysis/payloads/AbstractEncoder.java?rev=1348171&r1=1348170&r2=1348171&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/analysis/common/src/java/org/apache/lucene/analysis/payloads/AbstractEncoder.java (original)
+++ lucene/dev/trunk/lucene/analysis/common/src/java/org/apache/lucene/analysis/payloads/AbstractEncoder.java Fri Jun  8 17:58:41 2012
@@ -1,5 +1,7 @@
 package org.apache.lucene.analysis.payloads;
 
+import org.apache.lucene.util.BytesRef;
+
 /**
  * Licensed to the Apache Software Foundation (ASF) under one or more
  * contributor license agreements.  See the NOTICE file distributed with
@@ -17,15 +19,14 @@ package org.apache.lucene.analysis.paylo
  * limitations under the License.
  */
 
-import org.apache.lucene.index.Payload;
 
 
 /**
  * Base class for payload encoders.
  *
  **/
-public abstract class AbstractEncoder implements PayloadEncoder{
-  public Payload encode(char[] buffer) {
+public abstract class AbstractEncoder implements PayloadEncoder {
+  public BytesRef encode(char[] buffer) {
     return encode(buffer, 0, buffer.length);
   }
 }

Modified: lucene/dev/trunk/lucene/analysis/common/src/java/org/apache/lucene/analysis/payloads/FloatEncoder.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/analysis/common/src/java/org/apache/lucene/analysis/payloads/FloatEncoder.java?rev=1348171&r1=1348170&r2=1348171&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/analysis/common/src/java/org/apache/lucene/analysis/payloads/FloatEncoder.java (original)
+++ lucene/dev/trunk/lucene/analysis/common/src/java/org/apache/lucene/analysis/payloads/FloatEncoder.java Fri Jun  8 17:58:41 2012
@@ -1,4 +1,7 @@
 package org.apache.lucene.analysis.payloads;
+
+import org.apache.lucene.util.BytesRef;
+
 /**
  * Licensed to the Apache Software Foundation (ASF) under one or more
  * contributor license agreements.  See the NOTICE file distributed with
@@ -16,9 +19,6 @@ package org.apache.lucene.analysis.paylo
  * limitations under the License.
  */
 
-import org.apache.lucene.index.Payload;
-
-
 /**
  *  Encode a character array Float as a {@link org.apache.lucene.index.Payload}.
  * <p/>
@@ -27,11 +27,10 @@ import org.apache.lucene.index.Payload;
  **/
 public class FloatEncoder extends AbstractEncoder implements PayloadEncoder {
 
-  public Payload encode(char[] buffer, int offset, int length) {
-    Payload result = new Payload();
+  public BytesRef encode(char[] buffer, int offset, int length) {
     float payload = Float.parseFloat(new String(buffer, offset, length));//TODO: improve this so that we don't have to new Strings
     byte[] bytes = PayloadHelper.encodeFloat(payload);
-    result.setData(bytes);
+    BytesRef result = new BytesRef(bytes);
     return result;
   }
 }

Modified: lucene/dev/trunk/lucene/analysis/common/src/java/org/apache/lucene/analysis/payloads/IdentityEncoder.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/analysis/common/src/java/org/apache/lucene/analysis/payloads/IdentityEncoder.java?rev=1348171&r1=1348170&r2=1348171&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/analysis/common/src/java/org/apache/lucene/analysis/payloads/IdentityEncoder.java (original)
+++ lucene/dev/trunk/lucene/analysis/common/src/java/org/apache/lucene/analysis/payloads/IdentityEncoder.java Fri Jun  8 17:58:41 2012
@@ -16,12 +16,12 @@ package org.apache.lucene.analysis.paylo
  * limitations under the License.
  */
 
-import org.apache.lucene.index.Payload;
-
 import java.nio.ByteBuffer;
 import java.nio.CharBuffer;
 import java.nio.charset.Charset;
 
+import org.apache.lucene.util.BytesRef;
+
 
 /**
  *  Does nothing other than convert the char array to a byte array using the specified encoding.
@@ -37,15 +37,15 @@ public class IdentityEncoder extends Abs
     this.charset = charset;
   }
 
-  public Payload encode(char[] buffer, int offset, int length) {
+  public BytesRef encode(char[] buffer, int offset, int length) {
     final ByteBuffer bb = charset.encode(CharBuffer.wrap(buffer, offset, length));
     if (bb.hasArray()) {
-      return new Payload(bb.array(), bb.arrayOffset() + bb.position(), bb.remaining());
+      return new BytesRef(bb.array(), bb.arrayOffset() + bb.position(), bb.remaining());
     } else {
       // normally it should always have an array, but who knows?
       final byte[] b = new byte[bb.remaining()];
       bb.get(b);
-      return new Payload(b);
+      return new BytesRef(b);
     }
   }
 }

Modified: lucene/dev/trunk/lucene/analysis/common/src/java/org/apache/lucene/analysis/payloads/IntegerEncoder.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/analysis/common/src/java/org/apache/lucene/analysis/payloads/IntegerEncoder.java?rev=1348171&r1=1348170&r2=1348171&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/analysis/common/src/java/org/apache/lucene/analysis/payloads/IntegerEncoder.java (original)
+++ lucene/dev/trunk/lucene/analysis/common/src/java/org/apache/lucene/analysis/payloads/IntegerEncoder.java Fri Jun  8 17:58:41 2012
@@ -16,8 +16,8 @@ package org.apache.lucene.analysis.paylo
  * limitations under the License.
  */
 
-import org.apache.lucene.index.Payload;
 import org.apache.lucene.util.ArrayUtil;
+import org.apache.lucene.util.BytesRef;
 
 
 /**
@@ -28,11 +28,10 @@ import org.apache.lucene.util.ArrayUtil;
  **/
 public class IntegerEncoder extends AbstractEncoder implements PayloadEncoder {
 
-  public Payload encode(char[] buffer, int offset, int length) {
-    Payload result = new Payload();
+  public BytesRef encode(char[] buffer, int offset, int length) {
     int payload = ArrayUtil.parseInt(buffer, offset, length);//TODO: improve this so that we don't have to new Strings
     byte[] bytes = PayloadHelper.encodeInt(payload);
-    result.setData(bytes);
+    BytesRef result = new BytesRef(bytes);
     return result;
   }
 }
\ No newline at end of file

Modified: lucene/dev/trunk/lucene/analysis/common/src/java/org/apache/lucene/analysis/payloads/NumericPayloadTokenFilter.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/analysis/common/src/java/org/apache/lucene/analysis/payloads/NumericPayloadTokenFilter.java?rev=1348171&r1=1348170&r2=1348171&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/analysis/common/src/java/org/apache/lucene/analysis/payloads/NumericPayloadTokenFilter.java (original)
+++ lucene/dev/trunk/lucene/analysis/common/src/java/org/apache/lucene/analysis/payloads/NumericPayloadTokenFilter.java Fri Jun  8 17:58:41 2012
@@ -21,7 +21,7 @@ import org.apache.lucene.analysis.TokenF
 import org.apache.lucene.analysis.TokenStream;
 import org.apache.lucene.analysis.tokenattributes.PayloadAttribute;
 import org.apache.lucene.analysis.tokenattributes.TypeAttribute;
-import org.apache.lucene.index.Payload;
+import org.apache.lucene.util.BytesRef;
 
 import java.io.IOException;
 
@@ -33,7 +33,7 @@ import java.io.IOException;
 public class NumericPayloadTokenFilter extends TokenFilter {
 
   private String typeMatch;
-  private Payload thePayload;
+  private BytesRef thePayload;
 
   private final PayloadAttribute payloadAtt = addAttribute(PayloadAttribute.class);
   private final TypeAttribute typeAtt = addAttribute(TypeAttribute.class);
@@ -41,7 +41,7 @@ public class NumericPayloadTokenFilter e
   public NumericPayloadTokenFilter(TokenStream input, float payload, String typeMatch) {
     super(input);
     //Need to encode the payload
-    thePayload = new Payload(PayloadHelper.encodeFloat(payload));
+    thePayload = new BytesRef(PayloadHelper.encodeFloat(payload));
     this.typeMatch = typeMatch;
   }
 

Modified: lucene/dev/trunk/lucene/analysis/common/src/java/org/apache/lucene/analysis/payloads/PayloadEncoder.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/analysis/common/src/java/org/apache/lucene/analysis/payloads/PayloadEncoder.java?rev=1348171&r1=1348170&r2=1348171&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/analysis/common/src/java/org/apache/lucene/analysis/payloads/PayloadEncoder.java (original)
+++ lucene/dev/trunk/lucene/analysis/common/src/java/org/apache/lucene/analysis/payloads/PayloadEncoder.java Fri Jun  8 17:58:41 2012
@@ -1,4 +1,7 @@
 package org.apache.lucene.analysis.payloads;
+
+import org.apache.lucene.util.BytesRef;
+
 /**
  * Licensed to the Apache Software Foundation (ASF) under one or more
  * contributor license agreements.  See the NOTICE file distributed with
@@ -16,8 +19,6 @@ package org.apache.lucene.analysis.paylo
  * limitations under the License.
  */
 
-import org.apache.lucene.index.Payload;
-
 
 /**
  * Mainly for use with the DelimitedPayloadTokenFilter, converts char buffers to Payload.
@@ -27,14 +28,14 @@ import org.apache.lucene.index.Payload;
  **/
 public interface PayloadEncoder {
 
-  Payload encode(char[] buffer);
+  BytesRef encode(char[] buffer);
 
   /**
    * Convert a char array to a {@link org.apache.lucene.index.Payload}
    * @param buffer
    * @param offset
    * @param length
-   * @return encoded {@link Payload}
+   * @return encoded {@link BytesRef}
    */
-  Payload encode(char [] buffer, int offset, int length);
+  BytesRef encode(char [] buffer, int offset, int length);
 }

Modified: lucene/dev/trunk/lucene/analysis/common/src/java/org/apache/lucene/analysis/payloads/TokenOffsetPayloadTokenFilter.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/analysis/common/src/java/org/apache/lucene/analysis/payloads/TokenOffsetPayloadTokenFilter.java?rev=1348171&r1=1348170&r2=1348171&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/analysis/common/src/java/org/apache/lucene/analysis/payloads/TokenOffsetPayloadTokenFilter.java (original)
+++ lucene/dev/trunk/lucene/analysis/common/src/java/org/apache/lucene/analysis/payloads/TokenOffsetPayloadTokenFilter.java Fri Jun  8 17:58:41 2012
@@ -23,7 +23,7 @@ import org.apache.lucene.analysis.TokenF
 import org.apache.lucene.analysis.TokenStream;
 import org.apache.lucene.analysis.tokenattributes.OffsetAttribute;
 import org.apache.lucene.analysis.tokenattributes.PayloadAttribute;
-import org.apache.lucene.index.Payload;
+import org.apache.lucene.util.BytesRef;
 
 
 /**
@@ -46,7 +46,7 @@ public class TokenOffsetPayloadTokenFilt
       byte[] data = new byte[8];
       PayloadHelper.encodeInt(offsetAtt.startOffset(), data, 0);
       PayloadHelper.encodeInt(offsetAtt.endOffset(), data, 4);
-      Payload payload = new Payload(data);
+      BytesRef payload = new BytesRef(data);
       payAtt.setPayload(payload);
       return true;
     } else {

Modified: lucene/dev/trunk/lucene/analysis/common/src/java/org/apache/lucene/analysis/payloads/TypeAsPayloadTokenFilter.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/analysis/common/src/java/org/apache/lucene/analysis/payloads/TypeAsPayloadTokenFilter.java?rev=1348171&r1=1348170&r2=1348171&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/analysis/common/src/java/org/apache/lucene/analysis/payloads/TypeAsPayloadTokenFilter.java (original)
+++ lucene/dev/trunk/lucene/analysis/common/src/java/org/apache/lucene/analysis/payloads/TypeAsPayloadTokenFilter.java Fri Jun  8 17:58:41 2012
@@ -21,7 +21,7 @@ import org.apache.lucene.analysis.TokenF
 import org.apache.lucene.analysis.TokenStream;
 import org.apache.lucene.analysis.tokenattributes.PayloadAttribute;
 import org.apache.lucene.analysis.tokenattributes.TypeAttribute;
-import org.apache.lucene.index.Payload;
+import org.apache.lucene.util.BytesRef;
 
 import java.io.IOException;
 
@@ -46,7 +46,7 @@ public class TypeAsPayloadTokenFilter ex
     if (input.incrementToken()) {
       String type = typeAtt.type();
       if (type != null && type.equals("") == false) {
-        payloadAtt.setPayload(new Payload(type.getBytes("UTF-8")));
+        payloadAtt.setPayload(new BytesRef(type.getBytes("UTF-8")));
       }
       return true;
     } else {

Modified: lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/core/TestAnalyzers.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/core/TestAnalyzers.java?rev=1348171&r1=1348170&r2=1348171&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/core/TestAnalyzers.java (original)
+++ lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/core/TestAnalyzers.java Fri Jun  8 17:58:41 2012
@@ -26,7 +26,7 @@ import org.apache.lucene.analysis.*;
 import org.apache.lucene.analysis.standard.StandardTokenizer;
 import org.apache.lucene.analysis.tokenattributes.CharTermAttribute;
 import org.apache.lucene.analysis.tokenattributes.PayloadAttribute;
-import org.apache.lucene.index.Payload;
+import org.apache.lucene.util.BytesRef;
 
 public class TestAnalyzers extends BaseTokenStreamTestCase {
 
@@ -85,7 +85,7 @@ public class TestAnalyzers extends BaseT
       if (!hasNext) break;
       // System.out.println("id="+System.identityHashCode(nextToken) + " " + t);
       // System.out.println("payload=" + (int)nextToken.getPayload().toByteArray()[0]);
-      assertEquals(b, payloadAtt.getPayload().toByteArray()[0]);
+      assertEquals(b, payloadAtt.getPayload().bytes[0]);
     }
   }
 
@@ -213,7 +213,7 @@ final class PayloadSetter extends TokenF
   }
 
   byte[] data = new byte[1];
-  Payload p = new Payload(data,0,1);
+  BytesRef p = new BytesRef(data,0,1);
 
   @Override
   public boolean incrementToken() throws IOException {

Modified: lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/payloads/DelimitedPayloadTokenFilterTest.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/payloads/DelimitedPayloadTokenFilterTest.java?rev=1348171&r1=1348170&r2=1348171&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/payloads/DelimitedPayloadTokenFilterTest.java (original)
+++ lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/payloads/DelimitedPayloadTokenFilterTest.java Fri Jun  8 17:58:41 2012
@@ -20,7 +20,7 @@ import org.apache.lucene.analysis.MockTo
 import org.apache.lucene.analysis.TokenStream;
 import org.apache.lucene.analysis.tokenattributes.CharTermAttribute;
 import org.apache.lucene.analysis.tokenattributes.PayloadAttribute;
-import org.apache.lucene.index.Payload;
+import org.apache.lucene.util.BytesRef;
 import org.apache.lucene.util.LuceneTestCase;
 
 import java.io.StringReader;
@@ -109,11 +109,11 @@ public class DelimitedPayloadTokenFilter
     stream.reset();
     assertTrue(stream.incrementToken());
     assertEquals(expected, termAtt.toString());
-    Payload payload = payloadAtt.getPayload();
+    BytesRef payload = payloadAtt.getPayload();
     if (payload != null) {
-      assertTrue(payload.length() + " does not equal: " + expectPay.length, payload.length() == expectPay.length);
+      assertTrue(payload.length + " does not equal: " + expectPay.length, payload.length == expectPay.length);
       for (int i = 0; i < expectPay.length; i++) {
-        assertTrue(expectPay[i] + " does not equal: " + payload.byteAt(i), expectPay[i] == payload.byteAt(i));
+        assertTrue(expectPay[i] + " does not equal: " + payload.bytes[i + payload.offset], expectPay[i] == payload.bytes[i + payload.offset]);
 
       }
     } else {
@@ -126,11 +126,11 @@ public class DelimitedPayloadTokenFilter
     stream.reset();
     assertTrue(stream.incrementToken());
     assertEquals(expected, termAtt.toString());
-    Payload payload = payAtt.getPayload();
+    BytesRef payload = payAtt.getPayload();
     if (payload != null) {
-      assertTrue(payload.length() + " does not equal: " + expectPay.length, payload.length() == expectPay.length);
+      assertTrue(payload.length + " does not equal: " + expectPay.length, payload.length == expectPay.length);
       for (int i = 0; i < expectPay.length; i++) {
-        assertTrue(expectPay[i] + " does not equal: " + payload.byteAt(i), expectPay[i] == payload.byteAt(i));
+        assertTrue(expectPay[i] + " does not equal: " + payload.bytes[i + payload.offset], expectPay[i] == payload.bytes[i + payload.offset]);
 
       }
     } else {

Modified: lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/payloads/NumericPayloadTokenFilterTest.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/payloads/NumericPayloadTokenFilterTest.java?rev=1348171&r1=1348170&r2=1348171&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/payloads/NumericPayloadTokenFilterTest.java (original)
+++ lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/payloads/NumericPayloadTokenFilterTest.java Fri Jun  8 17:58:41 2012
@@ -43,9 +43,9 @@ public class NumericPayloadTokenFilterTe
         seenDogs = true;
         assertTrue(typeAtt.type() + " is not equal to " + "D", typeAtt.type().equals("D") == true);
         assertTrue("payloadAtt.getPayload() is null and it shouldn't be", payloadAtt.getPayload() != null);
-        byte [] bytes = payloadAtt.getPayload().getData();//safe here to just use the bytes, otherwise we should use offset, length
-        assertTrue(bytes.length + " does not equal: " + payloadAtt.getPayload().length(), bytes.length == payloadAtt.getPayload().length());
-        assertTrue(payloadAtt.getPayload().getOffset() + " does not equal: " + 0, payloadAtt.getPayload().getOffset() == 0);
+        byte [] bytes = payloadAtt.getPayload().bytes;//safe here to just use the bytes, otherwise we should use offset, length
+        assertTrue(bytes.length + " does not equal: " + payloadAtt.getPayload().length, bytes.length == payloadAtt.getPayload().length);
+        assertTrue(payloadAtt.getPayload().offset + " does not equal: " + 0, payloadAtt.getPayload().offset == 0);
         float pay = PayloadHelper.decodeFloat(bytes);
         assertTrue(pay + " does not equal: " + 3, pay == 3);
       } else {

Modified: lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/payloads/TokenOffsetPayloadTokenFilterTest.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/payloads/TokenOffsetPayloadTokenFilterTest.java?rev=1348171&r1=1348170&r2=1348171&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/payloads/TokenOffsetPayloadTokenFilterTest.java (original)
+++ lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/payloads/TokenOffsetPayloadTokenFilterTest.java Fri Jun  8 17:58:41 2012
@@ -20,7 +20,7 @@ import org.apache.lucene.analysis.BaseTo
 import org.apache.lucene.analysis.MockTokenizer;
 import org.apache.lucene.analysis.tokenattributes.OffsetAttribute;
 import org.apache.lucene.analysis.tokenattributes.PayloadAttribute;
-import org.apache.lucene.index.Payload;
+import org.apache.lucene.util.BytesRef;
 
 import java.io.IOException;
 import java.io.StringReader;
@@ -36,9 +36,9 @@ public class TokenOffsetPayloadTokenFilt
     OffsetAttribute offsetAtt = nptf.getAttribute(OffsetAttribute.class);
     nptf.reset();
     while (nptf.incrementToken()) {
-      Payload pay = payloadAtt.getPayload();
+      BytesRef pay = payloadAtt.getPayload();
       assertTrue("pay is null and it shouldn't be", pay != null);
-      byte [] data = pay.getData();
+      byte [] data = pay.bytes;
       int start = PayloadHelper.decodeInt(data, 0);
       assertTrue(start + " does not equal: " + offsetAtt.startOffset(), start == offsetAtt.startOffset());
       int end = PayloadHelper.decodeInt(data, 4);

Modified: lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/payloads/TypeAsPayloadTokenFilterTest.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/payloads/TypeAsPayloadTokenFilterTest.java?rev=1348171&r1=1348170&r2=1348171&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/payloads/TypeAsPayloadTokenFilterTest.java (original)
+++ lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/payloads/TypeAsPayloadTokenFilterTest.java Fri Jun  8 17:58:41 2012
@@ -41,7 +41,7 @@ public class TypeAsPayloadTokenFilterTes
     while (nptf.incrementToken()) {
       assertTrue(typeAtt.type() + " is not null and it should be", typeAtt.type().equals(String.valueOf(Character.toUpperCase(termAtt.buffer()[0]))));
       assertTrue("nextToken.getPayload() is null and it shouldn't be", payloadAtt.getPayload() != null);
-      String type = new String(payloadAtt.getPayload().getData(), "UTF-8");
+      String type = new String(payloadAtt.getPayload().bytes, "UTF-8");
       assertTrue(type + " is not equal to " + typeAtt.type(), type.equals(typeAtt.type()) == true);
       count++;
     }

Modified: lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/snowball/TestSnowball.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/snowball/TestSnowball.java?rev=1348171&r1=1348170&r2=1348171&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/snowball/TestSnowball.java (original)
+++ lucene/dev/trunk/lucene/analysis/common/src/test/org/apache/lucene/analysis/snowball/TestSnowball.java Fri Jun  8 17:58:41 2012
@@ -24,7 +24,6 @@ import org.apache.lucene.analysis.BaseTo
 import org.apache.lucene.analysis.Analyzer;
 import org.apache.lucene.analysis.MockTokenizer;
 import org.apache.lucene.analysis.Tokenizer;
-import org.apache.lucene.index.Payload;
 import org.apache.lucene.analysis.TokenStream;
 import org.apache.lucene.analysis.core.KeywordTokenizer;
 import org.apache.lucene.analysis.standard.StandardAnalyzer;
@@ -34,6 +33,7 @@ import org.apache.lucene.analysis.tokena
 import org.apache.lucene.analysis.tokenattributes.PayloadAttribute;
 import org.apache.lucene.analysis.tokenattributes.PositionIncrementAttribute;
 import org.apache.lucene.analysis.tokenattributes.TypeAttribute;
+import org.apache.lucene.util.BytesRef;
 import org.apache.lucene.util.Version;
 
 public class TestSnowball extends BaseTokenStreamTestCase {
@@ -68,7 +68,7 @@ public class TestSnowball extends BaseTo
     assertEquals("wrd", typeAtt.type());
     assertEquals(3, posIncAtt.getPositionIncrement());
     assertEquals(77, flagsAtt.getFlags());
-    assertEquals(new Payload(new byte[]{0,1,2,3}), payloadAtt.getPayload());
+    assertEquals(new BytesRef(new byte[]{0,1,2,3}), payloadAtt.getPayload());
   }
   
   private final class TestTokenStream extends TokenStream {
@@ -90,7 +90,7 @@ public class TestSnowball extends BaseTo
       offsetAtt.setOffset(2, 7);
       typeAtt.setType("wrd");
       posIncAtt.setPositionIncrement(3);
-      payloadAtt.setPayload(new Payload(new byte[]{0,1,2,3}));
+      payloadAtt.setPayload(new BytesRef(new byte[]{0,1,2,3}));
       flagsAtt.setFlags(77);
       return true;
     }

Modified: lucene/dev/trunk/lucene/core/src/java/org/apache/lucene/analysis/Token.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/core/src/java/org/apache/lucene/analysis/Token.java?rev=1348171&r1=1348170&r2=1348171&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/core/src/java/org/apache/lucene/analysis/Token.java (original)
+++ lucene/dev/trunk/lucene/core/src/java/org/apache/lucene/analysis/Token.java Fri Jun  8 17:58:41 2012
@@ -24,12 +24,12 @@ import org.apache.lucene.analysis.tokena
 import org.apache.lucene.analysis.tokenattributes.PositionIncrementAttribute;
 import org.apache.lucene.analysis.tokenattributes.PositionLengthAttribute;
 import org.apache.lucene.analysis.tokenattributes.TypeAttribute;
-import org.apache.lucene.index.Payload;
 import org.apache.lucene.index.DocsAndPositionsEnum; // for javadoc
 import org.apache.lucene.util.Attribute;
 import org.apache.lucene.util.AttributeSource;
 import org.apache.lucene.util.AttributeImpl;
 import org.apache.lucene.util.AttributeReflector;
+import org.apache.lucene.util.BytesRef;
 
 /** 
   A Token is an occurrence of a term from the text of a field.  It consists of
@@ -127,7 +127,7 @@ public class Token extends CharTermAttri
   private int startOffset,endOffset;
   private String type = DEFAULT_TYPE;
   private int flags;
-  private Payload payload;
+  private BytesRef payload;
   private int positionIncrement = 1;
   private int positionLength = 1;
 
@@ -357,14 +357,14 @@ public class Token extends CharTermAttri
   /**
    * Returns this Token's payload.
    */ 
-  public Payload getPayload() {
+  public BytesRef getPayload() {
     return this.payload;
   }
 
   /** 
    * Sets this Token's payload.
    */
-  public void setPayload(Payload payload) {
+  public void setPayload(BytesRef payload) {
     this.payload = payload;
   }
   

Modified: lucene/dev/trunk/lucene/core/src/java/org/apache/lucene/analysis/tokenattributes/PayloadAttribute.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/core/src/java/org/apache/lucene/analysis/tokenattributes/PayloadAttribute.java?rev=1348171&r1=1348170&r2=1348171&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/core/src/java/org/apache/lucene/analysis/tokenattributes/PayloadAttribute.java (original)
+++ lucene/dev/trunk/lucene/core/src/java/org/apache/lucene/analysis/tokenattributes/PayloadAttribute.java Fri Jun  8 17:58:41 2012
@@ -17,8 +17,8 @@ package org.apache.lucene.analysis.token
  * limitations under the License.
  */
 
-import org.apache.lucene.index.Payload;
 import org.apache.lucene.util.Attribute;
+import org.apache.lucene.util.BytesRef;
 
 /**
  * The payload of a Token. See also {@link Payload}.
@@ -27,10 +27,10 @@ public interface PayloadAttribute extend
   /**
    * Returns this Token's payload.
    */ 
-  public Payload getPayload();
+  public BytesRef getPayload();
 
   /** 
    * Sets this Token's payload.
    */
-  public void setPayload(Payload payload);
+  public void setPayload(BytesRef payload);
 }

Modified: lucene/dev/trunk/lucene/core/src/java/org/apache/lucene/analysis/tokenattributes/PayloadAttributeImpl.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/core/src/java/org/apache/lucene/analysis/tokenattributes/PayloadAttributeImpl.java?rev=1348171&r1=1348170&r2=1348171&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/core/src/java/org/apache/lucene/analysis/tokenattributes/PayloadAttributeImpl.java (original)
+++ lucene/dev/trunk/lucene/core/src/java/org/apache/lucene/analysis/tokenattributes/PayloadAttributeImpl.java Fri Jun  8 17:58:41 2012
@@ -17,14 +17,14 @@ package org.apache.lucene.analysis.token
  * limitations under the License.
  */
 
-import org.apache.lucene.index.Payload;
 import org.apache.lucene.util.AttributeImpl;
+import org.apache.lucene.util.BytesRef;
 
 /**
  * The payload of a Token. See also {@link Payload}.
  */
 public class PayloadAttributeImpl extends AttributeImpl implements PayloadAttribute, Cloneable {
-  private Payload payload;  
+  private BytesRef payload;  
   
   /**
    * Initialize this attribute with no payload.
@@ -34,21 +34,21 @@ public class PayloadAttributeImpl extend
   /**
    * Initialize this attribute with the given payload. 
    */
-  public PayloadAttributeImpl(Payload payload) {
+  public PayloadAttributeImpl(BytesRef payload) {
     this.payload = payload;
   }
   
   /**
    * Returns this Token's payload.
    */ 
-  public Payload getPayload() {
+  public BytesRef getPayload() {
     return this.payload;
   }
 
   /** 
    * Sets this Token's payload.
    */
-  public void setPayload(Payload payload) {
+  public void setPayload(BytesRef payload) {
     this.payload = payload;
   }
   

Modified: lucene/dev/trunk/lucene/core/src/java/org/apache/lucene/index/FreqProxTermsWriterPerField.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/core/src/java/org/apache/lucene/index/FreqProxTermsWriterPerField.java?rev=1348171&r1=1348170&r2=1348171&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/core/src/java/org/apache/lucene/index/FreqProxTermsWriterPerField.java (original)
+++ lucene/dev/trunk/lucene/core/src/java/org/apache/lucene/index/FreqProxTermsWriterPerField.java Fri Jun  8 17:58:41 2012
@@ -128,7 +128,7 @@ final class FreqProxTermsWriterPerField 
   void writeProx(final int termID, int proxCode) {
     //System.out.println("writeProx termID=" + termID + " proxCode=" + proxCode);
     assert hasProx;
-    final Payload payload;
+    final BytesRef payload;
     if (payloadAttribute == null) {
       payload = null;
     } else {
@@ -138,7 +138,7 @@ final class FreqProxTermsWriterPerField 
     if (payload != null && payload.length > 0) {
       termsHashPerField.writeVInt(1, (proxCode<<1)|1);
       termsHashPerField.writeVInt(1, payload.length);
-      termsHashPerField.writeBytes(1, payload.data, payload.offset, payload.length);
+      termsHashPerField.writeBytes(1, payload.bytes, payload.offset, payload.length);
       hasPayloads = true;
     } else {
       termsHashPerField.writeVInt(1, proxCode<<1);

Modified: lucene/dev/trunk/lucene/core/src/test/org/apache/lucene/analysis/TestToken.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/core/src/test/org/apache/lucene/analysis/TestToken.java?rev=1348171&r1=1348170&r2=1348171&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/core/src/test/org/apache/lucene/analysis/TestToken.java (original)
+++ lucene/dev/trunk/lucene/core/src/test/org/apache/lucene/analysis/TestToken.java Fri Jun  8 17:58:41 2012
@@ -17,7 +17,6 @@ package org.apache.lucene.analysis;
  * limitations under the License.
  */
 
-import org.apache.lucene.index.Payload;
 import org.apache.lucene.analysis.tokenattributes.*;
 import org.apache.lucene.util.LuceneTestCase;
 import org.apache.lucene.util.Attribute;
@@ -183,7 +182,7 @@ public class TestToken extends LuceneTes
     assertEquals(t.toString(), copy.toString());
     assertNotSame(buf, copy.buffer());
 
-    Payload pl = new Payload(new byte[]{1,2,3,4});
+    BytesRef pl = new BytesRef(new byte[]{1,2,3,4});
     t.setPayload(pl);
     copy = assertCloneIsEqual(t);
     assertEquals(pl, copy.getPayload());
@@ -204,7 +203,7 @@ public class TestToken extends LuceneTes
     assertEquals(t.toString(), copy.toString());
     assertNotSame(buf, copy.buffer());
 
-    Payload pl = new Payload(new byte[]{1,2,3,4});
+    BytesRef pl = new BytesRef(new byte[]{1,2,3,4});
     t.setPayload(pl);
     copy = assertCopyIsEqual(t);
     assertEquals(pl, copy.getPayload());

Modified: lucene/dev/trunk/lucene/core/src/test/org/apache/lucene/index/TestDocumentWriter.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/core/src/test/org/apache/lucene/index/TestDocumentWriter.java?rev=1348171&r1=1348170&r2=1348171&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/core/src/test/org/apache/lucene/index/TestDocumentWriter.java (original)
+++ lucene/dev/trunk/lucene/core/src/test/org/apache/lucene/index/TestDocumentWriter.java Fri Jun  8 17:58:41 2012
@@ -165,7 +165,7 @@ public class TestDocumentWriter extends 
             }
             if (first) {
               // set payload on first position only
-              payloadAtt.setPayload(new Payload(new byte[]{100}));
+              payloadAtt.setPayload(new BytesRef(new byte[]{100}));
               first = false;
             }
 

Modified: lucene/dev/trunk/lucene/core/src/test/org/apache/lucene/index/TestIndexWriterExceptions.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/core/src/test/org/apache/lucene/index/TestIndexWriterExceptions.java?rev=1348171&r1=1348170&r2=1348171&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/core/src/test/org/apache/lucene/index/TestIndexWriterExceptions.java (original)
+++ lucene/dev/trunk/lucene/core/src/test/org/apache/lucene/index/TestIndexWriterExceptions.java Fri Jun  8 17:58:41 2012
@@ -1528,7 +1528,7 @@ public class TestIndexWriterExceptions e
     Token t1 = new Token("foo", 0, 3);
     t1.setPositionIncrement(Integer.MAX_VALUE-500);
     if (random().nextBoolean()) {
-      t1.setPayload(new Payload(new byte[] { 0x1 } ));
+      t1.setPayload(new BytesRef(new byte[] { 0x1 } ));
     }
     TokenStream overflowingTokenStream = new CannedTokenStream(
         new Token[] { t1 }

Modified: lucene/dev/trunk/lucene/core/src/test/org/apache/lucene/index/TestMultiLevelSkipList.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/core/src/test/org/apache/lucene/index/TestMultiLevelSkipList.java?rev=1348171&r1=1348170&r2=1348171&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/core/src/test/org/apache/lucene/index/TestMultiLevelSkipList.java (original)
+++ lucene/dev/trunk/lucene/core/src/test/org/apache/lucene/index/TestMultiLevelSkipList.java Fri Jun  8 17:58:41 2012
@@ -138,7 +138,7 @@ public class TestMultiLevelSkipList exte
     public boolean incrementToken() throws IOException {
       boolean hasNext = input.incrementToken();
       if (hasNext) {
-        payloadAtt.setPayload(new Payload(new byte[] { (byte) payloadCount.incrementAndGet() }));
+        payloadAtt.setPayload(new BytesRef(new byte[] { (byte) payloadCount.incrementAndGet() }));
       } 
       return hasNext;
     }

Modified: lucene/dev/trunk/lucene/core/src/test/org/apache/lucene/index/TestPayloadProcessorProvider.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/core/src/test/org/apache/lucene/index/TestPayloadProcessorProvider.java?rev=1348171&r1=1348170&r2=1348171&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/core/src/test/org/apache/lucene/index/TestPayloadProcessorProvider.java (original)
+++ lucene/dev/trunk/lucene/core/src/test/org/apache/lucene/index/TestPayloadProcessorProvider.java Fri Jun  8 17:58:41 2012
@@ -104,7 +104,7 @@ public class TestPayloadProcessorProvide
 
       called = true;
       byte[] p = new byte[] { 1 };
-      payload.setPayload(new Payload(p));
+      payload.setPayload(new BytesRef(p));
       term.append(t);
       return true;
     }

Modified: lucene/dev/trunk/lucene/core/src/test/org/apache/lucene/index/TestPayloads.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/core/src/test/org/apache/lucene/index/TestPayloads.java?rev=1348171&r1=1348170&r2=1348171&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/core/src/test/org/apache/lucene/index/TestPayloads.java (original)
+++ lucene/dev/trunk/lucene/core/src/test/org/apache/lucene/index/TestPayloads.java Fri Jun  8 17:58:41 2012
@@ -44,46 +44,13 @@ public class TestPayloads extends Lucene
     // Simple tests to test the Payload class
     public void testPayload() throws Exception {
         byte[] testData = "This is a test!".getBytes();
-        Payload payload = new Payload(testData);
-        assertEquals("Wrong payload length.", testData.length, payload.length());
+        BytesRef payload = new BytesRef(testData);
+        assertEquals("Wrong payload length.", testData.length, payload.length);
         
-        // test copyTo()
-        byte[] target = new byte[testData.length - 1];
-        try {
-            payload.copyTo(target, 0);
-            fail("Expected exception not thrown");
-        } catch (Exception expected) {
-            // expected exception
-        }
-        
-        target = new byte[testData.length + 3];
-        payload.copyTo(target, 3);
-        
-        for (int i = 0; i < testData.length; i++) {
-            assertEquals(testData[i], target[i + 3]);
-        }
-        
-
-        // test toByteArray()
-        target = payload.toByteArray();
-        assertByteArrayEquals(testData, target);
-
-        // test byteAt()
-        for (int i = 0; i < testData.length; i++) {
-            assertEquals(payload.byteAt(i), testData[i]);
-        }
-        
-        try {
-            payload.byteAt(testData.length + 1);
-            fail("Expected exception not thrown");
-        } catch (Exception expected) {
-            // expected exception
-        }
-        
-        Payload clone = payload.clone();
-        assertEquals(payload.length(), clone.length());
-        for (int i = 0; i < payload.length(); i++) {
-          assertEquals(payload.byteAt(i), clone.byteAt(i));
+        BytesRef clone = payload.clone();
+        assertEquals(payload.length, clone.length);
+        for (int i = 0; i < payload.length; i++) {
+          assertEquals(payload.bytes[i + payload.offset], clone.bytes[i + clone.offset]);
         }
         
     }
@@ -478,9 +445,8 @@ public class TestPayloads extends Lucene
 
             // Some values of the same field are to have payloads and others not
             if (offset + length <= data.length && !termAttribute.toString().endsWith("NO PAYLOAD")) {
-              Payload p = new Payload();
+              BytesRef p = new BytesRef(data, offset, length);
               payloadAtt.setPayload(p);
-              p.setData(data, offset, length);
               offset += length;
             } else {
               payloadAtt.setPayload(null);
@@ -576,7 +542,7 @@ public class TestPayloads extends Lucene
             first = false;
             clearAttributes();
             termAtt.append(term);
-            payloadAtt.setPayload(new Payload(payload));
+            payloadAtt.setPayload(new BytesRef(payload));
             return true;
         }
         

Modified: lucene/dev/trunk/lucene/core/src/test/org/apache/lucene/search/payloads/PayloadHelper.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/core/src/test/org/apache/lucene/search/payloads/PayloadHelper.java?rev=1348171&r1=1348170&r2=1348171&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/core/src/test/org/apache/lucene/search/payloads/PayloadHelper.java (original)
+++ lucene/dev/trunk/lucene/core/src/test/org/apache/lucene/search/payloads/PayloadHelper.java Fri Jun  8 17:58:41 2012
@@ -21,11 +21,11 @@ import org.apache.lucene.analysis.*;
 import org.apache.lucene.analysis.tokenattributes.PayloadAttribute;
 import org.apache.lucene.index.DirectoryReader;
 import org.apache.lucene.index.IndexWriterConfig;
-import org.apache.lucene.index.Payload;
 import org.apache.lucene.index.IndexWriter;
 import org.apache.lucene.document.Document;
 import org.apache.lucene.document.Field;
 import org.apache.lucene.document.TextField;
+import org.apache.lucene.util.BytesRef;
 import org.apache.lucene.util.English;
 import org.apache.lucene.util.LuceneTestCase;
 import org.apache.lucene.index.IndexReader;
@@ -85,13 +85,13 @@ public class PayloadHelper {
       
       if (input.incrementToken()) {
         if (fieldName.equals(FIELD)) {
-          payloadAtt.setPayload(new Payload(payloadField));
+          payloadAtt.setPayload(new BytesRef(payloadField));
         } else if (fieldName.equals(MULTI_FIELD)) {
           if (numSeen  % 2 == 0) {
-            payloadAtt.setPayload(new Payload(payloadMultiField1));
+            payloadAtt.setPayload(new BytesRef(payloadMultiField1));
           }
           else {
-            payloadAtt.setPayload(new Payload(payloadMultiField2));
+            payloadAtt.setPayload(new BytesRef(payloadMultiField2));
           }
           numSeen++;
         }

Modified: lucene/dev/trunk/lucene/core/src/test/org/apache/lucene/search/payloads/TestPayloadNearQuery.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/core/src/test/org/apache/lucene/search/payloads/TestPayloadNearQuery.java?rev=1348171&r1=1348170&r2=1348171&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/core/src/test/org/apache/lucene/search/payloads/TestPayloadNearQuery.java (original)
+++ lucene/dev/trunk/lucene/core/src/test/org/apache/lucene/search/payloads/TestPayloadNearQuery.java Fri Jun  8 17:58:41 2012
@@ -25,7 +25,6 @@ import org.apache.lucene.document.TextFi
 import org.apache.lucene.index.FieldInvertState;
 import org.apache.lucene.index.IndexReader;
 import org.apache.lucene.index.Norm;
-import org.apache.lucene.index.Payload;
 import org.apache.lucene.index.RandomIndexWriter;
 import org.apache.lucene.index.Term;
 import org.apache.lucene.search.CollectionStatistics;
@@ -80,9 +79,9 @@ public class TestPayloadNearQuery extend
       boolean result = false;
       if (input.incrementToken()) {
         if (numSeen % 2 == 0) {
-          payAtt.setPayload(new Payload(payload2));
+          payAtt.setPayload(new BytesRef(payload2));
         } else {
-          payAtt.setPayload(new Payload(payload4));
+          payAtt.setPayload(new BytesRef(payload4));
         }
         numSeen++;
         result = true;

Modified: lucene/dev/trunk/lucene/core/src/test/org/apache/lucene/search/payloads/TestPayloadTermQuery.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/core/src/test/org/apache/lucene/search/payloads/TestPayloadTermQuery.java?rev=1348171&r1=1348170&r2=1348171&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/core/src/test/org/apache/lucene/search/payloads/TestPayloadTermQuery.java (original)
+++ lucene/dev/trunk/lucene/core/src/test/org/apache/lucene/search/payloads/TestPayloadTermQuery.java Fri Jun  8 17:58:41 2012
@@ -37,7 +37,6 @@ import org.apache.lucene.index.Directory
 import org.apache.lucene.index.FieldInvertState;
 import org.apache.lucene.index.IndexReader;
 import org.apache.lucene.index.Norm;
-import org.apache.lucene.index.Payload;
 import org.apache.lucene.index.RandomIndexWriter;
 import org.apache.lucene.index.Term;
 import org.apache.lucene.store.Directory;
@@ -94,12 +93,12 @@ public class TestPayloadTermQuery extend
       boolean hasNext = input.incrementToken();
       if (hasNext) {
         if (fieldName.equals("field")) {
-          payloadAtt.setPayload(new Payload(payloadField));
+          payloadAtt.setPayload(new BytesRef(payloadField));
         } else if (fieldName.equals("multiField")) {
           if (numSeen % 2 == 0) {
-            payloadAtt.setPayload(new Payload(payloadMultiField1));
+            payloadAtt.setPayload(new BytesRef(payloadMultiField1));
           } else {
-            payloadAtt.setPayload(new Payload(payloadMultiField2));
+            payloadAtt.setPayload(new BytesRef(payloadMultiField2));
           }
           numSeen++;
         }

Modified: lucene/dev/trunk/lucene/core/src/test/org/apache/lucene/search/spans/TestBasics.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/core/src/test/org/apache/lucene/search/spans/TestBasics.java?rev=1348171&r1=1348170&r2=1348171&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/core/src/test/org/apache/lucene/search/spans/TestBasics.java (original)
+++ lucene/dev/trunk/lucene/core/src/test/org/apache/lucene/search/spans/TestBasics.java Fri Jun  8 17:58:41 2012
@@ -30,7 +30,6 @@ import org.apache.lucene.analysis.tokena
 import org.apache.lucene.document.Document;
 import org.apache.lucene.document.TextField;
 import org.apache.lucene.index.IndexReader;
-import org.apache.lucene.index.Payload;
 import org.apache.lucene.index.RandomIndexWriter;
 import org.apache.lucene.index.Term;
 import org.apache.lucene.search.BooleanClause;
@@ -42,6 +41,7 @@ import org.apache.lucene.search.Query;
 import org.apache.lucene.search.QueryUtils;
 import org.apache.lucene.search.TermQuery;
 import org.apache.lucene.store.Directory;
+import org.apache.lucene.util.BytesRef;
 import org.apache.lucene.util.English;
 import org.apache.lucene.util.LuceneTestCase;
 import org.apache.lucene.util._TestUtil;
@@ -81,7 +81,7 @@ public class TestBasics extends LuceneTe
     @Override
     public boolean incrementToken() throws IOException {
       if (input.incrementToken()) {
-        payloadAttr.setPayload(new Payload(("pos: " + pos).getBytes()));
+        payloadAttr.setPayload(new BytesRef(("pos: " + pos).getBytes()));
         pos++;
         return true;
       } else {
@@ -411,8 +411,8 @@ public class TestBasics extends LuceneTe
   @Test
   public void testSpanPayloadCheck() throws Exception {
     SpanTermQuery term1 = new SpanTermQuery(new Term("field", "five"));
-    Payload pay = new Payload(("pos: " + 5).getBytes());
-    SpanQuery query = new SpanPayloadCheckQuery(term1, Collections.singletonList(pay.getData()));
+    BytesRef pay = new BytesRef(("pos: " + 5).getBytes());
+    SpanQuery query = new SpanPayloadCheckQuery(term1, Collections.singletonList(pay.bytes));
     checkHits(query, new int[]
       {1125, 1135, 1145, 1155, 1165, 1175, 1185, 1195, 1225, 1235, 1245, 1255, 1265, 1275, 1285, 1295, 1325, 1335, 1345, 1355, 1365, 1375, 1385, 1395, 1425, 1435, 1445, 1455, 1465, 1475, 1485, 1495, 1525, 1535, 1545, 1555, 1565, 1575, 1585, 1595, 1625, 1635, 1645, 1655, 1665, 1675, 1685, 1695, 1725, 1735, 1745, 1755, 1765, 1775, 1785, 1795, 1825, 1835, 1845, 1855, 1865, 1875, 1885, 1895, 1925, 1935, 1945, 1955, 1965, 1975, 1985, 1995});
     assertTrue(searcher.explain(query, 1125).getValue() > 0.0f);
@@ -421,16 +421,16 @@ public class TestBasics extends LuceneTe
     SpanNearQuery snq;
     SpanQuery[] clauses;
     List<byte[]> list;
-    Payload pay2;
+    BytesRef pay2;
     clauses = new SpanQuery[2];
     clauses[0] = term1;
     clauses[1] = term2;
     snq = new SpanNearQuery(clauses, 0, true);
-    pay = new Payload(("pos: " + 0).getBytes());
-    pay2 = new Payload(("pos: " + 1).getBytes());
+    pay = new BytesRef(("pos: " + 0).getBytes());
+    pay2 = new BytesRef(("pos: " + 1).getBytes());
     list = new ArrayList<byte[]>();
-    list.add(pay.getData());
-    list.add(pay2.getData());
+    list.add(pay.bytes);
+    list.add(pay2.bytes);
     query = new SpanNearPayloadCheckQuery(snq, list);
     checkHits(query, new int[]
       {500, 501, 502, 503, 504, 505, 506, 507, 508, 509, 510, 511, 512, 513, 514, 515, 516, 517, 518, 519, 520, 521, 522, 523, 524, 525, 526, 527, 528, 529, 530, 531, 532, 533, 534, 535, 536, 537, 538, 539, 540, 541, 542, 543, 544, 545, 546, 547, 548, 549, 550, 551, 552, 553, 554, 555, 556, 557, 558, 559, 560, 561, 562, 563, 564, 565, 566, 567, 568, 569, 570, 571, 572, 573, 574, 575, 576, 577, 578, 579, 580, 581, 582, 583, 584, 585, 586, 587, 588, 589, 590, 591, 592, 593, 594, 595, 596, 597, 598, 599});
@@ -439,13 +439,13 @@ public class TestBasics extends LuceneTe
     clauses[1] = term2;
     clauses[2] = new SpanTermQuery(new Term("field", "five"));
     snq = new SpanNearQuery(clauses, 0, true);
-    pay = new Payload(("pos: " + 0).getBytes());
-    pay2 = new Payload(("pos: " + 1).getBytes());
-    Payload pay3 = new Payload(("pos: " + 2).getBytes());
+    pay = new BytesRef(("pos: " + 0).getBytes());
+    pay2 = new BytesRef(("pos: " + 1).getBytes());
+    BytesRef pay3 = new BytesRef(("pos: " + 2).getBytes());
     list = new ArrayList<byte[]>();
-    list.add(pay.getData());
-    list.add(pay2.getData());
-    list.add(pay3.getData());
+    list.add(pay.bytes);
+    list.add(pay2.bytes);
+    list.add(pay3.bytes);
     query = new SpanNearPayloadCheckQuery(snq, list);
     checkHits(query, new int[]
       {505});
@@ -470,14 +470,14 @@ public class TestBasics extends LuceneTe
     checkHits(query, new int[]{1103, 1203,1303,1403,1503,1603,1703,1803,1903});
 
     Collection<byte[]> payloads = new ArrayList<byte[]>();
-    Payload pay = new Payload(("pos: " + 0).getBytes());
-    Payload pay2 = new Payload(("pos: " + 1).getBytes());
-    Payload pay3 = new Payload(("pos: " + 3).getBytes());
-    Payload pay4 = new Payload(("pos: " + 4).getBytes());
-    payloads.add(pay.getData());
-    payloads.add(pay2.getData());
-    payloads.add(pay3.getData());
-    payloads.add(pay4.getData());
+    BytesRef pay = new BytesRef(("pos: " + 0).getBytes());
+    BytesRef pay2 = new BytesRef(("pos: " + 1).getBytes());
+    BytesRef pay3 = new BytesRef(("pos: " + 3).getBytes());
+    BytesRef pay4 = new BytesRef(("pos: " + 4).getBytes());
+    payloads.add(pay.bytes);
+    payloads.add(pay2.bytes);
+    payloads.add(pay3.bytes);
+    payloads.add(pay4.bytes);
     query = new SpanNearPayloadCheckQuery(oneThousHunThree, payloads);
     checkHits(query, new int[]{1103, 1203,1303,1403,1503,1603,1703,1803,1903});
 

Modified: lucene/dev/trunk/lucene/core/src/test/org/apache/lucene/search/spans/TestPayloadSpans.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/core/src/test/org/apache/lucene/search/spans/TestPayloadSpans.java?rev=1348171&r1=1348170&r2=1348171&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/core/src/test/org/apache/lucene/search/spans/TestPayloadSpans.java (original)
+++ lucene/dev/trunk/lucene/core/src/test/org/apache/lucene/search/spans/TestPayloadSpans.java Fri Jun  8 17:58:41 2012
@@ -32,7 +32,6 @@ import org.apache.lucene.document.TextFi
 import org.apache.lucene.index.CorruptIndexException;
 import org.apache.lucene.index.RandomIndexWriter;
 import org.apache.lucene.index.IndexReader;
-import org.apache.lucene.index.Payload;
 import org.apache.lucene.index.Term;
 import org.apache.lucene.search.IndexSearcher;
 import org.apache.lucene.search.TermQuery;
@@ -43,6 +42,7 @@ import org.apache.lucene.search.similari
 import org.apache.lucene.search.similarities.Similarity;
 import org.apache.lucene.store.Directory;
 import org.apache.lucene.store.LockObtainFailedException;
+import org.apache.lucene.util.BytesRef;
 import org.apache.lucene.util.LuceneTestCase;
 
 public class TestPayloadSpans extends LuceneTestCase {
@@ -505,9 +505,9 @@ public class TestPayloadSpans extends Lu
 
         if (!nopayload.contains(token)) {
           if (entities.contains(token)) {
-            payloadAtt.setPayload(new Payload((token + ":Entity:"+ pos ).getBytes()));
+            payloadAtt.setPayload(new BytesRef((token + ":Entity:"+ pos ).getBytes()));
           } else {
-            payloadAtt.setPayload(new Payload((token + ":Noise:" + pos ).getBytes()));
+            payloadAtt.setPayload(new BytesRef((token + ":Noise:" + pos ).getBytes()));
           }
         }
         pos += posIncrAtt.getPositionIncrement();

Modified: lucene/dev/trunk/lucene/facet/src/java/org/apache/lucene/facet/enhancements/EnhancementsCategoryTokenizer.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/facet/src/java/org/apache/lucene/facet/enhancements/EnhancementsCategoryTokenizer.java?rev=1348171&r1=1348170&r2=1348171&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/facet/src/java/org/apache/lucene/facet/enhancements/EnhancementsCategoryTokenizer.java (original)
+++ lucene/dev/trunk/lucene/facet/src/java/org/apache/lucene/facet/enhancements/EnhancementsCategoryTokenizer.java Fri Jun  8 17:58:41 2012
@@ -114,7 +114,9 @@ public class EnhancementsCategoryTokeniz
           nBytes += enhancementBytes[i].length;
         }
       }
-      payload.setData(payloadBytes, 0, nBytes);
+      payload.bytes = payloadBytes;
+      payload.offset = 0;
+      payload.length = nBytes;
       payloadAttribute.setPayload(payload);
     }
   }

Modified: lucene/dev/trunk/lucene/facet/src/java/org/apache/lucene/facet/enhancements/association/AssociationListTokenizer.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/facet/src/java/org/apache/lucene/facet/enhancements/association/AssociationListTokenizer.java?rev=1348171&r1=1348170&r2=1348171&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/facet/src/java/org/apache/lucene/facet/enhancements/association/AssociationListTokenizer.java (original)
+++ lucene/dev/trunk/lucene/facet/src/java/org/apache/lucene/facet/enhancements/association/AssociationListTokenizer.java Fri Jun  8 17:58:41 2012
@@ -79,7 +79,9 @@ public class AssociationListTokenizer ex
     }
     if (payloadStream != null) {
       termAttribute.setEmpty().append(categoryListTermText);
-      payload.setData(payloadStream.convertStreamToByteArray());
+      payload.bytes = payloadStream.convertStreamToByteArray();
+      payload.offset = 0;
+      payload.length = payload.bytes.length;
       payloadAttribute.setPayload(payload);
       payloadStream = null;
       return true;

Modified: lucene/dev/trunk/lucene/facet/src/java/org/apache/lucene/facet/index/streaming/CategoryTokenizerBase.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/facet/src/java/org/apache/lucene/facet/index/streaming/CategoryTokenizerBase.java?rev=1348171&r1=1348170&r2=1348171&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/facet/src/java/org/apache/lucene/facet/index/streaming/CategoryTokenizerBase.java (original)
+++ lucene/dev/trunk/lucene/facet/src/java/org/apache/lucene/facet/index/streaming/CategoryTokenizerBase.java Fri Jun  8 17:58:41 2012
@@ -6,7 +6,7 @@ import org.apache.lucene.analysis.TokenF
 import org.apache.lucene.analysis.TokenStream;
 import org.apache.lucene.analysis.tokenattributes.PayloadAttribute;
 import org.apache.lucene.analysis.tokenattributes.CharTermAttribute;
-import org.apache.lucene.index.Payload;
+import org.apache.lucene.util.BytesRef;
 
 import org.apache.lucene.facet.index.CategoryDocumentBuilder;
 import org.apache.lucene.facet.index.attributes.CategoryAttribute;
@@ -49,7 +49,7 @@ public abstract class CategoryTokenizerB
   protected CharTermAttribute termAttribute;
 
   /** The object used for constructing payloads. */
-  protected Payload payload = new Payload();
+  protected BytesRef payload = new BytesRef();
 
   /** Indexing params for creating term text **/
   protected FacetIndexingParams indexingParams;

Modified: lucene/dev/trunk/lucene/facet/src/java/org/apache/lucene/facet/index/streaming/CountingListTokenizer.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/facet/src/java/org/apache/lucene/facet/index/streaming/CountingListTokenizer.java?rev=1348171&r1=1348170&r2=1348171&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/facet/src/java/org/apache/lucene/facet/index/streaming/CountingListTokenizer.java (original)
+++ lucene/dev/trunk/lucene/facet/src/java/org/apache/lucene/facet/index/streaming/CountingListTokenizer.java Fri Jun  8 17:58:41 2012
@@ -90,7 +90,9 @@ public class CountingListTokenizer exten
       countingListName.getChars(0, length, termAttribute.buffer(), 0);
       this.termAttribute.setLength(length);
       CategoryListPayloadStream payloadStream = entry.getValue();
-      payload.setData(payloadStream.convertStreamToByteArray());
+      payload.bytes = payloadStream.convertStreamToByteArray();
+      payload.offset = 0;
+      payload.length = payload.bytes.length;
       this.payloadAttribute.setPayload(payload);
       return true;
     }

Modified: lucene/dev/trunk/lucene/facet/src/test/org/apache/lucene/facet/search/CategoryListIteratorTest.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/facet/src/test/org/apache/lucene/facet/search/CategoryListIteratorTest.java?rev=1348171&r1=1348170&r2=1348171&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/facet/src/test/org/apache/lucene/facet/search/CategoryListIteratorTest.java (original)
+++ lucene/dev/trunk/lucene/facet/src/test/org/apache/lucene/facet/search/CategoryListIteratorTest.java Fri Jun  8 17:58:41 2012
@@ -14,10 +14,10 @@ import org.apache.lucene.analysis.tokena
 import org.apache.lucene.document.Document;
 import org.apache.lucene.document.TextField;
 import org.apache.lucene.index.IndexReader;
-import org.apache.lucene.index.Payload;
 import org.apache.lucene.index.RandomIndexWriter;
 import org.apache.lucene.index.Term;
 import org.apache.lucene.store.Directory;
+import org.apache.lucene.util.BytesRef;
 import org.apache.lucene.util.LuceneTestCase;
 import org.apache.lucene.util.UnsafeByteArrayOutputStream;
 import org.apache.lucene.util.encoding.DGapIntEncoder;
@@ -79,7 +79,7 @@ public class CategoryListIteratorTest ex
         encoder.encode(val);
       }
       encoder.close();
-      payload.setPayload(new Payload(buf, 0, ubaos.length()));
+      payload.setPayload(new BytesRef(buf, 0, ubaos.length()));
 
       exhausted = true;
       return true;

Modified: lucene/dev/trunk/lucene/test-framework/src/java/org/apache/lucene/analysis/MockFixedLengthPayloadFilter.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/test-framework/src/java/org/apache/lucene/analysis/MockFixedLengthPayloadFilter.java?rev=1348171&r1=1348170&r2=1348171&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/test-framework/src/java/org/apache/lucene/analysis/MockFixedLengthPayloadFilter.java (original)
+++ lucene/dev/trunk/lucene/test-framework/src/java/org/apache/lucene/analysis/MockFixedLengthPayloadFilter.java Fri Jun  8 17:58:41 2012
@@ -21,7 +21,7 @@ import java.io.IOException;
 import java.util.Random;
 
 import org.apache.lucene.analysis.tokenattributes.PayloadAttribute;
-import org.apache.lucene.index.Payload;
+import org.apache.lucene.util.BytesRef;
 
 /**
  * TokenFilter that adds random fixed-length payloads.
@@ -30,7 +30,7 @@ public final class MockFixedLengthPayloa
   private final PayloadAttribute payloadAtt = addAttribute(PayloadAttribute.class);
   private final Random random;
   private final byte[] bytes;
-  private final Payload payload;
+  private final BytesRef payload;
 
   public MockFixedLengthPayloadFilter(Random random, TokenStream in, int length) {
     super(in);
@@ -39,7 +39,7 @@ public final class MockFixedLengthPayloa
     }
     this.random = random;
     this.bytes = new byte[length];
-    this.payload = new Payload(bytes);
+    this.payload = new BytesRef(bytes);
   }
 
   @Override

Modified: lucene/dev/trunk/lucene/test-framework/src/java/org/apache/lucene/analysis/MockPayloadAnalyzer.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/test-framework/src/java/org/apache/lucene/analysis/MockPayloadAnalyzer.java?rev=1348171&r1=1348170&r2=1348171&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/test-framework/src/java/org/apache/lucene/analysis/MockPayloadAnalyzer.java (original)
+++ lucene/dev/trunk/lucene/test-framework/src/java/org/apache/lucene/analysis/MockPayloadAnalyzer.java Fri Jun  8 17:58:41 2012
@@ -20,7 +20,7 @@ package org.apache.lucene.analysis;
 import org.apache.lucene.analysis.tokenattributes.CharTermAttribute;
 import org.apache.lucene.analysis.tokenattributes.PayloadAttribute;
 import org.apache.lucene.analysis.tokenattributes.PositionIncrementAttribute;
-import org.apache.lucene.index.Payload;
+import org.apache.lucene.util.BytesRef;
 
 import java.io.IOException;
 import java.io.Reader;
@@ -67,7 +67,7 @@ final class MockPayloadFilter extends To
   @Override
   public boolean incrementToken() throws IOException {
     if (input.incrementToken()) {
-      payloadAttr.setPayload(new Payload(("pos: " + pos).getBytes()));
+      payloadAttr.setPayload(new BytesRef(("pos: " + pos).getBytes()));
       int posIncr;
       if (i % 2 == 1) {
         posIncr = 1;

Modified: lucene/dev/trunk/lucene/test-framework/src/java/org/apache/lucene/analysis/MockVariableLengthPayloadFilter.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/lucene/test-framework/src/java/org/apache/lucene/analysis/MockVariableLengthPayloadFilter.java?rev=1348171&r1=1348170&r2=1348171&view=diff
==============================================================================
--- lucene/dev/trunk/lucene/test-framework/src/java/org/apache/lucene/analysis/MockVariableLengthPayloadFilter.java (original)
+++ lucene/dev/trunk/lucene/test-framework/src/java/org/apache/lucene/analysis/MockVariableLengthPayloadFilter.java Fri Jun  8 17:58:41 2012
@@ -21,7 +21,7 @@ import java.io.IOException;
 import java.util.Random;
 
 import org.apache.lucene.analysis.tokenattributes.PayloadAttribute;
-import org.apache.lucene.index.Payload;
+import org.apache.lucene.util.BytesRef;
 
 /**
  * TokenFilter that adds random variable-length payloads.
@@ -32,19 +32,19 @@ public final class MockVariableLengthPay
   private final PayloadAttribute payloadAtt = addAttribute(PayloadAttribute.class);
   private final Random random;
   private final byte[] bytes = new byte[MAXLENGTH];
-  private final Payload payload;
+  private final BytesRef payload;
 
   public MockVariableLengthPayloadFilter(Random random, TokenStream in) {
     super(in);
     this.random = random;
-    this.payload = new Payload(bytes);
+    this.payload = new BytesRef(bytes);
   }
 
   @Override
   public boolean incrementToken() throws IOException {
     if (input.incrementToken()) {
       random.nextBytes(bytes);
-      payload.setData(bytes, 0, random.nextInt(MAXLENGTH));
+      payload.length = random.nextInt(MAXLENGTH);
       payloadAtt.setPayload(payload);
       return true;
     } else {

Modified: lucene/dev/trunk/solr/core/src/java/org/apache/solr/handler/AnalysisRequestHandlerBase.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/core/src/java/org/apache/solr/handler/AnalysisRequestHandlerBase.java?rev=1348171&r1=1348170&r2=1348171&view=diff
==============================================================================
--- lucene/dev/trunk/solr/core/src/java/org/apache/solr/handler/AnalysisRequestHandlerBase.java (original)
+++ lucene/dev/trunk/solr/core/src/java/org/apache/solr/handler/AnalysisRequestHandlerBase.java Fri Jun  8 17:58:41 2012
@@ -26,7 +26,6 @@ import org.apache.lucene.analysis.util.C
 import org.apache.lucene.analysis.util.TokenFilterFactory;
 import org.apache.lucene.analysis.util.TokenizerFactory;
 import org.apache.lucene.util.BytesRef;
-import org.apache.lucene.index.Payload;
 import org.apache.lucene.util.Attribute;
 import org.apache.lucene.util.AttributeImpl;
 import org.apache.lucene.util.AttributeSource;
@@ -273,9 +272,9 @@ public abstract class AnalysisRequestHan
             k = ATTRIBUTE_MAPPING.get(k);
           }
           
-          if (value instanceof Payload) {
-            final Payload p = (Payload) value;
-            value = new BytesRef(p.getData()).toString();
+          if (value instanceof BytesRef) {
+            final BytesRef p = (BytesRef) value;
+            value = p.toString();
           }
 
           tokenNamedList.add(k, value);

Modified: lucene/dev/trunk/solr/core/src/java/org/apache/solr/schema/JsonPreAnalyzedParser.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/core/src/java/org/apache/solr/schema/JsonPreAnalyzedParser.java?rev=1348171&r1=1348170&r2=1348171&view=diff
==============================================================================
--- lucene/dev/trunk/solr/core/src/java/org/apache/solr/schema/JsonPreAnalyzedParser.java (original)
+++ lucene/dev/trunk/solr/core/src/java/org/apache/solr/schema/JsonPreAnalyzedParser.java Fri Jun  8 17:58:41 2012
@@ -19,7 +19,6 @@ import org.apache.lucene.analysis.tokena
 import org.apache.lucene.analysis.tokenattributes.TermToBytesRefAttribute;
 import org.apache.lucene.analysis.tokenattributes.TypeAttribute;
 import org.apache.lucene.document.Field;
-import org.apache.lucene.index.Payload;
 import org.apache.lucene.util.Attribute;
 import org.apache.lucene.util.AttributeSource;
 import org.apache.lucene.util.AttributeSource.State;
@@ -171,7 +170,7 @@ public class JsonPreAnalyzedParser imple
             byte[] data = Base64.base64ToByteArray(str);
             PayloadAttribute p = parent.addAttribute(PayloadAttribute.class);
             if (data != null && data.length > 0) {
-              p.setPayload(new Payload(data));
+              p.setPayload(new BytesRef(data));
             }
           }
         } else if (key.equals(FLAGS_KEY)) {
@@ -248,9 +247,9 @@ public class JsonPreAnalyzedParser imple
               tok.put(OFFSET_START_KEY, ((OffsetAttribute)att).startOffset());
               tok.put(OFFSET_END_KEY, ((OffsetAttribute)att).endOffset());
             } else if (cl.isAssignableFrom(PayloadAttribute.class)) {
-              Payload p = ((PayloadAttribute)att).getPayload();
-              if (p != null && p.length() > 0) {
-                tok.put(PAYLOAD_KEY, Base64.byteArrayToBase64(p.getData(), p.getOffset(), p.length()));
+              BytesRef p = ((PayloadAttribute)att).getPayload();
+              if (p != null && p.length > 0) {
+                tok.put(PAYLOAD_KEY, Base64.byteArrayToBase64(p.bytes, p.offset, p.length));
               }
             } else if (cl.isAssignableFrom(PositionIncrementAttribute.class)) {
               tok.put(POSINCR_KEY, ((PositionIncrementAttribute)att).getPositionIncrement());

Modified: lucene/dev/trunk/solr/core/src/java/org/apache/solr/schema/SimplePreAnalyzedParser.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/core/src/java/org/apache/solr/schema/SimplePreAnalyzedParser.java?rev=1348171&r1=1348170&r2=1348171&view=diff
==============================================================================
--- lucene/dev/trunk/solr/core/src/java/org/apache/solr/schema/SimplePreAnalyzedParser.java (original)
+++ lucene/dev/trunk/solr/core/src/java/org/apache/solr/schema/SimplePreAnalyzedParser.java Fri Jun  8 17:58:41 2012
@@ -33,10 +33,10 @@ import org.apache.lucene.analysis.tokena
 import org.apache.lucene.analysis.tokenattributes.TermToBytesRefAttribute;
 import org.apache.lucene.analysis.tokenattributes.TypeAttribute;
 import org.apache.lucene.document.Field;
-import org.apache.lucene.index.Payload;
 import org.apache.lucene.util.Attribute;
 import org.apache.lucene.util.AttributeSource;
 import org.apache.lucene.util.AttributeSource.State;
+import org.apache.lucene.util.BytesRef;
 import org.apache.solr.schema.PreAnalyzedField.ParseResult;
 import org.apache.solr.schema.PreAnalyzedField.PreAnalyzedParser;
 
@@ -437,7 +437,7 @@ public final class SimplePreAnalyzedPars
         PayloadAttribute p = a.addAttribute(PayloadAttribute.class);
         byte[] data = hexToBytes(e.getValue());
         if (data != null && data.length > 0) {
-          p.setPayload(new Payload(data));
+          p.setPayload(new BytesRef(data));
         }
       } else {
         // unknown attribute
@@ -498,9 +498,9 @@ public final class SimplePreAnalyzedPars
             } else if (cl.isAssignableFrom(OffsetAttribute.class)) {
               tok.append("s=" + ((OffsetAttribute)att).startOffset() + ",e=" + ((OffsetAttribute)att).endOffset());
             } else if (cl.isAssignableFrom(PayloadAttribute.class)) {
-              Payload p = ((PayloadAttribute)att).getPayload();
-              if (p != null && p.length() > 0) {
-                tok.append("p=" + bytesToHex(p.getData(), p.getOffset(), p.length()));
+              BytesRef p = ((PayloadAttribute)att).getPayload();
+              if (p != null && p.length > 0) {
+                tok.append("p=" + bytesToHex(p.bytes, p.offset, p.length));
               } else if (tok.length() > 0) {
                 tok.setLength(tok.length() - 1); // remove the last comma
               }

Modified: lucene/dev/trunk/solr/core/src/test/org/apache/solr/analysis/TestDelimitedPayloadTokenFilterFactory.java
URL: http://svn.apache.org/viewvc/lucene/dev/trunk/solr/core/src/test/org/apache/solr/analysis/TestDelimitedPayloadTokenFilterFactory.java?rev=1348171&r1=1348170&r2=1348171&view=diff
==============================================================================
--- lucene/dev/trunk/solr/core/src/test/org/apache/solr/analysis/TestDelimitedPayloadTokenFilterFactory.java (original)
+++ lucene/dev/trunk/solr/core/src/test/org/apache/solr/analysis/TestDelimitedPayloadTokenFilterFactory.java Fri Jun  8 17:58:41 2012
@@ -47,7 +47,7 @@ public class TestDelimitedPayloadTokenFi
     while (tf.incrementToken()){
       PayloadAttribute payAttr = tf.getAttribute(PayloadAttribute.class);
       assertTrue("payAttr is null and it shouldn't be", payAttr != null);
-      byte[] payData = payAttr.getPayload().getData();
+      byte[] payData = payAttr.getPayload().bytes;
       assertTrue("payData is null and it shouldn't be", payData != null);
       assertTrue("payData is null and it shouldn't be", payData != null);
       float payFloat = PayloadHelper.decodeFloat(payData);
@@ -70,7 +70,7 @@ public class TestDelimitedPayloadTokenFi
     while (tf.incrementToken()){
       PayloadAttribute payAttr = tf.getAttribute(PayloadAttribute.class);
       assertTrue("payAttr is null and it shouldn't be", payAttr != null);
-      byte[] payData = payAttr.getPayload().getData();
+      byte[] payData = payAttr.getPayload().bytes;
       assertTrue("payData is null and it shouldn't be", payData != null);
       float payFloat = PayloadHelper.decodeFloat(payData);
       assertTrue(payFloat + " does not equal: " + 0.1f, payFloat == 0.1f);