Verified Owner
Top Fields Constructors Methods
org.jabref.model.entry

public Class Date

extends Object
Class Inheritance
Imports
java.time.LocalDate, .Year, .YearMonth, java.time.format.DateTimeFormatter, .DateTimeFormatterBuilder, .DateTimeParseException, java.time.temporal.ChronoField, .TemporalAccessor, java.util.Arrays, .List, .Locale, .Objects, .Optional, org.jspecify.annotations.NonNull, org.slf4j.Logger, .LoggerFactory

Field Summary

Modifier and TypeField and Description
private final TemporalAccessor
public static final String
private final TemporalAccessor
private static final Logger
private static final DateTimeFormatter
private final Season
private static final DateTimeFormatter

Constructor Summary

AccessConstructor and Description
public
Date(int year, int month, int dayOfMonth)

public
Date(int year, int month)

public
Date(int year)

public
public
Date(TemporalAccessor
the start date
date
,
TemporalAccessor
the start date
endDate
)

Creates a Date from date and endDate.

public

Method Summary

Modifier and TypeMethod and Description
private static Optional<Integer>
public boolean
equals(Object o)

Overrides java.lang.Object.equals.

Indicates whether some other object is "equal to" this one.

public Optional<Integer>
public Optional<Integer>
public Optional<Month>
public String
public Optional<Season>
public Optional<Integer>
public int
hashCode()

Overrides java.lang.Object.hashCode.

Returns a hash code value for this object.

public static Optional<Date>
parse(@NonNull String
the string to extract the date information
dateString
)

Creates a Date from date and endDate.

public static Optional<Date>
parse(Optional<String> yearValue, Optional<String> monthValue, Optional<String> dayValue)

private static TemporalAccessor

Returns:

the date information with TemporalAccessor type
parseDateWithEraIndicator
(String
the string which contain era indicator to extract the date information
dateString
)

Create a date with a string with era indicator.

private static Optional<Date>

Returns:

the date information with TemporalAccessor type
parseDateWithSeason
(String
the string which contain season to extract the date information
dateString
)

Create a date whose month is represented as a season.

public String
toString()

Overrides java.lang.Object.toString.

Returns a string representation of the object.

public TemporalAccessor
Inherited from java.lang.Object:
clonefinalizegetClassnotifynotifyAllwaitwaitwait

Field Detail

dateback to summary
private final TemporalAccessor date
DATE_REGEXback to summary
public static final String DATE_REGEX
endDateback to summary
private final TemporalAccessor endDate
LOGGERback to summary
private static final Logger LOGGER
NORMALIZED_DATE_FORMATTERback to summary
private static final DateTimeFormatter NORMALIZED_DATE_FORMATTER
seasonback to summary
private final Season season
SIMPLE_DATE_FORMATSback to summary
private static final DateTimeFormatter SIMPLE_DATE_FORMATS

Constructor Detail

Dateback to summary
public Date(int year, int month, int dayOfMonth)
Dateback to summary
public Date(int year, int month)
Dateback to summary
public Date(int year)
Dateback to summary
public Date(TemporalAccessor date)
Dateback to summary
public Date(TemporalAccessor date, TemporalAccessor endDate)

Creates a Date from date and endDate.

Parameters
date:TemporalAccessor

the start date

endDate:TemporalAccessor

the start date

Dateback to summary
public Date(TemporalAccessor date, Season season)

Method Detail

convertToIntback to summary
private static Optional<Integer> convertToInt(String value)
equalsback to summary
public boolean equals(Object o)

Overrides java.lang.Object.equals.

Doc from java.lang.Object.equals.

Indicates whether some other object is "equal to" this one.

The equals method implements an equivalence relation on non-null object references:

  • It is reflexive: for any non-null reference value x, x.equals(x) should return true.
  • It is symmetric: for any non-null reference values x and y, x.equals(y) should return true if and only if y.equals(x) returns true.
  • It is transitive: for any non-null reference values x, y, and z, if x.equals(y) returns true and y.equals(z) returns true, then x.equals(z) should return true.
  • It is consistent: for any non-null reference values x and y, multiple invocations of x.equals(y) consistently return true or consistently return false, provided no information used in equals comparisons on the objects is modified.
  • For any non-null reference value x, x.equals(null) should return false.

An equivalence relation partitions the elements it operates on into equivalence classes; all the members of an equivalence class are equal to each other. Members of an equivalence class are substitutable for each other, at least for some purposes.

Annotations
@Override
getback to summary
public Optional<Integer> get(ChronoField field)
getDayback to summary
public Optional<Integer> getDay()
getMonthback to summary
public Optional<Month> getMonth()
getNormalizedback to summary
public String getNormalized()
getSeasonback to summary
public Optional<Season> getSeason()
getYearback to summary
public Optional<Integer> getYear()
hashCodeback to summary
public int hashCode()

Overrides java.lang.Object.hashCode.

Doc from java.lang.Object.hashCode.

Returns a hash code value for this object. This method is supported for the benefit of hash tables such as those provided by java.util.HashMap.

The general contract of hashCode is:

  • Whenever it is invoked on the same object more than once during an execution of a Java application, the hashCode method must consistently return the same integer, provided no information used in equals comparisons on the object is modified. This integer need not remain consistent from one execution of an application to another execution of the same application.
  • If two objects are equal according to the equals method, then calling the hashCode method on each of the two objects must produce the same integer result.
  • It is not required that if two objects are unequal according to the equals method, then calling the hashCode method on each of the two objects must produce distinct integer results. However, the programmer should be aware that producing distinct integer results for unequal objects may improve the performance of hash tables.
Annotations
@Override
parseback to summary
public static Optional<Date> parse(@NonNull String dateString)

Creates a Date from date and endDate.

Parameters
dateString:@NonNull String

the string to extract the date information

Exceptions
DateTimeParseException:
if dataString is mal-formatted
parseback to summary
public static Optional<Date> parse(Optional<String> yearValue, Optional<String> monthValue, Optional<String> dayValue)
parseDateWithEraIndicatorback to summary
private static TemporalAccessor parseDateWithEraIndicator(String dateString)

Create a date with a string with era indicator.

Parameters
dateString:String

the string which contain era indicator to extract the date information

Returns:TemporalAccessor

the date information with TemporalAccessor type

parseDateWithSeasonback to summary
private static Optional<Date> parseDateWithSeason(String dateString)

Create a date whose month is represented as a season.

Parameters
dateString:String

the string which contain season to extract the date information

Returns:Optional<Date>

the date information with TemporalAccessor type

toStringback to summary
public String toString()

Overrides java.lang.Object.toString.

Doc from java.lang.Object.toString.

Returns a string representation of the object. Satisfying this method's contract implies a non-null result must be returned.

Annotations
@Override
toTemporalAccessorback to summary
public TemporalAccessor toTemporalAccessor()