Skip to content

Commit

Permalink
SYMMETRICDS-437
Browse files Browse the repository at this point in the history
  • Loading branch information
chenson42 committed May 12, 2011
1 parent 3e832be commit 1054e1f
Show file tree
Hide file tree
Showing 5 changed files with 67 additions and 18 deletions.
Expand Up @@ -260,7 +260,7 @@ compression.strategy=0
# The base servlet path for embedding SymmetricDS with-in another web application
#
# Tags: transport
web.base.servlet.path=
web.base.servlet.path=/sync

# Indicate whether the batch servlet (which allows specific batches to be requested) is enabled.
#
Expand Down
Expand Up @@ -15,11 +15,18 @@ values (900, 11000001, 0.10, 1, 0);
--
-- Nodes
--
delete from sym_node_group_link;
delete from sym_node_group;
delete from sym_node_identity;
delete from sym_node_security;
delete from sym_node;

insert into sym_node_group (node_group_id, description)
values ('corp', 'Central Office');
insert into sym_node_group (node_group_id, description)
values ('store', 'Store');


insert into sym_node_group_link (source_node_group_id, target_node_group_id, data_event_action)
values ('store', 'corp', 'P');
insert into sym_node_group_link (source_node_group_id, target_node_group_id, data_event_action)
Expand Down
Expand Up @@ -5,9 +5,6 @@ http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
version="2.5">

<display-name>SymmetricDS</display-name>

<description>
</description>

<context-param>
<param-name>contextConfigLocation</param-name>
Expand Down Expand Up @@ -36,7 +33,7 @@ http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"

<servlet-mapping>
<servlet-name>SymmetricServlet</servlet-name>
<url-pattern>/*</url-pattern>
<url-pattern>/sync/*</url-pattern>
</servlet-mapping>

</web-app>
Expand Up @@ -39,11 +39,8 @@
import org.eclipse.jetty.security.HashLoginService;
import org.eclipse.jetty.security.authentication.BasicAuthenticator;
import org.eclipse.jetty.server.Connector;
import org.eclipse.jetty.server.Handler;
import org.eclipse.jetty.server.Server;
import org.eclipse.jetty.server.bio.SocketConnector;
import org.eclipse.jetty.server.handler.ContextHandlerCollection;
import org.eclipse.jetty.server.handler.MovedContextHandler;
import org.eclipse.jetty.server.nio.SelectChannelConnector;
import org.eclipse.jetty.server.ssl.SslSocketConnector;
import org.eclipse.jetty.webapp.WebAppContext;
Expand Down Expand Up @@ -86,7 +83,7 @@ public enum Mode {

protected boolean createJmxServer = true;

protected String webHome = "/sync";
protected String webHome = "/";

protected int maxIdleTime = 7200000;

Expand Down Expand Up @@ -175,16 +172,9 @@ public SymmetricWebServer start(int port, int securePort, Mode mode) throws Exce
webapp = new WebAppContext();
webapp.setContextPath(webHome);
webapp.setWar(webAppDir);
webapp.getSessionHandler().getSessionManager().setMaxInactiveInterval(maxIdleTime/1000);

MovedContextHandler movedHandler = new MovedContextHandler();
movedHandler.setContextPath("/");
movedHandler.setNewContextURL(webHome);

ContextHandlerCollection contexts = new ContextHandlerCollection();
contexts.setHandlers(new Handler[] { movedHandler, webapp });
webapp.getSessionHandler().getSessionManager().setMaxInactiveInterval(maxIdleTime/1000);

server.setHandler(contexts);
server.setHandler(webapp);

if (!StringUtils.isBlank(propertiesFile)) {
System.setProperty(Constants.OVERRIDE_PROPERTIES_FILE_1, propertiesFile);
Expand Down
@@ -0,0 +1,55 @@
package org.jumpmind.symmetric.integrate;

import org.apache.commons.lang.StringUtils;
import org.jumpmind.symmetric.db.IDbDialect;
import org.jumpmind.symmetric.load.IReloadListener;
import org.jumpmind.symmetric.model.Node;
import org.jumpmind.symmetric.service.IDataService;

public class RunSqlReloadListener implements IReloadListener {

private IDataService dataService;

private IDbDialect dbDialect;

private String sqlToRunAtTargetBeforeReload;

private String sqlToRunAtTargetAfterReload;

public void afterReload(Node node) {
if (StringUtils.isNotBlank(sqlToRunAtTargetAfterReload)) {
dataService.sendSQL(node.getNodeId(), dbDialect.getDefaultCatalog(),
dbDialect.getDefaultSchema(), "SYM_TRIGGER", sqlToRunAtTargetAfterReload, true);
}
}

public void beforeReload(Node node) {
if (StringUtils.isNotBlank(sqlToRunAtTargetBeforeReload)) {
dataService
.sendSQL(node.getNodeId(), dbDialect.getDefaultCatalog(),
dbDialect.getDefaultSchema(), "SYM_TRIGGER",
sqlToRunAtTargetBeforeReload, true);
}
}

public boolean isAutoRegister() {
return true;
}

public void setDataService(IDataService dataService) {
this.dataService = dataService;
}

public void setDbDialect(IDbDialect dbDialect) {
this.dbDialect = dbDialect;
}

public void setSqlToRunAtTargetAfterReload(String sqlToRunAfterReload) {
this.sqlToRunAtTargetAfterReload = sqlToRunAfterReload;
}

public void setSqlToRunAtTargetBeforeReload(String sqlToRunBeforeReload) {
this.sqlToRunAtTargetBeforeReload = sqlToRunBeforeReload;
}

}

0 comments on commit 1054e1f

Please sign in to comment.