Return-Path: Delivered-To: apmail-sling-commits-archive@www.apache.org Received: (qmail 27339 invoked from network); 4 Feb 2011 10:24:44 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.3) by minotaur.apache.org with SMTP; 4 Feb 2011 10:24:44 -0000 Received: (qmail 25071 invoked by uid 500); 4 Feb 2011 10:24:44 -0000 Delivered-To: apmail-sling-commits-archive@sling.apache.org Received: (qmail 25008 invoked by uid 500); 4 Feb 2011 10:24:42 -0000 Mailing-List: contact commits-help@sling.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@sling.apache.org Delivered-To: mailing list commits@sling.apache.org Received: (qmail 24997 invoked by uid 99); 4 Feb 2011 10:24:41 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 04 Feb 2011 10:24:41 +0000 X-ASF-Spam-Status: No, hits=-2000.0 required=5.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [140.211.11.4] (HELO eris.apache.org) (140.211.11.4) by apache.org (qpsmtpd/0.29) with ESMTP; Fri, 04 Feb 2011 10:24:41 +0000 Received: by eris.apache.org (Postfix, from userid 65534) id EC55C23889DA; Fri, 4 Feb 2011 10:24:20 +0000 (UTC) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r1067132 - in /sling/whiteboard/bdelacretaz/junit/core: pom.xml src/main/java/org/apache/sling/junit/impl/JUnitServlet.java Date: Fri, 04 Feb 2011 10:24:20 -0000 To: commits@sling.apache.org From: bdelacretaz@apache.org X-Mailer: svnmailer-1.0.8 Message-Id: <20110204102420.EC55C23889DA@eris.apache.org> Author: bdelacretaz Date: Fri Feb 4 10:24:20 2011 New Revision: 1067132 URL: http://svn.apache.org/viewvc?rev=1067132&view=rev Log: SLING-1963 - remove dependencies on Sling, not needed here Modified: sling/whiteboard/bdelacretaz/junit/core/pom.xml sling/whiteboard/bdelacretaz/junit/core/src/main/java/org/apache/sling/junit/impl/JUnitServlet.java Modified: sling/whiteboard/bdelacretaz/junit/core/pom.xml URL: http://svn.apache.org/viewvc/sling/whiteboard/bdelacretaz/junit/core/pom.xml?rev=1067132&r1=1067131&r2=1067132&view=diff ============================================================================== --- sling/whiteboard/bdelacretaz/junit/core/pom.xml (original) +++ sling/whiteboard/bdelacretaz/junit/core/pom.xml Fri Feb 4 10:24:20 2011 @@ -31,7 +31,7 @@ bundle Apache Sling JUnit Extension - Runs JUnit tests in a Sling instance + Runs JUnit tests in OSGi 4.8.2 @@ -92,12 +92,6 @@ provided - org.apache.sling - org.apache.sling.api - 2.0.2-incubator - provided - - javax.servlet servlet-api Modified: sling/whiteboard/bdelacretaz/junit/core/src/main/java/org/apache/sling/junit/impl/JUnitServlet.java URL: http://svn.apache.org/viewvc/sling/whiteboard/bdelacretaz/junit/core/src/main/java/org/apache/sling/junit/impl/JUnitServlet.java?rev=1067132&r1=1067131&r2=1067132&view=diff ============================================================================== --- sling/whiteboard/bdelacretaz/junit/core/src/main/java/org/apache/sling/junit/impl/JUnitServlet.java (original) +++ sling/whiteboard/bdelacretaz/junit/core/src/main/java/org/apache/sling/junit/impl/JUnitServlet.java Fri Feb 4 10:24:20 2011 @@ -21,29 +21,52 @@ import java.io.PrintWriter; import java.util.Collection; import javax.servlet.ServletException; +import javax.servlet.http.HttpServlet; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; import org.apache.felix.scr.annotations.Component; -import org.apache.felix.scr.annotations.Property; import org.apache.felix.scr.annotations.Reference; +import org.apache.felix.scr.annotations.ReferenceCardinality; import org.apache.felix.scr.annotations.Service; -import org.apache.sling.api.SlingHttpServletRequest; -import org.apache.sling.api.SlingHttpServletResponse; -import org.apache.sling.api.servlets.SlingAllMethodsServlet; import org.apache.sling.junit.JUnitTestsManager; import org.junit.runner.JUnitCore; +import org.osgi.service.http.HttpService; +import org.osgi.service.http.NamespaceException; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; /** Simple test runner servlet */ @SuppressWarnings("serial") @Component @Service -@Property(name="sling.servlet.paths",value="/system/sling/junit") -public class JUnitServlet extends SlingAllMethodsServlet { +public class JUnitServlet extends HttpServlet { + + private final Logger log = LoggerFactory.getLogger(getClass()); + + /** TODO make this configurable */ + public static final String SERVLET_PATH = "/system/sling/junit"; @Reference private JUnitTestsManager testsManager; + @Reference(cardinality=ReferenceCardinality.OPTIONAL_UNARY) + private HttpService httpService; + + protected void bindHttpService(HttpService h) throws ServletException, NamespaceException { + httpService = h; + httpService.registerServlet(SERVLET_PATH, this, null, null); + log.info("Servlet registered at path {}", SERVLET_PATH); + } + + protected void unbindHttpService(HttpService h) throws ServletException, NamespaceException { + h.unregister(SERVLET_PATH); + httpService = null; + log.info("Servlet unregistered from path {}", SERVLET_PATH); + } + @Override - protected void doGet(SlingHttpServletRequest request, SlingHttpServletResponse response) + protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType("text/plain"); @@ -82,4 +105,4 @@ public class JUnitServlet extends SlingA throw new ServletException("Test class not found", cnfe); } } -} +} \ No newline at end of file