Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
Copyright (c) 2008, 2010 VMware Inc. All rights reserved. This program and the accompanying materials are made available under the terms of the Eclipse Public License v1.0 which accompanies this distribution, and is available at http://www.eclipse.org/legal/epl-v10.html Contributors: VMware Inc. - initial contribution /
 
 
 package org.eclipse.virgo.nano.config.internal.commandline;
 
 import java.util.List;
 import java.util.Map;
 
 
 
 
 public final class CommandLinePropertiesSource implements PropertiesSource {
 	
 	private static final String PROPERTY_USERREGION_COMMANDLINE_ARTIFACTS = "commandLineArtifacts";
 
 	private static final String PROPERTY_UNRECOGNIZED_LAUNCHER_ARGUMENTS = "eclipse.commands";
 	
 	private static final String COMMAND_PREFIX = "-";
 	
 	private static final String COMMAND_PLAN = "plan";
 	
 	private static final String PID_KERNEL_REGION = "org.eclipse.virgo.kernel.userregion";
 	
 	private static final String TEMPLATE_VERSIONED_PLAN_REPOSITORY_URI = "repository:plan/%s/%s";
 	
 	private static final String TEMPLATE_UNVERSIONED_PLAN_REPOSITORY_URI = "repository:plan/%s";
 	
 	private final String unrecognizedArguments;
 	
 	private final EventLogger eventLogger;
 	
 	public CommandLinePropertiesSource(BundleContext bundleContextEventLogger eventLogger) {
 		this. = eventLogger;
 	}
 
 		
 		Map<StringPropertiesconfiguration = new HashMap<StringProperties>();
 		
 		if (this. != null) {
 			String[] components = this..split("\n");
 			
 			List<Stringarguments = null;
 			String command = null;
 			
 			for (int i = 0; i < components.lengthi++) {
 				if (components[i].startsWith()) {
 					if (command != null) {
 						processCommand(commandargumentsconfiguration);
 					}					
 					command = components[i].substring(.length());
 					arguments = new ArrayList<String>();					
 				} else if (arguments != null) {
 					arguments.add(components[i]);
 				}
 			}
 			
 			if (command != null) {
 				processCommand(commandargumentsconfiguration);
 			}
 		}
 		
 		return configuration;
 	}
 
 	private void processCommand(String commandList<StringargumentsMap<StringPropertiesconfiguration) {
 		if (.equals(command)) {
 			processPlanCommand(argumentsconfiguration);
 		}
 	}
 	
 	private void processPlanCommand(List<StringargumentsMap<StringPropertiesconfiguration) {
 		String repositoryUri = null;
 		
 		if (arguments.size() == 1) {
 			repositoryUri = String.format(arguments.get(0));
 		} else if (arguments.size() == 2) {
 			repositoryUri = String.format(arguments.get(0), arguments.get(1));
 		} else {
 		}
 		
 		if (repositoryUri != null) {
			Properties properties = getProperties(configuration);
		}		
	}
	private String formatArgumentList(List<Stringarguments) {
		if (arguments.size() == 0) {
			return "";
		}
		StringBuilder argumentsBuilder = new StringBuilder();
		for (int i = 0; i < arguments.size(); i++) {
			argumentsBuilder.append(arguments.get(i));
			if ((i + 1) < arguments.size()) {
				argumentsBuilder.append(", ");
			}
		}
		return argumentsBuilder.toString();
	}
	private Properties getProperties(String pidMap<StringPropertiesconfiguration) {
		Properties properties = configuration.get(pid);
		if (properties == null) {
			properties = new Properties();
			configuration.put(pidproperties);
		}
		return properties;
	}
	private void appendProperty(String keyString valueProperties properties) {
		String property = properties.getProperty(key);
		if (property != null) {
			property = property + "," + value;
else {
			property = value;
		}
		properties.put(keyproperty);
	}
New to GrepCode? Check out our FAQ X