You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@openwebbeans.apache.org by ge...@apache.org on 2008/11/22 18:59:43 UTC
svn commit: r719888 [2/2] - in /incubator/openwebbeans/trunk/webbeans-api:
./ src/ src/main/ src/main/java/ src/main/java/META-INF/
src/main/java/javax/ src/main/java/javax/webbeans/
src/main/java/javax/webbeans/manager/ src/main/resources/ src/test/ s...
Added: incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/NonexistentFieldException.java
URL: http://svn.apache.org/viewvc/incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/NonexistentFieldException.java?rev=719888&view=auto
==============================================================================
--- incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/NonexistentFieldException.java (added)
+++ incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/NonexistentFieldException.java Sat Nov 22 09:59:41 2008
@@ -0,0 +1,44 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package javax.webbeans;
+
+public class NonexistentFieldException extends DefinitionException
+{
+ private static final long serialVersionUID = 4578359618905508012L;
+
+ public NonexistentFieldException()
+ {
+ super();
+ }
+
+ public NonexistentFieldException(String message)
+ {
+ super(message);
+ }
+
+ public NonexistentFieldException(Throwable e)
+ {
+ super(e);
+ }
+
+ public NonexistentFieldException(String message, Throwable e)
+ {
+ super(message, e);
+ }
+
+
+}
Propchange: incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/NonexistentFieldException.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/NonexistentMemberException.java
URL: http://svn.apache.org/viewvc/incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/NonexistentMemberException.java?rev=719888&view=auto
==============================================================================
--- incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/NonexistentMemberException.java (added)
+++ incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/NonexistentMemberException.java Sat Nov 22 09:59:41 2008
@@ -0,0 +1,44 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package javax.webbeans;
+
+public class NonexistentMemberException extends DefinitionException
+{
+ private static final long serialVersionUID = -7507805351707018006L;
+
+ public NonexistentMemberException()
+ {
+ super();
+ }
+
+ public NonexistentMemberException(String message)
+ {
+ super(message);
+ }
+
+ public NonexistentMemberException(Throwable e)
+ {
+ super(e);
+ }
+
+ public NonexistentMemberException(String message, Throwable e)
+ {
+ super(message, e);
+ }
+
+
+}
Propchange: incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/NonexistentMemberException.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/NonexistentMethodException.java
URL: http://svn.apache.org/viewvc/incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/NonexistentMethodException.java?rev=719888&view=auto
==============================================================================
--- incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/NonexistentMethodException.java (added)
+++ incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/NonexistentMethodException.java Sat Nov 22 09:59:41 2008
@@ -0,0 +1,44 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package javax.webbeans;
+
+public class NonexistentMethodException extends DefinitionException
+{
+ private static final long serialVersionUID = -1280732375706132123L;
+
+ public NonexistentMethodException()
+ {
+ super();
+ }
+
+ public NonexistentMethodException(String message)
+ {
+ super(message);
+ }
+
+ public NonexistentMethodException(Throwable e)
+ {
+ super(e);
+ }
+
+ public NonexistentMethodException(String message, Throwable e)
+ {
+ super(message, e);
+ }
+
+
+}
Propchange: incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/NonexistentMethodException.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/NonexistentTypeException.java
URL: http://svn.apache.org/viewvc/incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/NonexistentTypeException.java?rev=719888&view=auto
==============================================================================
--- incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/NonexistentTypeException.java (added)
+++ incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/NonexistentTypeException.java Sat Nov 22 09:59:41 2008
@@ -0,0 +1,44 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package javax.webbeans;
+
+public class NonexistentTypeException extends DefinitionException
+{
+ private static final long serialVersionUID = 2340492433053441783L;
+
+ public NonexistentTypeException()
+ {
+ super();
+ }
+
+ public NonexistentTypeException(String message)
+ {
+ super(message);
+ }
+
+ public NonexistentTypeException(Throwable e)
+ {
+ super(e);
+ }
+
+ public NonexistentTypeException(String message, Throwable e)
+ {
+ super(message, e);
+ }
+
+
+}
Propchange: incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/NonexistentTypeException.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/NullableDependencyException.java
URL: http://svn.apache.org/viewvc/incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/NullableDependencyException.java?rev=719888&view=auto
==============================================================================
--- incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/NullableDependencyException.java (added)
+++ incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/NullableDependencyException.java Sat Nov 22 09:59:41 2008
@@ -0,0 +1,43 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package javax.webbeans;
+
+public class NullableDependencyException extends DeploymentException
+{
+ private static final long serialVersionUID = -2226577224929251465L;
+
+ public NullableDependencyException()
+ {
+ super();
+ }
+
+ public NullableDependencyException(String message)
+ {
+ super(message);
+ }
+
+ public NullableDependencyException(Throwable e)
+ {
+ super(e);
+ }
+
+ public NullableDependencyException(String message, Throwable e)
+ {
+ super(message, e);
+ }
+
+}
Propchange: incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/NullableDependencyException.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/Observable.java
URL: http://svn.apache.org/viewvc/incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/Observable.java?rev=719888&view=auto
==============================================================================
--- incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/Observable.java (added)
+++ incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/Observable.java Sat Nov 22 09:59:41 2008
@@ -0,0 +1,36 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package javax.webbeans;
+
+import static java.lang.annotation.ElementType.FIELD;
+import static java.lang.annotation.ElementType.METHOD;
+import static java.lang.annotation.ElementType.PARAMETER;
+import static java.lang.annotation.ElementType.TYPE;
+import static java.lang.annotation.RetentionPolicy.RUNTIME;
+
+import java.lang.annotation.Documented;
+import java.lang.annotation.Retention;
+import java.lang.annotation.Target;
+
+@BindingType
+@Retention(RUNTIME)
+@Target( { TYPE, METHOD, FIELD, PARAMETER })
+@Documented
+public @interface Observable
+{
+
+}
Propchange: incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/Observable.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/Observer.java
URL: http://svn.apache.org/viewvc/incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/Observer.java?rev=719888&view=auto
==============================================================================
--- incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/Observer.java (added)
+++ incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/Observer.java Sat Nov 22 09:59:41 2008
@@ -0,0 +1,6 @@
+package javax.webbeans;
+
+public interface Observer<T>
+{
+ public void notify(T event);
+}
\ No newline at end of file
Propchange: incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/Observer.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/ObserverException.java
URL: http://svn.apache.org/viewvc/incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/ObserverException.java?rev=719888&view=auto
==============================================================================
--- incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/ObserverException.java (added)
+++ incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/ObserverException.java Sat Nov 22 09:59:41 2008
@@ -0,0 +1,44 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package javax.webbeans;
+
+public class ObserverException extends ExecutionException
+{
+ private static final long serialVersionUID = -6392759733390664652L;
+
+
+ public ObserverException()
+ {
+
+ }
+
+ public ObserverException(String message)
+ {
+ super(message);
+ }
+
+ public ObserverException(Throwable cause)
+ {
+ super(cause);
+ }
+
+ public ObserverException(String message, Throwable cause)
+ {
+ super(message, cause);
+ }
+
+}
Propchange: incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/ObserverException.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/Observes.java
URL: http://svn.apache.org/viewvc/incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/Observes.java?rev=719888&view=auto
==============================================================================
--- incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/Observes.java (added)
+++ incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/Observes.java Sat Nov 22 09:59:41 2008
@@ -0,0 +1,38 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package javax.webbeans;
+
+import static java.lang.annotation.ElementType.PARAMETER;
+import static java.lang.annotation.RetentionPolicy.RUNTIME;
+
+import java.lang.annotation.Documented;
+import java.lang.annotation.Retention;
+import java.lang.annotation.Target;
+
+/**
+ * Defines the intention of the method as an observer.
+ *
+ * @author <a href="mailto:gurkanerdogdu@yahoo.com">Gurkan Erdogdu</a>
+ * @since 1.0
+ */
+@Target(PARAMETER)
+@Retention(RUNTIME)
+@Documented
+public @interface Observes
+{
+
+}
Propchange: incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/Observes.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/Produces.java
URL: http://svn.apache.org/viewvc/incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/Produces.java?rev=719888&view=auto
==============================================================================
--- incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/Produces.java (added)
+++ incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/Produces.java Sat Nov 22 09:59:41 2008
@@ -0,0 +1,38 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package javax.webbeans;
+
+import static java.lang.annotation.ElementType.METHOD;
+import static java.lang.annotation.RetentionPolicy.RUNTIME;
+
+import java.lang.annotation.Documented;
+import java.lang.annotation.Retention;
+import java.lang.annotation.Target;
+
+/**
+ * Defines the method as a producer method web beans component.
+ *
+ * @author <a href="mailto:gurkanerdogdu@yahoo.com">Gurkan Erdogdu</a>
+ * @since 1.0
+ */
+@Target(METHOD)
+@Retention(RUNTIME)
+@Documented
+public @interface Produces
+{
+
+}
Propchange: incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/Produces.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/Production.java
URL: http://svn.apache.org/viewvc/incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/Production.java?rev=719888&view=auto
==============================================================================
--- incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/Production.java (added)
+++ incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/Production.java Sat Nov 22 09:59:41 2008
@@ -0,0 +1,34 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package javax.webbeans;
+
+import static java.lang.annotation.ElementType.METHOD;
+import static java.lang.annotation.ElementType.TYPE;
+import static java.lang.annotation.RetentionPolicy.RUNTIME;
+
+import java.lang.annotation.Documented;
+import java.lang.annotation.Retention;
+import java.lang.annotation.Target;
+
+@Target( { TYPE, METHOD })
+@Retention(RUNTIME)
+@Documented
+@DeploymentType
+public @interface Production
+{
+
+}
Propchange: incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/Production.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/RequestScoped.java
URL: http://svn.apache.org/viewvc/incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/RequestScoped.java?rev=719888&view=auto
==============================================================================
--- incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/RequestScoped.java (added)
+++ incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/RequestScoped.java Sat Nov 22 09:59:41 2008
@@ -0,0 +1,40 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package javax.webbeans;
+
+import static java.lang.annotation.ElementType.METHOD;
+import static java.lang.annotation.ElementType.TYPE;
+import static java.lang.annotation.RetentionPolicy.RUNTIME;
+
+import java.lang.annotation.Documented;
+import java.lang.annotation.Retention;
+import java.lang.annotation.Target;
+
+/**
+ * Request wide defined scope annotation.
+ *
+ * @author <a href="mailto:gurkanerdogdu@yahoo.com">Gurkan Erdogdu</a>
+ * @since 1.0
+ */
+@Target( { TYPE, METHOD })
+@Retention(RUNTIME)
+@Documented
+@ScopeType
+public @interface RequestScoped
+{
+
+}
Propchange: incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/RequestScoped.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/ScopeType.java
URL: http://svn.apache.org/viewvc/incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/ScopeType.java?rev=719888&view=auto
==============================================================================
--- incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/ScopeType.java (added)
+++ incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/ScopeType.java Sat Nov 22 09:59:41 2008
@@ -0,0 +1,41 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package javax.webbeans;
+
+import static java.lang.annotation.ElementType.ANNOTATION_TYPE;
+import static java.lang.annotation.RetentionPolicy.RUNTIME;
+
+import java.lang.annotation.Documented;
+import java.lang.annotation.Retention;
+import java.lang.annotation.Target;
+
+/**
+ * Used for creating the new scope types.
+ *
+ * @author <a href="mailto:gurkanerdogdu@yahoo.com">Gurkan Erdogdu</a>
+ * @since 1.0
+ */
+@Target(ANNOTATION_TYPE)
+@Retention(RUNTIME)
+@Documented
+public @interface ScopeType {
+
+ boolean normal() default true;
+
+ boolean passivating() default false;
+
+}
Propchange: incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/ScopeType.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/SessionScoped.java
URL: http://svn.apache.org/viewvc/incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/SessionScoped.java?rev=719888&view=auto
==============================================================================
--- incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/SessionScoped.java (added)
+++ incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/SessionScoped.java Sat Nov 22 09:59:41 2008
@@ -0,0 +1,40 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package javax.webbeans;
+
+import static java.lang.annotation.ElementType.METHOD;
+import static java.lang.annotation.ElementType.TYPE;
+import static java.lang.annotation.RetentionPolicy.RUNTIME;
+
+import java.lang.annotation.Documented;
+import java.lang.annotation.Retention;
+import java.lang.annotation.Target;
+
+/**
+ * Session wide defined scope annotation.
+ *
+ * @author <a href="mailto:gurkanerdogdu@yahoo.com">Gurkan Erdogdu</a>
+ * @since 1.0
+ */
+@Target( { TYPE, METHOD })
+@Retention(RUNTIME)
+@Documented
+@ScopeType
+public @interface SessionScoped
+{
+
+}
Propchange: incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/SessionScoped.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/Specializes.java
URL: http://svn.apache.org/viewvc/incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/Specializes.java?rev=719888&view=auto
==============================================================================
--- incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/Specializes.java (added)
+++ incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/Specializes.java Sat Nov 22 09:59:41 2008
@@ -0,0 +1,33 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package javax.webbeans;
+
+import static java.lang.annotation.ElementType.TYPE;
+import static java.lang.annotation.RetentionPolicy.RUNTIME;
+
+import java.lang.annotation.Documented;
+import java.lang.annotation.Retention;
+import java.lang.annotation.Target;
+
+
+@Target(TYPE)
+@Retention(RUNTIME)
+@Documented
+public @interface Specializes
+{
+
+}
Propchange: incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/Specializes.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/Standard.java
URL: http://svn.apache.org/viewvc/incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/Standard.java?rev=719888&view=auto
==============================================================================
--- incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/Standard.java (added)
+++ incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/Standard.java Sat Nov 22 09:59:41 2008
@@ -0,0 +1,40 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package javax.webbeans;
+
+import static java.lang.annotation.ElementType.METHOD;
+import static java.lang.annotation.ElementType.TYPE;
+import static java.lang.annotation.RetentionPolicy.RUNTIME;
+
+import java.lang.annotation.Documented;
+import java.lang.annotation.Retention;
+import java.lang.annotation.Target;
+
+/**
+ * Standart web beans component type.
+ *
+ * @author <a href="mailto:gurkanerdogdu@yahoo.com">Gurkan Erdogdu</a>
+ * @since 1.0
+ */
+@Target( { TYPE, METHOD })
+@Retention(RUNTIME)
+@Documented
+@DeploymentType
+public @interface Standard
+{
+
+}
Propchange: incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/Standard.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/Stereotype.java
URL: http://svn.apache.org/viewvc/incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/Stereotype.java?rev=719888&view=auto
==============================================================================
--- incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/Stereotype.java (added)
+++ incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/Stereotype.java Sat Nov 22 09:59:41 2008
@@ -0,0 +1,38 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package javax.webbeans;
+
+import static java.lang.annotation.ElementType.ANNOTATION_TYPE;
+import static java.lang.annotation.RetentionPolicy.RUNTIME;
+
+import java.lang.annotation.Annotation;
+import java.lang.annotation.Documented;
+import java.lang.annotation.Retention;
+import java.lang.annotation.Target;
+
+
+@Retention(RUNTIME)
+@Target(ANNOTATION_TYPE)
+@Documented
+public @interface Stereotype
+{
+
+ public Class<? extends Annotation>[] supportedScopes() default {};
+
+ public Class<?>[] requiredTypes() default {};
+
+}
Propchange: incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/Stereotype.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/TypeLiteral.java
URL: http://svn.apache.org/viewvc/incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/TypeLiteral.java?rev=719888&view=auto
==============================================================================
--- incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/TypeLiteral.java (added)
+++ incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/TypeLiteral.java Sat Nov 22 09:59:41 2008
@@ -0,0 +1,113 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package javax.webbeans;
+
+import java.lang.reflect.GenericArrayType;
+import java.lang.reflect.ParameterizedType;
+import java.lang.reflect.Type;
+import java.util.List;
+
+/**
+ * *********************************************************************************************
+ * This class and its method signatures is taken from the unpublished Web Beans
+ * API related code from the <a
+ * href="http://anonsvn.jboss.org/repos/webbeans/">Web Beans RI svn</a>
+ * ********************************************************************************************
+ */
+public abstract class TypeLiteral<T>
+{
+
+ private Type actualType;
+
+ protected TypeLiteral()
+ {
+ Class<?> typeLiteralSubclass = getTypeLiteralSubclass(this.getClass());
+ if (typeLiteralSubclass == null)
+ {
+ throw new RuntimeException(getClass() + " is not a subclass of TypeLiteral");
+ }
+ actualType = getTypeParameter(typeLiteralSubclass);
+ if (actualType == null)
+ {
+ throw new RuntimeException(getClass() + " is missing type parameter in TypeLiteral");
+ }
+ }
+
+ public final Type getType()
+ {
+ return actualType;
+ }
+
+ @SuppressWarnings("unchecked")
+ public final Class<T> getRawType()
+ {
+ Type type = getType();
+ if (type instanceof Class)
+ {
+ return (Class<T>) type;
+ } else if (type instanceof ParameterizedType)
+ {
+ return (Class<T>) ((ParameterizedType) type).getRawType();
+ } else if (type instanceof GenericArrayType)
+ {
+ return (Class<T>) Object[].class;
+ } else
+ {
+ throw new RuntimeException("Illegal type");
+ }
+ }
+
+ @SuppressWarnings("unchecked")
+ private static Class<?> getTypeLiteralSubclass(Class<?> clazz)
+ {
+ Class<?> superclass = clazz.getSuperclass();
+ if (superclass.equals(TypeLiteral.class))
+ {
+ return clazz;
+ } else if (superclass.equals(Object.class))
+ {
+ return null;
+ } else
+ {
+ return (getTypeLiteralSubclass(superclass));
+ }
+ }
+
+ @SuppressWarnings("unchecked")
+ private static Type getTypeParameter(Class<?> superclass)
+ {
+ Type type = superclass.getGenericSuperclass();
+ if (type instanceof ParameterizedType)
+ {
+ ParameterizedType parameterizedType = (ParameterizedType) type;
+ if (parameterizedType.getActualTypeArguments().length == 1)
+ {
+ return parameterizedType.getActualTypeArguments()[0];
+ }
+ }
+ return null;
+ }
+
+ public static void main(String[] args)
+ {
+ TypeLiteral<List<String>> s = new TypeLiteral<List<String>>(){};
+ System.out.println(s.getRawType()); //List
+ System.out.println(s.getType()); //List<String>
+ }
+
+ // TODO: equals(), hashCode()
+}
\ No newline at end of file
Propchange: incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/TypeLiteral.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/UnproxyableDependencyException.java
URL: http://svn.apache.org/viewvc/incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/UnproxyableDependencyException.java?rev=719888&view=auto
==============================================================================
--- incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/UnproxyableDependencyException.java (added)
+++ incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/UnproxyableDependencyException.java Sat Nov 22 09:59:41 2008
@@ -0,0 +1,43 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package javax.webbeans;
+
+public class UnproxyableDependencyException extends DeploymentException
+{
+ private static final long serialVersionUID = 7022231794856380239L;
+
+ public UnproxyableDependencyException()
+ {
+ super();
+ }
+
+ public UnproxyableDependencyException(String message)
+ {
+ super(message);
+ }
+
+ public UnproxyableDependencyException(Throwable e)
+ {
+ super(e);
+ }
+
+ public UnproxyableDependencyException(String message, Throwable e)
+ {
+ super(message, e);
+ }
+
+}
Propchange: incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/UnproxyableDependencyException.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/UnremovedException.java
URL: http://svn.apache.org/viewvc/incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/UnremovedException.java?rev=719888&view=auto
==============================================================================
--- incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/UnremovedException.java (added)
+++ incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/UnremovedException.java Sat Nov 22 09:59:41 2008
@@ -0,0 +1,44 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package javax.webbeans;
+
+public class UnremovedException extends ExecutionException
+{
+ private static final long serialVersionUID = 7580542333959184652L;
+
+ public UnremovedException()
+ {
+ super();
+ }
+
+ public UnremovedException(String message)
+ {
+ super(message);
+ }
+
+ public UnremovedException(Throwable e)
+ {
+ super(e);
+ }
+
+ public UnremovedException(String message, Throwable e)
+ {
+ super(message, e);
+ }
+
+
+}
Propchange: incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/UnremovedException.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/UnsatisfiedDependencyException.java
URL: http://svn.apache.org/viewvc/incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/UnsatisfiedDependencyException.java?rev=719888&view=auto
==============================================================================
--- incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/UnsatisfiedDependencyException.java (added)
+++ incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/UnsatisfiedDependencyException.java Sat Nov 22 09:59:41 2008
@@ -0,0 +1,43 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package javax.webbeans;
+
+public class UnsatisfiedDependencyException extends DeploymentException
+{
+ private static final long serialVersionUID = 8476513814387375212L;
+
+ public UnsatisfiedDependencyException()
+ {
+ super();
+ }
+
+ public UnsatisfiedDependencyException(String message)
+ {
+ super(message);
+ }
+
+ public UnsatisfiedDependencyException(Throwable e)
+ {
+ super(e);
+ }
+
+ public UnsatisfiedDependencyException(String message, Throwable e)
+ {
+ super(message, e);
+ }
+
+}
Propchange: incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/UnsatisfiedDependencyException.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/UnserializableDependencyException.java
URL: http://svn.apache.org/viewvc/incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/UnserializableDependencyException.java?rev=719888&view=auto
==============================================================================
--- incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/UnserializableDependencyException.java (added)
+++ incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/UnserializableDependencyException.java Sat Nov 22 09:59:41 2008
@@ -0,0 +1,43 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package javax.webbeans;
+
+public class UnserializableDependencyException extends DeploymentException
+{
+ private static final long serialVersionUID = 8071003021459701684L;
+
+ public UnserializableDependencyException()
+ {
+ super();
+ }
+
+ public UnserializableDependencyException(String message)
+ {
+ super(message);
+ }
+
+ public UnserializableDependencyException(Throwable e)
+ {
+ super(e);
+ }
+
+ public UnserializableDependencyException(String message, Throwable e)
+ {
+ super(message, e);
+ }
+
+}
Propchange: incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/UnserializableDependencyException.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/manager/Bean.java
URL: http://svn.apache.org/viewvc/incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/manager/Bean.java?rev=719888&view=auto
==============================================================================
--- incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/manager/Bean.java (added)
+++ incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/manager/Bean.java Sat Nov 22 09:59:41 2008
@@ -0,0 +1,120 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package javax.webbeans.manager;
+
+import java.lang.annotation.Annotation;
+import java.util.Set;
+
+
+/**
+* Web Beans component contract.
+*
+* @author gurkanerdogdu
+* @since 1.0
+*/
+@SuppressWarnings("unchecked")
+public abstract class Bean<T>
+{
+ /**Manager instance*/
+ private final Manager manager;
+
+ /**
+ * Constructs new web bean.
+ *
+ * @param manager manager instance
+ */
+ protected Bean(Manager manager)
+ {
+ this.manager = manager;
+ }
+
+ /**
+ * Gets manager.
+ *
+ * @return the manager
+ */
+ protected Manager getManager()
+ {
+ return manager;
+ }
+
+ /**
+ * Gets the set of api types of the web beans component.
+ *
+ * @return the set of api types
+ */
+ public abstract Set<Class<?>> getTypes();
+
+ /**
+ * Gets the set of binding types of the web beans component.
+ *
+ * @return the binding types
+ */
+ public abstract Set<Annotation> getBindingTypes();
+
+ /**
+ * Gets the scope type of the web beans component.
+ *
+ * @return scope type
+ */
+ public abstract Class<? extends Annotation> getScopeType();
+
+ /**
+ * Gets the deployment type of the web beans component.
+ *
+ * @return deployment type
+ */
+ public abstract Class<? extends Annotation> getDeploymentType();
+
+ /**
+ * Gets the name of the web beans component.
+ *
+ * @return name of the component
+ */
+ public abstract String getName();
+
+ /**
+ * Creates the new web beans component instance.
+ *
+ * @param container web beans container
+ * @return the new web beans component instance
+ */
+ public abstract T create();
+
+ /**
+ * Destoy the precreated web beans component instance.
+ *
+ * @param container web beans container
+ * @param instance web beans component instance
+ */
+ public abstract void destroy(T instance);
+
+ /**
+ * True if serializable.
+ *
+ * @return true if serializable
+ */
+ public abstract boolean isSerializable();
+
+ /**
+ * True if nullable.
+ *
+ * @return true if nullable
+ */
+ public abstract boolean isNullable();
+
+}
\ No newline at end of file
Propchange: incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/manager/Bean.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/manager/Context.java
URL: http://svn.apache.org/viewvc/incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/manager/Context.java?rev=719888&view=auto
==============================================================================
--- incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/manager/Context.java (added)
+++ incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/manager/Context.java Sat Nov 22 09:59:41 2008
@@ -0,0 +1,65 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package javax.webbeans.manager;
+
+import java.lang.annotation.Annotation;
+
+/**
+
+* @author gurkanerdogdu
+* @since 1.0
+*/
+public interface Context
+{
+ /**
+ * Gets the context scope type.
+ *
+ * @return context scope type
+ */
+ public Class<? extends Annotation> getScopeType();
+
+ /**
+ * Gets the given web beans component instance from the context.
+ * <p>
+ * If the create argument is true and the instance is not contained
+ * in the context, new instance is created and returned.
+ * </p>
+ *
+ * @param <T> generic type
+ * @param container web beans container
+ * @param component web beans component
+ * @param create creat or not flag
+ * @return the web beans component instance
+ */
+ public <T> T get(Bean<T> component, boolean create);
+
+ /**
+ * Removes the given web beans component from the context.
+ *
+ * @param <T> generic type
+ * @param component web beans component
+ */
+ @Deprecated
+ public <T> void remove(Manager container, Bean<T> component);
+
+ /**
+ * True if context is active
+ *
+ * @return true if context is active
+ */
+ boolean isActive();
+}
Propchange: incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/manager/Context.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/manager/Decorator.java
URL: http://svn.apache.org/viewvc/incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/manager/Decorator.java?rev=719888&view=auto
==============================================================================
--- incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/manager/Decorator.java (added)
+++ incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/manager/Decorator.java Sat Nov 22 09:59:41 2008
@@ -0,0 +1,41 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package javax.webbeans.manager;
+
+import java.lang.annotation.Annotation;
+import java.util.Set;
+
+/**
+ *
+ * @author <a href="mailto:gurkanerdogdu@yahoo.com">Gurkan Erdogdu</a>
+ *
+ */
+public abstract class Decorator extends Bean<Object>
+{
+
+ protected Decorator(Manager manager)
+ {
+ super(manager);
+ }
+
+ public abstract Class<?> getDelegateType();
+
+ public abstract Set<Annotation> getDelegateBindingTypes();
+
+ public abstract void setDelegate(Object instance, Object delegate);
+
+}
Propchange: incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/manager/Decorator.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/manager/EnterpriseBeanLookup.java
URL: http://svn.apache.org/viewvc/incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/manager/EnterpriseBeanLookup.java?rev=719888&view=auto
==============================================================================
--- incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/manager/EnterpriseBeanLookup.java (added)
+++ incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/manager/EnterpriseBeanLookup.java Sat Nov 22 09:59:41 2008
@@ -0,0 +1,29 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package javax.webbeans.manager;
+
+/**
+ *
+ * @author <a href="mailto:gurkanerdogdu@yahoo.com">Gurkan Erdogdu</a>
+ *
+ */
+public interface EnterpriseBeanLookup
+{
+
+ public Object lookup(String ejbName);
+
+}
Propchange: incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/manager/EnterpriseBeanLookup.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/manager/Initialized.java
URL: http://svn.apache.org/viewvc/incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/manager/Initialized.java?rev=719888&view=auto
==============================================================================
--- incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/manager/Initialized.java (added)
+++ incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/manager/Initialized.java Sat Nov 22 09:59:41 2008
@@ -0,0 +1,34 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package javax.webbeans.manager;
+
+import static java.lang.annotation.ElementType.FIELD;
+import static java.lang.annotation.ElementType.PARAMETER;
+import static java.lang.annotation.RetentionPolicy.RUNTIME;
+
+import java.lang.annotation.Retention;
+import java.lang.annotation.Target;
+
+import javax.webbeans.BindingType;
+
+@BindingType
+@Retention(RUNTIME)
+@Target( { FIELD, PARAMETER })
+public @interface Initialized
+{
+
+}
Propchange: incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/manager/Initialized.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/manager/InterceptionType.java
URL: http://svn.apache.org/viewvc/incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/manager/InterceptionType.java?rev=719888&view=auto
==============================================================================
--- incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/manager/InterceptionType.java (added)
+++ incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/manager/InterceptionType.java Sat Nov 22 09:59:41 2008
@@ -0,0 +1,26 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package javax.webbeans.manager;
+
+public enum InterceptionType
+{
+ AROUND_INVOKE,
+ POST_CONSTRUCT,
+ PRE_DESTROY,
+ PRE_PASSIVATE,
+ POST_ACTIVATE
+}
\ No newline at end of file
Propchange: incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/manager/InterceptionType.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/manager/Interceptor.java
URL: http://svn.apache.org/viewvc/incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/manager/Interceptor.java?rev=719888&view=auto
==============================================================================
--- incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/manager/Interceptor.java (added)
+++ incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/manager/Interceptor.java Sat Nov 22 09:59:41 2008
@@ -0,0 +1,35 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package javax.webbeans.manager;
+
+import java.lang.annotation.Annotation;
+import java.lang.reflect.Method;
+import java.util.Set;
+
+public abstract class Interceptor extends Bean<Object>
+{
+
+ protected Interceptor(Manager manager)
+ {
+ super(manager);
+ }
+
+ public abstract Set<Annotation> getInterceptorBindingTypes();
+
+ public abstract Method getMethod(InterceptionType type);
+
+}
Propchange: incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/manager/Interceptor.java
------------------------------------------------------------------------------
svn:eol-style = native
Added: incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/manager/Manager.java
URL: http://svn.apache.org/viewvc/incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/manager/Manager.java?rev=719888&view=auto
==============================================================================
--- incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/manager/Manager.java (added)
+++ incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/manager/Manager.java Sat Nov 22 09:59:41 2008
@@ -0,0 +1,122 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with
+ * the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package javax.webbeans.manager;
+
+import java.io.Serializable;
+import java.lang.annotation.Annotation;
+import java.util.List;
+import java.util.Set;
+
+import javax.webbeans.NonBinding;
+import javax.webbeans.Observer;
+import javax.webbeans.TypeLiteral;
+
+
+/**
+ * Resolution of the components contract of the <b>Web Beans Container</b>.
+ * There are two ways with regarding to the resolving components in the web
+ * beans container, resolution by type and resolution by name.
+ *
+ * <p>
+ * When resolving at the injection point, the web beans container uses the api
+ * type and binding type of the injected instance of the web bean component.
+ * Each web beans component has to be enabled for being candidate in regarding
+ * to resolution. Web Beans Container applies the following resolution procedure
+ * in order;
+ * </p>
+ *
+ * <p>
+ * <ul>
+ * <li> Inspect the type of the injected point to find all web beans component
+ * that has this API type. </li>
+ * <li> From the candidates, it selects the all components that satisfies the
+ * binding types of the injected point. If the injected point annotation has
+ * some member values, then it selects the web beans components with binding
+ * type (with {@link NonBinding} annotated member) that has same member values
+ * with the injected annoation value. </li>
+ * <li> If there are some components that has exactly the same binding type with
+ * the injected point, container narrows the component set containing just those
+ * components. </li>
+ * <li> Examine the precedence type of the narrowed set of components and
+ * selects the higher precedence of the components. Otherwise exception is
+ * thrown by the container. </li>
+ * </ul>
+ * </p>
+ *
+ * <p>
+ * Resolution by name procedure is as follows;
+ * </p>
+ *
+ * <p>
+ * <ul>
+ * <li>Container selects the set of enabled web beans components that has the
+ * given name</li>
+ * <li>Container selects the higher precedence from the set using the component
+ * type precedence</li>
+ * <li>If exactly one component is remained, the resolution results in that
+ * component, otherwise</li>
+ * exceptin is thrown by the container.
+ * </ul>
+ * </p>
+ *
+ * @author <a href="mailto:gurkanerdogdu@yahoo.com">Gurkan Erdogdu</a>
+ * @since 1.0
+ */
+@SuppressWarnings("unchecked")
+public interface Manager
+{
+ public <T> Set<Bean<T>> resolveByType(Class<T> type, Annotation... bindings);
+
+ public <T> Set<Bean<T>> resolveByType(TypeLiteral<T> apiType, Annotation... bindingTypes);
+
+ public <T> T getInstanceByType(Class<T> type, Annotation... bindingTypes);
+
+ public <T> T getInstanceByType(TypeLiteral<T> type, Annotation... bindingTypes);
+
+ public Set<Bean<?>> resolveByName(String name);
+
+ public Object getInstanceByName(String name);
+
+ public <T> T getInstance(Bean<T> bean);
+
+ public void fireEvent(Object event, Annotation... bindings);
+
+ public Context getContext(Class<? extends Annotation> scopeType);
+
+ public Manager addContext(Context context);
+
+ public Manager addBean(Bean<?> bean);
+
+ public Manager addInterceptor(Interceptor interceptor);
+
+ public Manager addDecorator(Decorator decorator);
+
+ public <T> Manager addObserver(Observer<T> observer, Class<T> eventType, Annotation... bindings);
+
+ public <T> Manager addObserver(Observer<T> observer, TypeLiteral<T> eventType, Annotation... bindings);
+
+ public <T> Manager removeObserver(Observer<T> observer, Class<T> eventType, Annotation... bindings);
+
+ public <T> Manager removeObserver(Observer<T> observer, TypeLiteral<T> eventType, Annotation... bindings);
+
+ public <T> Set<Observer<T>> resolveObservers(T event, Annotation... bindings);
+
+ public List<Interceptor> resolveInterceptors(InterceptionType type, Annotation... interceptorBindings);
+
+ public List<Decorator> resolveDecorators(Set<Class<?>> types, Annotation... bindingTypes);
+
+}
\ No newline at end of file
Propchange: incubator/openwebbeans/trunk/webbeans-api/src/main/java/javax/webbeans/manager/Manager.java
------------------------------------------------------------------------------
svn:eol-style = native