You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sling.apache.org by ro...@apache.org on 2017/11/07 09:24:57 UTC

[sling-org-apache-sling-commons-threads] annotated tag org.apache.sling.commons.threads-2.0.4-incubator created (now 86a1c90)

This is an automated email from the ASF dual-hosted git repository.

rombert pushed a change to annotated tag org.apache.sling.commons.threads-2.0.4-incubator
in repository https://gitbox.apache.org/repos/asf/sling-org-apache-sling-commons-threads.git.


      at 86a1c90  (tag)
 tagging 07437df036346ad655b0ffb562717c7589aa3c36 (commit)
      by Felix Meschberger
      on Thu Jun 18 09:21:02 2009 +0000

- Log -----------------------------------------------------------------
org.apache.sling.commons.threads-2.0.4-incubator
-----------------------------------------------------------------------

This annotated tag includes the following new commits:

     new cdf4581  Add new threads module for providing thread pools.
     new c3a54e0  Set svn:ignore
     new 6569a93  Use thread pool to create new threads instead of directly instantiating threads.
     new a216040  Create own thread pool for eventing.
     new 5dfc716  Use thread pooling for scheduler as well. Create own pool for eventing.
     new f8c7fb7  Use jvm default thread factory and always provide priority and daemon settings.
     new a5761c4  Use thread pool configuration object to be extensible.
     new b9020b0  Move licence and notice to top level dir.
     new e413af3  Add incubator disclaimer.
     new 1597daa  Add notice files.
     new 3020eb2  Write first element in pom in one line (to avoid problems with the maven release plugin) and minor pom fixes.
     new 2c687bd  Update notice files.
     new 4c666b9  SLING-417: Move sling/threads to commons/threads
     new 8d1f9f1  SLING-417: Move threads to commons.
     new 23e3268  Eclude maven-eclipse.xml generated by the maven eclipse plugin.
     new 5fa8b5a  SLING-442: Clean up exports, imports, dependencies and used plugins.
     new f7b228d  SLING-479 Fix @scr.tags:   - normalize metadata attribute settings to "no"   - ensure proper metadata and ds attributes are set   - create metatype.properties files where required   - fix metatype.properties files
     new b8442a7  SLING-483: Add excludes for javadocs (WiP)
     new f31810f  SLING-495 - NOTICE files generated using mknotice script
     new 7a30ca2  SLING-495 - NOTICE files updated according to changes in revision 662927
     new fc95c64  SLING-495 - NOTICE files regenerated with revision 663097 changes
     new 601db57  Use released version of parent pom.
     new e4986f9  [maven-release-plugin] prepare release org.apache.sling.commons.threads-2.0.0-incubator
     new 7097543  [maven-release-plugin] prepare for next development iteration
     new bac4721  Fix reference to parent pom.
     new 88286dd  SLING-521: Restore more notice files.
     new dc0cc02  SLING-521: Separate between notice files for bin and src dists.
     new 82242fd  SLING-521: Separate between notice files for bin and src dists.
     new 64c2458  SLING-521: Separate between notice files for bin and src dists.
     new b29c28c  Change copyright year to 2008.
     new 88db633  Update to released versions.
     new 3aaff93  [maven-release-plugin] prepare release org.apache.sling.commons.threads-2.0.2-incubator
     new c5e1a11  [maven-release-plugin] prepare for next development iteration
     new bac3bfb  Use latest snapshots again to make project buildable.
     new 0720836  Use released parent pom where possible.
     new bb289e6  SLING-555 : Update all poms to use the latest parent pom; update parent pom to include the incubator repo for plugins and use latest plugins.
     new daee250  SLING-758 : Correctly evaluate block policy and use the correct handler.
     new 194ca0d  Add more logging to easier detect pool problems.
     new 21e9144  SLING-808 : Increase version to 5-incubator-SNAPSHOT
     new 3ad9b97  Update notice files to include 2009 in copyright statement.
     new 58081a1  SLING-829 Cosmetics to the bundle/project names
     new 3a9b17c  SLING-865 : Move to bundles
     new ae528ef  SLING-865 : Adjust reactor pom and svn information in each module.
     new 6807294  SLING-865 : Adjust path to parent pom and add profiles for samples and contrib
     new a3c6e3b  [maven-release-plugin]  copy for tag org.apache.sling.commons.threads-2.0.4-incubator
     new 72f4ebe  Move Sling to new TLP location
     new 07437df  Move Sling to new TLP location

The 47 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


-- 
To stop receiving notification emails like this one, please contact
['"commits@sling.apache.org" <co...@sling.apache.org>'].

[sling-org-apache-sling-commons-threads] 10/17: Update notice files to include 2009 in copyright statement.

Posted by ro...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

rombert pushed a commit to annotated tag org.apache.sling.commons.threads-2.0.4-incubator
in repository https://gitbox.apache.org/repos/asf/sling-org-apache-sling-commons-threads.git

commit 3ad9b97bc56708d933c702fc8574d96fe3f77285
Author: Carsten Ziegeler <cz...@apache.org>
AuthorDate: Wed Jan 7 09:07:02 2009 +0000

    Update notice files to include 2009 in copyright statement.
    
    git-svn-id: https://svn.apache.org/repos/asf/incubator/sling/trunk/commons/threads@732280 13f79535-47bb-0310-9956-ffa450edef68
---
 NOTICE                             | 2 +-
 src/main/resources/META-INF/NOTICE | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/NOTICE b/NOTICE
index 3a4d87e..6bd7482 100644
--- a/NOTICE
+++ b/NOTICE
@@ -1,5 +1,5 @@
 Apache Sling Threads
-Copyright 2008 The Apache Software Foundation
+Copyright 2008-2009 The Apache Software Foundation
 
 Apache Sling is based on source code originally developed 
 by Day Software (http://www.day.com/).
diff --git a/src/main/resources/META-INF/NOTICE b/src/main/resources/META-INF/NOTICE
index 3a4d87e..6bd7482 100644
--- a/src/main/resources/META-INF/NOTICE
+++ b/src/main/resources/META-INF/NOTICE
@@ -1,5 +1,5 @@
 Apache Sling Threads
-Copyright 2008 The Apache Software Foundation
+Copyright 2008-2009 The Apache Software Foundation
 
 Apache Sling is based on source code originally developed 
 by Day Software (http://www.day.com/).

-- 
To stop receiving notification emails like this one, please contact
"commits@sling.apache.org" <co...@sling.apache.org>.

[sling-org-apache-sling-commons-threads] 14/17: SLING-865 : Adjust path to parent pom and add profiles for samples and contrib

Posted by ro...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

rombert pushed a commit to annotated tag org.apache.sling.commons.threads-2.0.4-incubator
in repository https://gitbox.apache.org/repos/asf/sling-org-apache-sling-commons-threads.git

commit 6807294a7a8b98f9ca80290e3b237a5980571b33
Author: Carsten Ziegeler <cz...@apache.org>
AuthorDate: Sun Feb 22 15:19:05 2009 +0000

    SLING-865 : Adjust path to parent pom and add profiles for samples and contrib
    
    git-svn-id: https://svn.apache.org/repos/asf/incubator/sling/trunk/bundles/commons/threads@746728 13f79535-47bb-0310-9956-ffa450edef68
---
 pom.xml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/pom.xml b/pom.xml
index df38807..aa97135 100644
--- a/pom.xml
+++ b/pom.xml
@@ -24,7 +24,7 @@
         <groupId>org.apache.sling</groupId>
         <artifactId>sling</artifactId>
         <version>5-incubator-SNAPSHOT</version>
-        <relativePath>../../parent/pom.xml</relativePath>
+        <relativePath>../../../parent/pom.xml</relativePath>
     </parent>
 
     <artifactId>org.apache.sling.commons.threads</artifactId>

-- 
To stop receiving notification emails like this one, please contact
"commits@sling.apache.org" <co...@sling.apache.org>.

[sling-org-apache-sling-commons-threads] 16/17: Move Sling to new TLP location

Posted by ro...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

rombert pushed a commit to annotated tag org.apache.sling.commons.threads-2.0.4-incubator
in repository https://gitbox.apache.org/repos/asf/sling-org-apache-sling-commons-threads.git

commit 72f4ebec4252ae0c30c43cbb9c3b47eb07c62dfb
Author: Felix Meschberger <fm...@apache.org>
AuthorDate: Thu Jun 18 09:21:02 2009 +0000

    Move Sling to new TLP location
    
    git-svn-id: https://svn.eu.apache.org/repos/asf/sling/tags/org.apache.sling.commons.threads-2.0.4-incubator@785979 13f79535-47bb-0310-9956-ffa450edef68
---
 LICENSE                                            | 202 +++++++++++++++++++++
 NOTICE                                             |   8 +
 README.txt                                         |  36 ++++
 pom.xml                                            |  91 ++++++++++
 .../apache/sling/commons/threads/ThreadPool.java   |  44 +++++
 .../sling/commons/threads/ThreadPoolConfig.java    | 202 +++++++++++++++++++++
 .../sling/commons/threads/ThreadPoolManager.java   |  56 ++++++
 .../commons/threads/impl/DefaultThreadPool.java    | 201 ++++++++++++++++++++
 .../threads/impl/DefaultThreadPoolManager.java     | 133 ++++++++++++++
 .../threads/impl/ExtendedThreadFactory.java        |  79 ++++++++
 src/main/resources/META-INF/DISCLAIMER             |   7 +
 src/main/resources/META-INF/LICENSE                | 202 +++++++++++++++++++++
 src/main/resources/META-INF/NOTICE                 |   8 +
 13 files changed, 1269 insertions(+)

diff --git a/LICENSE b/LICENSE
new file mode 100644
index 0000000..d645695
--- /dev/null
+++ b/LICENSE
@@ -0,0 +1,202 @@
+
+                                 Apache License
+                           Version 2.0, January 2004
+                        http://www.apache.org/licenses/
+
+   TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
+
+   1. Definitions.
+
+      "License" shall mean the terms and conditions for use, reproduction,
+      and distribution as defined by Sections 1 through 9 of this document.
+
+      "Licensor" shall mean the copyright owner or entity authorized by
+      the copyright owner that is granting the License.
+
+      "Legal Entity" shall mean the union of the acting entity and all
+      other entities that control, are controlled by, or are under common
+      control with that entity. For the purposes of this definition,
+      "control" means (i) the power, direct or indirect, to cause the
+      direction or management of such entity, whether by contract or
+      otherwise, or (ii) ownership of fifty percent (50%) or more of the
+      outstanding shares, or (iii) beneficial ownership of such entity.
+
+      "You" (or "Your") shall mean an individual or Legal Entity
+      exercising permissions granted by this License.
+
+      "Source" form shall mean the preferred form for making modifications,
+      including but not limited to software source code, documentation
+      source, and configuration files.
+
+      "Object" form shall mean any form resulting from mechanical
+      transformation or translation of a Source form, including but
+      not limited to compiled object code, generated documentation,
+      and conversions to other media types.
+
+      "Work" shall mean the work of authorship, whether in Source or
+      Object form, made available under the License, as indicated by a
+      copyright notice that is included in or attached to the work
+      (an example is provided in the Appendix below).
+
+      "Derivative Works" shall mean any work, whether in Source or Object
+      form, that is based on (or derived from) the Work and for which the
+      editorial revisions, annotations, elaborations, or other modifications
+      represent, as a whole, an original work of authorship. For the purposes
+      of this License, Derivative Works shall not include works that remain
+      separable from, or merely link (or bind by name) to the interfaces of,
+      the Work and Derivative Works thereof.
+
+      "Contribution" shall mean any work of authorship, including
+      the original version of the Work and any modifications or additions
+      to that Work or Derivative Works thereof, that is intentionally
+      submitted to Licensor for inclusion in the Work by the copyright owner
+      or by an individual or Legal Entity authorized to submit on behalf of
+      the copyright owner. For the purposes of this definition, "submitted"
+      means any form of electronic, verbal, or written communication sent
+      to the Licensor or its representatives, including but not limited to
+      communication on electronic mailing lists, source code control systems,
+      and issue tracking systems that are managed by, or on behalf of, the
+      Licensor for the purpose of discussing and improving the Work, but
+      excluding communication that is conspicuously marked or otherwise
+      designated in writing by the copyright owner as "Not a Contribution."
+
+      "Contributor" shall mean Licensor and any individual or Legal Entity
+      on behalf of whom a Contribution has been received by Licensor and
+      subsequently incorporated within the Work.
+
+   2. Grant of Copyright License. Subject to the terms and conditions of
+      this License, each Contributor hereby grants to You a perpetual,
+      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+      copyright license to reproduce, prepare Derivative Works of,
+      publicly display, publicly perform, sublicense, and distribute the
+      Work and such Derivative Works in Source or Object form.
+
+   3. Grant of Patent License. Subject to the terms and conditions of
+      this License, each Contributor hereby grants to You a perpetual,
+      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+      (except as stated in this section) patent license to make, have made,
+      use, offer to sell, sell, import, and otherwise transfer the Work,
+      where such license applies only to those patent claims licensable
+      by such Contributor that are necessarily infringed by their
+      Contribution(s) alone or by combination of their Contribution(s)
+      with the Work to which such Contribution(s) was submitted. If You
+      institute patent litigation against any entity (including a
+      cross-claim or counterclaim in a lawsuit) alleging that the Work
+      or a Contribution incorporated within the Work constitutes direct
+      or contributory patent infringement, then any patent licenses
+      granted to You under this License for that Work shall terminate
+      as of the date such litigation is filed.
+
+   4. Redistribution. You may reproduce and distribute copies of the
+      Work or Derivative Works thereof in any medium, with or without
+      modifications, and in Source or Object form, provided that You
+      meet the following conditions:
+
+      (a) You must give any other recipients of the Work or
+          Derivative Works a copy of this License; and
+
+      (b) You must cause any modified files to carry prominent notices
+          stating that You changed the files; and
+
+      (c) You must retain, in the Source form of any Derivative Works
+          that You distribute, all copyright, patent, trademark, and
+          attribution notices from the Source form of the Work,
+          excluding those notices that do not pertain to any part of
+          the Derivative Works; and
+
+      (d) If the Work includes a "NOTICE" text file as part of its
+          distribution, then any Derivative Works that You distribute must
+          include a readable copy of the attribution notices contained
+          within such NOTICE file, excluding those notices that do not
+          pertain to any part of the Derivative Works, in at least one
+          of the following places: within a NOTICE text file distributed
+          as part of the Derivative Works; within the Source form or
+          documentation, if provided along with the Derivative Works; or,
+          within a display generated by the Derivative Works, if and
+          wherever such third-party notices normally appear. The contents
+          of the NOTICE file are for informational purposes only and
+          do not modify the License. You may add Your own attribution
+          notices within Derivative Works that You distribute, alongside
+          or as an addendum to the NOTICE text from the Work, provided
+          that such additional attribution notices cannot be construed
+          as modifying the License.
+
+      You may add Your own copyright statement to Your modifications and
+      may provide additional or different license terms and conditions
+      for use, reproduction, or distribution of Your modifications, or
+      for any such Derivative Works as a whole, provided Your use,
+      reproduction, and distribution of the Work otherwise complies with
+      the conditions stated in this License.
+
+   5. Submission of Contributions. Unless You explicitly state otherwise,
+      any Contribution intentionally submitted for inclusion in the Work
+      by You to the Licensor shall be under the terms and conditions of
+      this License, without any additional terms or conditions.
+      Notwithstanding the above, nothing herein shall supersede or modify
+      the terms of any separate license agreement you may have executed
+      with Licensor regarding such Contributions.
+
+   6. Trademarks. This License does not grant permission to use the trade
+      names, trademarks, service marks, or product names of the Licensor,
+      except as required for reasonable and customary use in describing the
+      origin of the Work and reproducing the content of the NOTICE file.
+
+   7. Disclaimer of Warranty. Unless required by applicable law or
+      agreed to in writing, Licensor provides the Work (and each
+      Contributor provides its Contributions) on an "AS IS" BASIS,
+      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+      implied, including, without limitation, any warranties or conditions
+      of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
+      PARTICULAR PURPOSE. You are solely responsible for determining the
+      appropriateness of using or redistributing the Work and assume any
+      risks associated with Your exercise of permissions under this License.
+
+   8. Limitation of Liability. In no event and under no legal theory,
+      whether in tort (including negligence), contract, or otherwise,
+      unless required by applicable law (such as deliberate and grossly
+      negligent acts) or agreed to in writing, shall any Contributor be
+      liable to You for damages, including any direct, indirect, special,
+      incidental, or consequential damages of any character arising as a
+      result of this License or out of the use or inability to use the
+      Work (including but not limited to damages for loss of goodwill,
+      work stoppage, computer failure or malfunction, or any and all
+      other commercial damages or losses), even if such Contributor
+      has been advised of the possibility of such damages.
+
+   9. Accepting Warranty or Additional Liability. While redistributing
+      the Work or Derivative Works thereof, You may choose to offer,
+      and charge a fee for, acceptance of support, warranty, indemnity,
+      or other liability obligations and/or rights consistent with this
+      License. However, in accepting such obligations, You may act only
+      on Your own behalf and on Your sole responsibility, not on behalf
+      of any other Contributor, and only if You agree to indemnify,
+      defend, and hold each Contributor harmless for any liability
+      incurred by, or claims asserted against, such Contributor by reason
+      of your accepting any such warranty or additional liability.
+
+   END OF TERMS AND CONDITIONS
+
+   APPENDIX: How to apply the Apache License to your work.
+
+      To apply the Apache License to your work, attach the following
+      boilerplate notice, with the fields enclosed by brackets "[]"
+      replaced with your own identifying information. (Don't include
+      the brackets!)  The text should be enclosed in the appropriate
+      comment syntax for the file format. We also recommend that a
+      file or class name and description of purpose be included on the
+      same "printed page" as the copyright notice for easier
+      identification within third-party archives.
+
+   Copyright [yyyy] [name of copyright owner]
+
+   Licensed 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.
diff --git a/NOTICE b/NOTICE
new file mode 100644
index 0000000..6bd7482
--- /dev/null
+++ b/NOTICE
@@ -0,0 +1,8 @@
+Apache Sling Threads
+Copyright 2008-2009 The Apache Software Foundation
+
+Apache Sling is based on source code originally developed 
+by Day Software (http://www.day.com/).
+
+This product includes software developed at
+The Apache Software Foundation (http://www.apache.org/).
diff --git a/README.txt b/README.txt
new file mode 100644
index 0000000..37ca813
--- /dev/null
+++ b/README.txt
@@ -0,0 +1,36 @@
+Apache Sling Threads
+
+Support for thread handling like pooling.
+
+Disclaimer
+==========
+Apache Sling is an effort undergoing incubation at The Apache Software Foundation (ASF),
+sponsored by the Apache Jackrabbit PMC. Incubation is required of all newly accepted
+projects until a further review indicates that the infrastructure, communications,
+and decision making process have stabilized in a manner consistent with other
+successful ASF projects. While incubation status is not necessarily a reflection of
+the completeness or stability of the code, it does indicate that the project has yet
+to be fully endorsed by the ASF.
+
+Getting Started
+===============
+
+This component uses a Maven 2 (http://maven.apache.org/) build
+environment. It requires a Java 5 JDK (or higher) and Maven (http://maven.apache.org/)
+2.0.7 or later. We recommend to use the latest Maven version.
+
+If you have Maven 2 installed, you can compile and
+package the jar using the following command:
+
+    mvn package
+
+See the Maven 2 documentation for other build features.
+
+The latest source code for this component is available in the
+Subversion (http://subversion.tigris.org/) source repository of
+the Apache Software Foundation. If you have Subversion installed,
+you can checkout the latest source using the following command:
+
+    svn checkout http://svn.apache.org/repos/asf/incubator/sling/trunk/commons/threads
+
+See the Subversion documentation for other source control features.
diff --git a/pom.xml b/pom.xml
new file mode 100644
index 0000000..d3f3290
--- /dev/null
+++ b/pom.xml
@@ -0,0 +1,91 @@
+<?xml version="1.0" encoding="ISO-8859-1"?>
+<!--
+  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.
+-->
+<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
+
+    <modelVersion>4.0.0</modelVersion>
+    <parent>
+        <groupId>org.apache.sling</groupId>
+        <artifactId>sling</artifactId>
+        <version>5-incubator</version>
+        <relativePath>../../../parent/pom.xml</relativePath>
+    </parent>
+
+    <artifactId>org.apache.sling.commons.threads</artifactId>
+    <packaging>bundle</packaging>
+    <version>2.0.4-incubator</version>
+
+    <name>Apache Sling Thread Support</name>
+    <description>
+        Support for thread handling like pooling.
+    </description>
+
+    <scm>
+        <connection>scm:svn:http://svn.apache.org/repos/asf/incubator/sling/tags/org.apache.sling.commons.threads-2.0.4-incubator</connection>
+        <developerConnection>scm:svn:https://svn.apache.org/repos/asf/incubator/sling/tags/org.apache.sling.commons.threads-2.0.4-incubator</developerConnection>
+        <url>http://svn.apache.org/viewvc/incubator/sling/tags/org.apache.sling.commons.threads-2.0.4-incubator</url>
+    </scm>
+
+    <build>
+        <plugins>
+            <plugin>
+                <groupId>org.apache.felix</groupId>
+                <artifactId>maven-scr-plugin</artifactId>
+            </plugin>
+            <plugin>
+                <groupId>org.apache.felix</groupId>
+                <artifactId>maven-bundle-plugin</artifactId>
+                <extensions>true</extensions>
+                <configuration>
+                    <instructions>
+                        <Export-Package>
+                            org.apache.sling.commons.threads;version=${pom.version}
+                        </Export-Package>
+                        <Private-Package>
+                            org.apache.sling.commons.threads.impl
+                        </Private-Package>
+                    </instructions>
+                </configuration>
+            </plugin>
+        </plugins>
+    </build>
+    <reporting>
+        <plugins>
+            <plugin>
+                <groupId>org.apache.maven.plugins</groupId>
+                <artifactId>maven-javadoc-plugin</artifactId>
+                <configuration>
+                    <excludePackageNames>
+                        org.apache.sling.commons.threads.impl
+                    </excludePackageNames>
+                </configuration>
+            </plugin>
+        </plugins>
+    </reporting>
+    <dependencies>
+        <dependency>
+            <groupId>org.apache.felix</groupId>
+            <artifactId>org.osgi.compendium</artifactId>
+        </dependency>
+        <dependency>
+            <groupId>org.slf4j</groupId>
+            <artifactId>slf4j-api</artifactId>
+        </dependency>
+    </dependencies>
+</project>
diff --git a/src/main/java/org/apache/sling/commons/threads/ThreadPool.java b/src/main/java/org/apache/sling/commons/threads/ThreadPool.java
new file mode 100644
index 0000000..e99c13e
--- /dev/null
+++ b/src/main/java/org/apache/sling/commons/threads/ThreadPool.java
@@ -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 org.apache.sling.commons.threads;
+
+/**
+ * The ThreadPool interface allows to start runnables by
+ * getting threads from a managed pool.
+ *
+ * @version $Id$
+ */
+public interface ThreadPool {
+
+    /**
+     * Execute a runnable
+     * @param runnable The {@link Runnable} to execute
+     */
+    void execute(Runnable runnable);
+
+    /**
+     * The name of the thread pool.
+     */
+    String getName();
+
+    /**
+     * Shut down the thread pool.
+     */
+    void shutdown();
+
+    ThreadPoolConfig getConfiguration();
+}
diff --git a/src/main/java/org/apache/sling/commons/threads/ThreadPoolConfig.java b/src/main/java/org/apache/sling/commons/threads/ThreadPoolConfig.java
new file mode 100644
index 0000000..1274aaa
--- /dev/null
+++ b/src/main/java/org/apache/sling/commons/threads/ThreadPoolConfig.java
@@ -0,0 +1,202 @@
+/*
+ * 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 org.apache.sling.commons.threads;
+
+import java.util.concurrent.ThreadFactory;
+
+/**
+ * The ThreadPool configuration.
+ *
+ * @version $Id$
+ */
+public final class ThreadPoolConfig {
+
+    /** The thread pool policies. */
+    public enum ThreadPoolPolicy {
+        ABORT,
+        DISCARD,
+        DISCARDOLDEST,
+        RUN
+    };
+
+    public enum ThreadPriority {
+        NORM,
+        MIN,
+        MAX
+    };
+
+    /** The min pool size. */
+    private int minPoolSize = 5;
+
+    /** The max pool size. */
+    private int maxPoolSize = 5;
+
+    /** The queue size */
+    private int queueSize = -1;
+
+    /** The keep alive time. */
+    private long  keepAliveTime = 60000L;
+
+    /** The thread pool policy. Default is RUN. */
+    private ThreadPoolPolicy blockPolicy = ThreadPoolPolicy.RUN;
+
+    private  boolean shutdownGraceful = false;
+
+    private  int shutdownWaitTimeMs = -1;
+
+    private  ThreadFactory factory;
+
+    private  ThreadPriority   priority = ThreadPriority.NORM;
+
+    private  boolean isDaemon = false;
+
+    /** Can this configuration still be changed? */
+    private boolean isWritable = true;
+
+    /**
+     * Create a new default configuration.
+     */
+    public ThreadPoolConfig() {
+        // nothing to do
+    }
+
+    /**
+     * Clone an existing configuration
+     * @param copy The config to clone
+     */
+    public ThreadPoolConfig(ThreadPoolConfig copy) {
+        this.minPoolSize = copy.minPoolSize;
+        this.maxPoolSize = copy.maxPoolSize;
+        this.queueSize = copy.queueSize;
+        this.keepAliveTime = copy.keepAliveTime;
+        this.blockPolicy = copy.blockPolicy;
+        this.shutdownGraceful = copy.shutdownGraceful;
+        this.shutdownWaitTimeMs = copy.shutdownWaitTimeMs;
+        this.factory = copy.factory;
+        this.priority = copy.priority;
+        this.isDaemon = copy.isDaemon;
+    }
+
+    protected void checkWritable() {
+        if ( !isWritable ) {
+            throw new IllegalStateException("ThreadPoolConfig is read-only.");
+        }
+    }
+
+    /**
+     * Make the configuration read-only.
+     */
+    public void makeReadOnly() {
+        this.isWritable = false;
+    }
+
+    public int getMinPoolSize() {
+        return minPoolSize;
+    }
+
+    public void setMinPoolSize(int minPoolSize) {
+        this.checkWritable();
+        this.minPoolSize = minPoolSize;
+    }
+
+    public int getMaxPoolSize() {
+        return maxPoolSize;
+    }
+
+    public void setMaxPoolSize(int maxPoolSize) {
+        this.checkWritable();
+        this.maxPoolSize = maxPoolSize;
+    }
+
+    public int getQueueSize() {
+        return queueSize;
+    }
+
+    public void setQueueSize(int queueSize) {
+        this.checkWritable();
+        this.queueSize = queueSize;
+    }
+
+    public long getKeepAliveTime() {
+        return keepAliveTime;
+    }
+
+    public void setKeepAliveTime(long keepAliveTime) {
+        this.checkWritable();
+        this.keepAliveTime = keepAliveTime;
+    }
+
+    public ThreadPoolPolicy getBlockPolicy() {
+        return blockPolicy;
+    }
+
+    public void setBlockPolicy(ThreadPoolPolicy blockPolicy) {
+        this.checkWritable();
+        this.blockPolicy = blockPolicy;
+        if ( blockPolicy == null ) {
+            throw new IllegalArgumentException("Policy must not be null.");
+        }
+    }
+
+    public boolean isShutdownGraceful() {
+        return shutdownGraceful;
+    }
+
+    public void setShutdownGraceful(boolean shutdownGraceful) {
+        this.checkWritable();
+        this.shutdownGraceful = shutdownGraceful;
+    }
+
+    public int getShutdownWaitTimeMs() {
+        return shutdownWaitTimeMs;
+    }
+
+    public void setShutdownWaitTimeMs(int shutdownWaitTimeMs) {
+        this.checkWritable();
+        this.shutdownWaitTimeMs = shutdownWaitTimeMs;
+    }
+
+    public ThreadFactory getFactory() {
+        return factory;
+    }
+
+    public void setFactory(ThreadFactory factory) {
+        this.checkWritable();
+        this.factory = factory;
+    }
+
+    public ThreadPriority getPriority() {
+        return priority;
+    }
+
+    public void setPriority(ThreadPriority priority) {
+        this.checkWritable();
+        if ( priority == null ) {
+            throw new IllegalArgumentException("Priority must not be null.");
+        }
+        this.priority = priority;
+    }
+
+    public boolean isDaemon() {
+        return isDaemon;
+    }
+
+    public void setDaemon(boolean isDaemon) {
+        this.checkWritable();
+        this.isDaemon = isDaemon;
+    }
+}
\ No newline at end of file
diff --git a/src/main/java/org/apache/sling/commons/threads/ThreadPoolManager.java b/src/main/java/org/apache/sling/commons/threads/ThreadPoolManager.java
new file mode 100644
index 0000000..fc9c060
--- /dev/null
+++ b/src/main/java/org/apache/sling/commons/threads/ThreadPoolManager.java
@@ -0,0 +1,56 @@
+/*
+ * 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 org.apache.sling.commons.threads;
+
+
+/**
+ * The <cod>ThreadPoolManager</code> manages thread pools.
+ *
+ * @version $Id$
+ */
+public interface ThreadPoolManager {
+
+    /** The default thread pool name */
+    String DEFAULT_THREADPOOL_NAME = "default";
+
+    /**
+     * Add a new pool.
+     * If a pool with the same name already exists, the new pool is not added
+     * and false is returned.
+     * @param pool The pool.
+     * @return True if the pool could be added, false otherwise.
+     */
+    boolean add(ThreadPool pool);
+
+    /**
+     * Get a thread pool.
+     * If there is no thread pool with the given name, the default thread
+     * pool is returned.
+     * @param name The name of the thread pool or null for the default pool.
+     */
+    ThreadPool get(String name);
+
+    /**
+     * Create a new thread pool.
+     * If a pool with the same name already exists, no new pool is created
+     * and <code>null</code> is returned.
+     * @param name Name must not be null.
+     * @param config The thread pool configuration.
+     */
+    ThreadPool create(String name,
+                      ThreadPoolConfig config);
+}
diff --git a/src/main/java/org/apache/sling/commons/threads/impl/DefaultThreadPool.java b/src/main/java/org/apache/sling/commons/threads/impl/DefaultThreadPool.java
new file mode 100644
index 0000000..b75608f
--- /dev/null
+++ b/src/main/java/org/apache/sling/commons/threads/impl/DefaultThreadPool.java
@@ -0,0 +1,201 @@
+/*
+ * 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 org.apache.sling.commons.threads.impl;
+
+import java.util.concurrent.BlockingQueue;
+import java.util.concurrent.Executors;
+import java.util.concurrent.LinkedBlockingQueue;
+import java.util.concurrent.RejectedExecutionHandler;
+import java.util.concurrent.SynchronousQueue;
+import java.util.concurrent.ThreadFactory;
+import java.util.concurrent.ThreadPoolExecutor;
+import java.util.concurrent.TimeUnit;
+
+import org.apache.sling.commons.threads.ThreadPool;
+import org.apache.sling.commons.threads.ThreadPoolConfig;
+import org.apache.sling.commons.threads.ThreadPoolManager;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+
+/**
+ * The DefaultThreadPool class implements the {@link ThreadPool} interface.
+ * Instances of this class are managed by the {@link ThreadPoolManager}.
+ *
+ * @version $Id$
+ */
+public class DefaultThreadPool
+    implements ThreadPool {
+
+    /** By default we use the logger for this class. */
+    protected final Logger logger = LoggerFactory.getLogger(this.getClass());
+
+    /** The name of this thread pool */
+    protected final String name;
+
+    /** The executor. */
+    protected ThreadPoolExecutor executor;
+
+    protected final ThreadPoolConfig configuration;
+
+    /**
+     * Create a new thread pool.
+     * @param name - The name of the thread pool. If null {@link DefaultThreadPoolManager#DEFAULT_THREADPOOL_NAME}
+     *               is used
+     */
+    public DefaultThreadPool(final String name,
+                             ThreadPoolConfig origConfig) {
+        this.logger.info("ThreadPool [{}] initializing ...", name);
+
+        // name
+        if ( name != null ) {
+            this.name = name;
+        } else {
+            this.name = DefaultThreadPoolManager.DEFAULT_THREADPOOL_NAME;
+        }
+
+        this.configuration = new ThreadPoolConfig(origConfig);
+
+        // factory
+        final ThreadFactory delegateThreadFactory;
+        if (this.configuration.getFactory() == null) {
+            logger.warn("No ThreadFactory is configured. Will use JVM default thread factory."
+                + ExtendedThreadFactory.class.getName());
+            delegateThreadFactory = Executors.defaultThreadFactory();
+        } else {
+            delegateThreadFactory = this.configuration.getFactory();
+        }
+        // Min pool size
+        if (this.configuration.getMinPoolSize() < 1) {
+            this.configuration.setMinPoolSize(1);
+            this.logger.warn("min-pool-size < 1 for pool \"" + name + "\". Set to 1");
+        }
+        // Max pool size
+        if ( this.configuration.getMaxPoolSize() < 0 ) {
+            this.configuration.setMaxPoolSize(Integer.MAX_VALUE);
+        }
+
+        // Set priority and daemon flag
+        final ExtendedThreadFactory threadFactory = new ExtendedThreadFactory(delegateThreadFactory, this.configuration.getPriority(), this.configuration.isDaemon());
+
+        // Keep alive time
+        if (this.configuration.getKeepAliveTime() < 0) {
+            this.configuration.setKeepAliveTime(1000);
+            this.logger.warn("keep-alive-time-ms < 0 for pool \"" + name + "\". Set to 1000");
+        }
+
+        // Queue
+        final BlockingQueue<Runnable> queue;
+        if (this.configuration.getQueueSize() != 0) {
+            if (this.configuration.getQueueSize() > 0) {
+                queue = new java.util.concurrent.ArrayBlockingQueue<Runnable>(this.configuration.getQueueSize());
+            } else {
+                queue = new LinkedBlockingQueue<Runnable>();
+            }
+        } else {
+            queue = new SynchronousQueue<Runnable>();
+        }
+
+        RejectedExecutionHandler handler = null;
+        switch (this.configuration.getBlockPolicy()) {
+            case ABORT :
+                handler = new ThreadPoolExecutor.AbortPolicy();
+                break;
+            case DISCARD :
+                handler = new ThreadPoolExecutor.DiscardPolicy();
+                break;
+            case DISCARDOLDEST :
+                handler = new ThreadPoolExecutor.DiscardOldestPolicy();
+                break;
+            case RUN :
+                handler = new ThreadPoolExecutor.CallerRunsPolicy();
+                break;
+        }
+        this.executor = new ThreadPoolExecutor(this.configuration.getMinPoolSize(),
+                this.configuration.getMaxPoolSize(),
+                this.configuration.getKeepAliveTime(),
+                TimeUnit.MILLISECONDS,
+                queue,
+                threadFactory,
+                handler);
+        this.configuration.makeReadOnly();
+        this.logger.info("ThreadPool [{}] initialized.", name);
+    }
+
+    /**
+     * @see org.apache.sling.commons.threads.ThreadPool#getName()
+     */
+    public String getName() {
+	    return name;
+    }
+
+
+    /**
+     * @see org.apache.sling.commons.threads.ThreadPool#getConfiguration()
+     */
+    public ThreadPoolConfig getConfiguration() {
+        return this.configuration;
+    }
+
+    /**
+     * @see org.apache.sling.commons.threads.ThreadPool#execute(java.lang.Runnable)
+     */
+    public void execute(Runnable runnable) {
+        if ( this.executor == null ) {
+            throw new IllegalStateException("Thread pool " + this.name + " is already shutdown.");
+        }
+        if ( runnable != null ) {
+            if ( this.logger.isDebugEnabled() ) {
+                this.logger.debug("Executing runnable: {}, pool={}, corePoolSize={}, maxPoolSize={}, queueSize={}",
+                        new Object[] {runnable,
+                                      this.name,
+                                      this.executor.getCorePoolSize(),
+                                      this.executor.getMaximumPoolSize(),
+                                      this.executor.getQueue().size()});
+            }
+
+        	this.executor.execute(runnable);
+        }
+    }
+
+    /**
+     * @see org.apache.sling.commons.threads.ThreadPool#shutdown()
+     */
+    public void shutdown() {
+        if ( this.executor != null ) {
+            if (this.configuration.isShutdownGraceful()) {
+                this.executor.shutdown();
+            } else {
+                this.executor.shutdownNow();
+            }
+
+            try {
+                if (this.configuration.getShutdownWaitTimeMs() > 0) {
+                    if (!this.executor.awaitTermination(this.configuration.getShutdownWaitTimeMs(), TimeUnit.MILLISECONDS)) {
+                        logger.warn("running commands have not terminated within "
+                            + this.configuration.getShutdownWaitTimeMs()
+                            + "ms. Will shut them down by interruption");
+                        this.executor.shutdownNow();
+                    }
+                }
+            } catch (final InterruptedException ie) {
+                this.logger.error("Cannot shutdown ThreadPool", ie);
+            }
+            this.executor = null;
+        }
+    }
+}
diff --git a/src/main/java/org/apache/sling/commons/threads/impl/DefaultThreadPoolManager.java b/src/main/java/org/apache/sling/commons/threads/impl/DefaultThreadPoolManager.java
new file mode 100644
index 0000000..4ed4811
--- /dev/null
+++ b/src/main/java/org/apache/sling/commons/threads/impl/DefaultThreadPoolManager.java
@@ -0,0 +1,133 @@
+/*
+ * 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 org.apache.sling.commons.threads.impl;
+
+import java.util.HashMap;
+import java.util.Map;
+
+import org.apache.sling.commons.threads.ThreadPool;
+import org.apache.sling.commons.threads.ThreadPoolConfig;
+import org.apache.sling.commons.threads.ThreadPoolManager;
+import org.osgi.service.component.ComponentContext;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+/**
+ * The DefaultThreadPoolManager implements the {@link ThreadPoolManager} interface
+ * and is responsible to manage {@link ThreadPool}s.
+ *
+ * @scr.component metatype="no"
+ * @scr.service interface="org.apache.sling.commons.threads.ThreadPoolManager"
+ *
+ * @version $Id$
+ */
+public class DefaultThreadPoolManager implements ThreadPoolManager {
+
+    /** By default we use the logger for this class. */
+    protected Logger logger = LoggerFactory.getLogger(getClass());
+
+    /** The managed thread pools */
+    protected final Map<String, ThreadPool> pools = new HashMap<String, ThreadPool>();
+
+    /**
+     * Activate this component.
+     */
+    protected void activate(ComponentContext context) throws Exception {
+        this.logger.info("Starting thread pool manager.");
+        final ThreadPool defaultPool = new DefaultThreadPool(
+                    DEFAULT_THREADPOOL_NAME,
+                    new ThreadPoolConfig());
+        synchronized ( this.pools ) {
+            this.pools.put(defaultPool.getName(), defaultPool);
+        }
+        this.logger.info("Thread pool manager startet with default pool.");
+    }
+
+    /**
+     * Deactivate this component.
+     */
+    protected void deactivate(ComponentContext context) throws Exception {
+        this.logger.info("Stopping thread pool manager.");
+        this.logger.debug("Disposing all thread pools");
+
+        synchronized ( this.pools ) {
+            for (ThreadPool pool : this.pools.values()) {
+                this.logger.debug("Shutting down thread pool {}", pool.getName());
+
+                pool.shutdown();
+
+                this.logger.debug("Thread pool " + pool.getName() + " is shut down.");
+            }
+            this.pools.clear();
+        }
+        this.logger.info("Thread pool manager stopped.");
+    }
+
+    /**
+     * @see org.apache.sling.commons.threads.ThreadPoolManager#add(org.apache.sling.commons.threads.ThreadPool)
+     */
+    public boolean add(ThreadPool pool) {
+        synchronized ( this.pools ) {
+            if (null != pools.get(pool.getName())) {
+                return false;
+            }
+            pools.put(pool.getName(), pool);
+        }
+        return true;
+    }
+
+    /**
+     * @see org.apache.sling.commons.threads.ThreadPoolManager#get(java.lang.String)
+     */
+    public ThreadPool get(String name) {
+        if ( name == null ) {
+            name = DEFAULT_THREADPOOL_NAME;
+        }
+        synchronized (this.pools) {
+            ThreadPool pool = this.pools.get(name);
+            if ( pool == null && !(name.equals(DEFAULT_THREADPOOL_NAME))) {
+                this.logger.info("Requested pool {} is not available, returning default pool.", name);
+                pool = this.pools.get(DEFAULT_THREADPOOL_NAME);
+            }
+            return pool;
+        }
+    }
+
+    /**
+     * @see org.apache.sling.commons.threads.ThreadPoolManager#create(java.lang.String, org.apache.sling.commons.threads.ThreadPoolConfig)
+     */
+    public ThreadPool create(String name,
+                             ThreadPoolConfig config) {
+        if ( name == null ) {
+            throw new IllegalArgumentException("Name must not be null.");
+        }
+        if ( config == null ) {
+            throw new IllegalArgumentException("Config must not be null.");
+        }
+        synchronized ( this.pools ) {
+            ThreadPool pool = this.pools.get(name);
+            if ( pool != null ) {
+                // pool already exists
+                return null;
+            }
+            pool = new DefaultThreadPool(name, config);
+            this.pools.put(name, pool);
+            return pool;
+        }
+    }
+
+}
diff --git a/src/main/java/org/apache/sling/commons/threads/impl/ExtendedThreadFactory.java b/src/main/java/org/apache/sling/commons/threads/impl/ExtendedThreadFactory.java
new file mode 100644
index 0000000..b213fd8
--- /dev/null
+++ b/src/main/java/org/apache/sling/commons/threads/impl/ExtendedThreadFactory.java
@@ -0,0 +1,79 @@
+/*
+ * 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 org.apache.sling.commons.threads.impl;
+
+import java.util.concurrent.ThreadFactory;
+
+import org.apache.sling.commons.threads.ThreadPoolConfig;
+
+
+/**
+ * This class is responsible to create new Thread instances.
+ * It's a very basic implementation.
+ *
+ * @version $Id$
+ */
+public final class ExtendedThreadFactory implements ThreadFactory {
+
+    /** The daemon mode */
+    private final boolean isDaemon;
+
+    /** The priority of newly created Threads */
+    private final int priority;
+
+    /** The real factory. */
+    private final ThreadFactory factory;
+
+    /**
+     * Create a new wrapper for a thread factory handling the
+     *
+     * @param priority A non null value.
+     * @param isDaemon Whether new {@link Thread}s should run as daemons.
+     */
+    public ExtendedThreadFactory(final ThreadFactory factory,
+                                final ThreadPoolConfig.ThreadPriority priority,
+                                final boolean isDaemon) {
+        this.isDaemon = isDaemon;
+        if ( priority == null ) {
+            throw new IllegalStateException("Prioriy must not be null.");
+        }
+        switch ( priority ) {
+            case NORM : this.priority = Thread.NORM_PRIORITY;
+                        break;
+            case MIN  : this.priority = Thread.MIN_PRIORITY;
+                        break;
+            case MAX  : this.priority = Thread.MAX_PRIORITY;
+                        break;
+            default: // this can never happen
+                        this.priority = Thread.NORM_PRIORITY;
+                        break;
+        }
+        this.factory = factory;
+    }
+
+    /**
+     * Invoke the thread factory and set the daemon flag and priority.
+     * @see java.util.concurrent.ThreadFactory#newThread(java.lang.Runnable)
+     */
+    public Thread newThread( final Runnable command ) {
+        final Thread thread = this.factory.newThread(command);
+        thread.setPriority( this.priority );
+        thread.setDaemon( this.isDaemon );
+
+        return thread;
+    }
+}
diff --git a/src/main/resources/META-INF/DISCLAIMER b/src/main/resources/META-INF/DISCLAIMER
new file mode 100644
index 0000000..90850c2
--- /dev/null
+++ b/src/main/resources/META-INF/DISCLAIMER
@@ -0,0 +1,7 @@
+Apache Sling is an effort undergoing incubation at The Apache Software Foundation (ASF),
+sponsored by the Apache Jackrabbit PMC. Incubation is required of all newly accepted
+projects until a further review indicates that the infrastructure, communications,
+and decision making process have stabilized in a manner consistent with other
+successful ASF projects. While incubation status is not necessarily a reflection of
+the completeness or stability of the code, it does indicate that the project has yet
+to be fully endorsed by the ASF.
\ No newline at end of file
diff --git a/src/main/resources/META-INF/LICENSE b/src/main/resources/META-INF/LICENSE
new file mode 100644
index 0000000..d645695
--- /dev/null
+++ b/src/main/resources/META-INF/LICENSE
@@ -0,0 +1,202 @@
+
+                                 Apache License
+                           Version 2.0, January 2004
+                        http://www.apache.org/licenses/
+
+   TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
+
+   1. Definitions.
+
+      "License" shall mean the terms and conditions for use, reproduction,
+      and distribution as defined by Sections 1 through 9 of this document.
+
+      "Licensor" shall mean the copyright owner or entity authorized by
+      the copyright owner that is granting the License.
+
+      "Legal Entity" shall mean the union of the acting entity and all
+      other entities that control, are controlled by, or are under common
+      control with that entity. For the purposes of this definition,
+      "control" means (i) the power, direct or indirect, to cause the
+      direction or management of such entity, whether by contract or
+      otherwise, or (ii) ownership of fifty percent (50%) or more of the
+      outstanding shares, or (iii) beneficial ownership of such entity.
+
+      "You" (or "Your") shall mean an individual or Legal Entity
+      exercising permissions granted by this License.
+
+      "Source" form shall mean the preferred form for making modifications,
+      including but not limited to software source code, documentation
+      source, and configuration files.
+
+      "Object" form shall mean any form resulting from mechanical
+      transformation or translation of a Source form, including but
+      not limited to compiled object code, generated documentation,
+      and conversions to other media types.
+
+      "Work" shall mean the work of authorship, whether in Source or
+      Object form, made available under the License, as indicated by a
+      copyright notice that is included in or attached to the work
+      (an example is provided in the Appendix below).
+
+      "Derivative Works" shall mean any work, whether in Source or Object
+      form, that is based on (or derived from) the Work and for which the
+      editorial revisions, annotations, elaborations, or other modifications
+      represent, as a whole, an original work of authorship. For the purposes
+      of this License, Derivative Works shall not include works that remain
+      separable from, or merely link (or bind by name) to the interfaces of,
+      the Work and Derivative Works thereof.
+
+      "Contribution" shall mean any work of authorship, including
+      the original version of the Work and any modifications or additions
+      to that Work or Derivative Works thereof, that is intentionally
+      submitted to Licensor for inclusion in the Work by the copyright owner
+      or by an individual or Legal Entity authorized to submit on behalf of
+      the copyright owner. For the purposes of this definition, "submitted"
+      means any form of electronic, verbal, or written communication sent
+      to the Licensor or its representatives, including but not limited to
+      communication on electronic mailing lists, source code control systems,
+      and issue tracking systems that are managed by, or on behalf of, the
+      Licensor for the purpose of discussing and improving the Work, but
+      excluding communication that is conspicuously marked or otherwise
+      designated in writing by the copyright owner as "Not a Contribution."
+
+      "Contributor" shall mean Licensor and any individual or Legal Entity
+      on behalf of whom a Contribution has been received by Licensor and
+      subsequently incorporated within the Work.
+
+   2. Grant of Copyright License. Subject to the terms and conditions of
+      this License, each Contributor hereby grants to You a perpetual,
+      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+      copyright license to reproduce, prepare Derivative Works of,
+      publicly display, publicly perform, sublicense, and distribute the
+      Work and such Derivative Works in Source or Object form.
+
+   3. Grant of Patent License. Subject to the terms and conditions of
+      this License, each Contributor hereby grants to You a perpetual,
+      worldwide, non-exclusive, no-charge, royalty-free, irrevocable
+      (except as stated in this section) patent license to make, have made,
+      use, offer to sell, sell, import, and otherwise transfer the Work,
+      where such license applies only to those patent claims licensable
+      by such Contributor that are necessarily infringed by their
+      Contribution(s) alone or by combination of their Contribution(s)
+      with the Work to which such Contribution(s) was submitted. If You
+      institute patent litigation against any entity (including a
+      cross-claim or counterclaim in a lawsuit) alleging that the Work
+      or a Contribution incorporated within the Work constitutes direct
+      or contributory patent infringement, then any patent licenses
+      granted to You under this License for that Work shall terminate
+      as of the date such litigation is filed.
+
+   4. Redistribution. You may reproduce and distribute copies of the
+      Work or Derivative Works thereof in any medium, with or without
+      modifications, and in Source or Object form, provided that You
+      meet the following conditions:
+
+      (a) You must give any other recipients of the Work or
+          Derivative Works a copy of this License; and
+
+      (b) You must cause any modified files to carry prominent notices
+          stating that You changed the files; and
+
+      (c) You must retain, in the Source form of any Derivative Works
+          that You distribute, all copyright, patent, trademark, and
+          attribution notices from the Source form of the Work,
+          excluding those notices that do not pertain to any part of
+          the Derivative Works; and
+
+      (d) If the Work includes a "NOTICE" text file as part of its
+          distribution, then any Derivative Works that You distribute must
+          include a readable copy of the attribution notices contained
+          within such NOTICE file, excluding those notices that do not
+          pertain to any part of the Derivative Works, in at least one
+          of the following places: within a NOTICE text file distributed
+          as part of the Derivative Works; within the Source form or
+          documentation, if provided along with the Derivative Works; or,
+          within a display generated by the Derivative Works, if and
+          wherever such third-party notices normally appear. The contents
+          of the NOTICE file are for informational purposes only and
+          do not modify the License. You may add Your own attribution
+          notices within Derivative Works that You distribute, alongside
+          or as an addendum to the NOTICE text from the Work, provided
+          that such additional attribution notices cannot be construed
+          as modifying the License.
+
+      You may add Your own copyright statement to Your modifications and
+      may provide additional or different license terms and conditions
+      for use, reproduction, or distribution of Your modifications, or
+      for any such Derivative Works as a whole, provided Your use,
+      reproduction, and distribution of the Work otherwise complies with
+      the conditions stated in this License.
+
+   5. Submission of Contributions. Unless You explicitly state otherwise,
+      any Contribution intentionally submitted for inclusion in the Work
+      by You to the Licensor shall be under the terms and conditions of
+      this License, without any additional terms or conditions.
+      Notwithstanding the above, nothing herein shall supersede or modify
+      the terms of any separate license agreement you may have executed
+      with Licensor regarding such Contributions.
+
+   6. Trademarks. This License does not grant permission to use the trade
+      names, trademarks, service marks, or product names of the Licensor,
+      except as required for reasonable and customary use in describing the
+      origin of the Work and reproducing the content of the NOTICE file.
+
+   7. Disclaimer of Warranty. Unless required by applicable law or
+      agreed to in writing, Licensor provides the Work (and each
+      Contributor provides its Contributions) on an "AS IS" BASIS,
+      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
+      implied, including, without limitation, any warranties or conditions
+      of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
+      PARTICULAR PURPOSE. You are solely responsible for determining the
+      appropriateness of using or redistributing the Work and assume any
+      risks associated with Your exercise of permissions under this License.
+
+   8. Limitation of Liability. In no event and under no legal theory,
+      whether in tort (including negligence), contract, or otherwise,
+      unless required by applicable law (such as deliberate and grossly
+      negligent acts) or agreed to in writing, shall any Contributor be
+      liable to You for damages, including any direct, indirect, special,
+      incidental, or consequential damages of any character arising as a
+      result of this License or out of the use or inability to use the
+      Work (including but not limited to damages for loss of goodwill,
+      work stoppage, computer failure or malfunction, or any and all
+      other commercial damages or losses), even if such Contributor
+      has been advised of the possibility of such damages.
+
+   9. Accepting Warranty or Additional Liability. While redistributing
+      the Work or Derivative Works thereof, You may choose to offer,
+      and charge a fee for, acceptance of support, warranty, indemnity,
+      or other liability obligations and/or rights consistent with this
+      License. However, in accepting such obligations, You may act only
+      on Your own behalf and on Your sole responsibility, not on behalf
+      of any other Contributor, and only if You agree to indemnify,
+      defend, and hold each Contributor harmless for any liability
+      incurred by, or claims asserted against, such Contributor by reason
+      of your accepting any such warranty or additional liability.
+
+   END OF TERMS AND CONDITIONS
+
+   APPENDIX: How to apply the Apache License to your work.
+
+      To apply the Apache License to your work, attach the following
+      boilerplate notice, with the fields enclosed by brackets "[]"
+      replaced with your own identifying information. (Don't include
+      the brackets!)  The text should be enclosed in the appropriate
+      comment syntax for the file format. We also recommend that a
+      file or class name and description of purpose be included on the
+      same "printed page" as the copyright notice for easier
+      identification within third-party archives.
+
+   Copyright [yyyy] [name of copyright owner]
+
+   Licensed 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.
diff --git a/src/main/resources/META-INF/NOTICE b/src/main/resources/META-INF/NOTICE
new file mode 100644
index 0000000..6bd7482
--- /dev/null
+++ b/src/main/resources/META-INF/NOTICE
@@ -0,0 +1,8 @@
+Apache Sling Threads
+Copyright 2008-2009 The Apache Software Foundation
+
+Apache Sling is based on source code originally developed 
+by Day Software (http://www.day.com/).
+
+This product includes software developed at
+The Apache Software Foundation (http://www.apache.org/).

-- 
To stop receiving notification emails like this one, please contact
"commits@sling.apache.org" <co...@sling.apache.org>.

[sling-org-apache-sling-commons-threads] 11/17: SLING-829 Cosmetics to the bundle/project names

Posted by ro...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

rombert pushed a commit to annotated tag org.apache.sling.commons.threads-2.0.4-incubator
in repository https://gitbox.apache.org/repos/asf/sling-org-apache-sling-commons-threads.git

commit 58081a1d64960217c996c907b74e4f0fe346aa2c
Author: Felix Meschberger <fm...@apache.org>
AuthorDate: Thu Jan 15 10:25:41 2009 +0000

    SLING-829 Cosmetics to the bundle/project names
    
    git-svn-id: https://svn.apache.org/repos/asf/incubator/sling/trunk/commons/threads@734658 13f79535-47bb-0310-9956-ffa450edef68
---
 pom.xml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/pom.xml b/pom.xml
index a7b85fc..5ea98af 100644
--- a/pom.xml
+++ b/pom.xml
@@ -31,7 +31,7 @@
     <packaging>bundle</packaging>
     <version>2.0.3-incubator-SNAPSHOT</version>
 
-    <name>Sling - Thread Support</name>
+    <name>Apache Sling Thread Support</name>
     <description>
         Support for thread handling like pooling.
     </description>

-- 
To stop receiving notification emails like this one, please contact
"commits@sling.apache.org" <co...@sling.apache.org>.

[sling-org-apache-sling-commons-threads] 02/17: [maven-release-plugin] prepare release org.apache.sling.commons.threads-2.0.2-incubator

Posted by ro...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

rombert pushed a commit to annotated tag org.apache.sling.commons.threads-2.0.4-incubator
in repository https://gitbox.apache.org/repos/asf/sling-org-apache-sling-commons-threads.git

commit 3aaff93cea65c079c2ed73894c861aacf9739edc
Author: Carsten Ziegeler <cz...@apache.org>
AuthorDate: Tue Jun 17 07:07:34 2008 +0000

    [maven-release-plugin] prepare release org.apache.sling.commons.threads-2.0.2-incubator
    
    git-svn-id: https://svn.apache.org/repos/asf/incubator/sling/trunk/commons/threads@668431 13f79535-47bb-0310-9956-ffa450edef68
---
 pom.xml | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/pom.xml b/pom.xml
index aeae67b..324059e 100644
--- a/pom.xml
+++ b/pom.xml
@@ -29,7 +29,7 @@
 
     <artifactId>org.apache.sling.commons.threads</artifactId>
     <packaging>bundle</packaging>
-    <version>2.0.1-incubator-SNAPSHOT</version>
+    <version>2.0.2-incubator</version>
 
     <name>Sling - Thread Support</name>
     <description>
@@ -37,9 +37,9 @@
     </description>
 
     <scm>
-        <connection>scm:svn:http://svn.apache.org/repos/asf/incubator/sling/trunk/commons/threads</connection>
-        <developerConnection>scm:svn:https://svn.apache.org/repos/asf/incubator/sling/trunk/commons/threads</developerConnection>
-        <url>http://svn.apache.org/viewvc/incubator/sling/trunk/commons/threads</url>
+        <connection>scm:svn:http://svn.apache.org/repos/asf/incubator/sling/tags/org.apache.sling.commons.threads-2.0.2-incubator</connection>
+        <developerConnection>scm:svn:https://svn.apache.org/repos/asf/incubator/sling/tags/org.apache.sling.commons.threads-2.0.2-incubator</developerConnection>
+        <url>http://svn.apache.org/viewvc/incubator/sling/tags/org.apache.sling.commons.threads-2.0.2-incubator</url>
     </scm>
 
     <build>

-- 
To stop receiving notification emails like this one, please contact
"commits@sling.apache.org" <co...@sling.apache.org>.

[sling-org-apache-sling-commons-threads] 15/17: [maven-release-plugin] copy for tag org.apache.sling.commons.threads-2.0.4-incubator

Posted by ro...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

rombert pushed a commit to annotated tag org.apache.sling.commons.threads-2.0.4-incubator
in repository https://gitbox.apache.org/repos/asf/sling-org-apache-sling-commons-threads.git

commit a3c6e3b4e87f86536acfe6284e2a955e9f71ab2c
Author: Carsten Ziegeler <cz...@apache.org>
AuthorDate: Tue May 5 15:22:48 2009 +0000

    [maven-release-plugin]  copy for tag org.apache.sling.commons.threads-2.0.4-incubator
    
    git-svn-id: https://svn.apache.org/repos/asf/incubator/sling/tags/org.apache.sling.commons.threads-2.0.4-incubator@771797 13f79535-47bb-0310-9956-ffa450edef68
---
 pom.xml | 10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/pom.xml b/pom.xml
index aa97135..d3f3290 100644
--- a/pom.xml
+++ b/pom.xml
@@ -23,13 +23,13 @@
     <parent>
         <groupId>org.apache.sling</groupId>
         <artifactId>sling</artifactId>
-        <version>5-incubator-SNAPSHOT</version>
+        <version>5-incubator</version>
         <relativePath>../../../parent/pom.xml</relativePath>
     </parent>
 
     <artifactId>org.apache.sling.commons.threads</artifactId>
     <packaging>bundle</packaging>
-    <version>2.0.3-incubator-SNAPSHOT</version>
+    <version>2.0.4-incubator</version>
 
     <name>Apache Sling Thread Support</name>
     <description>
@@ -37,9 +37,9 @@
     </description>
 
     <scm>
-        <connection>scm:svn:http://svn.apache.org/repos/asf/incubator/sling/trunk/bundles/commons/threads</connection>
-        <developerConnection>scm:svn:https://svn.apache.org/repos/asf/incubator/sling/trunk/bundles/commons/threads</developerConnection>
-        <url>http://svn.apache.org/viewvc/incubator/sling/trunk/bundles/commons/threads</url>
+        <connection>scm:svn:http://svn.apache.org/repos/asf/incubator/sling/tags/org.apache.sling.commons.threads-2.0.4-incubator</connection>
+        <developerConnection>scm:svn:https://svn.apache.org/repos/asf/incubator/sling/tags/org.apache.sling.commons.threads-2.0.4-incubator</developerConnection>
+        <url>http://svn.apache.org/viewvc/incubator/sling/tags/org.apache.sling.commons.threads-2.0.4-incubator</url>
     </scm>
 
     <build>

-- 
To stop receiving notification emails like this one, please contact
"commits@sling.apache.org" <co...@sling.apache.org>.

[sling-org-apache-sling-commons-threads] 01/17: Update to released versions.

Posted by ro...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

rombert pushed a commit to annotated tag org.apache.sling.commons.threads-2.0.4-incubator
in repository https://gitbox.apache.org/repos/asf/sling-org-apache-sling-commons-threads.git

commit 88db6333ea3489a7cad1d2e05ad2fb9b88e35121
Author: Carsten Ziegeler <cz...@apache.org>
AuthorDate: Tue Jun 17 06:57:15 2008 +0000

    Update to released versions.
    
    git-svn-id: https://svn.apache.org/repos/asf/incubator/sling/trunk/commons/threads@668413 13f79535-47bb-0310-9956-ffa450edef68
---
 pom.xml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/pom.xml b/pom.xml
index 8446ab3..aeae67b 100644
--- a/pom.xml
+++ b/pom.xml
@@ -23,7 +23,7 @@
     <parent>
         <groupId>org.apache.sling</groupId>
         <artifactId>sling</artifactId>
-        <version>2-incubator-SNAPSHOT</version>
+        <version>3-incubator</version>
         <relativePath>../../parent/pom.xml</relativePath>
     </parent>
 

-- 
To stop receiving notification emails like this one, please contact
"commits@sling.apache.org" <co...@sling.apache.org>.

[sling-org-apache-sling-commons-threads] 03/17: [maven-release-plugin] prepare for next development iteration

Posted by ro...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

rombert pushed a commit to annotated tag org.apache.sling.commons.threads-2.0.4-incubator
in repository https://gitbox.apache.org/repos/asf/sling-org-apache-sling-commons-threads.git

commit c5e1a116620a61c0ec3af8ecef1e4f8e256fda1b
Author: Carsten Ziegeler <cz...@apache.org>
AuthorDate: Tue Jun 17 07:07:44 2008 +0000

    [maven-release-plugin] prepare for next development iteration
    
    git-svn-id: https://svn.apache.org/repos/asf/incubator/sling/trunk/commons/threads@668433 13f79535-47bb-0310-9956-ffa450edef68
---
 pom.xml | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/pom.xml b/pom.xml
index 324059e..20ed1a6 100644
--- a/pom.xml
+++ b/pom.xml
@@ -29,7 +29,7 @@
 
     <artifactId>org.apache.sling.commons.threads</artifactId>
     <packaging>bundle</packaging>
-    <version>2.0.2-incubator</version>
+    <version>2.0.3-incubator-SNAPSHOT</version>
 
     <name>Sling - Thread Support</name>
     <description>
@@ -37,9 +37,9 @@
     </description>
 
     <scm>
-        <connection>scm:svn:http://svn.apache.org/repos/asf/incubator/sling/tags/org.apache.sling.commons.threads-2.0.2-incubator</connection>
-        <developerConnection>scm:svn:https://svn.apache.org/repos/asf/incubator/sling/tags/org.apache.sling.commons.threads-2.0.2-incubator</developerConnection>
-        <url>http://svn.apache.org/viewvc/incubator/sling/tags/org.apache.sling.commons.threads-2.0.2-incubator</url>
+        <connection>scm:svn:http://svn.apache.org/repos/asf/incubator/sling/trunk/commons/threads</connection>
+        <developerConnection>scm:svn:https://svn.apache.org/repos/asf/incubator/sling/trunk/commons/threads</developerConnection>
+        <url>http://svn.apache.org/viewvc/incubator/sling/trunk/commons/threads</url>
     </scm>
 
     <build>

-- 
To stop receiving notification emails like this one, please contact
"commits@sling.apache.org" <co...@sling.apache.org>.

[sling-org-apache-sling-commons-threads] 12/17: SLING-865 : Move to bundles

Posted by ro...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

rombert pushed a commit to annotated tag org.apache.sling.commons.threads-2.0.4-incubator
in repository https://gitbox.apache.org/repos/asf/sling-org-apache-sling-commons-threads.git

commit 3a9b17c9c83023bb79a9b96bb423e263734108c3
Author: Carsten Ziegeler <cz...@apache.org>
AuthorDate: Sun Feb 22 13:42:19 2009 +0000

    SLING-865 : Move to bundles
    
    git-svn-id: https://svn.apache.org/repos/asf/incubator/sling/trunk/bundles/commons/threads@746675 13f79535-47bb-0310-9956-ffa450edef68

-- 
To stop receiving notification emails like this one, please contact
"commits@sling.apache.org" <co...@sling.apache.org>.

[sling-org-apache-sling-commons-threads] 07/17: SLING-758 : Correctly evaluate block policy and use the correct handler.

Posted by ro...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

rombert pushed a commit to annotated tag org.apache.sling.commons.threads-2.0.4-incubator
in repository https://gitbox.apache.org/repos/asf/sling-org-apache-sling-commons-threads.git

commit daee250474669308140906b60eead165b806afd1
Author: Carsten Ziegeler <cz...@apache.org>
AuthorDate: Thu Dec 4 13:11:27 2008 +0000

    SLING-758 : Correctly evaluate block policy and use the correct handler.
    
    git-svn-id: https://svn.apache.org/repos/asf/incubator/sling/trunk/commons/threads@723309 13f79535-47bb-0310-9956-ffa450edef68
---
 .../org/apache/sling/commons/threads/impl/DefaultThreadPool.java    | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/src/main/java/org/apache/sling/commons/threads/impl/DefaultThreadPool.java b/src/main/java/org/apache/sling/commons/threads/impl/DefaultThreadPool.java
index 7c19c75..80f4617 100644
--- a/src/main/java/org/apache/sling/commons/threads/impl/DefaultThreadPool.java
+++ b/src/main/java/org/apache/sling/commons/threads/impl/DefaultThreadPool.java
@@ -116,13 +116,13 @@ public class DefaultThreadPool
                 handler = new ThreadPoolExecutor.AbortPolicy();
                 break;
             case DISCARD :
-                handler = new ThreadPoolExecutor.AbortPolicy();
+                handler = new ThreadPoolExecutor.DiscardPolicy();
                 break;
             case DISCARDOLDEST :
-                handler = new ThreadPoolExecutor.AbortPolicy();
+                handler = new ThreadPoolExecutor.DiscardOldestPolicy();
                 break;
             case RUN :
-                handler = new ThreadPoolExecutor.AbortPolicy();
+                handler = new ThreadPoolExecutor.CallerRunsPolicy();
                 break;
         }
         this.executor = new ThreadPoolExecutor(this.configuration.getMinPoolSize(),

-- 
To stop receiving notification emails like this one, please contact
"commits@sling.apache.org" <co...@sling.apache.org>.

[sling-org-apache-sling-commons-threads] 08/17: Add more logging to easier detect pool problems.

Posted by ro...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

rombert pushed a commit to annotated tag org.apache.sling.commons.threads-2.0.4-incubator
in repository https://gitbox.apache.org/repos/asf/sling-org-apache-sling-commons-threads.git

commit 194ca0d4c890d9be088d71cd7ab0f57d1f1ebfb3
Author: Carsten Ziegeler <cz...@apache.org>
AuthorDate: Tue Dec 9 17:23:28 2008 +0000

    Add more logging to easier detect pool problems.
    
    git-svn-id: https://svn.apache.org/repos/asf/incubator/sling/trunk/commons/threads@724788 13f79535-47bb-0310-9956-ffa450edef68
---
 .../org/apache/sling/commons/threads/impl/DefaultThreadPool.java | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

diff --git a/src/main/java/org/apache/sling/commons/threads/impl/DefaultThreadPool.java b/src/main/java/org/apache/sling/commons/threads/impl/DefaultThreadPool.java
index 80f4617..b75608f 100644
--- a/src/main/java/org/apache/sling/commons/threads/impl/DefaultThreadPool.java
+++ b/src/main/java/org/apache/sling/commons/threads/impl/DefaultThreadPool.java
@@ -159,7 +159,14 @@ public class DefaultThreadPool
             throw new IllegalStateException("Thread pool " + this.name + " is already shutdown.");
         }
         if ( runnable != null ) {
-            this.logger.debug("Executing runnable: {},pool={}", runnable, this.name);
+            if ( this.logger.isDebugEnabled() ) {
+                this.logger.debug("Executing runnable: {}, pool={}, corePoolSize={}, maxPoolSize={}, queueSize={}",
+                        new Object[] {runnable,
+                                      this.name,
+                                      this.executor.getCorePoolSize(),
+                                      this.executor.getMaximumPoolSize(),
+                                      this.executor.getQueue().size()});
+            }
 
         	this.executor.execute(runnable);
         }

-- 
To stop receiving notification emails like this one, please contact
"commits@sling.apache.org" <co...@sling.apache.org>.

[sling-org-apache-sling-commons-threads] 06/17: SLING-555 : Update all poms to use the latest parent pom; update parent pom to include the incubator repo for plugins and use latest plugins.

Posted by ro...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

rombert pushed a commit to annotated tag org.apache.sling.commons.threads-2.0.4-incubator
in repository https://gitbox.apache.org/repos/asf/sling-org-apache-sling-commons-threads.git

commit bb289e6c800a2c4ae19f015da951e32f198b5465
Author: Carsten Ziegeler <cz...@apache.org>
AuthorDate: Mon Jul 21 14:24:25 2008 +0000

    SLING-555 : Update all poms to use the latest parent pom; update parent pom to include the incubator repo for plugins and use latest plugins.
    
    git-svn-id: https://svn.apache.org/repos/asf/incubator/sling/trunk/commons/threads@678436 13f79535-47bb-0310-9956-ffa450edef68
---
 pom.xml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/pom.xml b/pom.xml
index 20ed1a6..10fb2c0 100644
--- a/pom.xml
+++ b/pom.xml
@@ -23,7 +23,7 @@
     <parent>
         <groupId>org.apache.sling</groupId>
         <artifactId>sling</artifactId>
-        <version>3-incubator</version>
+        <version>4-incubator-SNAPSHOT</version>
         <relativePath>../../parent/pom.xml</relativePath>
     </parent>
 

-- 
To stop receiving notification emails like this one, please contact
"commits@sling.apache.org" <co...@sling.apache.org>.

[sling-org-apache-sling-commons-threads] 09/17: SLING-808 : Increase version to 5-incubator-SNAPSHOT

Posted by ro...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

rombert pushed a commit to annotated tag org.apache.sling.commons.threads-2.0.4-incubator
in repository https://gitbox.apache.org/repos/asf/sling-org-apache-sling-commons-threads.git

commit 21e914406107f0a802543257b9e95997eebb44de
Author: Carsten Ziegeler <cz...@apache.org>
AuthorDate: Mon Jan 5 11:07:35 2009 +0000

    SLING-808 : Increase version to 5-incubator-SNAPSHOT
    
    git-svn-id: https://svn.apache.org/repos/asf/incubator/sling/trunk/commons/threads@731526 13f79535-47bb-0310-9956-ffa450edef68
---
 pom.xml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/pom.xml b/pom.xml
index 10fb2c0..a7b85fc 100644
--- a/pom.xml
+++ b/pom.xml
@@ -23,7 +23,7 @@
     <parent>
         <groupId>org.apache.sling</groupId>
         <artifactId>sling</artifactId>
-        <version>4-incubator-SNAPSHOT</version>
+        <version>5-incubator-SNAPSHOT</version>
         <relativePath>../../parent/pom.xml</relativePath>
     </parent>
 

-- 
To stop receiving notification emails like this one, please contact
"commits@sling.apache.org" <co...@sling.apache.org>.

[sling-org-apache-sling-commons-threads] 05/17: Use released parent pom where possible.

Posted by ro...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

rombert pushed a commit to annotated tag org.apache.sling.commons.threads-2.0.4-incubator
in repository https://gitbox.apache.org/repos/asf/sling-org-apache-sling-commons-threads.git

commit 0720836a6038a7921b103f45988e3c3bbc4698ae
Author: Carsten Ziegeler <cz...@apache.org>
AuthorDate: Mon Jun 23 12:07:27 2008 +0000

    Use released parent pom where possible.
    
    git-svn-id: https://svn.apache.org/repos/asf/incubator/sling/trunk/commons/threads@670529 13f79535-47bb-0310-9956-ffa450edef68
---
 pom.xml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/pom.xml b/pom.xml
index 10fb2c0..20ed1a6 100644
--- a/pom.xml
+++ b/pom.xml
@@ -23,7 +23,7 @@
     <parent>
         <groupId>org.apache.sling</groupId>
         <artifactId>sling</artifactId>
-        <version>4-incubator-SNAPSHOT</version>
+        <version>3-incubator</version>
         <relativePath>../../parent/pom.xml</relativePath>
     </parent>
 

-- 
To stop receiving notification emails like this one, please contact
"commits@sling.apache.org" <co...@sling.apache.org>.

[sling-org-apache-sling-commons-threads] 04/17: Use latest snapshots again to make project buildable.

Posted by ro...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

rombert pushed a commit to annotated tag org.apache.sling.commons.threads-2.0.4-incubator
in repository https://gitbox.apache.org/repos/asf/sling-org-apache-sling-commons-threads.git

commit bac3bfb38e43a7b1f44f75c1391c2d88269a99c8
Author: Carsten Ziegeler <cz...@apache.org>
AuthorDate: Tue Jun 17 08:55:12 2008 +0000

    Use latest snapshots again to make project buildable.
    
    git-svn-id: https://svn.apache.org/repos/asf/incubator/sling/trunk/commons/threads@668571 13f79535-47bb-0310-9956-ffa450edef68
---
 pom.xml | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/pom.xml b/pom.xml
index 20ed1a6..10fb2c0 100644
--- a/pom.xml
+++ b/pom.xml
@@ -23,7 +23,7 @@
     <parent>
         <groupId>org.apache.sling</groupId>
         <artifactId>sling</artifactId>
-        <version>3-incubator</version>
+        <version>4-incubator-SNAPSHOT</version>
         <relativePath>../../parent/pom.xml</relativePath>
     </parent>
 

-- 
To stop receiving notification emails like this one, please contact
"commits@sling.apache.org" <co...@sling.apache.org>.

[sling-org-apache-sling-commons-threads] 13/17: SLING-865 : Adjust reactor pom and svn information in each module.

Posted by ro...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

rombert pushed a commit to annotated tag org.apache.sling.commons.threads-2.0.4-incubator
in repository https://gitbox.apache.org/repos/asf/sling-org-apache-sling-commons-threads.git

commit ae528ef0dc1f5de0798d061e5e78465f9363af05
Author: Carsten Ziegeler <cz...@apache.org>
AuthorDate: Sun Feb 22 14:22:36 2009 +0000

    SLING-865 : Adjust reactor pom and svn information in each module.
    
    git-svn-id: https://svn.apache.org/repos/asf/incubator/sling/trunk/bundles/commons/threads@746707 13f79535-47bb-0310-9956-ffa450edef68
---
 pom.xml | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/pom.xml b/pom.xml
index 5ea98af..df38807 100644
--- a/pom.xml
+++ b/pom.xml
@@ -37,9 +37,9 @@
     </description>
 
     <scm>
-        <connection>scm:svn:http://svn.apache.org/repos/asf/incubator/sling/trunk/commons/threads</connection>
-        <developerConnection>scm:svn:https://svn.apache.org/repos/asf/incubator/sling/trunk/commons/threads</developerConnection>
-        <url>http://svn.apache.org/viewvc/incubator/sling/trunk/commons/threads</url>
+        <connection>scm:svn:http://svn.apache.org/repos/asf/incubator/sling/trunk/bundles/commons/threads</connection>
+        <developerConnection>scm:svn:https://svn.apache.org/repos/asf/incubator/sling/trunk/bundles/commons/threads</developerConnection>
+        <url>http://svn.apache.org/viewvc/incubator/sling/trunk/bundles/commons/threads</url>
     </scm>
 
     <build>

-- 
To stop receiving notification emails like this one, please contact
"commits@sling.apache.org" <co...@sling.apache.org>.

[sling-org-apache-sling-commons-threads] 17/17: Move Sling to new TLP location

Posted by ro...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

rombert pushed a commit to annotated tag org.apache.sling.commons.threads-2.0.4-incubator
in repository https://gitbox.apache.org/repos/asf/sling-org-apache-sling-commons-threads.git

commit 07437df036346ad655b0ffb562717c7589aa3c36
Merge: 72f4ebe a3c6e3b
Author: Felix Meschberger <fm...@apache.org>
AuthorDate: Thu Jun 18 09:21:02 2009 +0000

    Move Sling to new TLP location
    
    git-svn-id: https://svn.apache.org/repos/asf/sling/tags/org.apache.sling.commons.threads-2.0.4-incubator@785979 13f79535-47bb-0310-9956-ffa450edef68


-- 
To stop receiving notification emails like this one, please contact
"commits@sling.apache.org" <co...@sling.apache.org>.