[jboss-cvs] JBossAS SVN: r99238 - projects/jboss-threads/trunk/jbossmc/src/main/resources/schema.

jboss-cvs-commits at lists.jboss.org jboss-cvs-commits at lists.jboss.org
Mon Jan 11 14:07:38 EST 2010


Author: david.lloyd at jboss.com
Date: 2010-01-11 14:07:38 -0500 (Mon, 11 Jan 2010)
New Revision: 99238

Added:
   projects/jboss-threads/trunk/jbossmc/src/main/resources/schema/jboss-threads_2_0.xsd
Removed:
   projects/jboss-threads/trunk/jbossmc/src/main/resources/schema/jboss-threads_1_1.xsd
Log:
JBoss Threads 2.0 schema

Deleted: projects/jboss-threads/trunk/jbossmc/src/main/resources/schema/jboss-threads_1_1.xsd
===================================================================
--- projects/jboss-threads/trunk/jbossmc/src/main/resources/schema/jboss-threads_1_1.xsd	2010-01-11 18:49:22 UTC (rev 99237)
+++ projects/jboss-threads/trunk/jbossmc/src/main/resources/schema/jboss-threads_1_1.xsd	2010-01-11 19:07:38 UTC (rev 99238)
@@ -1,359 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-
-<!--
-  ~ JBoss, Home of Professional Open Source.
-  ~ Copyright 2009, Red Hat Middleware LLC, and individual contributors
-  ~ as indicated by the @author tags. See the copyright.txt file in the
-  ~ distribution for a full listing of individual contributors.
-  ~
-  ~ This is free software; you can redistribute it and/or modify it
-  ~ under the terms of the GNU Lesser General Public License as
-  ~ published by the Free Software Foundation; either version 2.1 of
-  ~ the License, or (at your option) any later version.
-  ~
-  ~ This software is distributed in the hope that it will be useful,
-  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
-  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
-  ~ Lesser General Public License for more details.
-  ~
-  ~ You should have received a copy of the GNU Lesser General Public
-  ~ License along with this software; if not, write to the Free
-  ~ Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
-  ~ 02110-1301 USA, or see the FSF site: http://www.fsf.org.
-  -->
-
-<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
-            xmlns:xhtml="http://www.w3.org/1999/xhtml"
-            targetNamespace="urn:jboss:threads:1.1"
-            xmlns="urn:jboss:threads:1.1"
-            elementFormDefault="qualified"
-            attributeFormDefault="unqualified"
-            version="1.0">
-
-    <xsd:element name="threads" type="threads"/>
-
-    <xsd:complexType name="threads">
-        <xsd:annotation>
-            <xsd:documentation>
-                The root threads deployment element.  Specify thread groups, thread factories, and executors within.
-            </xsd:documentation>
-        </xsd:annotation>
-        <xsd:choice minOccurs="0" maxOccurs="unbounded">
-            <xsd:element name="thread-group" type="thread-group"/>
-            <xsd:element name="thread-factory" type="thread-factory"/>
-            <xsd:element name="thread-pool-executor" type="thread-pool-executor"/>
-            <xsd:element name="queueless-thread-pool-executor" type="queueless-thread-pool-executor"/>
-            <xsd:element name="scheduled-thread-pool-executor" type="scheduled-thread-pool-executor"/>
-            <xsd:element name="thread-factory-executor" type="thread-factory-executor"/>
-            <xsd:element name="direct-executor" type="direct-executor"/>
-            <xsd:element name="notating-executor" type="notating-executor"/>
-        </xsd:choice>
-    </xsd:complexType>
-
-    <xsd:complexType name="thread-group">
-        <xsd:annotation>
-            <xsd:documentation>
-                A thread group that can be referenced by a bean name.  The "name" attribute is the
-                bean name of the created thread group, used for injection.  The "group-name" attribute is
-                the JDK name of the thread group.  The optional "daemon" attribute specifies whether
-                threads should be forced to be daemon threads, or forced to be non-daemon threads (not
-                specifying this attribute will cause the thread group to inherit the daemon status from
-                its parent).  The optional "max-priority" attribute can be used to limit the priority of
-                threads within the group.  The optional "parent" attribute specifies the parent thread
-                group (by bean name).
-            </xsd:documentation>
-        </xsd:annotation>
-        <xsd:attribute name="name" type="xsd:string" use="required"/>
-        <xsd:attribute name="group-name" type="xsd:string" use="required"/>
-        <xsd:attribute name="daemon" type="xsd:boolean" use="optional"/>
-        <xsd:attribute name="max-priority" type="priority" use="optional"/>
-        <xsd:attribute name="parent" type="xsd:string" use="optional"/>
-    </xsd:complexType>
-
-    <xsd:complexType name="thread-factory">
-        <xsd:annotation>
-            <xsd:documentation>
-                A thread factory (implementing java.util.concurrent.ThreadFactory).  The "name" attribute is
-                the bean name of the created thread factory.  The "group-name" attribute specifies the bean name of
-                the thread group to be used for threads created by this factory.  The optional "daemon" attribute
-                specifies whether threads created by this factory should be forced to be daemon threads, or forced to be
-                non-daemon threads (not specifying this attribute will cause the thread group to inherit the daemon
-                status from its group).  The optional "initial-priority" attribute may be used to specify the thread
-                priority of created threads.
-
-                One nested "exception-handler" tag may be used to specify an uncaught exception handler for the
-                thread factory.
-            </xsd:documentation>
-        </xsd:annotation>
-
-        <xsd:all>
-            <xsd:element name="exception-handler" type="exception-handler" minOccurs="0" maxOccurs="1"/>
-        </xsd:all>
-
-        <xsd:attribute name="name" type="xsd:string" use="required"/>
-        <xsd:attribute name="group-name" type="xsd:string" use="required"/>
-        <xsd:attribute name="daemon" type="xsd:boolean" use="optional"/>
-        <xsd:attribute name="thread-name-pattern" type="xsd:string" use="optional"/>
-        <xsd:attribute name="initial-priority" type="priority" use="optional"/>
-    </xsd:complexType>
-
-    <xsd:simpleType name="priority">
-        <xsd:annotation>
-            <xsd:documentation>
-                A priority which can range from 1 to 10 (inclusive).  See <xhtml:a href="http://java.sun.com/javase/6/docs/api/java/lang/Thread.html#setPriority(int)">Thread.setPriority(int)</xhtml:a> for more information.
-            </xsd:documentation>
-        </xsd:annotation>
-        <xsd:restriction base="xsd:integer">
-            <xsd:minInclusive value="1"/>
-            <xsd:maxInclusive value="10"/>
-        </xsd:restriction>
-    </xsd:simpleType>
-
-    <xsd:complexType name="thread-factory-executor">
-        <xsd:annotation>
-            <xsd:documentation>
-                An executor which simply executes each task in a new thread.  The "name" attribute is the bean name of
-                the created executor.  The "thread-factory" attribute specifies the bean name of the thread factory to
-                use to create worker threads.
-            </xsd:documentation>
-        </xsd:annotation>
-        <xsd:attribute name="name" use="required"/>
-        <xsd:attribute name="thread-factory" use="required" type="xsd:string"/>
-    </xsd:complexType>
-
-    <xsd:complexType name="thread-pool-executor">
-        <xsd:annotation>
-            <xsd:documentation>
-                A thread pool executor.  The "name" attribute is the bean name of the created executor.  The
-                "thread-factory" attribute specifies the bean name of the thread factory to use to create worker
-                threads.  The nested "core-pool-size" element may be used to specify the core thread pool size.
-                The nested "max-pool-size" element may be used to specify the maximum thread pool size.  The nested
-                "keepalive-time" is used to specify the amount of time that threads beyond the core pool size should
-                be kept running when idle.  The nested "reject-policy" element may be used to specify how rejected tasks
-                are handled.
-            </xsd:documentation>
-        </xsd:annotation>
-        <xsd:all>
-            <xsd:element name="core-thread-count" type="thread-count" minOccurs="0" maxOccurs="1"/>
-            <xsd:element name="max-thread-count" type="thread-count" minOccurs="0" maxOccurs="1"/>
-            <xsd:element name="keepalive-time" type="time" minOccurs="0" maxOccurs="1"/>
-            <xsd:element name="reject-policy" type="reject-policy" minOccurs="0" maxOccurs="1"/>
-
-            <xsd:element name="tls-reset" type="tls-reset" minOccurs="0"/>
-        </xsd:all>
-        <xsd:attribute name="name" use="required" type="xsd:string"/>
-        <xsd:attribute name="thread-factory" use="required" type="xsd:string"/>
-        <xsd:attribute name="allow-core-timeout" use="optional" type="xsd:boolean"/>
-        <xsd:attribute name="queue-length" use="optional" type="xsd:integer"/>
-    </xsd:complexType>
-
-    <xsd:simpleType name="tls-reset">
-        <xsd:restriction base="xsd:string">
-            <xsd:enumeration value="disabled"/>
-            <xsd:enumeration value="tccl-only"/>
-            <xsd:enumeration value="enabled"/>
-        </xsd:restriction>
-    </xsd:simpleType>
-
-    <xsd:complexType name="queueless-thread-pool-executor">
-        <xsd:annotation>
-            <xsd:documentation>
-                A queueless thread pool executor.  The "name" attribute is the bean name of the created executor.  The
-                "thread-factory" attribute specifies the bean name of the thread factory to use to create worker
-                threads.  The nested "keepalive-time" is used to specify the amount of time that threads should
-                be kept running when idle.
-            </xsd:documentation>
-        </xsd:annotation>
-        <xsd:all>
-            <xsd:element name="max-thread-count" type="thread-count" minOccurs="0" maxOccurs="1"/>
-            <xsd:element name="keepalive-time" type="time" minOccurs="0" maxOccurs="1"/>
-        </xsd:all>
-        <xsd:attribute name="name" use="required" type="xsd:string"/>
-        <xsd:attribute name="thread-factory" use="required" type="xsd:string"/>
-    </xsd:complexType>
-
-    <xsd:complexType name="scheduled-thread-pool-executor">
-        <xsd:annotation>
-            <xsd:documentation>
-                A scheduled thread pool executor.  The "name" attribute is the bean name of the created executor.  The
-                "thread-factory" attribute specifies the bean name of the thread factory to use to create worker
-                threads.  The nested "pool-size" element may be used to specify the thread pool size.  The nested
-                "keepalive-time" element is used to specify the amount of time that threads should be kept running when idle.
-                The "executor-name" element may be used to specify an executor which should run tasks that are dequeued.
-                If it is not specified, then this executor's threads will run the tasks directly.
-            </xsd:documentation>
-        </xsd:annotation>
-        <xsd:all>
-            <xsd:element name="pool-size" type="thread-count" minOccurs="0" maxOccurs="1"/>
-            <xsd:element name="keepalive-time" type="time" minOccurs="0" maxOccurs="1"/>
-            <xsd:element name="executor-name" type="xsd:string" minOccurs="0" maxOccurs="1"/>
-        </xsd:all>
-        <xsd:attribute name="name" use="required" type="xsd:string"/>
-        <xsd:attribute name="thread-factory" use="required" type="xsd:string"/>
-    </xsd:complexType>
-
-    <xsd:complexType name="direct-executor">
-        <xsd:annotation>
-            <xsd:documentation>
-                An executor that executes tasks in the caller's thread.  The "name" attribute is the bean name of
-                the executor.
-            </xsd:documentation>
-        </xsd:annotation>
-        <xsd:attribute name="name" type="xsd:string" use="required"/>
-    </xsd:complexType>
-
-    <xsd:complexType name="notating-executor">
-        <xsd:annotation>
-            <xsd:documentation>
-                An executor which wraps another executor, and adds a notation to the name of a thread while that thread
-                is executing a task.  The "name" attribute is the bean name of the created executor.  The "parent"
-                attribute is the bean name of the executor to delegate tasks to.  The "note" element specifies the text
-                that is to be added to the thread name while it executes the task.
-            </xsd:documentation>
-        </xsd:annotation>
-        <xsd:attribute name="name" type="xsd:string" use="required"/>
-        <xsd:attribute name="parent" type="xsd:string" use="required"/>
-        <xsd:attribute name="note" type="xsd:string" use="required"/>
-    </xsd:complexType>
-
-    <xsd:complexType name="exception-handler">
-        <xsd:annotation>
-            <xsd:documentation>
-                A reference to an exception handler for a thread or executor.  The referenced bean should implement
-                java.lang.Thread.UncaughtExceptionHandler.
-            </xsd:documentation>
-        </xsd:annotation>
-        <xsd:attribute name="name" type="xsd:string" use="required"/>
-    </xsd:complexType>
-
-    <xsd:complexType name="interrupt-handler">
-        <xsd:attribute name="name" type="xsd:string" use="required"/>
-    </xsd:complexType>
-
-    <xsd:complexType name="thread-count">
-        <xsd:annotation>
-            <xsd:documentation>
-                A thread pool size designation.  The "count" attribute specifies a flat number of threads.  The
-                "per-cpu" attribute specifies a number of threads per CPU.  The numbers are added and rounded off
-                to an integer number of threads.
-            </xsd:documentation>
-        </xsd:annotation>
-        <xsd:attribute name="count" type="xsd:float" use="optional"/>
-        <xsd:attribute name="per-cpu" type="xsd:float" use="optional"/>
-    </xsd:complexType>
-
-    <xsd:complexType name="time">
-        <xsd:annotation>
-            <xsd:documentation>
-                An amount of time.  Comprised of a time value and a unit value.
-            </xsd:documentation>
-        </xsd:annotation>
-        <xsd:attribute name="time" type="xsd:integer" use="required"/>
-        <xsd:attribute name="unit" type="time-unit-name" use="required"/>
-    </xsd:complexType>
-
-    <xsd:complexType name="reject-policy">
-        <xsd:annotation>
-            <xsd:documentation>
-                Specify a task rejection policy for a thread pool executor.  This is the action that is taken when
-                all threads are busy and the task queue is full for an executor.  The "name" attribute specifies which
-                reject policy to use.  The "executor-name" attribute is used to specify a handoff executor
-                for policies that involve passing the task to another executor, and is required when the reject policy
-                is set to "handoff".
-            </xsd:documentation>
-        </xsd:annotation>
-        <xsd:attribute name="name" type="reject-policy-name" use="required"/>
-        <xsd:attribute name="executor-name" type="xsd:string" use="optional"/>
-    </xsd:complexType>
-
-    <xsd:simpleType name="reject-policy-name">
-        <xsd:annotation>
-            <xsd:documentation>
-                The name of the policy.  Possible values are "abort", "block", "caller-runs", "discard", "discard-oldest",
-                and "handoff".
-            </xsd:documentation>
-        </xsd:annotation>
-        <xsd:restriction base="xsd:string">
-            <xsd:enumeration value="abort">
-                <xsd:annotation>
-                    <xsd:documentation>
-                        <![CDATA[When a task cannot be accepted, a RejectedExecutionException is thrown.]]>
-                    </xsd:documentation>
-                </xsd:annotation>
-            </xsd:enumeration>
-            <xsd:enumeration value="block">
-                <xsd:annotation>
-                    <xsd:documentation>
-                        <![CDATA[Block until a task can be accepted.  If the thread is interrupted while waiting, a RejectedExecutionException is thrown.]]>
-                    </xsd:documentation>
-                </xsd:annotation>
-            </xsd:enumeration>
-            <xsd:enumeration value="caller-runs">
-                <xsd:annotation>
-                    <xsd:documentation>
-                        <![CDATA[When a task connot be accepted, the calling thread runs the task.]]>
-                    </xsd:documentation>
-                </xsd:annotation>
-            </xsd:enumeration>
-            <xsd:enumeration value="discard">
-                <xsd:annotation>
-                    <xsd:documentation>
-                        <![CDATA[When a task cannot be accepted, the task is discarded.]]>
-                    </xsd:documentation>
-                </xsd:annotation>
-            </xsd:enumeration>
-            <xsd:enumeration value="discard-oldest">
-                <xsd:annotation>
-                    <xsd:documentation>
-                        <![CDATA[When a task cannot be accepted, the task which has been in the queue for the longest is discarded to make room.]]>
-                    </xsd:documentation>
-                </xsd:annotation>
-            </xsd:enumeration>
-            <xsd:enumeration value="handoff">
-                <xsd:annotation>
-                    <xsd:documentation>
-                        <![CDATA[When a task cannot be accepted, the task is handed off to another Executor whose name is given in the executor-name attribute.]]>
-                    </xsd:documentation>
-                </xsd:annotation>
-            </xsd:enumeration>
-        </xsd:restriction>
-    </xsd:simpleType>
-
-    <xsd:simpleType name="time-unit-name">
-        <xsd:annotation>
-            <xsd:documentation>
-                The name of a unit of time.
-            </xsd:documentation>
-        </xsd:annotation>
-        <xsd:restriction base="xsd:string">
-
-            <xsd:enumeration value="s"/>
-            <xsd:enumeration value="sec"/>
-            <xsd:enumeration value="seconds"/>
-
-            <xsd:enumeration value="m"/>
-            <xsd:enumeration value="min"/>
-            <xsd:enumeration value="minutes"/>
-
-            <xsd:enumeration value="ms"/>
-            <xsd:enumeration value="milliseconds"/>
-
-            <xsd:enumeration value="ns"/>
-            <xsd:enumeration value="nanoseconds"/>
-
-            <xsd:enumeration value="h"/>
-            <xsd:enumeration value="hours"/>
-
-            <xsd:enumeration value="d"/>
-            <xsd:enumeration value="days"/>
-
-            <xsd:enumeration value="w"/>
-            <xsd:enumeration value="weeks"/>
-
-            <xsd:enumeration value="mon"/>
-            <xsd:enumeration value="months"/>
-
-        </xsd:restriction>
-    </xsd:simpleType>
-
-</xsd:schema>
\ No newline at end of file

Copied: projects/jboss-threads/trunk/jbossmc/src/main/resources/schema/jboss-threads_2_0.xsd (from rev 92150, projects/jboss-threads/trunk/jbossmc/src/main/resources/schema/jboss-threads_1_1.xsd)
===================================================================
--- projects/jboss-threads/trunk/jbossmc/src/main/resources/schema/jboss-threads_2_0.xsd	                        (rev 0)
+++ projects/jboss-threads/trunk/jbossmc/src/main/resources/schema/jboss-threads_2_0.xsd	2010-01-11 19:07:38 UTC (rev 99238)
@@ -0,0 +1,451 @@
+<?xml version="1.0" encoding="UTF-8"?>
+
+<!--
+  ~ JBoss, Home of Professional Open Source.
+  ~ Copyright 2009, Red Hat Middleware LLC, and individual contributors
+  ~ as indicated by the @author tags. See the copyright.txt file in the
+  ~ distribution for a full listing of individual contributors.
+  ~
+  ~ This is free software; you can redistribute it and/or modify it
+  ~ under the terms of the GNU Lesser General Public License as
+  ~ published by the Free Software Foundation; either version 2.1 of
+  ~ the License, or (at your option) any later version.
+  ~
+  ~ This software is distributed in the hope that it will be useful,
+  ~ but WITHOUT ANY WARRANTY; without even the implied warranty of
+  ~ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+  ~ Lesser General Public License for more details.
+  ~
+  ~ You should have received a copy of the GNU Lesser General Public
+  ~ License along with this software; if not, write to the Free
+  ~ Software Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA
+  ~ 02110-1301 USA, or see the FSF site: http://www.fsf.org.
+  -->
+
+<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+            xmlns:xhtml="http://www.w3.org/1999/xhtml"
+            targetNamespace="urn:jboss:threads:2.0"
+            xmlns="urn:jboss:threads:2.0"
+            elementFormDefault="qualified"
+            attributeFormDefault="unqualified"
+            version="1.0">
+
+    <!-- Root element -->
+    <xsd:element name="threads" type="threads"/>
+
+    <xsd:complexType name="threads">
+        <xsd:annotation>
+            <xsd:documentation>
+                The root threads deployment element.  Specify thread groups, thread factories, and executors within.
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:choice minOccurs="0" maxOccurs="unbounded">
+            <xsd:element name="thread" type="thread"/>
+            <xsd:element name="thread-group" type="thread-group"/>
+            <xsd:element name="thread-factory" type="thread-factory"/>
+            <xsd:element name="thread-factory-executor" type="thread-factory-executor"/>
+            <xsd:element name="unbounded-queue-thread-pool-executor" type="unbounded-queue-thread-pool-executor"/>
+            <xsd:element name="bounded-queue-thread-pool-executor" type="bounded-queue-thread-pool-executor"/>
+            <xsd:element name="queueless-thread-pool-executor" type="queueless-thread-pool-executor"/>
+            <xsd:element name="scheduled-thread-pool-executor" type="scheduled-thread-pool-executor"/>
+            <xsd:element name="unbounded-ordered-executor" type="unbounded-ordered-executor"/>
+            <xsd:element name="bounded-ordered-executor" type="bounded-ordered-executor"/>
+            <xsd:element name="direct-executor" type="direct-executor"/>
+        </xsd:choice>
+    </xsd:complexType>
+
+    <xsd:complexType name="thread">
+        <xsd:annotation>
+            <xsd:documentation>
+                A thread that is automatically started up.  When shutdown is requested, the thread's interrupt() method
+                is called.
+
+                The "name" attribute is the bean name of the created thread, used for injection.
+                The optional "daemon" attribute specifies whether it is a daemon or non-daemon thread (not
+                specifying this attribute will cause the thread to inherit the daemon status from
+                its thread factory).  The optional "priority" attribute can be used to specify the priority of
+                the thread.  The optional "thread-name-pattern" attribute specifies the name for this thread.
+
+                The "task" element specifies the Runnable task for the new thread.
+                The optional "thread-factory" element specifies the bean name of a specific thread factory to be used to
+                create this thread. The optional "exception-handler" element may be used to specify an
+                uncaught exception handler for the thread.  The optional "task-filter" element may be used to
+                specify a filter for the task handed to this thread.
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:all>
+            <xsd:element name="task" type="ref"/>
+            <xsd:element name="thread-factory" type="ref" minOccurs="0"/>
+            <xsd:element name="exception-handler" type="exception-handler" minOccurs="0"/>
+            <xsd:element name="task-filter" type="task-filter" minOccurs="0"/>
+        </xsd:all>
+        <xsd:attribute name="name" type="xsd:string" use="required"/>
+        <xsd:attribute name="daemon" type="xsd:boolean" use="optional"/>
+        <xsd:attribute name="thread-name-pattern" type="xsd:string" use="optional"/>
+        <xsd:attribute name="priority" type="priority" use="optional"/>
+    </xsd:complexType>
+
+    <xsd:complexType name="thread-group">
+        <xsd:annotation>
+            <xsd:documentation>
+                A thread group that can be referenced by a bean name.  The "name" attribute is the
+                bean name of the created thread group, used for injection.  The "group-name" attribute is
+                the JDK name of the thread group; if not specified, the bean name is used.
+                The optional "daemon" attribute specifies whether
+                threads should default to being daemon threads or non-daemon threads (not
+                specifying this attribute will cause the thread group to inherit the daemon status from
+                its parent).  The optional "max-priority" attribute can be used to limit the priority of
+                threads within the group.  The optional "parent-thread-group" element specifies the parent thread
+                group (by bean name).
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:all>
+            <xsd:element name="parent-thread-group" type="ref" minOccurs="0"/>
+        </xsd:all>
+        <xsd:attribute name="name" type="xsd:string" use="required"/>
+        <xsd:attribute name="group-name" type="xsd:string" use="optional"/>
+        <xsd:attribute name="daemon" type="xsd:boolean" use="optional"/>
+        <xsd:attribute name="max-priority" type="priority" use="optional"/>
+    </xsd:complexType>
+
+    <xsd:complexType name="thread-factory">
+        <xsd:annotation>
+            <xsd:documentation>
+                A thread factory (implementing java.util.concurrent.ThreadFactory).  The "name" attribute is
+                the bean name of the created thread factory.  The optional "daemon" attribute
+                specifies whether threads created by this factory should be forced to be daemon threads, or forced to be
+                non-daemon threads (not specifying this attribute will cause the thread to inherit the daemon
+                status from its group).  The optional "priority" attribute may be used to specify the thread
+                priority of created threads.
+
+                The optional "thread-group" element specifies the bean name of a specific thread group to be used for
+                threads created by this factory. The optional "exception-handler" element may be used to specify an
+                uncaught exception handler for the thread factory.  The optional "task-filter" element may be used to
+                specify a filter for the task handed to each created thread.
+            </xsd:documentation>
+        </xsd:annotation>
+
+        <xsd:all>
+            <xsd:element name="thread-group" type="ref" minOccurs="0"/>
+            <xsd:element name="exception-handler" type="exception-handler" minOccurs="0"/>
+            <xsd:element name="task-filter" type="task-filter" minOccurs="0"/>
+        </xsd:all>
+        <xsd:attribute name="name" type="xsd:string" use="required"/>
+        <xsd:attribute name="daemon" type="xsd:boolean" use="optional"/>
+        <xsd:attribute name="thread-name-pattern" type="xsd:string" use="optional"/>
+        <xsd:attribute name="priority" type="priority" use="optional"/>
+    </xsd:complexType>
+
+    <xsd:complexType name="thread-factory-executor">
+        <xsd:annotation>
+            <xsd:documentation>
+                An executor which simply executes each task in a new thread.  The "name" attribute is the bean name of
+                the created executor.
+
+                The optional "thread-factory" element specifies the bean name of a specific thread factory to
+                use to create worker threads.  The optional "task-filter" element may be used to
+                specify a filter for each executed task.
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:all>
+            <xsd:element name="thread-factory" type="ref" minOccurs="0"/>
+            <xsd:element name="task-filter" type="task-filter" minOccurs="0"/>
+        </xsd:all>
+        <xsd:attribute name="name" use="required"/>
+    </xsd:complexType>
+
+    <xsd:complexType name="unbounded-queue-thread-pool-executor">
+        <xsd:annotation>
+            <xsd:documentation>
+                A thread pool executor with an unbounded queue.  Such a thread pool has a core size and a queue with no
+                upper bound.  When a task is submitted, if the number of running threads is less than the core size,
+                a new thread is created.  Otherwise, the task is placed in queue.  If too many tasks are allowed to be
+                submitted to this type of executor, an out of memory condition may occur.
+
+                The "name" attribute is the bean name of the created executor.
+
+                The nested "core-thread-count" element must be used to specify the core thread pool size.  The nested
+                "keepalive-time" element may used to specify the amount of time that pool threads should
+                be kept running when idle; if not specified, threads will run until the executor is shut down.
+                The optional "task-filter" element may be used to specify a filter for each executed task. The
+                "thread-factory" element specifies the bean name of a specific thread factory to use to create worker
+                threads.
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:all>
+            <xsd:element name="core-thread-count" type="scaled-count"/>
+            <xsd:element name="keepalive-time" type="time" minOccurs="0"/>
+            <xsd:element name="task-filter" type="task-filter" minOccurs="0"/>
+            <xsd:element name="thread-factory" type="ref" minOccurs="0"/>
+        </xsd:all>
+        <xsd:attribute name="name" use="required" type="xsd:string"/>
+    </xsd:complexType>
+
+    <xsd:complexType name="bounded-queue-thread-pool-executor">
+        <xsd:annotation>
+            <xsd:documentation>
+                A thread pool executor with a bounded queue.  Such a thread pool has a core and maximum size and a
+                specified queue length.  When a task is submitted, if the number of running threads is less than the
+                core size, a new thread is created.  Otherwise, if there is room in the queue, the task is enqueued.
+                Otherwise, if the number of running threads is less than the maximum size, a new thread is created.
+                Otherwise, if blocking is enabled, the caller blocks until room becomes available in the queue.
+                Otherwise, the task is handed off to the designated handoff executor, if one is specified.  Otherwise,
+                the task is rejected.
+
+                The "name" attribute is the bean name of the created executor.  The "allow-core-timeout" attribute
+                specifies whether core threads may time out; if false, only threads above the core size will time out.
+                The "blocking" attribute specifies whether the submitter thread will block if no space is available in
+                this executor.
+
+                The required "core-thread-count" element specifies the core thread pool size.
+                The optional "max-thread-count" element may be used to specify the maximum thread pool size; if not specified,
+                it will default to be equal to the core pool size.  The required "queue-length" element specifies the
+                queue length.  The nested "keepalive-time" element may used to specify the amount of time that threads
+                beyond the core pool size should be kept running when idle.  The optional "task-filter" element may be
+                used to specify a filter for each executed task.  The optional "thread-factory" element specifies the
+                bean name of a specific thread factory to use to create worker threads.  The optional "handoff-executor"
+                element specifies an executor to delegate tasks to in the event that a task cannot be accepted.
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:all>
+            <xsd:element name="core-thread-count" type="scaled-count" minOccurs="1"/>
+            <xsd:element name="max-thread-count" type="scaled-count" minOccurs="0"/>
+            <xsd:element name="queue-length" type="scaled-count" minOccurs="1"/>
+            <xsd:element name="keepalive-time" type="time" minOccurs="0"/>
+            <xsd:element name="task-filter" type="task-filter" minOccurs="0"/>
+            <xsd:element name="thread-factory" type="ref" minOccurs="0"/>
+            <xsd:element name="handoff-executor" type="ref" minOccurs="0"/>
+        </xsd:all>
+        <xsd:attribute name="name" use="required" type="xsd:string"/>
+        <xsd:attribute name="allow-core-timeout" use="optional" type="xsd:boolean"/>
+        <xsd:attribute name="blocking" use="optional" type="xsd:boolean"/>
+    </xsd:complexType>
+
+    <xsd:complexType name="queueless-thread-pool-executor">
+        <xsd:annotation>
+            <xsd:documentation>
+                A thread pool executor with no queue.  When a task is submitted, if the number of running threads is
+                less than the maximum size, a new thread is created.  Otherwise, if blocking is enabled, the caller
+                blocks until another thread completes its task and accepts the new one.  Otherwise, the task is handed
+                off to the designated handoff executor, if one is specified.  Otherwise, the task is rejected.
+
+                A queueless thread pool executor.  The "name" attribute is the bean name of the created executor.  The
+                "thread-factory" attribute specifies the bean name of the thread factory to use to create worker
+                threads.  The nested "keepalive-time" is used to specify the amount of time that threads should
+                be kept running when idle.
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:all>
+            <xsd:element name="max-thread-count" type="scaled-count"/>
+            <xsd:element name="keepalive-time" type="time" minOccurs="0"/>
+            <xsd:element name="task-filter" type="task-filter" minOccurs="0"/>
+            <xsd:element name="thread-factory" type="ref" minOccurs="0"/>
+            <xsd:element name="handoff-executor" type="ref" minOccurs="0"/>
+        </xsd:all>
+        <xsd:attribute name="name" use="required" type="xsd:string"/>
+        <xsd:attribute name="blocking" use="optional" type="xsd:boolean"/>
+    </xsd:complexType>
+
+    <xsd:complexType name="scheduled-thread-pool-executor">
+        <xsd:annotation>
+            <xsd:documentation>
+                A scheduled thread pool executor.  The "name" attribute is the bean name of the created executor.  The
+                "thread-factory" attribute specifies the bean name of the thread factory to use to create worker
+                threads.  The nested "pool-size" element may be used to specify the thread pool size.  The nested
+                "keepalive-time" element is used to specify the amount of time that threads should be kept running when idle.
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:all>
+            <xsd:element name="core-thread-count" type="scaled-count"/>
+            <xsd:element name="keepalive-time" type="time" minOccurs="0"/>
+            <xsd:element name="task-filter" type="task-filter" minOccurs="0"/>
+            <xsd:element name="thread-factory" type="ref" minOccurs="0"/>
+        </xsd:all>
+        <xsd:attribute name="name" use="required" type="xsd:string"/>
+    </xsd:complexType>
+
+    <xsd:complexType name="unbounded-ordered-executor">
+        <xsd:annotation>
+            <xsd:documentation>
+                An executor which runs tasks in order using the given delegate executor.
+
+                The "name" attribute specifies the bean name of the created executor.  The "factory" attribute specifies
+                whether the executor bean should be treated as a factory (that is, every time it is referenced in an
+                injection, a new instance is created) or as a single instance.
+
+                The "parent-executor" element specifies the delegate executor which runs the actual tasks.
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:all>
+            <xsd:element name="parent-executor" type="ref" minOccurs="1"/>
+        </xsd:all>
+        <xsd:attribute name="name" use="required" type="xsd:string"/>
+        <xsd:attribute name="factory" use="optional" type="xsd:boolean" default="false"/>
+    </xsd:complexType>
+
+    <xsd:complexType name="bounded-ordered-executor">
+        <xsd:annotation>
+            <xsd:documentation>
+                An executor which runs tasks in order using the given delegate executor, with a bounded queue size.
+
+                The "name" attribute specifies the bean name of the created executor.  The "factory" attribute specifies
+                whether the executor bean should be treated as a factory (that is, every time it is referenced in an
+                injection, a new instance is created) or as a single instance.  The "blocking" attribute specifies whether
+                the submitting task should block rather than hand off or reject the task if the queue is full.
+
+                The "parent-executor" element specifies the delegate executor which runs the actual tasks.  The
+                "queue-length" element specifies the size of the queue to use.  The "handoff-executor" element specifies
+                the executor to send a task to if the queue is full when the task is submitted.
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:all>
+            <xsd:element name="parent-executor" type="ref"/>
+            <xsd:element name="queue-length" type="scaled-count"/>
+            <xsd:element name="handoff-executor" type="ref" minOccurs="0"/>
+        </xsd:all>
+        <xsd:attribute name="name" use="required" type="xsd:string"/>
+        <xsd:attribute name="factory" use="optional" type="xsd:boolean" default="false"/>
+        <xsd:attribute name="blocking" use="optional" type="xsd:boolean"/>
+    </xsd:complexType>
+
+    <xsd:complexType name="direct-executor">
+        <xsd:annotation>
+            <xsd:documentation>
+                An executor which runs the submitted task in the calling thread, with an optional filter.
+
+                The "task-filter" element specifies any filter which should be applied to tasks on submission.
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:all>
+            <xsd:element name="task-filter" type="task-filter" minOccurs="0"/>
+        </xsd:all>
+        <xsd:attribute name="name" type="xsd:string" use="required"/>
+    </xsd:complexType>
+
+    <!-- Support types-->
+
+    <xsd:complexType name="task-filter">
+        <xsd:annotation>
+            <xsd:documentation>
+                A filter specification for tasks.  The filter elements are applied in order.  The "direct-executor-name"
+                attribute optionally specifies a reference to a specific org.jboss.threads.DirectExecutor to delegate
+                the final task to.
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:choice minOccurs="0" maxOccurs="unbounded">
+            <xsd:element name="thread-name" type="xsd:string"/>
+            <xsd:element name="thread-name-notation" type="xsd:string"/>
+            <xsd:element name="log-exceptions" type="logger-ref"/>
+            <xsd:element name="clear-tls"/>
+            <xsd:element name="clear-context-classloader"/>
+            <xsd:element name="initializer" type="ref"/>
+            <xsd:element name="cleaner" type="ref"/>
+        </xsd:choice>
+        <xsd:attribute name="direct-executor-name" type="xsd:string" use="optional"/>
+    </xsd:complexType>
+
+    <xsd:simpleType name="priority">
+        <xsd:annotation>
+            <xsd:documentation>
+                A priority which can range from 1 to 10 (inclusive).  See <xhtml:a href="http://java.sun.com/javase/6/docs/api/java/lang/Thread.html#setPriority(int)">Thread.setPriority(int)</xhtml:a> for more information.
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:restriction base="xsd:integer">
+            <xsd:minInclusive value="1"/>
+            <xsd:maxInclusive value="10"/>
+        </xsd:restriction>
+    </xsd:simpleType>
+
+    <xsd:complexType name="ref">
+        <xsd:annotation>
+            <xsd:documentation>
+                A reference to another bean.
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:attribute name="name" type="xsd:string" use="required"/>
+    </xsd:complexType>
+
+    <xsd:complexType name="logger-ref">
+        <xsd:annotation>
+            <xsd:documentation>
+                A reference to a logger category and level.
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:attribute name="category" type="xsd:string" use="required"/>
+        <xsd:attribute name="level" type="xsd:string" use="optional"/>
+    </xsd:complexType>
+
+    <xsd:complexType name="exception-handler">
+        <xsd:annotation>
+            <xsd:documentation>
+                A reference to an exception handler for a thread or executor.  The referenced bean should implement
+                java.lang.Thread.UncaughtExceptionHandler.
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:attribute name="name" type="xsd:string" use="required"/>
+    </xsd:complexType>
+
+    <xsd:complexType name="interrupt-handler">
+        <xsd:attribute name="name" type="xsd:string" use="required"/>
+    </xsd:complexType>
+
+    <xsd:complexType name="scaled-count">
+        <xsd:annotation>
+            <xsd:documentation>
+                A scaled size designation.  The "count" attribute specifies a flat quantity.  The
+                "per-cpu" attribute specifies a quantity per CPU.  The numbers are added and rounded off
+                to an integer value.
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:attribute name="count" type="xsd:float" use="optional"/>
+        <xsd:attribute name="per-cpu" type="xsd:float" use="optional"/>
+    </xsd:complexType>
+
+    <xsd:complexType name="time">
+        <xsd:annotation>
+            <xsd:documentation>
+                An amount of time.  Comprised of a time value and a unit value.
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:attribute name="time" type="xsd:integer" use="required"/>
+        <xsd:attribute name="unit" type="time-unit-name" use="required"/>
+    </xsd:complexType>
+
+    <xsd:simpleType name="time-unit-name">
+        <xsd:annotation>
+            <xsd:documentation>
+                The name of a unit of time.
+            </xsd:documentation>
+        </xsd:annotation>
+        <xsd:restriction base="xsd:string">
+
+            <xsd:enumeration value="s"/>
+            <xsd:enumeration value="sec"/>
+            <xsd:enumeration value="seconds"/>
+
+            <xsd:enumeration value="m"/>
+            <xsd:enumeration value="min"/>
+            <xsd:enumeration value="minutes"/>
+
+            <xsd:enumeration value="ms"/>
+            <xsd:enumeration value="milliseconds"/>
+
+            <xsd:enumeration value="ns"/>
+            <xsd:enumeration value="nanoseconds"/>
+
+            <xsd:enumeration value="h"/>
+            <xsd:enumeration value="hours"/>
+
+            <xsd:enumeration value="d"/>
+            <xsd:enumeration value="days"/>
+
+            <xsd:enumeration value="w"/>
+            <xsd:enumeration value="weeks"/>
+
+            <xsd:enumeration value="mon"/>
+            <xsd:enumeration value="months"/>
+
+        </xsd:restriction>
+    </xsd:simpleType>
+
+</xsd:schema>
\ No newline at end of file




More information about the jboss-cvs-commits mailing list