Re: [Dhis2-devs-core] Period conversion for ADX

2015-06-10 Thread Morten Olav Hansen
What about DateUtils? We already have DateUtils.parseDate which we use a
lod, parseAdxDate?

--
Morten

On Wed, Jun 10, 2015 at 9:17 PM, Bob Jolliffe bobjolli...@gmail.com wrote:

 Hi

 I am just looking at the task of implementing adx data import and the
 first small thing to tackle is parsing period types.  You can see from
 the sample here
 (https://github.com/dhis2/adx/blob/master/IHE/samples/adx_data_sample1.xml
 )
 that the string form of a period in adx is of the form:

 2010-01-01/P1M

 which is equivalent to the month of January 2010 (or 201001 in our
 current representation).  More generally you can say this is

 start date/duration

 So the parser code should first look at the part of the string
 beginning with P and determine the period duration from that.  Some
 examples:

 P1M - monthly
 P7D - weekly
 P1Y - yearly
 P6M - six monthly
 P1Q - quarterly
 P2Y - 2 yearly
 etc

 (Though note P1Y could also indicate a financial period type.  eg
 2010-04-01/P1Y would correspond to our April Financial year)

 I don't intend to build a generic iso8601 parser which can recognize
 any permutation of allowable periods.  Just the subset which
 corresponds to what we have.   I'm trying to figure out the best place
 to put this parser - toss up between Period, PeriodType and
 PeriodService (all have related code).  Does anyone see an obvious
 preference?

 --
 Mailing list: https://launchpad.net/~dhis2-devs-core
 Post to : dhis2-devs-core@lists.launchpad.net
 Unsubscribe : https://launchpad.net/~dhis2-devs-core
 More help   : https://help.launchpad.net/ListHelp

-- 
Mailing list: https://launchpad.net/~dhis2-devs-core
Post to : dhis2-devs-core@lists.launchpad.net
Unsubscribe : https://launchpad.net/~dhis2-devs-core
More help   : https://help.launchpad.net/ListHelp


Re: [Dhis2-devs-core] Period conversion for ADX

2015-06-10 Thread Bob Jolliffe
I was looking at that but I don't think it fits really.  I don't so
much want to parse a date as to parse a period.  So I am thinking of
one of two possible methods:

1.  Period parseAdxPeriod(String periodString)

or

2.  String adxPeridToDxf(String periodString)

I'd do the first if I am going to save the datavalueset set directly;
or the second if I take the more indirect route of converting the
stream to a dxf2 stream and then just reusing the existing
StreamingDatavalueSet save method.  Haven't decided which yet :-(  But
I think the methods belong somewhere amongst the Period* classes.

On 10 June 2015 at 15:25, Morten Olav Hansen morte...@gmail.com wrote:
 What about DateUtils? We already have DateUtils.parseDate which we use a
 lod, parseAdxDate?

 --
 Morten

 On Wed, Jun 10, 2015 at 9:17 PM, Bob Jolliffe bobjolli...@gmail.com wrote:

 Hi

 I am just looking at the task of implementing adx data import and the
 first small thing to tackle is parsing period types.  You can see from
 the sample here

 (https://github.com/dhis2/adx/blob/master/IHE/samples/adx_data_sample1.xml)
 that the string form of a period in adx is of the form:

 2010-01-01/P1M

 which is equivalent to the month of January 2010 (or 201001 in our
 current representation).  More generally you can say this is

 start date/duration

 So the parser code should first look at the part of the string
 beginning with P and determine the period duration from that.  Some
 examples:

 P1M - monthly
 P7D - weekly
 P1Y - yearly
 P6M - six monthly
 P1Q - quarterly
 P2Y - 2 yearly
 etc

 (Though note P1Y could also indicate a financial period type.  eg
 2010-04-01/P1Y would correspond to our April Financial year)

 I don't intend to build a generic iso8601 parser which can recognize
 any permutation of allowable periods.  Just the subset which
 corresponds to what we have.   I'm trying to figure out the best place
 to put this parser - toss up between Period, PeriodType and
 PeriodService (all have related code).  Does anyone see an obvious
 preference?

 --
 Mailing list: https://launchpad.net/~dhis2-devs-core
 Post to : dhis2-devs-core@lists.launchpad.net
 Unsubscribe : https://launchpad.net/~dhis2-devs-core
 More help   : https://help.launchpad.net/ListHelp



-- 
Mailing list: https://launchpad.net/~dhis2-devs-core
Post to : dhis2-devs-core@lists.launchpad.net
Unsubscribe : https://launchpad.net/~dhis2-devs-core
More help   : https://help.launchpad.net/ListHelp