Re: intermediate vcs

2011-12-15 Thread Mark Struberg
Since we always release all of DeltaSpike in one go, the versions are always 
the same. This is really convenient to just add a property


properties
    deltaspike.version0.1-SNAPSHOT/deltaspike.version

/properties


and use that for all your project.

LieGrue,
strub


 From: Shane Bryzak sbry...@gmail.com
To: deltaspike-dev@incubator.apache.org; Mark Struberg strub...@yahoo.de 
Sent: Thursday, December 15, 2011 2:10 PM
Subject: Re: intermediate vcs
 

At the bare minimum it can contain all of the DeltaSpike module versions.  
Even if they're all the same, it still adds convenience.


On Thu, Dec 15, 2011 at 11:07 PM, Mark Struberg strub...@yahoo.de wrote:

yes, that sounds good. But is sometimes really heavily depending on the 
container you let this run in. So that part might become tricky.

We should add it on our todo list for later evaluation.

LieGrue,
strub





 From: Shane Bryzak sbry...@gmail.com
To: deltaspike-dev@incubator.apache.org; Mark Struberg strub...@yahoo.de
Sent: Thursday, December 15, 2011 2:03 PM
Subject: Re: intermediate vcs



Looking pretty good.  Do you think we should add a BOM (Bill Of Materials) 
containing all of the dependencies and versions?  We find that it makes life 
much easier for our users if they can simply import the bom and not have to 
worry about dependency version hell.


On Thu, Dec 15, 2011 at 8:34 PM, Mark Struberg strub...@yahoo.de wrote:

I started with the initial project structure and some maven stuff.

I followed the intended structure from our Wiki.

Please review.

LieGrue,
strub




- Original Message -
 From: Gerhard Petracek gerhard.petra...@gmail.com
 To: deltaspike-dev@incubator.apache.org
 Cc:
 Sent: Thursday, December 15, 2011 10:52 AM
 Subject: intermediate vcs

 hi @ all,

 since we have started several discussions, it makes sense to prototype 
 some
 parts immediately.
 mark and i suggest to start at [1] while the infra team is preparing our
 repository, ldap group,...
 if you would like to join, send your user-name and you will be added.

 regards,
 gerhard

 [1] http://goo.gl/HmNBV











Re: intermediate vcs

2011-12-15 Thread Jason Porter
lightguard

On Thu, Dec 15, 2011 at 02:52, Gerhard Petracek
gerhard.petra...@gmail.comwrote:

 hi @ all,

 since we have started several discussions, it makes sense to prototype some
 parts immediately.
 mark and i suggest to start at [1] while the infra team is preparing our
 repository, ldap group,...
 if you would like to join, send your user-name and you will be added.

 regards,
 gerhard

 [1] http://goo.gl/HmNBV




-- 
Jason Porter
http://lightguard-jp.blogspot.com
http://twitter.com/lightguardjp

Software Engineer
Open Source Advocate
Author of Seam Catch - Next Generation Java Exception Handling

PGP key id: 926CCFF5
PGP key available at: keyserver.net, pgp.mit.edu


Re: basic decisions - package and class naming

2011-12-15 Thread Matthias Wessendorf
On Thu, Dec 15, 2011 at 3:31 PM, Mark Struberg strub...@yahoo.de wrote:
 Well, we are now hitting the wall - so we need a resolution asap.

 For the core module we would have

 for core-api:

 org.apache.deltaspike.core. ?

 for core-impl:

 org.apache.deltaspike.core.impl. ?


yes!
And/or

JPA API:
org.apache.deltaspike.jpa.*

the implementation
org.apache.deltaspike.jpa.impl.*

@SPI = fine for me!

But please NO 'api' inside of the pkg names; (impl is a must, IMO
(fine in naming it 'internal', but I guess impl is more 'standard')

-M



 The problem is that by omitting the .api. package, we don't have any good 
 handle to include/exclude all the classes from core.api, jsf.api, etc in the 
 maven-shade-plugin or any other include/exclude mechanism. That could hurt a 
 bit.

 Matze, you have not been fond of the api package, what do you suggest as an 
 alternative option?

 LieGrue,
 strub


 - Original Message -
 From: Jason Porter lightguard...@gmail.com
 To: deltaspike-dev@incubator.apache.org
 Cc:
 Sent: Monday, December 12, 2011 7:21 PM
 Subject: Re: basic decisions - package and class naming

 I'm good for the package naming, include the JSF split, if we're going
 to
 be cutting artifacts via the shade plugin (and we only get one repo so
 everything has to be done in one place) that will make it much easier. Also
 it will help users know what they're using when the send in bug reports. If
 they're JSF2 stuff in a JSF12 project that'll be much easier to spot.

 If we don't have an api package then I certainly want to see
 internal (I
 like seeing that in the package better than impl, imo it means more and it
 certainly signifies to me that those classes are off limits for usage by
 the user). I'd like to see SPI though, I think we'll need that and it
 more
 clearly demarcates for extension writers what they should be using.
 Anything we can do to make things easier for users w/o having to explicitly
 write globs of documentation to explain something (in other words making
 things self documented) is a huge plus in my book.

 On Mon, Dec 12, 2011 at 05:47, Jakob Korherr
 jakob.korh...@gmail.comwrote:

  Hi,

  +1 for the package names.

  IMO we can drop the api package, but we really should keep the impl
  (or internal) package. Otherwise - as Gerhard stated - users will
  start to use implementation classes without even noticing (remember:
  not everyone uses impl-dependencies with scope=runtime).

  Regards,
  Jakob

  2011/12/12 Gerhard Petracek gpetra...@apache.org:
   @package names:
   +1
   @shane: currently we don't have issues with it (see what we are
 doing in
   codi with the shade plugin)
  
   to skip 'api' as package would mean that it might be
 harder to use our
   bundles (e.g. extval doesn't have api/impl packages and users
 started to
   use impl classes, utils,... at least until we marked them as
 internal).
   +/- 0
  
   @other rules:
   no names which start with an underscore
  
   regards,
   gerhard
  
  
  
   2011/12/12 Shane Bryzak sbry...@gmail.com
  
   On Mon, Dec 12, 2011 at 9:24 PM, Mark Struberg
 strub...@yahoo.de
  wrote:
  
    Hi folks!
   
    Back to work after being sick for a week. I think it's
 time to start
    hacking on DeltaSpike!
   
    But before we do so, I'd like to clarify a few basic
 things
   
    a.) package names
   
    I'd suggest
   
     org.apache.deltaspike.core.*
   
    for our core stuff
   
     org.apache.deltaspike.jpa.*
   
    for JPA
   
  
  
   +1 for the org.apache.deltaspike package prefix, followed by the
 module
   name.
  
  
  
   
   
     org.apache.deltaspike.jsf.jsf12.*
   
    for JSF-1.2
   
     org.apache.deltaspike.jsf.jsf20.*
   
    for JSF-2.0, etc
   
   
   -1 for the separation of JSF packages, I think this may cause
 problems
   longer term, especially when we get JSF3, JSF4 etc.  The way I
 would
  handle
   this is to have a separate module for each JSF version, but re-use
 the
   org.apache.deltaspike.jsf package name.
  
  
   
   
    In general most of our project parts will contain the
 following 3 sub-
    parts
   
    *) api - the parts meant to be imported in customer projects
 with
  Maven
    scopecompile
   
    *) impl - does the actual work, not intended to be used in
 customer
    projects diretly. Thus Maven scoperuntime only.
   
    *) spi - parts meant to be used for extending the default
  functionality.
    Up for discussion, not sure if we really need it! This might
 also be
  done
    directly in impl, users can still
   
   
    Matze mentioned that he doesn't like to have
 'api' in the package
  name.
    What do you like to use instead to distinguish between those?
 Having
  an
   own
    package name probably makes it easier to use the
 maven-shade-plugin.
  Any
    opinions?
   
  
   I would prefer not to have 'api' or 'impl' in the
 package name either.
   We
   never had them in any of the Seam modules that I'm aware of,
 and there
  was
   no problem with 

Re: basic decisions - coding conventions

2011-12-15 Thread Gerhard Petracek
hi @ all,

i created [1] for collecting the suggestions.
if you don't like one of the mentioned conventions, add your own suggestion.
i'll start a vote about it on monday.

regards,
gerhard

[1] https://issues.apache.org/jira/browse/DELTASPIKE-12



2011/12/12 Jason Porter lightguard...@gmail.com

 +1 to 120

 The rest I'm okay with as well.

 On Mon, Dec 12, 2011 at 11:24, Jason Porter lightguard...@gmail.com
 wrote:

  On Mon, Dec 12, 2011 at 04:37, Mark Struberg strub...@yahoo.de wrote:
 
  Hi!
 
  I'm a fan of a pretty tight coding convention observation even at build
  time.
 
  What we usually have (in owb and myfaces) is an own 'buildtools' project
  which contains the checkstyle rules as own artifact.
  This will then be used in the deltaspike-parent pom as dependency of the
  maven-checkstyle-plugin. I'll set this up, no worries, easy stuff.
 
  The more important thing is to decide _which_ coding conventions we like
  to follow at all?
 
  I have the following suggestions:
 
  1.) no tabs, only spaces!
 
  +1
 
 
  2.) bracelets on new line? Actually I don't care about
   if()
   {
 dings();
   }
  or
 
   if() {
 dings();
   }
  but we should only use one stile throughout the whole code.
 
  +1
 
 
 
  3.) force bracelets
 
   no
 
   if()
 
 dosomething;
 
  +1
 
 
  without bracelets. Instead force:
   if()
   {
 
 dosomething;
   }
 
 
  I'm sure there is a bit more, thus please add the rules which are
  important for you.
  (PS: once we found a final solution we should move this into our wiki +
  provide Eclipse and Idea checkstyle rules.
 
 
  LieGrue,
  strub
 
 
  Line width? Indentation width?
 
  --
  Jason Porter
  http://lightguard-jp.blogspot.com
  http://twitter.com/lightguardjp
 
  Software Engineer
  Open Source Advocate
  Author of Seam Catch - Next Generation Java Exception Handling
 
  PGP key id: 926CCFF5
  PGP key available at: keyserver.net, pgp.mit.edu
 



 --
 Jason Porter
 http://lightguard-jp.blogspot.com
 http://twitter.com/lightguardjp

 Software Engineer
 Open Source Advocate
 Author of Seam Catch - Next Generation Java Exception Handling

 PGP key id: 926CCFF5
 PGP key available at: keyserver.net, pgp.mit.edu



Re: basic decisions - coding conventions

2011-12-15 Thread Matthias Wessendorf
On Mon, Dec 12, 2011 at 12:37 PM, Mark Struberg strub...@yahoo.de wrote:
 Hi!

 I'm a fan of a pretty tight coding convention observation even at build time.

 What we usually have (in owb and myfaces) is an own 'buildtools' project 
 which contains the checkstyle rules as own artifact.
 This will then be used in the deltaspike-parent pom as dependency of the 
 maven-checkstyle-plugin. I'll set this up, no worries, easy stuff.

 The more important thing is to decide _which_ coding conventions we like to 
 follow at all?

 I have the following suggestions:

 1.) no tabs, only spaces!

+1


 2.) bracelets on new line? Actually I don't care about
 if() {
   dings();
 }

+1

 but we should only use one stile throughout the whole code.


 3.) force bracelets

  no

 if()

   dosomething;

 without bracelets. Instead force:
 if()
 {

   dosomething;
 }

+1 for always:
if(blah) {
  blub();
}



 I'm sure there is a bit more, thus please add the rules which are important 
 for you.
 (PS: once we found a final solution we should move this into our wiki + 
 provide Eclipse and Idea checkstyle rules.


 LieGrue,
 strub




-- 
Matthias Wessendorf

blog: http://matthiaswessendorf.wordpress.com/
sessions: http://www.slideshare.net/mwessendorf
twitter: http://twitter.com/mwessendorf


Re: basic decisions - coding conventions

2011-12-15 Thread Matthias Wessendorf
On Mon, Dec 12, 2011 at 1:38 PM, Gerhard Petracek gpetra...@apache.org wrote:
 +1 for 4 spaces


yup


 regards,
 gerhard



 2011/12/12 Shane Bryzak sbry...@gmail.com

 On Mon, Dec 12, 2011 at 9:37 PM, Mark Struberg strub...@yahoo.de wrote:

  Hi!
 
  I'm a fan of a pretty tight coding convention observation even at build
  time.
 
  What we usually have (in owb and myfaces) is an own 'buildtools' project
  which contains the checkstyle rules as own artifact.
  This will then be used in the deltaspike-parent pom as dependency of the
  maven-checkstyle-plugin. I'll set this up, no worries, easy stuff.
 
  The more important thing is to decide _which_ coding conventions we like
  to follow at all?
 
  I have the following suggestions:
 
  1.) no tabs, only spaces!
 

 +1, tabs suck



 
  2.) bracelets on new line? Actually I don't care about
   if()
   {
     dings();
   }
  or
 
   if() {
     dings();
   }
  but we should only use one stile throughout the whole code.
 
 

 I don't mind either way here, comfortable with either as long as we pick
 one and are consistent with it.



 
  3.) force bracelets
 
   no
 
   if()
 
     dosomething;
 
  without bracelets. Instead force:
   if()
   {
 
     dosomething;
   }
 
 
 +1


 
  I'm sure there is a bit more, thus please add the rules which are
  important for you.
  (PS: once we found a final solution we should move this into our wiki +
  provide Eclipse and Idea checkstyle rules.
 


 One thing to decide is indent size.  Currently in Seam we use 4 spaces, as
 we've recently adopted the JBoss coding standards.  Personally, I think
 this is a little too much, previously we had 3 spaces (Gavin's preference)
 which I thought was better.



 
 
  LieGrue,
  strub
 
 




-- 
Matthias Wessendorf

blog: http://matthiaswessendorf.wordpress.com/
sessions: http://www.slideshare.net/mwessendorf
twitter: http://twitter.com/mwessendorf


Re: basic decisions - coding conventions

2011-12-15 Thread Jason Porter
imo whitespace is a must, it helps with readability. I'm fine with
everything else

On Thu, Dec 15, 2011 at 14:02, Matthias Wessendorf mat...@apache.orgwrote:

  5) a space between keyword and round bracket (e.g. if (...) instead of
 if(...))
  6) a space before and after an operand (e.g. a = 1 + 2 or a != b
  instead of a=1+2 or a!=b)
 
  5 and 6 are not soo important, but IMO very nice to have.


 I hate: if(){

 :-)

 
  Regards,
  Jakob
 
  2011/12/12 Shane Bryzak sbry...@gmail.com:
  On Mon, Dec 12, 2011 at 9:37 PM, Mark Struberg strub...@yahoo.de
 wrote:
 
  Hi!
 
  I'm a fan of a pretty tight coding convention observation even at build
  time.
 
  What we usually have (in owb and myfaces) is an own 'buildtools'
 project
  which contains the checkstyle rules as own artifact.
  This will then be used in the deltaspike-parent pom as dependency of
 the
  maven-checkstyle-plugin. I'll set this up, no worries, easy stuff.
 
  The more important thing is to decide _which_ coding conventions we
 like
  to follow at all?
 
  I have the following suggestions:
 
  1.) no tabs, only spaces!
 
 
  +1, tabs suck
 
 
 
 
  2.) bracelets on new line? Actually I don't care about
   if()
   {
 dings();
   }
  or
 
   if() {
 dings();
   }
  but we should only use one stile throughout the whole code.
 
 
 
  I don't mind either way here, comfortable with either as long as we pick
  one and are consistent with it.
 
 
 
 
  3.) force bracelets
 
   no
 
   if()
 
 dosomething;
 
  without bracelets. Instead force:
   if()
   {
 
 dosomething;
   }
 
 
  +1
 
 
 
  I'm sure there is a bit more, thus please add the rules which are
  important for you.
  (PS: once we found a final solution we should move this into our wiki +
  provide Eclipse and Idea checkstyle rules.
 
 
 
  One thing to decide is indent size.  Currently in Seam we use 4 spaces,
 as
  we've recently adopted the JBoss coding standards.  Personally, I think
  this is a little too much, previously we had 3 spaces (Gavin's
 preference)
  which I thought was better.
 
 
 
 
 
  LieGrue,
  strub
 
 
 
 
 
  --
  Jakob Korherr
 
  blog: http://www.jakobk.com
  twitter: http://twitter.com/jakobkorherr
  work: http://www.irian.at



 --
 Matthias Wessendorf

 blog: http://matthiaswessendorf.wordpress.com/
 sessions: http://www.slideshare.net/mwessendorf
 twitter: http://twitter.com/mwessendorf




-- 
Jason Porter
http://lightguard-jp.blogspot.com
http://twitter.com/lightguardjp

Software Engineer
Open Source Advocate
Author of Seam Catch - Next Generation Java Exception Handling

PGP key id: 926CCFF5
PGP key available at: keyserver.net, pgp.mit.edu


Re: [DISCUSS] [DELTASPIKE-3] BeanManagerProvider

2011-12-15 Thread Gerhard Petracek
at [1] i summarized what we have agreed on so far.
- let's continue with the util methods.

suggestions for the util methods:
public T T getContextualReferenceByClass(ClassT type, boolean
optionalBeanAllowed, Annotation... qualifiers)
public T T getContextualReferenceByName(String name,
boolean optionalBeanAllowed, ClassT targetType)
public T T getContextualReferenceByBean(BeanT bean,
boolean optionalBeanAllowed, ClassT targetType)
and maybe something like
public T ListT getContextualReferencesByClass(ClassT type,
boolean optionalBeanAllowed, Annotation... qualifiers)

in codi we added the util methods later on. with those util methods it's
more than just a BeanManagerProvider - maybe we find a better name.

furthermore we have a static method called isActive which allows to check
if the bm and therefore the environment is up and running (we delegate to
it in CodiUtils#isCdiInitialized which we are using as a part of our lazy
init logic which is required in some cases due to the early conifg
approach of mojarra).

regards,
gerhard

[1] http://goo.gl/7n2wj



2011/12/15 Christian Kaltepoth christ...@kaltepoth.de

 +1 (non-binding)

 I really like the proposed solution and I think it's cleaner than the
 Solder approach.

 What about obtaining the BeanManager from the ServletContext (which is
 specified in CDI 1.1) as an alternative to the JNDI lookup? Do we need
 this? It could be interesting for environments that don't support JNDI
 (like GAE for example). Solder does this but it requires the
 ServletContext to be stored in a ThreadLocal for each request which
 isn't very nice.

 I don't think an abstract base class like Solder's BeanManagerAware is
 required any more. Obtaining the BM with the proposed API is so simple
 that such a base class doesn't make sense.

 Christian


 2011/12/14 Jason Porter lightguard...@gmail.com
 
  Here we go, right thread this time. The abstract class in Solder is
 
 https://github.com/seam/solder/blob/develop/api/src/main/java/org/jboss/solder/beanManager/BeanManagerAware.java
 .
  You'll have to follow the code around to see what it exactly does.
 
  On Wed, Dec 14, 2011 at 12:50, Jason Porter lightguard...@gmail.com
 wrote:
 
   +1
  
   I think that's a better solution than what we have in Solder. Ours
 looks
   up the BM first in JNDI and then the servlet context if it's not found
 (for
   use in basic servlet containers). Not sure if that's a better approach
 than
   storing it, I do kind of like that approach though. It doesn't sound
 like
   it would be culprit to any memory leaks now that I think about it a bit
   more. That was my one issue at first.
  
   The way we do it in Solder is to have an abstract class so you'd have
 to
   extend that class to get the BM. I'm wondering if you've found cases
 where
   using the observer is too late or you need it the BM at creation time
 of
   the bean.
  
  
   On Wed, Dec 14, 2011 at 12:36, Mark Struberg strub...@yahoo.de
 wrote:
  
   +1
   btw, it's worth mentioning that the resolution mechanism will first
 look
   up the BeanManager in JNDI. And only if it isn't available there, it
 will
   use the one from the system event.
   Also we store the BeanManager in a MapClassLoader, BeanManager to be
   able to handle EAR situations.
  
   LieGrue,
   strub
  
  
  
   - Original Message -
From: Gerhard Petracek gerhard.petra...@gmail.com
To: deltaspike-dev@incubator.apache.org
Cc:
Sent: Wednesday, December 14, 2011 8:28 PM
Subject: [DISCUSS] [DELTASPIKE-3] BeanManagerProvider
   
hi @ all,
   
fyi: please check [1] before you answer.
   
[2] provides a short introduction as well as the basic usage.
   
the basic concept:
an observer for AfterBeanDiscovery stores the bean-manager for the
   current
application (stored by classloader).
(see BeanManagerProvider#setBeanManager)
   
the api:
BeanManagerProvider.getInstance().getBeanManager()
   
later on we added some util methods to the api e.g.
   #getContextualReference.
   
the suggestion is to keep the basic concept, usage and api and to
   re-visit
the util methods (e.g. CodiUtils provides some nice internal util
   methods
- we could promote some of them).
   
please send
+1, +0 or -1 because...
for the basic idea as well as the basic concept which is based on
the AfterBeanDiscovery event.
if there are basic objections, please also add them to [3]
   
regards,
gerhard
   
[1] http://markmail.org/message/7yefspfuvtz4jvmp
[2]
   
  
 https://cwiki.apache.org/confluence/display/EXTCDI/Core+Usage#CoreUsage-BeanManagerProvider
[3]
   
  
 https://cwiki.apache.org/confluence/display/DeltaSpike/SE+Feature+Ranking
   
  
  
  
  
   --
   Jason Porter
   http://lightguard-jp.blogspot.com
   http://twitter.com/lightguardjp
  
   Software Engineer
   Open Source Advocate
   Author of Seam Catch - Next Generation Java Exception Handling
  
   PGP key id: 926CCFF5
 

Re: [jira] [Created] (DELTASPIKE-13) Choose documentation format and tools

2011-12-15 Thread Jason Porter
Shane's probably tired of hearing me harp on docbook, oh well :)

Here's a tool that's nice to use, output is good and it has a great
community following: http://sphinx.pocoo.org/ If we want to look into it,
great, if we go back to docbook, great, I'll stop complaining and just use
it.

Buildable docs is fine, if we have to craft a maven plugin, fine.

+1 for a set of a allowed docbook elements should we go with docbook

+1 for continuing discussions on the mailing list.

On Thu, Dec 15, 2011 at 16:53, Gerhard Petracek
gerhard.petra...@gmail.comwrote:

 +1 for buildable docs if we keep the documentation inside the git
 repository.
 -1 for anything else than a maven plugin. if we don't have one for the
 documentation tool, we can impl. it (or we use a different tool).
 (+0 for docbook) +1 for an alternative, if it makes sense.

 @discussions:
 +1 for continuing to use the mailing list for the main discussion/s - it's
 easier to follow, mirrored, ... .

 regards,
 gerhard



 2011/12/16 Jason Porter lightguard...@gmail.com

  We haven't been discussing other issues on jira, but on the mailing list.
 
  Sent from my iPhone
 
  On Dec 15, 2011, at 16:31, Shane Bryzak sbry...@gmail.com wrote:
 
   You need to add your objections to the issue ;)
  
   Buildable by Maven just means we can build the documentation as part of
  the
   standard project build/release process.
  
   On Fri, Dec 16, 2011 at 9:25 AM, Jason Porter lightguard...@gmail.com
  wrote:
  
   -1 to DocBook it's difficult to get people up to speed and is a turn
 off
   for new contributors.
  
   Also what exactly do you mean by buildable with maven? Does that
 mean
  we
   need a plugin? Can an ant task or other scripting work?
  
   On Thu, Dec 15, 2011 at 15:39, Shane Bryzak (Created) (JIRA) 
   j...@apache.org wrote:
  
   Choose documentation format and tools
   -
  
  Key: DELTASPIKE-13
  URL:
  https://issues.apache.org/jira/browse/DELTASPIKE-13
  Project: DeltaSpike
   Issue Type: Task
 Reporter: Shane Bryzak
 Assignee: Gerhard Petracek
  
  
   We need to decide on a documentation format for the DeltaSpike
   documentation.  Requirements are:
  
   1. Kept in the VCS with the DeltaSpike codebase
   2. Buildable with Maven
   3. Can generate multiple formats, including HTML and PDF
  
   Currently the industry standard is DocBook, however there may be
  other
   alternatives which are more suitable.  Suggestions welcome here.
  
   --
   This message is automatically generated by JIRA.
   If you think it was sent incorrectly, please contact your JIRA
   administrators:
  
  https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
   For more information on JIRA, see:
   http://www.atlassian.com/software/jira
  
  
  
  
  
   --
   Jason Porter
   http://lightguard-jp.blogspot.com
   http://twitter.com/lightguardjp
  
   Software Engineer
   Open Source Advocate
   Author of Seam Catch - Next Generation Java Exception Handling
  
   PGP key id: 926CCFF5
   PGP key available at: keyserver.net, pgp.mit.edu
  
 




-- 
Jason Porter
http://lightguard-jp.blogspot.com
http://twitter.com/lightguardjp

Software Engineer
Open Source Advocate
Author of Seam Catch - Next Generation Java Exception Handling

PGP key id: 926CCFF5
PGP key available at: keyserver.net, pgp.mit.edu