This adapter maps a Driver or embedded based
TemporalAmount to a valid Java temporal amount. It tries
to be as specific as possible: If the amount can be reliable mapped to a
Period, it returns
a period. If only fields are present that are no estimated time unites, than it returns a
Duration.
In cases a user has used Cypher and its
duration() function, i.e. like so
CREATE (s:SomeTime {isoPeriod: duration('P13Y370M45DT25H120M')}) RETURN s
a duration object has been created that cannot be represented by either a
Period or
Duration. The user
has to map it to a plain
TemporalAmount in this cases.
The Java Driver uses a
org.neo4j.driver.v1.types.IsoDuration, embedded uses
org.neo4j.values.storable.DurationValue for representing a temporal amount, but in the end, they can be
treated the same.
However be aware that the temporal amount returned in that case may not be equal to the other one, only represents
the same amount after normalization.