You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@openmeetings.apache.org by so...@apache.org on 2014/04/25 08:14:41 UTC
svn commit: r1589938 - in /openmeetings/trunk/singlewebapp: ./
openmeetings-core/
openmeetings-core/src/test/java/org/apache/openmeetings/test/config/
openmeetings-install/ openmeetings-screenshare/
openmeetings-screenshare/src/main/java/org/apache/ope...
Author: solomax
Date: Fri Apr 25 06:14:40 2014
New Revision: 1589938
URL: http://svn.apache.org/r1589938
Log:
[OPENMEETINGS-940] Screen sharing webapp generation is moved to maven
Added:
openmeetings/trunk/singlewebapp/openmeetings-screenshare/src/main/jnlp/
openmeetings/trunk/singlewebapp/openmeetings-screenshare/src/main/jnlp/resources/
openmeetings/trunk/singlewebapp/openmeetings-screenshare/src/main/jnlp/resources/icon.jpg
- copied unchanged from r1589015, openmeetings/trunk/singlewebapp/openmeetings-web/src/main/webapp/screensharing/icon.jpg
openmeetings/trunk/singlewebapp/openmeetings-screenshare/src/main/jnlp/resources/splashicon.jpg
- copied unchanged from r1589015, openmeetings/trunk/singlewebapp/openmeetings-web/src/main/webapp/screensharing/splashicon.jpg
openmeetings/trunk/singlewebapp/openmeetings-screenshare/src/main/jnlp/templates/
openmeetings/trunk/singlewebapp/openmeetings-screenshare/src/main/jnlp/templates/template.jnlp
- copied, changed from r1589015, openmeetings/trunk/singlewebapp/src/screenshare.vm
Removed:
openmeetings/trunk/singlewebapp/openmeetings-web/src/main/webapp/screensharing/icon.jpg
openmeetings/trunk/singlewebapp/openmeetings-web/src/main/webapp/screensharing/splashicon.jpg
openmeetings/trunk/singlewebapp/src/screenshare.vm
Modified:
openmeetings/trunk/singlewebapp/openmeetings-core/pom.xml
openmeetings/trunk/singlewebapp/openmeetings-core/src/test/java/org/apache/openmeetings/test/config/TestConfig.java
openmeetings/trunk/singlewebapp/openmeetings-install/pom.xml
openmeetings/trunk/singlewebapp/openmeetings-screenshare/pom.xml
openmeetings/trunk/singlewebapp/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screen/webstart/CoreScreenShare.java
openmeetings/trunk/singlewebapp/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screen/webstart/IScreenShare.java
openmeetings/trunk/singlewebapp/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screen/webstart/RTMPClientPublish.java
openmeetings/trunk/singlewebapp/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screen/webstart/RTMPSScreenShare.java
openmeetings/trunk/singlewebapp/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screen/webstart/RTMPScreenShare.java
openmeetings/trunk/singlewebapp/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screen/webstart/RTMPTScreenShare.java
openmeetings/trunk/singlewebapp/openmeetings-util/pom.xml
openmeetings/trunk/singlewebapp/openmeetings-util/src/main/java/org/apache/openmeetings/util/stringhandlers/ChatString.java
openmeetings/trunk/singlewebapp/openmeetings-web/pom.xml
openmeetings/trunk/singlewebapp/pom.xml
Modified: openmeetings/trunk/singlewebapp/openmeetings-core/pom.xml
URL: http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/openmeetings-core/pom.xml?rev=1589938&r1=1589937&r2=1589938&view=diff
==============================================================================
--- openmeetings/trunk/singlewebapp/openmeetings-core/pom.xml (original)
+++ openmeetings/trunk/singlewebapp/openmeetings-core/pom.xml Fri Apr 25 06:14:40 2014
@@ -36,6 +36,7 @@
<batik.version>1.7</batik.version>
<smslib.version>3.5.4</smslib.version>
<derby.version>10.10.1.1</derby.version>
+ <red5-client.version>1.0.2-RC2</red5-client.version>
</properties>
<repositories>
<repository>
@@ -55,6 +56,11 @@
<version>${openmeetings.version}</version>
</dependency>
<dependency>
+ <groupId>org.springframework</groupId>
+ <artifactId>spring-core</artifactId>
+ <version>${spring.version}</version>
+ </dependency>
+ <dependency>
<groupId>org.apache.velocity</groupId>
<artifactId>velocity</artifactId>
<version>${velocity.version}</version>
@@ -94,7 +100,7 @@
<dependency>
<groupId>org.red5</groupId>
<artifactId>red5-client</artifactId>
- <version>${red5.client.version}</version>
+ <version>${red5-client.version}</version>
<scope>test</scope>
</dependency>
<dependency>
Modified: openmeetings/trunk/singlewebapp/openmeetings-core/src/test/java/org/apache/openmeetings/test/config/TestConfig.java
URL: http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/openmeetings-core/src/test/java/org/apache/openmeetings/test/config/TestConfig.java?rev=1589938&r1=1589937&r2=1589938&view=diff
==============================================================================
--- openmeetings/trunk/singlewebapp/openmeetings-core/src/test/java/org/apache/openmeetings/test/config/TestConfig.java (original)
+++ openmeetings/trunk/singlewebapp/openmeetings-core/src/test/java/org/apache/openmeetings/test/config/TestConfig.java Fri Apr 25 06:14:40 2014
@@ -26,15 +26,13 @@ import java.util.List;
import org.apache.openmeetings.db.dao.basic.ConfigurationDao;
import org.apache.openmeetings.db.entity.basic.Configuration;
import org.apache.openmeetings.test.AbstractJUnitDefaults;
-import org.apache.openmeetings.test.calendar.TestAppointmentAddAppointment;
import org.junit.Test;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
public class TestConfig extends AbstractJUnitDefaults {
-
- private static final Logger log = LoggerFactory.getLogger(TestAppointmentAddAppointment.class);
+ private static final Logger log = LoggerFactory.getLogger(TestConfig.class);
@Autowired
private ConfigurationDao configurationDao;
Modified: openmeetings/trunk/singlewebapp/openmeetings-install/pom.xml
URL: http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/openmeetings-install/pom.xml?rev=1589938&r1=1589937&r2=1589938&view=diff
==============================================================================
--- openmeetings/trunk/singlewebapp/openmeetings-install/pom.xml (original)
+++ openmeetings/trunk/singlewebapp/openmeetings-install/pom.xml Fri Apr 25 06:14:40 2014
@@ -36,6 +36,11 @@
</properties>
<dependencies>
<dependency>
+ <groupId>org.springframework</groupId>
+ <artifactId>spring-core</artifactId>
+ <version>${spring.version}</version>
+ </dependency>
+ <dependency>
<groupId>org.apache.openmeetings</groupId>
<artifactId>openmeetings-util</artifactId>
<version>${openmeetings.version}</version>
Modified: openmeetings/trunk/singlewebapp/openmeetings-screenshare/pom.xml
URL: http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/openmeetings-screenshare/pom.xml?rev=1589938&r1=1589937&r2=1589938&view=diff
==============================================================================
--- openmeetings/trunk/singlewebapp/openmeetings-screenshare/pom.xml (original)
+++ openmeetings/trunk/singlewebapp/openmeetings-screenshare/pom.xml Fri Apr 25 06:14:40 2014
@@ -29,10 +29,15 @@
<artifactId>openmeetings-screenshare</artifactId>
<packaging>jar</packaging>
<name>Openmeetings Screen Sharing applet</name>
- <description>TODO</description>
+ <description>A File to grab a screen and send it to a Server</description>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<red5-client.version>1.0.2-RC2</red5-client.version>
+ <keystore.location>${project.build.directory}/screensharing_sign.keystore</keystore.location>
+ <key.password>secret</key.password>
+ <keystore.password>secret</keystore.password>
+ <keystore.type>jks</keystore.type>
+ <key.alias>screen</key.alias>
</properties>
<dependencies>
<dependency>
@@ -40,5 +45,290 @@
<artifactId>red5-client</artifactId>
<version>${red5-client.version}</version>
</dependency>
+ <dependency><!-- FIXME should be removed later -->
+ <groupId>org.red5</groupId>
+ <artifactId>red5-io</artifactId>
+ <version>1.0.3</version>
+ </dependency>
+ <dependency><!-- FIXME should be removed later -->
+ <groupId>org.red5</groupId>
+ <artifactId>red5-server</artifactId>
+ <version>${red5-server.version}</version>
+ </dependency>
+ <dependency><!-- FIXME should be taken automatically from red5-client dependencies -->
+ <groupId>org.apache.mina</groupId>
+ <artifactId>mina-core</artifactId>
+ <version>2.0.7</version>
+ </dependency>
+ <dependency><!-- FIXME should be taken automatically from red5-client dependencies -->
+ <groupId>org.springframework</groupId>
+ <artifactId>spring-core</artifactId>
+ <version>3.1.1.RELEASE</version>
+ </dependency>
</dependencies>
+ <build>
+ <plugins>
+ <plugin>
+ <groupId>com.google.code.maven-replacer-plugin</groupId>
+ <artifactId>replacer</artifactId>
+ <version>1.5.3</version>
+ <executions>
+ <execution>
+ <phase>generate-resources</phase>
+ <goals>
+ <goal>replace</goal>
+ </goals>
+ <configuration>
+ <file>${project.basedir}/src/main/jnlp/templates/template.jnlp</file>
+ <outputFile>${project.basedir}/target/APPLICATION_TEMPLATE.jnlp</outputFile>
+ <regex>false</regex>
+ <replacements>
+ <replacement>
+ <token>$applicationName</token>
+ <value>*</value>
+ </replacement>
+ <replacement>
+ <token>$codebase</token>
+ <value>*</value>
+ </replacement>
+ <replacement>
+ <token>$host</token>
+ <value>*</value>
+ </replacement>
+ <replacement>
+ <token>$port</token>
+ <value>*</value>
+ </replacement>
+ <replacement>
+ <token>$app</token>
+ <value>*</value>
+ </replacement>
+ <replacement>
+ <token>$userId</token>
+ <value>*</value>
+ </replacement>
+ <replacement>
+ <token>$organizationId</token>
+ <value>*</value>
+ </replacement>
+ <replacement>
+ <token>$publicSid</token>
+ <value>*</value>
+ </replacement>
+ <replacement>
+ <token>$labels</token>
+ <value>*</value>
+ </replacement>
+ <replacement>
+ <token>$defaultQuality</token>
+ <value>*</value>
+ </replacement>
+ <replacement>
+ <token>$allowRecording</token>
+ <value>*</value>
+ </replacement>
+ <replacement>
+ <token>$allowPublishing</token>
+ <value>*</value>
+ </replacement>
+ <replacement>
+ <token>$clientClass</token>
+ <value>*</value>
+ </replacement>
+ <replacement>
+ <token>$keystore</token>
+ <value>*</value>
+ </replacement>
+ <replacement>
+ <token>$password</token>
+ <value>*</value>
+ </replacement>
+ </replacements>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-dependency-plugin</artifactId>
+ </plugin>
+ <plugin>
+ <!-- Step 1) your obvious configuration + added one new execution for APPLICATION_TEMPLATE.jnlp file generation from template
+ stored in /templates/APPLICATION_TEMPLATE.jnlp dir -->
+ <groupId>org.codehaus.mojo</groupId>
+ <artifactId>webstart-maven-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>generate-jnlp-template-for-signing</id>
+ <phase>generate-resources</phase>
+ <goals>
+ <goal>jnlp</goal>
+ </goals>
+ <configuration>
+ <excludeTransitive>false</excludeTransitive>
+ <dependencies>
+ <includes>
+ <include>commons-codec:commons-codec</include>
+ <include>commons-beanutils:commons-beanutils</include>
+ <include>commons-collections:commons-collections</include>
+ <include>org.apache.httpcomponents:httpclient</include>
+ <include>org.apache.httpcomponents:httpcore</include>
+ <include>org.bouncycastle:bcprov-jdk15on</include>
+ <include>net.sf.ehcache:ehcache-core</include>
+ <include>org.slf4j:slf4j-api</include>
+ <include>org.slf4j:jcl-over-slf4j</include>
+ <include>ch.qos.logback:logback-core</include>
+ <include>ch.qos.logback:logback-classic</include>
+ <include>org.apache.mina:mina-core</include>
+ <include>org.red5:red5-io</include>
+ <include>org.red5:red5-server</include>
+ <include>org.red5:red5-client</include>
+ <include>org.springframework:spring-context</include>
+ <include>org.springframework:spring-core</include>
+ <include>org.springframework:spring-beans</include>
+ </includes>
+ </dependencies>
+ <jnlp>
+ <inputTemplateResourcePath>${project.basedir}/target</inputTemplateResourcePath>
+ <inputTemplate>APPLICATION_TEMPLATE.jnlp</inputTemplate>
+ <outputFile>APPLICATION_TEMPLATE.jnlp</outputFile>
+ <mainClass>org.apache.openmeetings.screen.webstart.CoreScreenShare</mainClass>
+ </jnlp>
+ <makeArchive>false</makeArchive>
+ </configuration>
+ </execution>
+ <execution>
+ <id>generate-jnlp-and-sign-libs</id>
+ <phase>generate-resources</phase>
+ <goals>
+ <goal>jnlp</goal>
+ </goals>
+ <configuration>
+ <!--outputDirectory></outputDirectory --> <!-- not required?? -->
+
+ <excludeTransitive>false</excludeTransitive>
+ <dependencies>
+ <includes>
+ <include>commons-codec:commons-codec</include>
+ <include>commons-beanutils:commons-beanutils</include>
+ <include>commons-collections:commons-collections</include>
+ <include>org.apache.httpcomponents:httpclient</include>
+ <include>org.apache.httpcomponents:httpcore</include>
+ <include>org.bouncycastle:bcprov-jdk15on</include>
+ <include>net.sf.ehcache:ehcache-core</include>
+ <include>org.slf4j:slf4j-api</include>
+ <include>org.slf4j:jcl-over-slf4j</include>
+ <include>ch.qos.logback:logback-core</include>
+ <include>ch.qos.logback:logback-classic</include>
+ <include>org.apache.mina:mina-core</include>
+ <include>org.red5:red5-io</include>
+ <include>org.red5:red5-server</include>
+ <include>org.red5:red5-client</include>
+ <include>org.springframework:spring-context</include>
+ <include>org.springframework:spring-core</include>
+ <include>org.springframework:spring-beans</include>
+ </includes>
+ </dependencies>
+
+ <jnlp>
+ <inputTemplateResourcePath>${project.basedir}/src/main/jnlp/templates</inputTemplateResourcePath>
+ <inputTemplate>template.jnlp</inputTemplate>
+ <outputFile>APPLICATION.jnlp</outputFile>
+ <mainClass>org.apache.openmeetings.screen.webstart.CoreScreenShare</mainClass>
+ </jnlp>
+
+ <sign>
+ <keystore>${keystore.location}</keystore>
+ <keypass>${key.password}</keypass>
+ <storepass>${keystore.password}</storepass>
+ <storetype>${keystore.type}</storetype>
+ <alias>${key.alias}</alias>
+
+ <validity>365</validity>
+ <dnameCn>Sebastian Wagner</dnameCn>
+ <dnameOu>technology</dnameOu>
+ <dnameO>openmeetings.apache.org</dnameO>
+ <!-- dnameL>Location</dnameL>
+ <dnameSt>State</dnameSt-->
+ <dnameC>DE</dnameC>
+
+ <keystoreConfig>
+ <delete>false</delete>
+ <gen>true</gen>
+ </keystoreConfig>
+ <verify>false</verify> <!-- due to self signed certificate -->
+ </sign>
+ <unsign>true</unsign>
+ <outputJarVersions>false</outputJarVersions>
+ <makeArchive>false</makeArchive>
+ <verbose>true</verbose>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <!-- Step 2) move to APPLICATION_TEMPLATE from /target/jnlp to target/jnlp/${project.build.finalName}.jar/JNLP-INF dir -->
+ <groupId>org.codehaus.mojo</groupId>
+ <artifactId>truezip-maven-plugin</artifactId>
+ <version>1.1</version>
+ <executions>
+ <execution>
+ <id>move-jnlp-template</id>
+ <goals>
+ <goal>move</goal>
+ </goals>
+ <phase>verify</phase>
+ <configuration>
+ <from>${project.basedir}/target/jnlp/APPLICATION_TEMPLATE.jnlp</from>
+ <to>${project.basedir}/target/jnlp/${project.build.finalName}.jar/JNLP-INF/APPLICATION_TEMPLATE.jnlp</to>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <!-- Step 3) repeat signing of main.jar -->
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-jarsigner-plugin</artifactId>
+ <version>1.3.2</version>
+ <executions>
+ <execution>
+ <id>sign</id>
+ <phase>verify</phase>
+ <goals>
+ <goal>sign</goal>
+ </goals>
+ </execution>
+ </executions>
+ <configuration>
+ <archiveDirectory>${project.build.directory}/jnlp</archiveDirectory>
+ <includes>
+ <include>${project.build.finalName}.jar</include>
+ </includes>
+ <keystore>${keystore.location}</keystore>
+ <keypass>${key.password}</keypass>
+ <storepass>${keystore.password}</storepass>
+ <storetype>${keystore.type}</storetype>
+ <alias>${key.alias}</alias>
+ <removeExistingSignatures>true</removeExistingSignatures>
+ <verbose>true</verbose>
+ </configuration>
+ </plugin>
+ <!-- plugin-->
+ <!-- Step 4) custom packaging -->
+ <!-- groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-war-plugin</artifactId>
+ <version>${maven-war-plugin.version}</version>
+ <configuration>
+ ...
+ <webResources>
+ <resource>
+ <directory>${project.build.directory}/jnlp</directory>
+ </resource>
+ ...
+ </webResources>
+ ...
+ </configuration>
+ </plugin-->
+ </plugins>
+ </build>
</project>
Modified: openmeetings/trunk/singlewebapp/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screen/webstart/CoreScreenShare.java
URL: http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screen/webstart/CoreScreenShare.java?rev=1589938&r1=1589937&r2=1589938&view=diff
==============================================================================
--- openmeetings/trunk/singlewebapp/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screen/webstart/CoreScreenShare.java (original)
+++ openmeetings/trunk/singlewebapp/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screen/webstart/CoreScreenShare.java Fri Apr 25 06:14:40 2014
@@ -40,6 +40,7 @@ import java.awt.event.KeyEvent;
import java.util.HashMap;
import java.util.Map;
+import org.apache.commons.codec.binary.Hex;
import org.apache.openmeetings.screen.webstart.gui.ScreenSharerFrame;
import org.red5.client.net.rtmp.INetStreamEventHandler;
import org.red5.io.utils.ObjectMap;
@@ -97,15 +98,13 @@ public class CoreScreenShare implements
//
// ------------------------------------------------------------------------
- public CoreScreenShare(IScreenShare instance, String[] args) {
- this.instance = instance;
-
+ public CoreScreenShare(String[] args) {
try {
for (String arg : args) {
log.debug("arg: " + arg);
}
String[] textArray = null;
- if (args.length > 8) {
+ if (args.length > 9) {
host = args[0];
app = args[1];
port = Integer.parseInt(args[2]);
@@ -131,9 +130,17 @@ public class CoreScreenShare implements
log.debug(i + " :: " + textArray[i]);
}
}
- log.debug("host: " + host + ", app: "
- + app + ", port: " + port + ", publish: "
- + publishName);
+ instance = (IScreenShare)Class.forName(args[10]).newInstance();
+ instance.setCore(this);
+ if (instance instanceof RTMPSScreenShare) {
+ if (args.length < 12) {
+ System.exit(0);
+ }
+ RTMPSScreenShare client = (RTMPSScreenShare)instance;
+ client.setKeystoreBytes(Hex.decodeHex(args[11].toCharArray()));
+ client.setKeyStorePassword(args[12]);
+ }
+ log.debug(String.format("host: %s, app: %s, port: %s, publish: %s", host, port, app, publishName));
} else {
System.exit(0);
}
@@ -144,6 +151,10 @@ public class CoreScreenShare implements
}
}
+ public static void main(String[] args) {
+ new CoreScreenShare(args);
+ }
+
// ------------------------------------------------------------------------
//
// GUI
Modified: openmeetings/trunk/singlewebapp/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screen/webstart/IScreenShare.java
URL: http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screen/webstart/IScreenShare.java?rev=1589938&r1=1589937&r2=1589938&view=diff
==============================================================================
--- openmeetings/trunk/singlewebapp/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screen/webstart/IScreenShare.java (original)
+++ openmeetings/trunk/singlewebapp/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screen/webstart/IScreenShare.java Fri Apr 25 06:14:40 2014
@@ -31,4 +31,5 @@ public interface IScreenShare {
void createStream(IPendingServiceCallback callback);
void publish(int streamId, String name, String mode, INetStreamEventHandler handler);
void publishStreamData(int streamId, IMessage message);
+ void setCore(CoreScreenShare core);
}
Modified: openmeetings/trunk/singlewebapp/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screen/webstart/RTMPClientPublish.java
URL: http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screen/webstart/RTMPClientPublish.java?rev=1589938&r1=1589937&r2=1589938&view=diff
==============================================================================
--- openmeetings/trunk/singlewebapp/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screen/webstart/RTMPClientPublish.java (original)
+++ openmeetings/trunk/singlewebapp/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screen/webstart/RTMPClientPublish.java Fri Apr 25 06:14:40 2014
@@ -37,6 +37,10 @@ class RTMPClientPublish extends RTMPClie
private String id;
private CoreScreenShare core;
+ public void setCore(CoreScreenShare core) {
+ this.core = core;
+ }
+
RTMPClientPublish(CoreScreenShare core, String host, String app, String id) {
this.id = id;
this.core = core;
Modified: openmeetings/trunk/singlewebapp/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screen/webstart/RTMPSScreenShare.java
URL: http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screen/webstart/RTMPSScreenShare.java?rev=1589938&r1=1589937&r2=1589938&view=diff
==============================================================================
--- openmeetings/trunk/singlewebapp/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screen/webstart/RTMPSScreenShare.java (original)
+++ openmeetings/trunk/singlewebapp/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screen/webstart/RTMPSScreenShare.java Fri Apr 25 06:14:40 2014
@@ -18,8 +18,6 @@
*/
package org.apache.openmeetings.screen.webstart;
-import org.apache.commons.codec.DecoderException;
-import org.apache.commons.codec.binary.Hex;
import org.red5.client.net.rtmp.ClientExceptionHandler;
import org.red5.client.net.rtmps.RTMPSClient;
import org.red5.server.api.service.IPendingServiceCallback;
@@ -35,19 +33,13 @@ public class RTMPSScreenShare extends RT
private CoreScreenShare core = null;
- private RTMPSScreenShare(String[] args) {
- core = new CoreScreenShare(this, args);
- };
-
- public static void main(String[] args) throws DecoderException {
- RTMPSScreenShare client = new RTMPSScreenShare(args);
- if (args.length < 11) {
- System.exit(0);
- }
- client.setKeystoreBytes(Hex.decodeHex(args[10].toCharArray()));
- client.setKeyStorePassword(args[11]);
+ public void setCore(CoreScreenShare core) {
+ this.core = core;
}
+ private RTMPSScreenShare() {
+ };
+
@Override
public void connect(String server, int port, String application,
IPendingServiceCallback connectCallback) {
Modified: openmeetings/trunk/singlewebapp/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screen/webstart/RTMPScreenShare.java
URL: http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screen/webstart/RTMPScreenShare.java?rev=1589938&r1=1589937&r2=1589938&view=diff
==============================================================================
--- openmeetings/trunk/singlewebapp/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screen/webstart/RTMPScreenShare.java (original)
+++ openmeetings/trunk/singlewebapp/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screen/webstart/RTMPScreenShare.java Fri Apr 25 06:14:40 2014
@@ -32,14 +32,13 @@ public class RTMPScreenShare extends RTM
private CoreScreenShare core = null;
- private RTMPScreenShare(String[] args) {
- core = new CoreScreenShare(this, args);
- };
-
- public static void main(String[] args) {
- new RTMPScreenShare(args);
+ public void setCore(CoreScreenShare core) {
+ this.core = core;
}
+ private RTMPScreenShare() {
+ }
+
// ------------------------------------------------------------------------
//
// Override
Modified: openmeetings/trunk/singlewebapp/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screen/webstart/RTMPTScreenShare.java
URL: http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screen/webstart/RTMPTScreenShare.java?rev=1589938&r1=1589937&r2=1589938&view=diff
==============================================================================
--- openmeetings/trunk/singlewebapp/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screen/webstart/RTMPTScreenShare.java (original)
+++ openmeetings/trunk/singlewebapp/openmeetings-screenshare/src/main/java/org/apache/openmeetings/screen/webstart/RTMPTScreenShare.java Fri Apr 25 06:14:40 2014
@@ -32,14 +32,13 @@ public class RTMPTScreenShare extends RT
private CoreScreenShare core = null;
- private RTMPTScreenShare(String[] args) {
- core = new CoreScreenShare(this, args);
- };
-
- public static void main(String[] args) {
- new RTMPTScreenShare(args);
+ public void setCore(CoreScreenShare core) {
+ this.core = core;
}
+ private RTMPTScreenShare() {
+ };
+
// ------------------------------------------------------------------------
//
// Override
Copied: openmeetings/trunk/singlewebapp/openmeetings-screenshare/src/main/jnlp/templates/template.jnlp (from r1589015, openmeetings/trunk/singlewebapp/src/screenshare.vm)
URL: http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/openmeetings-screenshare/src/main/jnlp/templates/template.jnlp?p2=openmeetings/trunk/singlewebapp/openmeetings-screenshare/src/main/jnlp/templates/template.jnlp&p1=openmeetings/trunk/singlewebapp/src/screenshare.vm&r1=1589015&r2=1589938&rev=1589938&view=diff
==============================================================================
--- openmeetings/trunk/singlewebapp/src/screenshare.vm (original)
+++ openmeetings/trunk/singlewebapp/openmeetings-screenshare/src/main/jnlp/templates/template.jnlp Fri Apr 25 06:14:40 2014
@@ -17,35 +17,37 @@
specific language governing permissions and limitations
under the License.
-->
-<jnlp spec='1.0+' codebase='$codebase'>
- <information>
- <title>Screen Sharing Application</title>
- <vendor>$APP_NAME</vendor>
- <homepage>http://openmeetings.apache.org/</homepage>
+<jnlp spec="1.0+" codebase="$codebase">
+ <information>
+ <title>$informationTitle</title>
+ <vendor>$applicationName</vendor>
+ <homepage>$informationHomepage</homepage>
<icon href="icon.jpg" />
<icon kind="splash" href="splashicon.jpg" />
- <description>ScreenViewer Client Application</description>
- <description kind="short">A File to grab a screen and send it to a Server</description>
- <offline-allowed/>
+ <description>$informationTitle</description>
+ <description kind="short">$informationDescription</description>
+ <offline-allowed/>
</information>
<security>
- <all-permissions/>
- </security>
- <resources>
- <j2se version='1.5+'/>
-$LIBRARIES
- </resources>
- <application-desc main-class='$startUpClass'>
- <argument>$red5-host</argument>
- <argument>$red5-app</argument>
- <argument>$port</argument>
- <argument>$PUBLIC_SID</argument>
- <argument>$LABELSHARER</argument>
- <argument>$organization_id</argument>
- <argument>$default_quality_screensharing</argument>
- <argument>$user_id</argument>
- <argument>$allowRecording</argument>
- <argument>$allowPublishing</argument>
-$KEYSTORE
- </application-desc>
-</jnlp>
+ <all-permissions/>
+ </security>
+ <resources>
+ <j2se version='1.6+'/>
+ $dependencies
+ </resources>
+ <application-desc main-class='$mainClass'>
+ <argument>$host</argument>
+ <argument>$port</argument>
+ <argument>$app</argument>
+ <argument>$userId</argument>
+ <argument>$organizationId</argument>
+ <argument>$publicSid</argument>
+ <argument>$labels</argument>
+ <argument>$defaultQuality</argument>
+ <argument>$allowRecording</argument>
+ <argument>$allowPublishing</argument>
+ <argument>$clientClass</argument>
+ <argument>$keystore</argument>
+ <argument>$password</argument>
+ </application-desc>
+</jnlp>
Modified: openmeetings/trunk/singlewebapp/openmeetings-util/pom.xml
URL: http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/openmeetings-util/pom.xml?rev=1589938&r1=1589937&r2=1589938&view=diff
==============================================================================
--- openmeetings/trunk/singlewebapp/openmeetings-util/pom.xml (original)
+++ openmeetings/trunk/singlewebapp/openmeetings-util/pom.xml Fri Apr 25 06:14:40 2014
@@ -39,8 +39,27 @@
<commons-codec.version>1.8</commons-codec.version>
<servlet-api.version>2.5</servlet-api.version>
</properties>
+ <dependencyManagement>
+ <dependencies>
+ <dependency>
+ <groupId>org.red5</groupId>
+ <artifactId>red5-server</artifactId>
+ <version>${red5-server.version}</version>
+ <exclusions>
+ <exclusion>
+ <groupId>org</groupId>
+ <artifactId>jaudiotagger</artifactId>
+ </exclusion>
+ </exclusions>
+ </dependency>
+ </dependencies>
+ </dependencyManagement>
<dependencies>
<dependency>
+ <groupId>org.red5</groupId>
+ <artifactId>red5-server</artifactId>
+ </dependency>
+ <dependency>
<groupId>commons-transaction</groupId>
<artifactId>commons-transaction</artifactId>
<version>${commons-transaction.version}</version>
@@ -71,5 +90,16 @@
<version>${servlet-api.version}</version>
<scope>provided</scope>
</dependency>
+ <dependency>
+ <groupId>javax.servlet</groupId>
+ <artifactId>servlet-api</artifactId>
+ <version>${servlet-api.version}</version>
+ <scope>provided</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.wicket</groupId>
+ <artifactId>wicket-util</artifactId>
+ <version>${wicket.version}</version>
+ </dependency>
</dependencies>
</project>
Modified: openmeetings/trunk/singlewebapp/openmeetings-util/src/main/java/org/apache/openmeetings/util/stringhandlers/ChatString.java
URL: http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/openmeetings-util/src/main/java/org/apache/openmeetings/util/stringhandlers/ChatString.java?rev=1589938&r1=1589937&r2=1589938&view=diff
==============================================================================
--- openmeetings/trunk/singlewebapp/openmeetings-util/src/main/java/org/apache/openmeetings/util/stringhandlers/ChatString.java (original)
+++ openmeetings/trunk/singlewebapp/openmeetings-util/src/main/java/org/apache/openmeetings/util/stringhandlers/ChatString.java Fri Apr 25 06:14:40 2014
@@ -18,6 +18,8 @@
*/
package org.apache.openmeetings.util.stringhandlers;
+import static org.apache.openmeetings.util.OpenmeetingsVariables.webAppRootKey;
+
import java.text.CharacterIterator;
import java.text.StringCharacterIterator;
import java.util.Iterator;
@@ -25,14 +27,12 @@ import java.util.LinkedList;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
-import org.apache.openmeetings.util.OpenmeetingsVariables;
import org.apache.wicket.util.string.Strings;
import org.red5.logging.Red5LoggerFactory;
import org.slf4j.Logger;
public class ChatString {
- private static final Logger log = Red5LoggerFactory.getLogger(
- ChatString.class, OpenmeetingsVariables.webAppRootKey);
+ private static final Logger log = Red5LoggerFactory.getLogger(ChatString.class, webAppRootKey);
private static String htmlToText(String source) {
String result = source;
Modified: openmeetings/trunk/singlewebapp/openmeetings-web/pom.xml
URL: http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/openmeetings-web/pom.xml?rev=1589938&r1=1589937&r2=1589938&view=diff
==============================================================================
--- openmeetings/trunk/singlewebapp/openmeetings-web/pom.xml (original)
+++ openmeetings/trunk/singlewebapp/openmeetings-web/pom.xml Fri Apr 25 06:14:40 2014
@@ -66,6 +66,11 @@
</dependency>
<dependency>
<groupId>org.apache.wicket</groupId>
+ <artifactId>wicket-core</artifactId>
+ <version>${wicket.version}</version>
+ </dependency>
+ <dependency>
+ <groupId>org.apache.wicket</groupId>
<artifactId>wicket-extensions</artifactId>
<version>${wicket.version}</version>
</dependency>
Modified: openmeetings/trunk/singlewebapp/pom.xml
URL: http://svn.apache.org/viewvc/openmeetings/trunk/singlewebapp/pom.xml?rev=1589938&r1=1589937&r2=1589938&view=diff
==============================================================================
--- openmeetings/trunk/singlewebapp/pom.xml (original)
+++ openmeetings/trunk/singlewebapp/pom.xml Fri Apr 25 06:14:40 2014
@@ -33,14 +33,12 @@
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<openmeetings.version>3.1.0-SNAPSHOT</openmeetings.version>
- <red5.server.version>1.0.2-M1</red5.server.version>
- <red5.client.version>1.0.2-RC2</red5.client.version>
- <wicket.version>6.14.0</wicket.version>
- <jaudiotagger.version>2.0.4-SNAPSHOT</jaudiotagger.version>
- <spring.version>4.0.0.RELEASE</spring.version>
+ <spring.version>4.0.3.RELEASE</spring.version>
<junit.version>4.11</junit.version>
<maven.javadoc.version>2.9.1</maven.javadoc.version>
- <maven.surefire.version>2.12.2</maven.surefire.version>
+ <maven.surefire.version>2.17</maven.surefire.version>
+ <wicket.version>6.14.0</wicket.version>
+ <red5-server.version>1.0.2-RELEASE</red5-server.version>
</properties>
<modules>
<module>openmeetings-core</module>
@@ -56,7 +54,7 @@
<profile>
</profile>
</profiles>
- <url>http://openmeetings.apache.org/${project.artifactId}</url>
+ <url>http://openmeetings.apache.org</url>
<inceptionYear>2012</inceptionYear>
<organization>
<name>Apache Software Foundation</name>
@@ -125,37 +123,8 @@
<url>http://red5.googlecode.com/svn/repository</url>
</repository>
</repositories>
- <dependencyManagement>
- <dependencies>
- <dependency>
- <groupId>org.apache.openmeetings</groupId>
- <artifactId>openmeetings-util</artifactId>
- <version>${project.version}</version>
- </dependency>
- <dependency>
- <groupId>org.red5</groupId>
- <artifactId>red5-server</artifactId>
- <version>${red5.server.version}</version>
- </dependency>
- </dependencies>
- </dependencyManagement>
<dependencies>
<dependency>
- <groupId>org.red5</groupId>
- <artifactId>red5-server</artifactId>
- <version>${red5.server.version}</version>
- </dependency>
- <dependency>
- <groupId>org.apache.wicket</groupId>
- <artifactId>wicket-core</artifactId>
- <version>${wicket.version}</version>
- </dependency>
- <dependency>
- <groupId>org.apache.wicket</groupId>
- <artifactId>wicket-util</artifactId>
- <version>${wicket.version}</version>
- </dependency>
- <dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>${junit.version}</version>
@@ -163,6 +132,12 @@
</dependency>
<dependency>
<groupId>org.springframework</groupId>
+ <artifactId>spring-core</artifactId>
+ <version>${spring.version}</version>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
+ <groupId>org.springframework</groupId>
<artifactId>spring-test</artifactId>
<version>${spring.version}</version>
<scope>test</scope>
@@ -265,6 +240,11 @@
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-dependency-plugin</artifactId>
+ <version>2.8</version>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-site-plugin</artifactId>
<version>3.3</version>
</plugin>
@@ -297,6 +277,32 @@
<version>2.3.7</version>
<extensions>true</extensions>
</plugin>
+ <plugin>
+ <groupId>org.codehaus.mojo</groupId>
+ <artifactId>webstart-maven-plugin</artifactId>
+ <version>1.0-beta-6</version>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-dependency-plugin</artifactId>
+ <version>2.8</version>
+ <executions>
+ <execution>
+ <id>copy-dependencies</id>
+ <phase>package</phase>
+ <goals>
+ <goal>copy-dependencies</goal>
+ </goals>
+ <configuration>
+ <outputDirectory>${project.build.directory}/lib</outputDirectory>
+ <overWriteReleases>false</overWriteReleases>
+ <overWriteSnapshots>false</overWriteSnapshots>
+ <overWriteIfNewer>true</overWriteIfNewer>
+ <excludeTransitive>true</excludeTransitive>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
<!--This plugin's configuration is used to store Eclipse m2e settings only. It has no influence on the Maven build itself.-->
<plugin>
@@ -332,29 +338,6 @@
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-project-info-reports-plugin</artifactId>
<version>2.6</version>
- <reportSets>
- <reportSet>
- <reports>
- <report>index</report>
- <report>help</report>
- <report>project-team</report>
- <report>modules</report>
- <report>plugins</report>
- <report>cim</report>
- <report>issue-tracking</report>
- <report>scm</report>
- <report>license</report>
- <report>plugin-management</report>
- <report>distribution-management</report>
- <report>summary</report>
- <report>mailing-list</report>
- <report>issue-tracking</report>
- <!--
- <report>dependencies</report>
- -->
- </reports>
- </reportSet>
- </reportSets>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>