You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@lucene.apache.org by rm...@apache.org on 2012/01/09 02:03:11 UTC

svn commit: r1228998 - in /lucene/dev/branches/lucene3305/modules/analysis/kuromoji/src: java/org/apache/lucene/analysis/kuromoji/dict/ resources/org/apache/lucene/analysis/kuromoji/dict/ tools/java/org/apache/lucene/analysis/kuromoji/util/

Author: rmuir
Date: Mon Jan  9 01:03:11 2012
New Revision: 1228998

URL: http://svn.apache.org/viewvc?rev=1228998&view=rev
Log:
LUCENE-3305: clean up connection costs reading/writing

Modified:
    lucene/dev/branches/lucene3305/modules/analysis/kuromoji/src/java/org/apache/lucene/analysis/kuromoji/dict/ConnectionCosts.java
    lucene/dev/branches/lucene3305/modules/analysis/kuromoji/src/resources/org/apache/lucene/analysis/kuromoji/dict/ConnectionCosts.dat
    lucene/dev/branches/lucene3305/modules/analysis/kuromoji/src/tools/java/org/apache/lucene/analysis/kuromoji/util/ConnectionCostsWriter.java

Modified: lucene/dev/branches/lucene3305/modules/analysis/kuromoji/src/java/org/apache/lucene/analysis/kuromoji/dict/ConnectionCosts.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene3305/modules/analysis/kuromoji/src/java/org/apache/lucene/analysis/kuromoji/dict/ConnectionCosts.java?rev=1228998&r1=1228997&r2=1228998&view=diff
==============================================================================
--- lucene/dev/branches/lucene3305/modules/analysis/kuromoji/src/java/org/apache/lucene/analysis/kuromoji/dict/ConnectionCosts.java (original)
+++ lucene/dev/branches/lucene3305/modules/analysis/kuromoji/src/java/org/apache/lucene/analysis/kuromoji/dict/ConnectionCosts.java Mon Jan  9 01:03:11 2012
@@ -46,14 +46,14 @@ public final class ConnectionCosts {
       is = new BufferedInputStream(is);
       final DataInput in = new InputStreamDataInput(is);
       CodecUtil.checkHeader(in, HEADER, VERSION, VERSION);
-      costs = new short[in.readVInt()][];
+      int forwardSize = in.readVInt();
+      int backwardSize = in.readVInt();
+      costs = new short[backwardSize][forwardSize];
       for (int j = 0; j < costs.length; j++) {
-        final int len = in.readVInt();
-        final short[] a = new short[len];
-        for (int i = 0; i < len; i++) {
+        final short[] a = costs[j];
+        for (int i = 0; i < a.length; i++) {
           a[i] = in.readShort();
         }
-        costs[j] = a;
       }
     } catch (IOException ioe) {
       priorE = ioe;

Modified: lucene/dev/branches/lucene3305/modules/analysis/kuromoji/src/resources/org/apache/lucene/analysis/kuromoji/dict/ConnectionCosts.dat
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene3305/modules/analysis/kuromoji/src/resources/org/apache/lucene/analysis/kuromoji/dict/ConnectionCosts.dat?rev=1228998&r1=1228997&r2=1228998&view=diff
==============================================================================
Binary files - no diff available.

Modified: lucene/dev/branches/lucene3305/modules/analysis/kuromoji/src/tools/java/org/apache/lucene/analysis/kuromoji/util/ConnectionCostsWriter.java
URL: http://svn.apache.org/viewvc/lucene/dev/branches/lucene3305/modules/analysis/kuromoji/src/tools/java/org/apache/lucene/analysis/kuromoji/util/ConnectionCostsWriter.java?rev=1228998&r1=1228997&r2=1228998&view=diff
==============================================================================
--- lucene/dev/branches/lucene3305/modules/analysis/kuromoji/src/tools/java/org/apache/lucene/analysis/kuromoji/util/ConnectionCostsWriter.java (original)
+++ lucene/dev/branches/lucene3305/modules/analysis/kuromoji/src/tools/java/org/apache/lucene/analysis/kuromoji/util/ConnectionCostsWriter.java Mon Jan  9 01:03:11 2012
@@ -32,12 +32,15 @@ import org.apache.lucene.util.CodecUtil;
 public final class ConnectionCostsWriter {
   
   private final short[][] costs; // array is backward IDs first since get is called using the same backward ID consecutively. maybe doesn't matter.
-  
+  private final int forwardSize;
+  private final int backwardSize;
   /**
    * Constructor for building. TODO: remove write access
    */
   public ConnectionCostsWriter(int forwardSize, int backwardSize) {
-    this.costs = new short[backwardSize][forwardSize]; 
+    this.forwardSize = forwardSize;
+    this.backwardSize = backwardSize;
+    this.costs = new short[backwardSize][forwardSize];
   }
   
   public void add(int forwardId, int backwardId, int cost) {
@@ -53,9 +56,11 @@ public final class ConnectionCostsWriter
       os = new BufferedOutputStream(os);
       final DataOutput out = new OutputStreamDataOutput(os);
       CodecUtil.writeHeader(out, ConnectionCosts.HEADER, ConnectionCosts.VERSION);
-      out.writeVInt(costs.length);
+      out.writeVInt(forwardSize);
+      out.writeVInt(backwardSize);
+      assert costs.length == backwardSize;
       for (short[] a : costs) {
-        out.writeVInt(a.length);
+        assert a.length == forwardSize;
         for (int i = 0; i < a.length; i++) {
           out.writeShort(a[i]);
         }