Return-Path: X-Original-To: archive-asf-public-internal@cust-asf2.ponee.io Delivered-To: archive-asf-public-internal@cust-asf2.ponee.io Received: from cust-asf.ponee.io (cust-asf.ponee.io [163.172.22.183]) by cust-asf2.ponee.io (Postfix) with ESMTP id 717CF200AC0 for ; Tue, 10 May 2016 01:29:49 +0200 (CEST) Received: by cust-asf.ponee.io (Postfix) id 6FED6160A0F; Mon, 9 May 2016 23:29:49 +0000 (UTC) Delivered-To: archive-asf-public@cust-asf.ponee.io Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by cust-asf.ponee.io (Postfix) with SMTP id 971EE1609A8 for ; Tue, 10 May 2016 01:29:44 +0200 (CEST) Received: (qmail 641 invoked by uid 500); 9 May 2016 23:29:39 -0000 Mailing-List: contact users-help@groovy.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: users@groovy.apache.org Delivered-To: mailing list users@groovy.apache.org Received: (qmail 631 invoked by uid 99); 9 May 2016 23:29:39 -0000 Received: from pnap-us-west-generic-nat.apache.org (HELO spamd4-us-west.apache.org) (209.188.14.142) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 09 May 2016 23:29:39 +0000 Received: from localhost (localhost [127.0.0.1]) by spamd4-us-west.apache.org (ASF Mail Server at spamd4-us-west.apache.org) with ESMTP id B4E8FC00E7 for ; Mon, 9 May 2016 23:29:38 +0000 (UTC) X-Virus-Scanned: Debian amavisd-new at spamd4-us-west.apache.org X-Spam-Flag: NO X-Spam-Score: 1.179 X-Spam-Level: * X-Spam-Status: No, score=1.179 tagged_above=-999 required=6.31 tests=[DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_MESSAGE=2, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H3=-0.01, RCVD_IN_MSPIKE_WL=-0.01, SPF_PASS=-0.001] autolearn=disabled Authentication-Results: spamd4-us-west.apache.org (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.com Received: from mx1-lw-us.apache.org ([10.40.0.8]) by localhost (spamd4-us-west.apache.org [10.40.0.11]) (amavisd-new, port 10024) with ESMTP id gMj7TJtVihM2 for ; Mon, 9 May 2016 23:29:36 +0000 (UTC) Received: from mail-ig0-f181.google.com (mail-ig0-f181.google.com [209.85.213.181]) by mx1-lw-us.apache.org (ASF Mail Server at mx1-lw-us.apache.org) with ESMTPS id 706915F299 for ; Mon, 9 May 2016 23:29:36 +0000 (UTC) Received: by mail-ig0-f181.google.com with SMTP id m9so104997973ige.1 for ; Mon, 09 May 2016 16:29:36 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:from:date:message-id:subject:to; bh=DOYv6J967PkCYYMx9hCMU1OTcypU0wEYiKBo/y9mHQg=; b=hSrXxYu+U7JTUTO2GVzbeEW8RheAPY4+Dk2rIOz3Hv21dPKb46+IxBWuYvbjX8izZa k/xne3tg9WibZhyhxq/1ArAAO/0wy69myfuWiP7gxwRyCq86j0UdkjPgpTe/iPIco7iL vyCrl+zGKJUw8PvlPScaBhTvvoys2XEuJYkLNiBREzKOt7pf9BK/QAsQbi9GFbaj9SB+ ty6tlzmRTpAAqGyI1L+gN4R+H8ovGJUAAeRquopKwHChUgGAZWTOXRJlVLrzwO1k4S8A JLIKCIlQdGnz/DmJ1LPNvL5m5Ez/Mea1RLngQWt7WmOZddN3TC4PBAnZYPQDYmlC9P65 vErw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to; bh=DOYv6J967PkCYYMx9hCMU1OTcypU0wEYiKBo/y9mHQg=; b=SChblZI4v1J691P4E8hnYFyej8ql7pq/dNkS+a9q30RHB4wyENY2TVFTePv9CP8cs4 6QKYAhfPWsrlsYNSiBiJIUD0XcPj7V75a9wwnBY2a+taDrd3mXoqiLRVCDOqOYIB92Jw DuzoubexRYHgEBB/DVMVgnwjT8tf5lrJh8JrIrffyj3MKO60QetQ2X3ph7K7TSe1tIn/ ikNStSRm/Cb5Reft+fgNwqePoPTO/scLM5Gj/sR2iwuXti42y60wTG0pJmVsfdATy58p VpXQam7eDE5OjAXYsTr/s7gssSkZEhssJbEmX1AgZW8HMMnfZ+Bj3drIWUrOyHFDdf+O CDEQ== X-Gm-Message-State: AOPr4FX3K48+11BT/JSkHLKOsqSTBssIJKIfvyxgnqLHJBbZVpAfhT/YwCSjdxJRjeWygTi+4wm9CXglEowvRA== X-Received: by 10.50.17.197 with SMTP id q5mr13709492igd.57.1462836575790; Mon, 09 May 2016 16:29:35 -0700 (PDT) MIME-Version: 1.0 Received: by 10.107.136.200 with HTTP; Mon, 9 May 2016 16:29:16 -0700 (PDT) In-Reply-To: References: From: Gerald Wiltse Date: Mon, 9 May 2016 19:29:16 -0400 Message-ID: Subject: Re: Requesting Advice for Groovy Approach for Unique Date Conversions To: users@groovy.apache.org Content-Type: multipart/alternative; boundary=14dae9340b0f76ef430532712ebd archived-at: Mon, 09 May 2016 23:29:49 -0000 --14dae9340b0f76ef430532712ebd Content-Type: text/plain; charset=UTF-8 Also, something else just occurred to me which might be relevant. Another option might be to create a JDE Calendar or JDE Date class which extends or implements date or calendar classes/interfaces. My first instinct was to convert dates into Date Objects and strings based on Gregorian calendar on their way in and out of the database (because that's what I'm somewhat familiar with). However, might it be more natural to write classes that let me handle them in their native form without converting? Maybe thats a more complicated endeavor. Gerald R. Wiltse jerrywiltse@gmail.com On Mon, May 9, 2016 at 7:04 PM, Gerald Wiltse wrote: > All, > > In summary, I would like any advice people can offer on how to approach > the task below, using the Groovy ways of thinking. > > The topic at hand is a messy domain-specific problem working with dates in > Oracle's ERP software called JD Edwards. It's gory detail is documented > here: > > > http://stackoverflow.com/questions/1171208/what-is-the-precise-definition-of-jdes-julian-date-format > > > I wish to write my own solution in Groovy. A flexible swiss-army-knife > type package which lets me pass JDE and Gregorian dates and times (as > strings) in and out and define what I get back. I am not looking for code, > but help escaping the procedural mindset. The one senior Java programmer > just see's this as a few Static Methods. I want to know what Groovy > developers see. > > I'm guessing some combination of closures. Perhaps factory pattern, which > I've never used? Does this sound like a "Functional programming" scenario, > where functional approach might be a good fit? > I want to start off on the best foot possible, but don't have the > intuition of high-level groovy thinking yet. > > Gerald R. Wiltse > jerrywiltse@gmail.com > > --14dae9340b0f76ef430532712ebd Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable
Also, something else just occurred to me which might be re= levant. Another option might be to create a JDE Calendar or JDE Date class = which extends or implements date or calendar classes/interfaces. My first i= nstinct was to convert dates into Date Objects and strings based on Gregori= an calendar on their way in and out of the database (because that's wha= t I'm somewhat familiar with).=C2=A0 However, might it be more natural = to write classes that let me handle them in their native form without conve= rting?=C2=A0 Maybe thats a more complicated endeavor.=C2=A0

Gerald R. Wiltse
jerrywiltse@gmail.com


On Mon, May 9, 2016 at 7:04 PM, Gerald Wilts= e <jerrywiltse@gmail.com> wrote:
All,=C2=A0

In sum= mary, I would like any advice people can offer on how to approach the task = below, using the Groovy ways of thinking.=C2=A0

Th= e topic at hand is a messy domain-specific problem working with dates in Or= acle's ERP software called JD Edwards. It's gory detail is document= ed here:=C2=A0


=
I wish to write my own solution in Groovy.=C2=A0 A flexible swiss-army= -knife type package which lets me pass JDE and Gregorian dates and times (a= s strings) in and out and define what I get back.=C2=A0 I am not looking fo= r code, but help escaping the procedural mindset. =C2=A0 The one senior Jav= a programmer just see's this as a few Static Methods.=C2=A0 I want to k= now what Groovy developers see.=C2=A0

I'm gues= sing some combination of closures.=C2=A0 Perhaps factory pattern, which I&#= 39;ve never used? Does this sound like a "Functional programming"= scenario, where functional approach might be a good fit? =C2=A0=C2=A0
I want to start off on the best foot possible, but don't have the= intuition of high-level groovy thinking yet.=C2=A0

=

--14dae9340b0f76ef430532712ebd--