new AbsTime()
Represents a baja:AbsTime in BajaScript.
AbsTime encapsulates an absolute point in time relative to a given
time zone.
When creating a Simple, always use the make method instead of
creating a new Object.
Extends
Members
-
<static> DEFAULT :baja.AbsTime
-
Default AbsTime instance - maps to Java Epoch.
Type:
Methods
-
<static> make( [obj])
-
Make an
AbsTime.Parameters:
Name Type Argument Description objObject <optional>
the Object literal used for the method's arguments.
Properties
Name Type Argument Description datebaja.Date <optional>
timebaja.Time <optional>
offsetNumber | baja.Simple <optional>
UTC offset in milliseconds (any
baja:Number). This should be negative for negative time zones, e.g.
-04:00corresponds toMILLIS_IN_HOUR * -4. Additionally, if timeZone is
set, this provided offset will be ignored.jsDateDate <optional>
if defined, this date is used for the date and
time. The offset will be read directly from the JS date - theoffset
argument, if provided, will be ignored.timeZonebaja.TimeZone <optional>
the timezone to base this date's
offset upon. If obj.jsDate is set, this timezone will be ignored and the
jsDate's offset will be used instead.Returns:
- Type
- baja.AbsTime
Example
// An Object literal is used for the method's arguments... var at1 = baja.AbsTime.make({ date: baja.Date.make({year: 1981, month: 5, day: 17}), time: baja.Time.make({hour: 15, min: 30}), offset: 0 }); // ...or from a JavaScript Date: var date = new Date(); var at2 = baja.AbsTime.make({ jsDate: date }); // the offset will be converted from JS Date style to BAbsTime style. baja.outln(at2.getOffset() === date.getTimezoneOffset() * -60000); baja.outln(at2.getMillis() === date.getTime()); -
<static> now()
-
Make an AbsTime with the current date and time.
Returns:
- Type
- baja.AbsTime
-
decodeAsync(str [, batch])
-
The string encoding of certain Simples may include Type information, or
other data that may be require asynchronous operations to decode. BOX is
designed to handle these situations when decoding data from the station,
but when user code needs to decode string-encoded Simples directly, prefer
this method as it gives the individual Simple a chance to import Types,
etc. to ensure that the decoded Simple is fully correct.The default implementation just returns
decodeFromStringdirectly.Parameters:
Name Type Argument Description strstring batchbaja.comm.Batch <optional>
optional batch to use
- Inherited From:
Returns:
may return the Simple instance
directly, or a Promise resolving to same - so wrap inPromise.resolve()
if unsure.- Type
- baja.Simple | Promise.<baja.Simple>
-
decodeFromString(str)
-
Decode an
AbsTimefrom a String.Parameters:
Name Type Description strString - Overrides:
Returns:
- Type
- baja.AbsTime
-
encodeToString()
-
Encode the AbsTime to a String.
- Overrides:
Returns:
- Type
- String
-
equals(obj)
-
Equality test.
Parameters:
Name Type Description obj- Overrides:
Returns:
- Type
- Boolean
-
equivalent(obj)
-
Equivalence test.
equivalent()is used to compare if two Objects have equivalent
state, but might not want to return true for equals since it
it has implied semantics for many operations. The default
implementation returns the result of baja.Object#equals.Parameters:
Name Type Description obj- Inherited From:
Returns:
- Type
- Boolean
-
getAgents( [is] [, batch])
-
Returns a promise that resolves to the agent list for this Object.
Parameters:
Name Type Argument Description isArray.<String> <optional>
An optional array of filters to add to the
agent query.batchbaja.comm.Batch <optional>
An optional object used to batch network
calls together.- Inherited From:
- See:
Returns:
A promise that will resolve with the Agent Info.
- Type
- Promise
-
getDataTypeSymbol()
-
Return the data type symbol.
Returns:
- Type
- String
-
getDate()
-
Return the date.
Returns:
- Type
- baja.Date
-
getDay()
-
Return the day (1-31).
Returns:
- Type
- Number
-
getHour()
-
Return the hour (0-23)
Returns:
- Type
- Number
-
getIcon()
-
Return the Object's Icon.
- Inherited From:
Returns:
- Type
- baja.Icon
-
getJsDate()
-
Return a new JavaScript Date based on this AbsTime. The Date will represent
the same instant as this AbsTime (as returned bygetMillis()) but will
use the browser's local time zone.Returns:
- Type
- Date
-
getMillis()
-
Get the number of milliseconds past the epoch represented by this AbsTime.
Returns:
- Type
- Number
-
getMillisecond()
-
Returns milliseconds from the time (0-999)
Returns:
- Type
- Number
-
getMinute()
-
Return minutes (0-59).
Returns:
- Type
- Number
-
getMonth()
-
Return the month.
When invoking this method, please ensure the
baja:MonthType has been
imported.- See:
Returns:
a
baja:MonthFrozenEnum- Type
- baja.FrozenEnum
-
getOffset()
-
Return the UTC offset.
Returns:
- Type
- Number
-
getSecond()
-
Return seconds (0-59).
Returns:
- Type
- Number
-
getTime()
-
Return the time.
Returns:
- Type
- baja.Time
-
getType()
-
Get the type of this instance.
- Inherited From:
Returns:
- Type
- Type
-
getTypeDisplayName( [cx])
-
Gets the friendly type display name for this object.
Parameters:
Name Type Argument Description cxObject <optional>
a context to be passed down to Type
- Since:
-
- Niagara 4.10
- Inherited From:
- See:
-
- baja.Type#getDisplayName
Returns:
If no context is provided, the type
display name is returned synchronously as a string. If context provided,
the type display name is resolved via a promise as a string.- Type
- Promise.<string> | string
-
getWeekday()
-
Returns the day of the week.
- See:
Returns:
a
baja:WeekdayFrozenEnum.- Type
- baja.FrozenEnum
-
getYear()
-
Return the year.
Returns:
- Type
- Number
-
make( [obj])
-
Make an AbsTime.
Parameters:
Name Type Argument Description objObject <optional>
the Object Literal used for the method's arguments.
Properties
Name Type Argument Description datebaja.Date <optional>
timebaja.Time <optional>
offsetNumber | baja.Simple <optional>
(any
baja:Number)jsDateDate <optional>
if defined, this date is used for the date and time.
- Overrides:
Returns:
baja.AbsTime
Example
// An Object Literal is used for the method's arguments... var at1 = baja.$("baja:AbsTime").make({ date: baja.$("baja:Date").make({year: 1981, month: 5, day: 17}), time: baja.$("baja:Time").make({hour: 15, min: 30}), offset: 0 }); // ...or from a JavaScript Date... var at2 = baja.$("baja:AbsTime").make({jsDate: new Date()}); -
newCopy( [exact])
-
Every value may be cloned using the
newCopymethod.Please note that
Simples are immutable so they don't
allocate a new instance.Parameters:
Name Type Argument Description exactBoolean <optional>
true if an exact copy of the value should be
made (only valid in the Component architecture).- Inherited From:
- See:
Returns:
a copy of the value (or the same instance if the value is a
Simple). -
toDateString(obj)
-
Gets the date string for this baja.AbsTime
Parameters:
Name Type Description objObject the Object Literal for the method's arguments.
Returns:
- Type
- Promise.<String>
-
toDateTimeString( [obj])
-
Asynchronously get a
Stringrepresentation of theAbsTime.This method is invoked asynchronously. A
Functioncallback or anObject
literal that contains aFunctioncallback must be supplied.Parameters:
Name Type Argument Description objObject <optional>
the Object Literal for the method's arguments.
Properties
Name Type Argument Description okfunction <optional>
(Deprecated: use Promise) the Function callback
that will be invoked once the time has been formatted.failfunction <optional>
(Deprecated: use Promise) the Function callback
that will be invoked if a fatal error occurs whilst formatting the string.textPatternString <optional>
the text pattern to use for formatting.
If not specified, then the user's default
time format text pattern will be used.TimeZonebaja.TimeZone <optional>
timezone to use for formatting.
If not specified, then the system default
timezone will try to be determined,
otherwise UTC be used. (As of Niagara
4.9, the name "TimeZone" is supported to
matchBFacets.TIME_ZONE. The old key
"timezone" is still supported.)showNumber <optional>
flags used to format the time. For more
information, please see baja.TimeFormat.Returns:
promise to be resolved with the formatted string
- Type
- Promise.<String>
Example
absTime.toDateTimeString().then(function (dateTimeStr) { baja.outln("The date time is: " + dateTimeStr); }); -
toDateTimeStringSync(obj)
-
Synchronously get a
Stringrepresentation of theAbsTime.This method is invoked synchronously. The string result will be returned
directly from this function.Notes on lexicons:
- A lexicon will be used if it is passed in.
- If no lexicon is passed in, the baja lexicon will be used if it has been
cached locally. - If the baja lexicon has not been cached, strings units will be
represented by their internal tag names (which are in English).
Parameters:
Name Type Description objObject the Object Literal for the method's arguments.
Properties
Name Type Argument Description textPatternString <optional>
the text pattern to use for formatting.
If not specified, then the user's default
time format text pattern will be used.showNumber <optional>
flags used to format the time. For more
information, please see baja.TimeFormat.lex<optional>
the
bajalexiconReturns:
- Type
- String
-
toString()
-
- Overrides:
- See:
-
- .toDateTimeString if obj is defined
- .toDateTimeStringSync if obj is undefined
Returns:
a String if a falsy parameter object is passed, otherwise a Promise.
-
toTimeString(obj)
-
Gets the time string for this baja.AbsTime
Parameters:
Name Type Description objObject the Object Literal for the method's arguments.
Returns:
- Type
- Promise.<String>
-
valueOf()
-
- Overrides:
Returns:
result of getMillis
- Type
- Number