You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@river.apache.org by th...@apache.org on 2012/04/12 16:57:05 UTC

svn commit: r1325299 - in /river/jtsk/skunk/easystart/src-extra/org/apache/river/extra/easystart: CheckServices.java StartOutriggerService.java config/ConventionalLookupServiceConfiguration.java config/JavaSpaceConfiguration.java

Author: thobbs
Date: Thu Apr 12 14:57:04 2012
New Revision: 1325299

URL: http://svn.apache.org/viewvc?rev=1325299&view=rev
Log:
Got config working for spaces

Added:
    river/jtsk/skunk/easystart/src-extra/org/apache/river/extra/easystart/config/JavaSpaceConfiguration.java
Modified:
    river/jtsk/skunk/easystart/src-extra/org/apache/river/extra/easystart/CheckServices.java
    river/jtsk/skunk/easystart/src-extra/org/apache/river/extra/easystart/StartOutriggerService.java
    river/jtsk/skunk/easystart/src-extra/org/apache/river/extra/easystart/config/ConventionalLookupServiceConfiguration.java

Modified: river/jtsk/skunk/easystart/src-extra/org/apache/river/extra/easystart/CheckServices.java
URL: http://svn.apache.org/viewvc/river/jtsk/skunk/easystart/src-extra/org/apache/river/extra/easystart/CheckServices.java?rev=1325299&r1=1325298&r2=1325299&view=diff
==============================================================================
--- river/jtsk/skunk/easystart/src-extra/org/apache/river/extra/easystart/CheckServices.java (original)
+++ river/jtsk/skunk/easystart/src-extra/org/apache/river/extra/easystart/CheckServices.java Thu Apr 12 14:57:04 2012
@@ -47,7 +47,7 @@ public class CheckServices {
 		
 		checkHttpServer(port);
 		checkLookupServices();
-//		checkSpaces();
+		checkSpaces();
 //		checkTransactionManagers();
 //		
 //		checkAll();

Modified: river/jtsk/skunk/easystart/src-extra/org/apache/river/extra/easystart/StartOutriggerService.java
URL: http://svn.apache.org/viewvc/river/jtsk/skunk/easystart/src-extra/org/apache/river/extra/easystart/StartOutriggerService.java?rev=1325299&r1=1325298&r2=1325299&view=diff
==============================================================================
--- river/jtsk/skunk/easystart/src-extra/org/apache/river/extra/easystart/StartOutriggerService.java (original)
+++ river/jtsk/skunk/easystart/src-extra/org/apache/river/extra/easystart/StartOutriggerService.java Thu Apr 12 14:57:04 2012
@@ -19,10 +19,14 @@
 package org.apache.river.extra.easystart;
 
 import java.io.File;
+import java.io.IOException;
 import java.util.logging.Logger;
 
+import net.jini.config.Configuration;
 import net.jini.config.ConfigurationException;
 
+import org.apache.river.extra.easystart.config.JavaSpaceConfiguration;
+
 import com.sun.jini.start.ServiceStarter;
 
 public class StartOutriggerService {
@@ -36,8 +40,9 @@ public class StartOutriggerService {
 	/**
 	 * @param args
 	 * @throws ConfigurationException 
+	 * @throws IOException 
 	 */
-	public static void main(String[] args) throws ConfigurationException {
+	public static void main(String[] args) throws ConfigurationException, IOException {
 		validateArgs(args);
 		
 		final String RIVER_HOME = args[RIVER_HOME_INDEX];
@@ -46,22 +51,23 @@ public class StartOutriggerService {
 		log.info("Using RIVER_HOME="+RIVER_HOME);
 		log.info("Using HTTP_PORT="+HTTP_PORT);
 		
-		final String riverHome = "/home/tom/projects/river/easystart";
-		final String pathToConfig = "/home/tom/projects/river/easystart/src-extra/empty.config";
-		final String pathToPolicy = "/home/tom/projects/river/easystart/src-extra/outrigger.policy";
-		final String classpath = "/home/tom/projects/river/easystart/lib/outrigger.jar";
-		
-		OutriggerServiceConfiguration config = new OutriggerServiceConfiguration(8080,
-				riverHome,
-				new AbsolutePath(pathToConfig),
-				new AbsolutePath(pathToPolicy),
-				new AbsolutePath[] {
-					new AbsolutePath(classpath)
-				}
-		);
-		config.addLookupGroup("Lester");
-		config.addLookupGroup("Jeff");
+//		final String riverHome = "/home/tom/projects/river/easystart";
+//		final String pathToConfig = "/home/tom/projects/river/easystart/src-extra/empty.config";
+//		final String pathToPolicy = "/home/tom/projects/river/easystart/src-extra/outrigger.policy";
+//		final String classpath = "/home/tom/projects/river/easystart/lib/outrigger.jar";
+//		
+//		OutriggerServiceConfiguration config = new OutriggerServiceConfiguration(8080,
+//				riverHome,
+//				new AbsolutePath(pathToConfig),
+//				new AbsolutePath(pathToPolicy),
+//				new AbsolutePath[] {
+//					new AbsolutePath(classpath)
+//				}
+//		);
+//		config.addLookupGroup("Lester");
+//		config.addLookupGroup("Jeff");
 		
+		Configuration config = JavaSpaceConfiguration.config();
 		ServiceStarter.main(config);
 	}
 

Modified: river/jtsk/skunk/easystart/src-extra/org/apache/river/extra/easystart/config/ConventionalLookupServiceConfiguration.java
URL: http://svn.apache.org/viewvc/river/jtsk/skunk/easystart/src-extra/org/apache/river/extra/easystart/config/ConventionalLookupServiceConfiguration.java?rev=1325299&r1=1325298&r2=1325299&view=diff
==============================================================================
--- river/jtsk/skunk/easystart/src-extra/org/apache/river/extra/easystart/config/ConventionalLookupServiceConfiguration.java (original)
+++ river/jtsk/skunk/easystart/src-extra/org/apache/river/extra/easystart/config/ConventionalLookupServiceConfiguration.java Thu Apr 12 14:57:04 2012
@@ -26,14 +26,15 @@ public class ConventionalLookupServiceCo
 //		opts.RIVER_HOME;  - no override for this
 		opts.HTTP_PORT.setOverride("8080");
 		opts.JINI_PORT.setOverride("4160");
-		opts.MEMBER_GROUPS.add("Lester").add("Jeff");
-		opts.LOOKUP_GROUPS.add("Chuck").add("Sarah");
+//		opts.MEMBER_GROUPS.add("Lester").add("Jeff");
+		opts.MEMBER_GROUPS.add("Chuck").add("Sarah");
+//		opts.LOOKUP_GROUPS.add("Chuck").add("Sarah");
 		opts.SERVICE_IMPL.setOverride("com.sun.jini.reggie.TransientRegistrarImpl");
 		opts.CODEBASE.add("reggie-dl.jar").add("jsk-dl.jar");
 		opts.CLASSPATH.add(opts.RIVER_HOME.getOverride()+"/lib/reggie.jar");
 		opts.CLASSPATH.add(opts.RIVER_HOME.getOverride()+"/lib/jini-ext.jar");
 //		opts.POLICY.setOverride("secure.policy");
-		opts.SERVER_EXPORTER.asJeriExporter("localhost", 4161);
+//		opts.SERVER_EXPORTER.asJeriExporter("localhost", 4161);
 		
 		Properties p = new Properties();
 		p.load( VelocityConfigurationBuilder.class.getResourceAsStream("velocity.properties") );

Added: river/jtsk/skunk/easystart/src-extra/org/apache/river/extra/easystart/config/JavaSpaceConfiguration.java
URL: http://svn.apache.org/viewvc/river/jtsk/skunk/easystart/src-extra/org/apache/river/extra/easystart/config/JavaSpaceConfiguration.java?rev=1325299&view=auto
==============================================================================
--- river/jtsk/skunk/easystart/src-extra/org/apache/river/extra/easystart/config/JavaSpaceConfiguration.java (added)
+++ river/jtsk/skunk/easystart/src-extra/org/apache/river/extra/easystart/config/JavaSpaceConfiguration.java Thu Apr 12 14:57:04 2012
@@ -0,0 +1,106 @@
+package org.apache.river.extra.easystart.config;
+
+import java.io.IOException;
+import java.io.Reader;
+import java.io.StringReader;
+import java.io.StringWriter;
+import java.util.Properties;
+import java.util.logging.Logger;
+
+import net.jini.config.ConfigurationException;
+import net.jini.config.ConfigurationFile;
+
+import org.apache.river.config.builder.VelocityConfigurationBuilder;
+import org.apache.velocity.Template;
+import org.apache.velocity.VelocityContext;
+import org.apache.velocity.app.VelocityEngine;
+
+public class JavaSpaceConfiguration extends ConfigurationFile {
+
+	private static final Logger LOGGER = Logger.getLogger(JavaSpaceConfiguration.class.getName());
+	
+	public static JavaSpaceConfiguration config() throws IOException, ConfigurationException {
+		
+		Options opts = new Options();
+		opts.PACKAGE_NAME.setOverride("com.sun.jini.outrigger");
+//		opts.RIVER_HOME;  - no override for this
+		opts.HTTP_PORT.setOverride("8080");
+//		opts.JINI_PORT.setOverride("4160");
+//		opts.MEMBER_GROUPS.add("Lester").add("Jeff");
+		opts.LOOKUP_GROUPS.add("Chuck").add("Sarah");
+		opts.SERVICE_IMPL.setOverride("com.sun.jini.outrigger.TransientOutriggerImpl");
+		opts.CODEBASE.add("outrigger-dl.jar").add("jsk-dl.jar");
+		opts.CLASSPATH.add(opts.RIVER_HOME.getOverride()+"/lib/outrigger.jar");
+//		opts.CLASSPATH.add(opts.RIVER_HOME.getOverride()+"/lib/jini-ext.jar");
+//		opts.POLICY.setOverride("secure.policy");
+//		opts.SERVER_EXPORTER.asJeriExporter("localhost", 4161);
+		
+		Properties p = new Properties();
+		p.load( VelocityConfigurationBuilder.class.getResourceAsStream("velocity.properties") );
+		VelocityEngine ve = new VelocityEngine(p);
+		VelocityContext context = new VelocityContext();
+		
+		StringBuilder options = new StringBuilder();
+		StringBuilder defaults = new StringBuilder();
+		String key = opts.PACKAGE_NAME.getOverride()+'.';
+		for(Setting setting : opts.OPTIONS) {
+			String format = setting.getFormatter();
+			if(setting.isServiceDescription()) {
+	        	
+	        	String name = key + setting.getName();
+	        	
+	        	options
+	        		.append(",\"")
+	        		.append(name)
+	        		.append('=')
+	        		.append(String.format(format, setting.getOverride()))
+	        		.append("\"\n");
+	        	
+	        	defaults
+	        		.append(setting.getName())
+	        		.append('=')
+	        		.append(String.format(format, setting.getDefault()))
+	        		.append(";\n");
+			} else {
+	        	context.put(setting.getName(),
+				String.format(format, setting.getOverride()));
+			}
+		}
+		
+        context.put("defaults", defaults.toString());
+        context.put("options", options.toString());
+        
+        Template template = ve.getTemplate( Options.class.getResource("start.config").toExternalForm() );
+        
+        StringWriter sw = new StringWriter();
+
+        template.merge(context, sw);
+        
+        String s = sw.toString();
+        
+        LOGGER.warning(s);
+        
+        StringReader sr = new StringReader(s);
+        
+        return new JavaSpaceConfiguration(sr, new String[0]);//opts.getOptionsArray());
+	}
+	
+	private JavaSpaceConfiguration(Reader reader, String[] options) throws ConfigurationException {
+		super(reader,options);
+	}
+	
+//	public ConventionalLookupServiceConfiguration(String[] options) throws ConfigurationException {
+//		super(fileReader(), options);
+//	}
+
+	@Override
+	public Object getEntry(String component, String name, Class type,
+			Object defaultValue) throws ConfigurationException {
+		if("initialMemberGroups".equals(name)) {
+//			return new String[0];
+			return super.getEntry(component, name, type, defaultValue);
+		} else {
+			return super.getEntry(component, name, type, defaultValue);
+		}
+	}
+}