Thanks for all the suggestions.

Blending a bunch of suggestions, I'm thinking of @RenderedAsDayBefore.
* we already have @DescribedAs
* we already have the verb "render" (in @Rendered(EAGERLY) etc), so prefer
it to @Show...

Per Oscar's thoughts on an @Interval... notation, I think I'd rather go the
whole hog and just support the Joda Interval class.  Interesting idea about
generalizing to an interval between two integers (or I suppose between any
two Comparables), but it's a much less common use case, I think, so will
park that idea for the moment.

Cheers
Dan




On 17 May 2013 07:03, GESCONSULTOR - Óscar Bou <[email protected]>wrote:

> Perhaps better @IntervalBegin and @IntervalEnd instead.
>
>
> El 17/05/2013, a las 07:44, GESCONSULTOR <[email protected]>
> escribió:
>
> > Perhaps is more difficult to implement or implies a solution not
> properly thought, but what about the annotation representing an Interval?
> It could represent numeric intervals or date intervals.
> >
> > For example,
> >
> > @Interval(name="Bedrooms", inclusive=true)
> > private Integer minBedrooms;
> >
> > @Interval(name="Bedrooms", inclusive=true)
> > Private Integer maxBedrooms;
> >
> > @Interval(name="Renting Period", inclusive=true)
> > private Date rentingFromDate;
> >
> > @Interval(name="Renting Period", inclusive=false)
> > private Date rentingToDate;
> >
> >
> > The viewer could render them together as:
> >
> > Bedrooms: 1 - 5
> >
> > Renting Period: 1-Aug-2013 - 1-sep-2013 (Not inclusive)
> >
> >
> >
> > Enviado desde mi iPhone
> >
> > El 17/05/2013, a las 02:41, Freddijanto <[email protected]>
> escribió:
> >
> >> @DateRenderedAsInclusive ?
> >>
> >>
> >> On 17/05/2013 04:46, Dan Haywood wrote:
> >>> The Estatio app that Jeroen and I are developing has quite a number of
> date
> >>> ranges.
> >>>
> >>> Internally we want to store these as a pair of dates, with inclusive
> start,
> >>> exclusive end.  For example [1-apr-2013, 1-jul-2013) represents all of
> Q2.
> >>>
> >>> However, on the UI our users want the end date to be the inclusive.  In
> >>> other words, [1-apr-2013, 30-jun-2013].
> >>>
> >>> Probably the best solution to this is to have proper support for Joda's
> >>> Interval class.  But that's quite a lot of work that we don't want to
> get
> >>> into for now.  (Especially because we have open-ended intervals, ie
> where
> >>> null end date implies infinity).
> >>>
> >>> Rather than polluting our domain code with lots of +1day/-1day
> nonsense, a
> >>> simpler solution we came up with was a new annotation that could be
> applied
> >>> to the end date, so that it is stored exclusive (1-jul-2013) but is
> >>> rendered 1 day before (30-jun-2013).  Neat, huh?
> >>>
> >>> Question is: what to call this annotation.  Right now I have chosen
> >>> "@RenderedAdjusted":
> >>>
> >>> public LocalDate getStartDate() { ... }
> >>>
> >>> @RenderedAdjusted
> >>> public LocalDate getEndDate() { ... }
> >>>
> >>> But I don't like it as a name; too clunky.
> >>>
> >>> Other names I've though of are:
> >>> * @Adjusted   (a bit misleading)
> >>> * @EndDate   (a bit literal?)
> >>> * @ExclusiveDate  (a bit obscure)
> >>> * @ExclusiveDateRenderedAsInclusive   (too long)
> >>>
> >>> If anyone has a better name, please shout!
> >>>
> >>> Thx
> >>> Dan
> >>
>
>

Reply via email to