LookupTranslator.java 2.19 KB
package org.apache.commons.lang3.text.translate;

import java.io.IOException;
import java.io.Writer;
import java.util.HashMap;
import java.util.HashSet;

public class LookupTranslator
  extends CharSequenceTranslator
{
  private final HashMap<String, String> b = new HashMap();
  private final HashSet<Character> c = new HashSet();
  private final int d;
  private final int e;
  
  public LookupTranslator(CharSequence[]... paramVarArgs)
  {
    int j = Integer.MAX_VALUE;
    int i;
    if (paramVarArgs != null)
    {
      int i1 = paramVarArgs.length;
      int k = 0;
      i = 0;
      int m;
      for (j = Integer.MAX_VALUE; k < i1; j = m)
      {
        CharSequence[] arrayOfCharSequence = paramVarArgs[k];
        this.b.put(arrayOfCharSequence[0].toString(), arrayOfCharSequence[1].toString());
        this.c.add(Character.valueOf(arrayOfCharSequence[0].charAt(0)));
        int n = arrayOfCharSequence[0].length();
        m = j;
        if (n < j) {
          m = n;
        }
        if (n <= i) {
          break label161;
        }
        i = n;
        k += 1;
      }
    }
    for (;;)
    {
      this.d = j;
      this.e = i;
      return;
      label161:
      break;
      i = 0;
    }
  }
  
  public int translate(CharSequence paramCharSequence, int paramInt, Writer paramWriter)
    throws IOException
  {
    int i;
    if (this.c.contains(Character.valueOf(paramCharSequence.charAt(paramInt))))
    {
      i = this.e;
      if (this.e + paramInt <= paramCharSequence.length()) {
        break label117;
      }
      i = paramCharSequence.length() - paramInt;
    }
    label117:
    for (;;)
    {
      if (i >= this.d)
      {
        Object localObject = paramCharSequence.subSequence(paramInt, paramInt + i);
        localObject = (String)this.b.get(((CharSequence)localObject).toString());
        if (localObject != null)
        {
          paramWriter.write((String)localObject);
          return i;
        }
        i -= 1;
      }
      else
      {
        return 0;
      }
    }
  }
}


/* Location:              /home/merong/decompile/hackery-dex2jar.jar!/org/apache/commons/lang3/text/translate/LookupTranslator.class
 * Java compiler version: 6 (50.0)
 * JD-Core Version:       0.7.1
 */