BasePartial.java 3.81 KB
package org.joda.time.base;

import java.io.Serializable;
import java.util.Locale;
import org.joda.time.Chronology;
import org.joda.time.DateTimeField;
import org.joda.time.DateTimeUtils;
import org.joda.time.ReadablePartial;
import org.joda.time.convert.ConverterManager;
import org.joda.time.convert.PartialConverter;
import org.joda.time.format.DateTimeFormat;
import org.joda.time.format.DateTimeFormatter;

public abstract class BasePartial
  extends AbstractPartial
  implements Serializable, ReadablePartial
{
  private static final long serialVersionUID = 2353678632973660L;
  private final Chronology a;
  private final int[] b;
  
  protected BasePartial()
  {
    this(DateTimeUtils.currentTimeMillis(), null);
  }
  
  protected BasePartial(long paramLong)
  {
    this(paramLong, null);
  }
  
  protected BasePartial(long paramLong, Chronology paramChronology)
  {
    paramChronology = DateTimeUtils.getChronology(paramChronology);
    this.a = paramChronology.withUTC();
    this.b = paramChronology.get(this, paramLong);
  }
  
  protected BasePartial(Object paramObject, Chronology paramChronology)
  {
    PartialConverter localPartialConverter = ConverterManager.getInstance().getPartialConverter(paramObject);
    paramChronology = DateTimeUtils.getChronology(localPartialConverter.getChronology(paramObject, paramChronology));
    this.a = paramChronology.withUTC();
    this.b = localPartialConverter.getPartialValues(this, paramObject, paramChronology);
  }
  
  protected BasePartial(Object paramObject, Chronology paramChronology, DateTimeFormatter paramDateTimeFormatter)
  {
    PartialConverter localPartialConverter = ConverterManager.getInstance().getPartialConverter(paramObject);
    paramChronology = DateTimeUtils.getChronology(localPartialConverter.getChronology(paramObject, paramChronology));
    this.a = paramChronology.withUTC();
    this.b = localPartialConverter.getPartialValues(this, paramObject, paramChronology, paramDateTimeFormatter);
  }
  
  protected BasePartial(Chronology paramChronology)
  {
    this(DateTimeUtils.currentTimeMillis(), paramChronology);
  }
  
  protected BasePartial(BasePartial paramBasePartial, Chronology paramChronology)
  {
    this.a = paramChronology.withUTC();
    this.b = paramBasePartial.b;
  }
  
  protected BasePartial(BasePartial paramBasePartial, int[] paramArrayOfInt)
  {
    this.a = paramBasePartial.a;
    this.b = paramArrayOfInt;
  }
  
  protected BasePartial(int[] paramArrayOfInt, Chronology paramChronology)
  {
    paramChronology = DateTimeUtils.getChronology(paramChronology);
    this.a = paramChronology.withUTC();
    paramChronology.validate(this, paramArrayOfInt);
    this.b = paramArrayOfInt;
  }
  
  public Chronology getChronology()
  {
    return this.a;
  }
  
  public int getValue(int paramInt)
  {
    return this.b[paramInt];
  }
  
  public int[] getValues()
  {
    return (int[])this.b.clone();
  }
  
  protected void setValue(int paramInt1, int paramInt2)
  {
    System.arraycopy(getField(paramInt1).set(this, paramInt1, this.b, paramInt2), 0, this.b, 0, this.b.length);
  }
  
  protected void setValues(int[] paramArrayOfInt)
  {
    getChronology().validate(this, paramArrayOfInt);
    System.arraycopy(paramArrayOfInt, 0, this.b, 0, this.b.length);
  }
  
  public String toString(String paramString)
  {
    if (paramString == null) {
      return toString();
    }
    return DateTimeFormat.forPattern(paramString).print(this);
  }
  
  public String toString(String paramString, Locale paramLocale)
    throws IllegalArgumentException
  {
    if (paramString == null) {
      return toString();
    }
    return DateTimeFormat.forPattern(paramString).withLocale(paramLocale).print(this);
  }
}


/* Location:              /home/merong/decompile/hackery-dex2jar.jar!/org/joda/time/base/BasePartial.class
 * Java compiler version: 6 (50.0)
 * JD-Core Version:       0.7.1
 */