[webbeans-dev] Re: Packages proposal

Gavin King gavin at hibernate.org
Tue Jan 20 01:39:16 EST 2009


Of course, the "special" XML elements that don't correspond to types
would also live in this special package:

<Beans>
<Deploy>
<Interceptors>
<Decorators>
<Array>
<value>

On Tue, Jan 20, 2009 at 5:33 PM, Gavin King <gavin at hibernate.org> wrote:
> In conjunction with this proposal, I would like to propose that we
> have a "special" XML namespace, which instead of mapping to a single
> package, maps to several packages. This is an ease of use feature for
> commonly used types.
>
> The namespace "urn:java:javax" is a shortcut that may be used to refer
> to types in any of the following packages (as long as there is no
> ambiguity):
>
>   javax.annotation
>   javax.interceptor
>   javax.decorator
>   javax.context
>   javax.inject
>   javax.stereotype
>   javax.event
>   javax.ejb
>   javax.xml.ws
>   javax.persistence
>
> Potentially even:
>
>   javax.jms
>   javax.sql
>   javax.annotation.security
>  JAX-RS
>
>
> On Tue, Jan 20, 2009 at 5:18 PM, Gavin King <gavin at hibernate.org> wrote:
>> Here's a proposal for API repackaging:
>>
>> javax.annotation: (existing package)
>> @NonBinding
>>
>> javax.interceptor: (existing package)
>> @Interceptor
>> @InterceptorBindingType
>>
>> javax.decorator: (decorators)
>> @Decorator
>> @Decorates
>>
>> javax.stereotype: (stereotypes)
>> @Stereotype
>> @Model
>>
>> javax.context: (scopes and contexts)
>> @ScopeType
>> @ApplicationScoped
>> @RequestScoped
>> @SessionScoped
>> @ConversationScoped
>> Context
>> Contextual
>> ContextNotActiveException
>> Conversation
>>
>> javax.inject: (injection, binding types, deployment types)
>> @BindingType
>> @DeploymentType
>> @Named
>> @Initializer
>> @New
>> @Specializes
>> @Realizes
>> @Current
>> @Production
>> @Standard
>> @Produces
>> @Disposes
>> @Obtains
>> Instance
>> DefinitionException
>> DeploymentException
>> ExecutionException
>> IllegalProductException
>> CreationException
>> AmbiguousDependencyException
>> DuplicateBindingTypeException
>> InconsistentSpecializationException
>> NullableDependencyException
>> UnproxyableDependencyException
>> UnsatisfiedDependencyException
>> UnserializableDependencyException
>> TypeLiteral
>> AnnotationLiteral
>>
>> javax.inject.manager: (framework integration SPI)
>> @Initialized
>> @Deployed
>> Bean
>> InjectionPoint
>> Decorator
>> Interceptor
>> InterceptionType
>> Manager
>>
>> javax.event: (events)
>> @Observes
>> @Asynchronously
>> @IfExists
>> @AfterTransactionCompletion
>> @AfterTransactionFailure
>> @AfterTransactionSuccess
>> @BeforeTransactionCompletion
>> @Fires
>> Event
>> Observer
>> ObserverException
>>
>>
>> The types I'm most uncomfortable with are TypeLiteral and
>> AnnotationLiteral, which aren't really specific to injection. I wonder
>> if there's some other place they could go....?
>>
>> Arguably @Named belongs somewhere else....
>>
>> And there's a piece of me which wants to put @Realizes and
>> @Specializes in javax.stereotype, for some reason which I can't quite
>> put my finger on....
>>
>> Thoughts?
>>
>> --
>> Gavin King
>> gavin.king at gmail.com
>> http://in.relation.to/Bloggers/Gavin
>> http://hibernate.org
>> http://seamframework.org
>>
>
>
>
> --
> Gavin King
> gavin.king at gmail.com
> http://in.relation.to/Bloggers/Gavin
> http://hibernate.org
> http://seamframework.org
>



-- 
Gavin King
gavin.king at gmail.com
http://in.relation.to/Bloggers/Gavin
http://hibernate.org
http://seamframework.org



More information about the weld-dev mailing list