OffsetDateTimeField.java 3.38 KB
package org.joda.time.field;

import org.joda.time.DateTimeField;
import org.joda.time.DateTimeFieldType;
import org.joda.time.DurationField;

public class OffsetDateTimeField
  extends DecoratedDateTimeField
{
  private final int a;
  private final int b;
  private final int c;
  
  public OffsetDateTimeField(DateTimeField paramDateTimeField, int paramInt) {}
  
  public OffsetDateTimeField(DateTimeField paramDateTimeField, DateTimeFieldType paramDateTimeFieldType, int paramInt)
  {
    this(paramDateTimeField, paramDateTimeFieldType, paramInt, Integer.MIN_VALUE, Integer.MAX_VALUE);
  }
  
  public OffsetDateTimeField(DateTimeField paramDateTimeField, DateTimeFieldType paramDateTimeFieldType, int paramInt1, int paramInt2, int paramInt3)
  {
    super(paramDateTimeField, paramDateTimeFieldType);
    if (paramInt1 == 0) {
      throw new IllegalArgumentException("The offset cannot be zero");
    }
    this.a = paramInt1;
    if (paramInt2 < paramDateTimeField.getMinimumValue() + paramInt1) {}
    for (this.b = (paramDateTimeField.getMinimumValue() + paramInt1); paramInt3 > paramDateTimeField.getMaximumValue() + paramInt1; this.b = paramInt2)
    {
      this.c = (paramDateTimeField.getMaximumValue() + paramInt1);
      return;
    }
    this.c = paramInt3;
  }
  
  public long add(long paramLong, int paramInt)
  {
    paramLong = super.add(paramLong, paramInt);
    FieldUtils.verifyValueBounds(this, get(paramLong), this.b, this.c);
    return paramLong;
  }
  
  public long add(long paramLong1, long paramLong2)
  {
    paramLong1 = super.add(paramLong1, paramLong2);
    FieldUtils.verifyValueBounds(this, get(paramLong1), this.b, this.c);
    return paramLong1;
  }
  
  public long addWrapField(long paramLong, int paramInt)
  {
    return set(paramLong, FieldUtils.getWrappedValue(get(paramLong), paramInt, this.b, this.c));
  }
  
  public int get(long paramLong)
  {
    return super.get(paramLong) + this.a;
  }
  
  public int getLeapAmount(long paramLong)
  {
    return getWrappedField().getLeapAmount(paramLong);
  }
  
  public DurationField getLeapDurationField()
  {
    return getWrappedField().getLeapDurationField();
  }
  
  public int getMaximumValue()
  {
    return this.c;
  }
  
  public int getMinimumValue()
  {
    return this.b;
  }
  
  public int getOffset()
  {
    return this.a;
  }
  
  public boolean isLeap(long paramLong)
  {
    return getWrappedField().isLeap(paramLong);
  }
  
  public long remainder(long paramLong)
  {
    return getWrappedField().remainder(paramLong);
  }
  
  public long roundCeiling(long paramLong)
  {
    return getWrappedField().roundCeiling(paramLong);
  }
  
  public long roundFloor(long paramLong)
  {
    return getWrappedField().roundFloor(paramLong);
  }
  
  public long roundHalfCeiling(long paramLong)
  {
    return getWrappedField().roundHalfCeiling(paramLong);
  }
  
  public long roundHalfEven(long paramLong)
  {
    return getWrappedField().roundHalfEven(paramLong);
  }
  
  public long roundHalfFloor(long paramLong)
  {
    return getWrappedField().roundHalfFloor(paramLong);
  }
  
  public long set(long paramLong, int paramInt)
  {
    FieldUtils.verifyValueBounds(this, paramInt, this.b, this.c);
    return super.set(paramLong, paramInt - this.a);
  }
}


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