Author: adietish
Date: 2011-09-27 17:13:25 -0400 (Tue, 27 Sep 2011)
New Revision: 35082
Modified:
trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/core/ApplicationLogReader.java
trunk/as/tests/org.jboss.ide.eclipse.as.openshift.test/src/org/jboss/ide/eclipse/as/openshift/test/internal/core/ApplicationLogReaderTest.java
Log:
[JBIDE-9773] ApplicationLogReader correcte, ApplicationLogReaderTest and
ApplicationLogReaderIntegrationTests implemented
Modified:
trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/core/ApplicationLogReader.java
===================================================================
---
trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/core/ApplicationLogReader.java 2011-09-27
21:10:13 UTC (rev 35081)
+++
trunk/as/plugins/org.jboss.ide.eclipse.as.openshift.core/src/org/jboss/ide/eclipse/as/openshift/core/ApplicationLogReader.java 2011-09-27
21:13:25 UTC (rev 35082)
@@ -70,7 +70,8 @@
private String getLog(String status) throws IOException {
Matcher matcher = LOG_REGEX.matcher(status);
int logStart = 0;
- if (matcher.find()) {
+ if (matcher.find()
+ && matcher.end() < status.length()) {
logStart = matcher.end() + 1;
}
return status.substring(logStart);
Modified:
trunk/as/tests/org.jboss.ide.eclipse.as.openshift.test/src/org/jboss/ide/eclipse/as/openshift/test/internal/core/ApplicationLogReaderTest.java
===================================================================
---
trunk/as/tests/org.jboss.ide.eclipse.as.openshift.test/src/org/jboss/ide/eclipse/as/openshift/test/internal/core/ApplicationLogReaderTest.java 2011-09-27
21:10:13 UTC (rev 35081)
+++
trunk/as/tests/org.jboss.ide.eclipse.as.openshift.test/src/org/jboss/ide/eclipse/as/openshift/test/internal/core/ApplicationLogReaderTest.java 2011-09-27
21:13:25 UTC (rev 35082)
@@ -14,7 +14,6 @@
import static org.junit.Assert.assertNotNull;
import static org.junit.Assert.assertTrue;
-import java.io.IOException;
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
@@ -22,6 +21,8 @@
import org.jboss.ide.eclipse.as.openshift.core.ICartridge;
import org.jboss.ide.eclipse.as.openshift.core.OpenshiftException;
import org.jboss.ide.eclipse.as.openshift.core.internal.Application;
+import org.jboss.ide.eclipse.as.openshift.core.internal.IOpenshiftService;
+import org.jboss.ide.eclipse.as.openshift.core.internal.InternalUser;
import
org.jboss.ide.eclipse.as.openshift.test.internal.core.fakes.NoopOpenshiftServiceFake;
import org.junit.Before;
import org.junit.Test;
@@ -31,12 +32,50 @@
*/
public class ApplicationLogReaderTest {
- private static final int LOGREADER_TIMEOUT = 1 * 1024;
+ private static final int LOGREADER_TIMEOUT = 2 * 1024;
+
+ private static final String INITIAL_LOG =
+ "tailing
/var/lib/libra/f36a4acf8a73450cb98637ed4483ea02/1317146294966//jbossas-7.0/standalone/log/server.log"
+ + "------ Tail of 1317146294966 application server.log ------\n"
+ + "11:31:36,289 INFO [org.jboss.as.ee] (Controller Boot Thread) Activating EE
subsystem\n"
+ + "11:31:36,340 INFO [org.apache.coyote.http11.Http11Protocol] (MSC service
thread 1-1) Starting Coyote HTTP/1.1 on http--127.1.9.1-8080\n"
+ + "11:31:36,440 INFO [org.jboss.as.connector] (MSC service thread 1-4)
Starting JCA Subsystem (JBoss IronJacamar 1.0.3.Final)\n"
+ + "11:31:36,471 INFO [org.jboss.as.connector.subsystems.datasources] (MSC
service thread 1-1) Bound data source [java:jboss/datasources/ExampleDS]\n"
+ + "11:31:36,966 INFO [org.jboss.as.deployment] (MSC service thread 1-3)
Started FileSystemDeploymentService for directory
/var/lib/libra/b8ea642ed6aa4dd0af2a4fe94c0ff07c/1317137507620/jbossas-7.0/standalone/deployments\n"
+ + "11:31:36,982 INFO [org.jboss.as] (Controller Boot Thread) JBoss AS
7.0.1.Final \"Zap\" started in 2796ms - Started 82 of 107 services (22 services
are passive or on-demand)\n"
+ + "11:31:37,004 INFO [org.jboss.as.server.deployment] (MSC service thread 1-2)
Starting deployment of \"ROOT.war\"\n"
+ + "11:31:37,084 INFO [org.jboss.as.jpa] (MSC service thread 1-4) added
javax.persistence.api dependency to ROOT.war\n"
+ + "11:31:37,403 INFO [org.jboss.web] (MSC service thread 1-3) registering web
context: \n"
+ + "11:31:37,445 INFO [org.jboss.as.server.controller]
(DeploymentScanner-threads - 2) Deployed \"ROOT.war\"\n";
+
+ private static final String LOG_CONTINUATION =
+ "11:32:13,187 INFO [org.apache.catalina.core.AprLifecycleListener] (MSC service
thread 1-3) The Apache Tomcat Native library which allows optimal performance in
production environments was not found on the java.library.path:
/usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0.x86_64/jre/lib/amd64/server:/usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0.x86_64/jre/lib/amd64:/usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0.x86_64/jre/../lib/amd64:/usr/java/packages/lib/amd64:/usr/lib64:/lib64:/lib:/usr/lib\n"
+ + "11:32:13,295 INFO [org.apache.coyote.http11.Http11Protocol] (MSC service
thread 1-1) Starting Coyote HTTP/1.1 on http--127.1.9.1-8080\n"
+ + "11:32:13,344 INFO [org.jboss.as.connector] (MSC service thread 1-1)
Starting JCA Subsystem (JBoss IronJacamar 1.0.3.Final)\n"
+ + "11:32:13,383 INFO [org.jboss.as.connector.subsystems.datasources] (MSC
service thread 1-2) Bound data source [java:jboss/datasources/ExampleDS]\n"
+ + "11:32:13,746 INFO [org.jboss.as.deployment] (MSC service thread 1-2)
Started FileSystemDeploymentService for directory
/var/lib/libra/b8ea642ed6aa4dd0af2a4fe94c0ff07c/1317137507620/jbossas-7.0/standalone/deployments\n"
+ + "11:32:13,764 INFO [org.jboss.as] (Controller Boot Thread) JBoss AS
7.0.1.Final \"Zap\" started in 2736ms - Started 82 of 107 services (22 services
are passive or on-demand)\n"
+ + "11:32:13,772 INFO [org.jboss.as.server.deployment] (MSC service thread 1-4)
Starting deployment of \"ROOT.war\"\n"
+ + "11:32:13,868 INFO [org.jboss.as.jpa] (MSC service thread 1-1) added
javax.persistence.api dependency to ROOT.war\n"
+ + "11:32:14,176 INFO [org.jboss.web] (MSC service thread 1-2) registering web
context: \n"
+ + "11:32:14,207 INFO [org.jboss.as.server.controller]
(DeploymentScanner-threads - 2) Deployed \"ROOT.war\"\n";
+
+ private String status = INITIAL_LOG;
+ private IOpenshiftService statusService;
private Application application;
@Before
public void setUp() {
- this.application = new ApplicationLogFake();
+ this.statusService = new NoopOpenshiftServiceFake() {
+
+ @Override
+ public String getStatus(String applicationName, ICartridge cartridge, InternalUser
user)
+ throws OpenshiftException {
+ return status;
+ }
+ };
+
+ this.application = new ApplicationLogFake(statusService);
}
@Test
@@ -65,71 +104,16 @@
}
}
- private static class ApplicationLogFake extends Application {
+ private class ApplicationLogFake extends Application {
- private String log = INITIAL_LOG;
- private int logPos = 0;
-
- private static final String INITIAL_LOG =
- "tailing
/var/lib/libra/f36a4acf8a73450cb98637ed4483ea02/1317146294966//jbossas-7.0/standalone/log/server.log"
- + "------ Tail of 1317146294966 application server.log ------"
- + "11:31:36,289 INFO [org.jboss.as.ee] (Controller Boot Thread) Activating EE
subsystem"
- + "11:31:36,340 INFO [org.apache.coyote.http11.Http11Protocol] (MSC service
thread 1-1) Starting Coyote HTTP/1.1 on http--127.1.9.1-8080"
- + "11:31:36,440 INFO [org.jboss.as.connector] (MSC service thread 1-4)
Starting JCA Subsystem (JBoss IronJacamar 1.0.3.Final)"
- + "11:31:36,471 INFO [org.jboss.as.connector.subsystems.datasources] (MSC
service thread 1-1) Bound data source [java:jboss/datasources/ExampleDS]"
- + "11:31:36,966 INFO [org.jboss.as.deployment] (MSC service thread 1-3)
Started FileSystemDeploymentService for directory
/var/lib/libra/b8ea642ed6aa4dd0af2a4fe94c0ff07c/1317137507620/jbossas-7.0/standalone/deployments"
- + "11:31:36,982 INFO [org.jboss.as] (Controller Boot Thread) JBoss AS
7.0.1.Final \"Zap\" started in 2796ms - Started 82 of 107 services (22 services
are passive or on-demand)"
- + "11:31:37,004 INFO [org.jboss.as.server.deployment] (MSC service thread
1-2) Starting deployment of \"ROOT.war\""
- + "11:31:37,084 INFO [org.jboss.as.jpa] (MSC service thread 1-4) added
javax.persistence.api dependency to ROOT.war"
- + "11:31:37,403 INFO [org.jboss.web] (MSC service thread 1-3) registering web
context: "
- + "11:31:37,445 INFO [org.jboss.as.server.controller]
(DeploymentScanner-threads - 2) Deployed \"ROOT.war\"";
-
- private static final String LOG_CONTINUATION =
- "11:32:13,187 INFO [org.apache.catalina.core.AprLifecycleListener] (MSC service
thread 1-3) The Apache Tomcat Native library which allows optimal performance in
production environments was not found on the java.library.path:
/usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0.x86_64/jre/lib/amd64/server:/usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0.x86_64/jre/lib/amd64:/usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0.x86_64/jre/../lib/amd64:/usr/java/packages/lib/amd64:/usr/lib64:/lib64:/lib:/usr/lib"
- + "11:32:13,295 INFO [org.apache.coyote.http11.Http11Protocol] (MSC service
thread 1-1) Starting Coyote HTTP/1.1 on http--127.1.9.1-8080"
- + "11:32:13,344 INFO [org.jboss.as.connector] (MSC service thread 1-1)
Starting JCA Subsystem (JBoss IronJacamar 1.0.3.Final)"
- + "11:32:13,383 INFO [org.jboss.as.connector.subsystems.datasources] (MSC
service thread 1-2) Bound data source [java:jboss/datasources/ExampleDS]"
- + "11:32:13,746 INFO [org.jboss.as.deployment] (MSC service thread 1-2)
Started FileSystemDeploymentService for directory
/var/lib/libra/b8ea642ed6aa4dd0af2a4fe94c0ff07c/1317137507620/jbossas-7.0/standalone/deployments"
- + "11:32:13,764 INFO [org.jboss.as] (Controller Boot Thread) JBoss AS
7.0.1.Final \"Zap\" started in 2736ms - Started 82 of 107 services (22 services
are passive or on-demand)"
- + "11:32:13,772 INFO [org.jboss.as.server.deployment] (MSC service thread
1-4) Starting deployment of \"ROOT.war\""
- + "11:32:13,868 INFO [org.jboss.as.jpa] (MSC service thread 1-1) added
javax.persistence.api dependency to ROOT.war"
- + "11:32:14,176 INFO [org.jboss.web] (MSC service thread 1-2) registering web
context: "
- + "11:32:14,207 INFO [org.jboss.as.server.controller]
(DeploymentScanner-threads - 2) Deployed \"ROOT.war\"";
-
- private ApplicationLogFake() {
- super("fakeApplication", ICartridge.JBOSSAS_7, null, new
NoopOpenshiftServiceFake());
+ private ApplicationLogFake(IOpenshiftService service) {
+ super("fakeApplication", ICartridge.JBOSSAS_7, null, service);
}
@Override
- public ApplicationLogReader getLogReader() throws OpenshiftException {
- return new ApplicationLogReader(this, getUser(), getService()) {
-
- @Override
- public int read(char[] cbuf, int off, int len) throws IOException {
- System.err.println(log.substring(0, 50));
- System.err.println("off = " + off);
- System.err.println("len = " + len);
- if (logPos > log.length()) {
- return -1;
- }
-
- if ((logPos + len) > log.length()) {
- len = log.length() - logPos - 1;
- }
-
- System.arraycopy(log.toCharArray(), logPos, cbuf, off, len);
- logPos++;
- return len;
- }
-
- };
+ public synchronized void restart() throws OpenshiftException {
+ status = LOG_CONTINUATION;
+ this.notifyAll();
}
-
- @Override
- public void restart() throws OpenshiftException {
- System.err.println("restarting!!!!");
- log = LOG_CONTINUATION;
- this.logPos = 0;
- }
};
}