abk.util
Class ADate

java.lang.Object
  extended by abk.util.ADate
All Implemented Interfaces:
AJsonSerializable, Serializable, Cloneable

public class ADate
extends Object
implements Cloneable, AJsonSerializable

Representa de forma compacta una fecha dada como día, mes y año.

No pretende representar un calendario coherente, sino simplemente una representación compacta del concepto día, mes y año, signifique lo que signifique.

Tampoco se realiza ningún mapeado de los valores teóricamente incorrectos o fuera de rango conforme el calendario del entorno. Simplemente se almacenan y se recuperan desde el entero que mapea los valores.

See Also:
Serialized Form

Field Summary
private  int iValue
          Valor numérico que almacena la fecha en campos de bits.
private static long serialVersionUID
           
 
Constructor Summary
ADate()
          Constructor que crea un objeto con valor puesto a cero.
 
Method Summary
 ADate clone()
          Clona el objeto.
 boolean equals(Object obj)
          Evalua si un objeto es igual al objeto instanciado.
 Calendar getCalendar(TimeZone tz)
          Recupera el valor de la fecha como un objeto de tipo Calendar.
 Date getDate(TimeZone tz)
          Devuelve el valor como una instancia de Date.
 int getDayOfMonth()
          Devuelve el día del año, desde 1 hasta 32.
 int getFullYear()
          Devuelve el año de la fecha.
 long getMillis(TimeZone tz)
          Convierte el contenido a tiempo en milisegundos desde el 1 de enero de 1970.
 int getMonth()
          Devuelve el campo del mes del año.
 int getValue()
          Devuelve el valor del objeto tal y como está almacenado en el objeto.
 int hashCode()
          Devuelve el valor entero como hash code de la fecha.
 ADate init(Calendar cal)
          Inicializador que define el valor compacto a partir de un objeto Calendar.
 ADate init(Date date, TimeZone tz)
          Establece el valor del objeto a partir de un Date.
 ADate init(int value)
          Inicializa el valor del objeto con el parámetro pasado.
 ADate init(int year, int month, int day)
          Inicializador que define el valor compacto a partir del valor deseado de sus campos de bits.
 ADate init(long milis, TimeZone tz)
          Inicializa el valor a partir de los milisegundos desde el 1 de enero de 1970.
 AJsonString jsonify()
          Implementa la conversión de la fecha a una cadena de texto, en formato YYYY-MM-DD, para serializa a JSON.
 ADate now(TimeZone tz)
          Establece el valor del objeto conforme la fecha actual.
 ADate reset()
          Establece el valor del objeto a cero.
 void setDayOfMonth(int date)
          Establece el valor del día del mes.
 void setFullYear(int year)
          Establece el año de la fecha.
 void setMonth(int month)
          Establece el campo de mes del año.
 void setValue(int value)
          Establece el valor del objeto directamente.
 String toString()
          Devuelve una representación de la fecha como String usando la notacion ISO 8601 abreviada.
static ADate valueOf(String date)
          Parsea una cadena en formato yyyy-mm-dd que viene en formato fijo, con cuatro, dos y dos dígitos para el año, mes y día respectivamente.
 
Methods inherited from class java.lang.Object
finalize, getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

serialVersionUID

private static final long serialVersionUID
See Also:
Constant Field Values

iValue

private int iValue
Valor numérico que almacena la fecha en campos de bits.
Día del mes.
[00-04]:5 bits bajos del valor, desde 0 hasta 31.
Mes del año.
[05-08]:4 bits siguientes, desde 0 hasta 15.
Año.
[09-XX]: resto de bits, número entero con el año. En enteros con 32 bits permite años del orden de 4M de años por encima y por debajo de cero. En enteros de 64 bits la magnitud del año será de 16.384T

Constructor Detail

ADate

public ADate()
Constructor que crea un objeto con valor puesto a cero.

Method Detail

getValue

public int getValue()
Devuelve el valor del objeto tal y como está almacenado en el objeto.

Returns:
Valor del objeto, tal y como se define en #iValue.

setValue

public void setValue(int value)
Establece el valor del objeto directamente.

Parameters:
value - Valor del objeto, tal y como se define en #iValue.

init

public ADate init(int value)
Inicializa el valor del objeto con el parámetro pasado.

Parameters:
value - Valor a poner en el objeto.
Returns:
La propia instancia invocante.

reset

public ADate reset()
Establece el valor del objeto a cero.

Returns:
Devuelve el objeto instanciado.

init

public ADate init(int year,
                  int month,
                  int day)
Inicializador que define el valor compacto a partir del valor deseado de sus campos de bits.

Parameters:
year - Año.
month - Mes del año, desde 1 hasta 16. En el calendario gregoriano solamente se usará del 1 al 12.
day - Día del mes, desde 1 hasta 32. En el calendario gregoriano solamente se usará del 1 al 31.
Returns:
El propio objeto instanciado.

valueOf

public static ADate valueOf(String date)
Parsea una cadena en formato yyyy-mm-dd que viene en formato fijo, con cuatro, dos y dos dígitos para el año, mes y día respectivamente.

Parameters:
date - Cadena de texto con el valor de la fecha a parsear.
Returns:
Devuelve la fecha resultado de parsear el texto, o null si date es null.
Throws:
NumberFormatException - if the String does not contain a parsable int.

init

public ADate init(Calendar cal)
Inicializador que define el valor compacto a partir de un objeto Calendar.

Parameters:
cal - Objeto que representa la fecha a compactar.
Returns:
El propio objeto instanciado.

getCalendar

public Calendar getCalendar(TimeZone tz)
Recupera el valor de la fecha como un objeto de tipo Calendar.

Parameters:
tz - Zona horaria para obtener el calendario indicado.
Returns:
Valor del objeto dado como un calendario.

now

public ADate now(TimeZone tz)
Establece el valor del objeto conforme la fecha actual.

Parameters:
tz - Zona horaria sobre la que proyectar la fecha.
Returns:
Objeto instanciado.

getDate

public Date getDate(TimeZone tz)
Devuelve el valor como una instancia de Date.

Parameters:
tz - Zona horaria sobre la que proyectar la fecha.
Returns:
Instancia Data correspondiente a esta instancia.

init

public ADate init(Date date,
                  TimeZone tz)
Establece el valor del objeto a partir de un Date.

Parameters:
date - Fecha a copiar.
tz - Zona horaria de la fecha.
Returns:
El propio objeto instanciado.

getMillis

public long getMillis(TimeZone tz)
Convierte el contenido a tiempo en milisegundos desde el 1 de enero de 1970.

Parameters:
tz - Zona horaria para la conversión.
Returns:
Milisegundos.

init

public ADate init(long milis,
                  TimeZone tz)
Inicializa el valor a partir de los milisegundos desde el 1 de enero de 1970.

Parameters:
milis - Valor en milisegundos.
tz - Zona horaria para la que se recupera la fecha.
Returns:
El propio objeto instanciado.

getDayOfMonth

public int getDayOfMonth()
Devuelve el día del año, desde 1 hasta 32.

Returns:
Día del mes.

setDayOfMonth

public void setDayOfMonth(int date)
Establece el valor del día del mes.

Parameters:
date - Valor del día del mes, desde 1 hasta 32

getMonth

public int getMonth()
Devuelve el campo del mes del año.

Returns:
Valor del mes del año, desde 1 hasta 16.

setMonth

public void setMonth(int month)
Establece el campo de mes del año.

Parameters:
month - Mes del año, dentro del rango 1 a 16.

getFullYear

public int getFullYear()
Devuelve el año de la fecha.

Returns:
Valor correspondiente a los bits 9 en adelante.

setFullYear

public void setFullYear(int year)
Establece el año de la fecha.

Parameters:
year - Año a fijar.

hashCode

public int hashCode()
Devuelve el valor entero como hash code de la fecha.

Overrides:
hashCode in class Object
See Also:
Object.hashCode()

equals

public boolean equals(Object obj)
Evalua si un objeto es igual al objeto instanciado.

Overrides:
equals in class Object
See Also:
Object.equals(java.lang.Object)

clone

public ADate clone()
Clona el objeto.

Overrides:
clone in class Object

toString

public String toString()
Devuelve una representación de la fecha como String usando la notacion ISO 8601 abreviada.

Overrides:
toString in class Object
Returns:
Cadena de texto, en formato YYYY-MM-DD.

jsonify

public AJsonString jsonify()
Implementa la conversión de la fecha a una cadena de texto, en formato YYYY-MM-DD, para serializa a JSON.

Specified by:
jsonify in interface AJsonSerializable
Returns:
representación como AJsonElement del objeto.


Copyright © 2024. All rights reserved.