[openrtm-commit:02562] r724 - in trunk/rtmtools/jp.go.aist.rtm.systemeditor: src/jp/go/aist/rtm/systemeditor/corba src/jp/go/aist/rtm/systemeditor/nl src/jp/go/aist/rtm/systemeditor/ui/dialog src/jp/go/aist/rtm/systemeditor/ui/views/managercontrolview test/jp/go/aist/rtm/systemeditor/ui/views/managercontrolview/mock

openrtm @ openrtm.org openrtm @ openrtm.org
2017年 4月 10日 (月) 02:29:04 JST


Author: ga
Date: 2017-04-10 02:29:04 +0900 (Mon, 10 Apr 2017)
New Revision: 724

Modified:
   trunk/rtmtools/jp.go.aist.rtm.systemeditor/src/jp/go/aist/rtm/systemeditor/corba/CORBAHelper.java
   trunk/rtmtools/jp.go.aist.rtm.systemeditor/src/jp/go/aist/rtm/systemeditor/nl/messages.properties
   trunk/rtmtools/jp.go.aist.rtm.systemeditor/src/jp/go/aist/rtm/systemeditor/ui/dialog/CreateComponentDialog.java
   trunk/rtmtools/jp.go.aist.rtm.systemeditor/src/jp/go/aist/rtm/systemeditor/ui/views/managercontrolview/ManagerControlView.java
   trunk/rtmtools/jp.go.aist.rtm.systemeditor/test/jp/go/aist/rtm/systemeditor/ui/views/managercontrolview/mock/RTCManagerMock.java
Log:
Modified Manager View #2297

Modified: trunk/rtmtools/jp.go.aist.rtm.systemeditor/src/jp/go/aist/rtm/systemeditor/corba/CORBAHelper.java
===================================================================
--- trunk/rtmtools/jp.go.aist.rtm.systemeditor/src/jp/go/aist/rtm/systemeditor/corba/CORBAHelper.java	2017-04-09 17:28:49 UTC (rev 723)
+++ trunk/rtmtools/jp.go.aist.rtm.systemeditor/src/jp/go/aist/rtm/systemeditor/corba/CORBAHelper.java	2017-04-09 17:29:04 UTC (rev 724)
@@ -3,11 +3,6 @@
 import java.util.ArrayList;
 import java.util.List;
 
-import org.openrtp.namespaces.rts.version02.ConfigurationData;
-import org.openrtp.namespaces.rts.version02.ConfigurationSet;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
 import jp.go.aist.rtm.nameserviceview.corba.NameServerAccesser;
 import jp.go.aist.rtm.toolscommon.model.component.Component;
 import jp.go.aist.rtm.toolscommon.model.component.CorbaComponent;
@@ -15,12 +10,16 @@
 import jp.go.aist.rtm.toolscommon.synchronizationframework.SynchronizationSupport;
 import jp.go.aist.rtm.toolscommon.util.RtsProfileHandler;
 
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
 /**
  * CORBA操作に関するヘルパー
  */
 public class CORBAHelper {
 
-	private static final Logger LOGGER = LoggerFactory.getLogger(CORBAHelper.class);
+	private static final Logger LOGGER = LoggerFactory
+			.getLogger(CORBAHelper.class);
 
 	private static NS _ns = new NS();
 	private static Factory _factory = new Factory();
@@ -59,7 +58,8 @@
 		 * @return CORBAオブジェクト
 		 */
 		public org.omg.CORBA.Object resolve(String path) {
-			org.omg.CORBA.Object result = NameServerAccesser.getInstance().getObjectFromPathId(path);
+			org.omg.CORBA.Object result = NameServerAccesser.getInstance()
+					.getObjectFromPathId(path);
 			return result;
 		}
 
@@ -73,7 +73,8 @@
 		public RTM.Manager findManager(String path) {
 			int index = path.lastIndexOf("/");
 			String cid = path.substring(0, index);
-			return NameServerAccesser.getInstance().getManagerFromContextId(cid);
+			return NameServerAccesser.getInstance()
+					.getManagerFromContextId(cid);
 		}
 
 	}
@@ -94,7 +95,8 @@
 		 * @return リモートオブジェクトが生存している場合はtrue
 		 */
 		public boolean isAvailable(CorbaComponent comp) {
-			return (comp.getCorbaObject() != null && SynchronizationSupport.ping(comp.getCorbaObject()));
+			return (comp.getCorbaObject() != null && SynchronizationSupport
+					.ping(comp.getCorbaObject()));
 		}
 
 		/**
@@ -107,13 +109,17 @@
 		 * @return リモートオブジェクト
 		 * @throws CORBAException
 		 */
-		public RTC.RTObject createRTObject(CorbaComponent comp, SystemDiagram diagram) throws CORBAException {
-			LOGGER.trace("createRTObject START comp=<{}> diagram=<{}>", comp, diagram);
+		public RTC.RTObject createRTObject(CorbaComponent comp,
+				SystemDiagram diagram) throws CORBAException {
+			LOGGER.trace("createRTObject START comp=<{}> diagram=<{}>", comp,
+					diagram);
 			RTM.Manager manager = ns().findManager(comp.getPathId());
 			if (manager == null) {
-				throw new CORBAException(String.format("Fail to find manager: path=<%s>", comp.getPathId()));
+				throw new CORBAException(String.format(
+						"Fail to find manager: path=<%s>", comp.getPathId()));
 			}
 			String param = buildCreateComponentParam(comp);
+			LOGGER.info("createRTObject: cmd=<{}>", param);
 			RTC.RTObject rtobj = manager.create_component(param);
 			return rtobj;
 		}
@@ -128,14 +134,21 @@
 		 * @return リモートオブジェクト
 		 * @throws CORBAException
 		 */
-		public RTC.RTObject createCompositeRTObject(CorbaComponent comp, SystemDiagram diagram) throws CORBAException {
-			LOGGER.trace("createCompositeRTObject START comp=<{}> diagram=<{}>", comp, diagram);
+		public RTC.RTObject createCompositeRTObject(CorbaComponent comp,
+				SystemDiagram diagram) throws CORBAException {
+			LOGGER.trace(
+					"createCompositeRTObject START comp=<{}> diagram=<{}>",
+					comp, diagram);
 			RTM.Manager manager = ns().findManager(comp.getPathId());
 			if (manager == null) {
-				throw new CORBAException(String.format("Fail to find manager: path=<%s>", comp.getPathId()));
+				throw new CORBAException(String.format(
+						"Fail to find manager: path=<%s>", comp.getPathId()));
 			}
-			String exportedPorts = findConfiguration("exported_ports", comp, diagram);
-			String param = buildCreateCompositeComponentParam(comp, exportedPorts);
+			String exportedPorts = findConfiguration("exported_ports", comp,
+					diagram);
+			String param = buildCreateCompositeComponentParam(comp,
+					exportedPorts);
+			LOGGER.info("createCompositeRTObject: cmd=<{}>", param);
 			RTC.RTObject rtobj = manager.create_component(param);
 			return rtobj;
 		}
@@ -148,11 +161,13 @@
 		 *            CORBA 複合コンポーネント
 		 * @throws CORBAException
 		 */
-		public void setCompositeMembers(CorbaComponent comp) throws CORBAException {
+		public void setCompositeMembers(CorbaComponent comp)
+				throws CORBAException {
 			LOGGER.trace("setCompositeMembers START comp=<{}>", comp);
 			RTC.RTObject remote = comp.getCorbaObjectInterface();
 			if (remote == null) {
-				throw new CORBAException(String.format("Remote object does not loaded: comp=<{}>", comp));
+				throw new CORBAException(String.format(
+						"Remote object does not loaded: comp=<{}>", comp));
 			}
 			// 子RTCの CORBAオブジェクトリストを生成
 			List<_SDOPackage.SDO> sdolist = new ArrayList<_SDOPackage.SDO>();
@@ -160,7 +175,10 @@
 				CorbaComponent c = (CorbaComponent) o;
 				RTC.RTObject rtobj = c.getCorbaObjectInterface();
 				if (rtobj == null) {
-					throw new CORBAException(String.format("Remote object of child does not loaded: comp=<{}>", c));
+					throw new CORBAException(
+							String.format(
+									"Remote object of child does not loaded: comp=<{}>",
+									c));
 				}
 				sdolist.add(rtobj);
 			}
@@ -169,7 +187,9 @@
 				remote.get_owned_organizations()[0].set_members(sdos);
 			} catch (Exception e) {
 				remote.exit();
-				throw new CORBAException(String.format("Fail to set members: remote=<{}> sdos=<{}>", remote, sdos));
+				throw new CORBAException(String.format(
+						"Fail to set members: remote=<{}> sdos=<{}>", remote,
+						sdos));
 			}
 		}
 
@@ -184,15 +204,18 @@
 		 *            ダイアグラム
 		 * @return 設定値、パラメータが存在しなかった場合はブランク("")
 		 */
-		public String findConfiguration(String key, CorbaComponent comp, SystemDiagram diagram) {
-			org.openrtp.namespaces.rts.version02.Component orig = RtsProfileHandler.findComponent(comp,
-					diagram.getProfile().getComponents());
+		public String findConfiguration(String key, CorbaComponent comp,
+				SystemDiagram diagram) {
+			org.openrtp.namespaces.rts.version02.Component orig = RtsProfileHandler
+					.findComponent(comp, diagram.getProfile().getComponents());
 			String activeId = orig.getActiveConfigurationSet();
-			for (ConfigurationSet cs : orig.getConfigurationSets()) {
+			for (org.openrtp.namespaces.rts.version02.ConfigurationSet cs : orig
+					.getConfigurationSets()) {
 				if (!cs.getId().equals(activeId)) {
 					continue;
 				}
-				for (ConfigurationData cd : cs.getConfigurationData()) {
+				for (org.openrtp.namespaces.rts.version02.ConfigurationData cd : cs
+						.getConfigurationData()) {
 					if (cd.getName().equals(key)) {
 						return cd.getData();
 					}
@@ -220,8 +243,12 @@
 				return null;
 			}
 			StringBuffer ret = new StringBuffer();
-			ret.append(implementationId).append("?instance_name=");
-			ret.append(instanceName);
+			ret.append(implementationId);
+			ret.append("?instance_name=").append(instanceName);
+			String pg = comp.getProperty("process_group");
+			if (pg != null) {
+				ret.append("&process_group=").append(pg);
+			}
 			return ret.toString();
 		}
 
@@ -240,10 +267,20 @@
 		 *            公開ポート指定
 		 * @return コンポーネント生成パラメータ (失敗時はnull)
 		 */
-		public String buildCreateCompositeComponentParam(CorbaComponent comp, String exportedPorts) {
+		public String buildCreateCompositeComponentParam(CorbaComponent comp,
+				String exportedPorts) {
 			String compositeType = comp.getCompositeTypeL();
 			String instanceName = comp.getProperty("instance_name");
-			return buildCreateCompositeComponentParam(compositeType, instanceName, exportedPorts);
+			//
+			StringBuffer ret = new StringBuffer();
+			ret.append(buildCreateCompositeComponentParam(compositeType,
+					instanceName, exportedPorts));
+			//
+			String pg = comp.getProperty("process_group");
+			if (pg != null) {
+				ret.append("&process_group=").append(pg);
+			}
+			return ret.toString();
 		}
 
 		/**
@@ -257,16 +294,16 @@
 		 *            公開ポート指定
 		 * @return コンポーネント生成パラメータ (失敗時はnull)
 		 */
-		public String buildCreateCompositeComponentParam(String compositeType, String instanceName,
-				String exportedPorts) {
-			if (compositeType == null || instanceName == null || exportedPorts == null) {
+		public String buildCreateCompositeComponentParam(String compositeType,
+				String instanceName, String exportedPorts) {
+			if (compositeType == null || instanceName == null
+					|| exportedPorts == null) {
 				return null;
 			}
 			StringBuffer ret = new StringBuffer();
-			ret.append(compositeType).append("Composite?instance_name=");
-			ret.append(instanceName);
-			ret.append("&exported_ports=");
-			ret.append(exportedPorts);
+			ret.append(compositeType).append("Composite");
+			ret.append("?instance_name=").append(instanceName);
+			ret.append("&exported_ports=").append(exportedPorts);
 			return ret.toString();
 		}
 

Modified: trunk/rtmtools/jp.go.aist.rtm.systemeditor/src/jp/go/aist/rtm/systemeditor/nl/messages.properties
===================================================================
--- trunk/rtmtools/jp.go.aist.rtm.systemeditor/src/jp/go/aist/rtm/systemeditor/nl/messages.properties	2017-04-09 17:28:49 UTC (rev 723)
+++ trunk/rtmtools/jp.go.aist.rtm.systemeditor/src/jp/go/aist/rtm/systemeditor/nl/messages.properties	2017-04-09 17:29:04 UTC (rev 724)
@@ -93,6 +93,7 @@
 NewCompositeComponentDialog.msg.already_exist_name=The component name already exists.
 NewCompositeComponentDialog.msg.contain_grouping_fail=The Grouping composite component cannot be included in the composite components other than Grouping.
 CreateComponentDialog.2=Type : 
+CreateComponentDialog.process_group.title=Process Group : 
 CreateComponentDialog.3=Parameter : 
 CreateComponentDialog.6=Invalid parameter format.
 ServiceConnectorCreaterDialog.1=Please enter Port Profile.
@@ -272,16 +273,17 @@
 ManagerControlView.0=Loadable Modules
 ManagerControlView.1=module
 ManagerControlView.2=Loaded Modules
-ManagerControlView.3=module
 ManagerControlView.4=Active Components
 ManagerControlView.5=component
 ManagerControlView.6=Create
 ManagerControlView.7=Fork
+ManagerControlView.restart=Restart
 ManagerControlView.8=Shutdown
-ManagerControlView.9=module
 ManagerControlView.10=URL : 
 ManagerControlView.11=Load
 ManagerControlView.13=Unload
+ManagerControlView.delete_component=Delete Component
+ManagerControlView.process_group=process group
 CompositeComponentView.label.component_name=component: 
 CompositeComponentView.label.component_type=type: 
 CompositeComponentView.column.component.label=component

Modified: trunk/rtmtools/jp.go.aist.rtm.systemeditor/src/jp/go/aist/rtm/systemeditor/ui/dialog/CreateComponentDialog.java
===================================================================
--- trunk/rtmtools/jp.go.aist.rtm.systemeditor/src/jp/go/aist/rtm/systemeditor/ui/dialog/CreateComponentDialog.java	2017-04-09 17:28:49 UTC (rev 723)
+++ trunk/rtmtools/jp.go.aist.rtm.systemeditor/src/jp/go/aist/rtm/systemeditor/ui/dialog/CreateComponentDialog.java	2017-04-09 17:29:04 UTC (rev 724)
@@ -1,8 +1,9 @@
 package jp.go.aist.rtm.systemeditor.ui.dialog;
 
+import java.util.List;
+
 import jp.go.aist.rtm.systemeditor.nl.Messages;
 
-import org.eclipse.emf.common.util.EList;
 import org.eclipse.jface.dialogs.IDialogConstants;
 import org.eclipse.jface.dialogs.IMessageProvider;
 import org.eclipse.jface.dialogs.TitleAreaDialog;
@@ -24,38 +25,49 @@
  */
 public class CreateComponentDialog extends TitleAreaDialog {
 
-	public static final String CONFIG_NAME = "CONFIG_NAME"; //$NON-NLS-1$
+	private static final String LABEL_TYPE_TITLE = Messages
+			.getString("CreateComponentDialog.2");
+	private static final String LABEL_PROCESS_GROUP_TITLE = Messages
+			.getString("CreateComponentDialog.process_group.title");
+	private static final String LABEL_PARAMETER_TITLE = Messages
+			.getString("CreateComponentDialog.3");
+	private static final String ERR_INVALID_PARAM = Messages
+			.getString("CreateComponentDialog.6");
 
-	public static final String CONFIG_VALUE = "CONFIG_VALUE"; //$NON-NLS-1$
+	public static final String CONFIG_NAME = "CONFIG_NAME";
+	public static final String CONFIG_VALUE = "CONFIG_VALUE";
 
 	public static final int BUTTON_WIDTH = 70;
 
 	private String parameter;
-
 	private Text paramText;
-
 	private Combo typeCombo;
+	private Combo processGroupCombo;
+	private List<String> typeList;
+	private List<String> processGroupList;
 
-	@SuppressWarnings("unchecked")
-	private EList typeList;
-	
 	public CreateComponentDialog(Shell parentShell) {
 		super(parentShell);
 		setHelpAvailable(false);
 		setShellStyle(getShellStyle() | SWT.CENTER | SWT.RESIZE);
 	}
 
-	@SuppressWarnings("unchecked")
-	public void setTypeList(EList typeList) {
+	public void setTypeList(List<String> typeList) {
 		this.typeList = typeList;
 	}
+
+	public void setProcessGroupList(List<String> processGroupList) {
+		this.processGroupList = processGroupList;
+	}
+
 	public String getParameter() {
 		return this.parameter;
 	}
 
 	@Override
 	protected Control createDialogArea(Composite parent) {
-		Composite mainComposite = new Composite((Composite) super.createDialogArea(parent), SWT.NONE);
+		Composite mainComposite = new Composite(
+				(Composite) super.createDialogArea(parent), SWT.NONE);
 
 		GridLayout gl;
 		gl = new GridLayout(2, false);
@@ -63,38 +75,56 @@
 		mainComposite.setFont(parent.getFont());
 		mainComposite.setLayoutData(new GridData(GridData.FILL_BOTH));
 
-		Label type = new Label(mainComposite, SWT.NONE);
-		type.setText(Messages.getString("CreateComponentDialog.2")); //$NON-NLS-1$
-		typeCombo = new Combo(mainComposite, SWT.NONE);
+		Label typeLabel = new Label(mainComposite, SWT.NONE);
+		typeLabel.setText(LABEL_TYPE_TITLE);
+		this.typeCombo = new Combo(mainComposite, SWT.NONE);
 		GridData gd = new GridData(GridData.GRAB_HORIZONTAL);
 		gd.minimumWidth = 180;
 		gd.horizontalAlignment = GridData.FILL;
 		gd.grabExcessHorizontalSpace = true;
-		typeCombo.setLayoutData(gd);
-		for (Object typeObject : typeList) {
-			typeCombo.add(typeObject.toString());
+		this.typeCombo.setLayoutData(gd);
+		for (String type : this.typeList) {
+			this.typeCombo.add(type);
 		}
-		typeCombo.select(0);
-		parameter = typeCombo.getText();
-		typeCombo.addModifyListener(new ModifyListener() {
+		this.typeCombo.select(0);
+		this.parameter = this.typeCombo.getText();
+		this.typeCombo.addModifyListener(new ModifyListener() {
 			public void modifyText(ModifyEvent e) {
 				notifyModified();
 			}
 		});
-		
-		Label param = new Label(mainComposite, SWT.NONE);
-		param.setText(Messages.getString("CreateComponentDialog.3")); //$NON-NLS-1$
-		paramText = new Text(mainComposite, SWT.MULTI | SWT.BORDER
-						| SWT.V_SCROLL | SWT.WRAP);
+
+		Label pgLabel = new Label(mainComposite, SWT.NONE);
+		pgLabel.setText(LABEL_PROCESS_GROUP_TITLE);
+		this.processGroupCombo = new Combo(mainComposite, SWT.NONE);
+		gd = new GridData(GridData.GRAB_HORIZONTAL);
+		gd.minimumWidth = 180;
+		gd.horizontalAlignment = GridData.FILL;
+		gd.grabExcessHorizontalSpace = true;
+		this.processGroupCombo.setLayoutData(gd);
+		for (String pg : this.processGroupList) {
+			this.processGroupCombo.add(pg);
+		}
+		this.processGroupCombo.select(0);
+		this.processGroupCombo.addModifyListener(new ModifyListener() {
+			public void modifyText(ModifyEvent e) {
+				notifyModified();
+			}
+		});
+
+		Label paramLabel = new Label(mainComposite, SWT.NONE);
+		paramLabel.setText(LABEL_PARAMETER_TITLE);
+		this.paramText = new Text(mainComposite, SWT.MULTI | SWT.BORDER
+				| SWT.V_SCROLL | SWT.WRAP);
 		gd = new GridData();
 		gd.horizontalAlignment = GridData.FILL;
 		gd.verticalAlignment = GridData.FILL;
 		gd.grabExcessHorizontalSpace = true;
 		gd.grabExcessVerticalSpace = true;
 		gd.heightHint = 240;
-		paramText.setLayoutData(gd);
-		paramText.setText(""); //$NON-NLS-1$
-		paramText.addModifyListener(new ModifyListener() {
+		this.paramText.setLayoutData(gd);
+		this.paramText.setText("");
+		this.paramText.addModifyListener(new ModifyListener() {
 			public void modifyText(ModifyEvent e) {
 				notifyModified();
 			}
@@ -114,7 +144,22 @@
 	 * 変更を通知します。
 	 */
 	private void notifyModified() {
-		parameter = typeCombo.getText() + "?" + paramText.getText(); //$NON-NLS-1$
+		this.parameter = this.typeCombo.getText();
+		StringBuffer sb = new StringBuffer();
+		String pg = this.processGroupCombo.getText();
+		if (pg != null && !pg.isEmpty()) {
+			sb.append("process_group=" + pg);
+		}
+		String pm = this.paramText.getText();
+		if (pm != null && !pm.isEmpty()) {
+			if (sb.length() > 0) {
+				sb.append("&");
+			}
+			sb.append(pm);
+		}
+		if (sb.length() > 0) {
+			this.parameter += "?" + sb.toString();
+		}
 		if (!validateInput()) {
 			getButton(IDialogConstants.OK_ID).setEnabled(false);
 		} else {
@@ -126,9 +171,9 @@
 		if (this.parameter == null || this.parameter.length() == 0) {
 			return false;
 		}
-		String errmsg = Messages.getString("CreateComponentDialog.6"); //$NON-NLS-1$
-		String p[] = this.parameter.split("\\?"); //$NON-NLS-1$
-		if (p.length > 0 && p[0].indexOf("&") != -1) { //$NON-NLS-1$
+		String errmsg = ERR_INVALID_PARAM;
+		String p[] = this.parameter.split("\\?");
+		if (p.length > 0 && p[0].indexOf("&") != -1) {
 			// component_nameに&が入っている
 			this.setMessage(errmsg, IMessageProvider.WARNING);
 			return false;
@@ -139,4 +184,5 @@
 		}
 		return true;
 	}
+
 }

Modified: trunk/rtmtools/jp.go.aist.rtm.systemeditor/src/jp/go/aist/rtm/systemeditor/ui/views/managercontrolview/ManagerControlView.java
===================================================================
--- trunk/rtmtools/jp.go.aist.rtm.systemeditor/src/jp/go/aist/rtm/systemeditor/ui/views/managercontrolview/ManagerControlView.java	2017-04-09 17:28:49 UTC (rev 723)
+++ trunk/rtmtools/jp.go.aist.rtm.systemeditor/src/jp/go/aist/rtm/systemeditor/ui/views/managercontrolview/ManagerControlView.java	2017-04-09 17:29:04 UTC (rev 724)
@@ -9,6 +9,7 @@
 import jp.go.aist.rtm.toolscommon.model.manager.RTCManager;
 import jp.go.aist.rtm.toolscommon.ui.views.propertysheetview.RtcPropertySheetPage;
 import jp.go.aist.rtm.toolscommon.util.AdapterUtil;
+import jp.go.aist.rtm.toolscommon.util.SDOUtil;
 
 import org.eclipse.jface.dialogs.IDialogConstants;
 import org.eclipse.jface.viewers.ArrayContentProvider;
@@ -16,6 +17,9 @@
 import org.eclipse.jface.viewers.ISelectionChangedListener;
 import org.eclipse.jface.viewers.ISelectionProvider;
 import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.jface.viewers.ITableColorProvider;
+import org.eclipse.jface.viewers.ITableLabelProvider;
+import org.eclipse.jface.viewers.LabelProvider;
 import org.eclipse.jface.viewers.StructuredSelection;
 import org.eclipse.jface.viewers.TableViewer;
 import org.eclipse.swt.SWT;
@@ -24,6 +28,8 @@
 import org.eclipse.swt.events.SelectionAdapter;
 import org.eclipse.swt.events.SelectionEvent;
 import org.eclipse.swt.events.SelectionListener;
+import org.eclipse.swt.graphics.Color;
+import org.eclipse.swt.graphics.Image;
 import org.eclipse.swt.layout.GridData;
 import org.eclipse.swt.layout.GridLayout;
 import org.eclipse.swt.widgets.Button;
@@ -36,6 +42,8 @@
 import org.eclipse.ui.IWorkbenchPart;
 import org.eclipse.ui.part.ViewPart;
 import org.eclipse.ui.views.properties.IPropertySheetPage;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
 
 /**
  * マネージャ管理ビュー
@@ -43,45 +51,67 @@
  */
 public class ManagerControlView extends ViewPart {
 
-	private static final int MENU_BUTTON_WIDTH = 120;
+	private static final Logger LOGGER = LoggerFactory
+			.getLogger(ManagerControlView.class);
 
-	private static final int EXEC_BUTTON_WIDTH = 70;
+	private static final String LABEL_LOADABLE_MODULE_BUTTON = Messages
+			.getString("ManagerControlView.0");
+	private static final String LABEL_LOADED_MODULE_BUTTON = Messages
+			.getString("ManagerControlView.2");
+	private static final String LABEL_ACTIVE_COMPONENT_BUTTON = Messages
+			.getString("ManagerControlView.4");
+	private static final String LABEL_CREATE_BUTTON = Messages
+			.getString("ManagerControlView.6");
+	private static final String LABEL_FORK_BUTTON = Messages
+			.getString("ManagerControlView.7");
+	private static final String LABEL_RESTART_BUTTON = Messages
+			.getString("ManagerControlView.restart");
+	private static final String LABEL_SHUTDOWN_BUTTON = Messages
+			.getString("ManagerControlView.8");
 
-	private Composite composite = null;
+	private static final String LABEL_LOAD_BUTTON = Messages
+			.getString("ManagerControlView.11");
+	private static final String LABEL_UPLOAD_BUTTON = Messages
+			.getString("ManagerControlView.13");
+	private static final String LABEL_DELETE_COMPONENT_BUTTON = Messages
+			.getString("ManagerControlView.delete_component");
 
-	private RTCManager targetManager;
+	private static final String LABEL_MODULE_COLUMN = Messages
+			.getString("ManagerControlView.1");
+	private static final String LABEL_COMPONENT_COLUMN = Messages
+			.getString("ManagerControlView.5");
+	private static final String LABEL_PROCESS_GROUP_COLUMN = Messages
+			.getString("ManagerControlView.process_group");
 
+	private static final String LABEL_URL_TEXT = Messages
+			.getString("ManagerControlView.10");
+
+	private static final int MENU_BUTTON_WIDTH = 160;
+	private static final int EXEC_BUTTON_WIDTH = 160;
+
+	private Composite composite = null;
 	private Button loadedModuleButton;
-
 	private Button loadableModuleButton;
-
 	private Button activeComponentButton;
-
 	private Button createButton;
-
 	private Button forkButton;
-
+	private Button restartButton;
 	private Button shutdownButton;
-
 	private Table modulesTable;
-
 	private TableViewer modulesTableViewer;
-
-	private TableColumn moduleColumn;
-
+	private TableColumn moduleColumn1;
+	private TableColumn moduleColumn2;
 	private Button loadButton;
-
 	private Button unloadButton;
-
+	private Button deleteComponentButton;
 	private Text urlText;
 
 	private boolean isSelectedLoadableModules;
-
 	private boolean isSelectedLoadedModules;
-
 	private boolean isSelectedActiveComponents;
 
-	private List<String> moduleList;
+	private RTCManager targetManager;
+	private List<String[]> moduleList;
 
 	public ManagerControlView() {
 	}
@@ -93,10 +123,11 @@
 
 		gl = new GridLayout();
 		gl.numColumns = 3;
-		composite = new Composite(parent, SWT.FILL);
-		composite.setLayout(gl);
+		this.composite = new Composite(parent, SWT.FILL);
+		this.composite.setLayout(gl);
 
-		final Composite menuButtonComposite = new Composite(composite, SWT.NONE);
+		final Composite menuButtonComposite = new Composite(this.composite,
+				SWT.NONE);
 		gl = new GridLayout();
 		gd = new GridData();
 		gd.horizontalAlignment = SWT.FILL;
@@ -105,20 +136,21 @@
 		menuButtonComposite.setLayout(gl);
 		menuButtonComposite.setLayoutData(gd);
 
-		loadableModuleButton = new Button(menuButtonComposite, SWT.TOP);
-		loadableModuleButton.setText(Messages.getString("ManagerControlView.0")); //$NON-NLS-1$
+		this.loadableModuleButton = new Button(menuButtonComposite, SWT.TOP);
+		this.loadableModuleButton.setText(LABEL_LOADABLE_MODULE_BUTTON);
 		gd = new GridData();
 		gd.widthHint = MENU_BUTTON_WIDTH;
-		loadableModuleButton.setLayoutData(gd);
-		loadableModuleButton.setEnabled(false);
-		loadableModuleButton.addSelectionListener(new SelectionAdapter() {
+		this.loadableModuleButton.setLayoutData(gd);
+		this.loadableModuleButton.setEnabled(false);
+		this.loadableModuleButton.addSelectionListener(new SelectionAdapter() {
 			@Override
 			public void widgetSelected(SelectionEvent e) {
 				isSelectedLoadableModules = false;
 				isSelectedLoadedModules = false;
 				isSelectedActiveComponents = false;
 				if (targetManager != null) {
-					moduleColumn.setText(Messages.getString("ManagerControlView.1")); //$NON-NLS-1$
+					moduleColumn1.setText(LABEL_MODULE_COLUMN);
+					moduleColumn2.setText("");
 					isSelectedLoadableModules = true;
 					// キャッシュ更新
 					targetManager.getLoadableModuleProfilesR();
@@ -127,20 +159,21 @@
 			}
 		});
 
-		loadedModuleButton = new Button(menuButtonComposite, SWT.TOP);
-		loadedModuleButton.setText(Messages.getString("ManagerControlView.2")); //$NON-NLS-1$
+		this.loadedModuleButton = new Button(menuButtonComposite, SWT.TOP);
+		this.loadedModuleButton.setText(LABEL_LOADED_MODULE_BUTTON);
 		gd = new GridData();
 		gd.widthHint = MENU_BUTTON_WIDTH;
-		loadedModuleButton.setLayoutData(gd);
-		loadedModuleButton.setEnabled(false);
-		loadedModuleButton.addSelectionListener(new SelectionAdapter() {
+		this.loadedModuleButton.setLayoutData(gd);
+		this.loadedModuleButton.setEnabled(false);
+		this.loadedModuleButton.addSelectionListener(new SelectionAdapter() {
 			@Override
 			public void widgetSelected(SelectionEvent e) {
 				isSelectedLoadableModules = false;
 				isSelectedLoadedModules = false;
 				isSelectedActiveComponents = false;
 				if (targetManager != null) {
-					moduleColumn.setText(Messages.getString("ManagerControlView.3")); //$NON-NLS-1$
+					moduleColumn1.setText(LABEL_MODULE_COLUMN);
+					moduleColumn2.setText("");
 					isSelectedLoadedModules = true;
 					// キャッシュ更新
 					targetManager.getLoadedModuleProfilesR();
@@ -149,20 +182,21 @@
 			}
 		});
 
-		activeComponentButton = new Button(menuButtonComposite, SWT.TOP);
-		activeComponentButton.setText(Messages.getString("ManagerControlView.4")); //$NON-NLS-1$
+		this.activeComponentButton = new Button(menuButtonComposite, SWT.TOP);
+		this.activeComponentButton.setText(LABEL_ACTIVE_COMPONENT_BUTTON);
 		gd = new GridData();
 		gd.widthHint = MENU_BUTTON_WIDTH;
-		activeComponentButton.setLayoutData(gd);
-		activeComponentButton.setEnabled(false);
-		activeComponentButton.addSelectionListener(new SelectionAdapter() {
+		this.activeComponentButton.setLayoutData(gd);
+		this.activeComponentButton.setEnabled(false);
+		this.activeComponentButton.addSelectionListener(new SelectionAdapter() {
 			@Override
 			public void widgetSelected(SelectionEvent e) {
 				isSelectedLoadableModules = false;
 				isSelectedLoadedModules = false;
 				isSelectedActiveComponents = false;
 				if (targetManager != null) {
-					moduleColumn.setText(Messages.getString("ManagerControlView.5")); //$NON-NLS-1$
+					moduleColumn1.setText(LABEL_COMPONENT_COLUMN);
+					moduleColumn2.setText(LABEL_PROCESS_GROUP_COLUMN);
 					isSelectedActiveComponents = true;
 					// キャッシュ更新
 					targetManager.getComponentProfilesR();
@@ -171,13 +205,13 @@
 			}
 		});
 
-		createButton = new Button(menuButtonComposite, SWT.TOP);
-		createButton.setText(Messages.getString("ManagerControlView.6")); //$NON-NLS-1$
+		this.createButton = new Button(menuButtonComposite, SWT.TOP);
+		this.createButton.setText(LABEL_CREATE_BUTTON);
 		gd = new GridData();
 		gd.widthHint = MENU_BUTTON_WIDTH;
-		createButton.setLayoutData(gd);
-		createButton.setEnabled(false);
-		createButton.addSelectionListener(new SelectionAdapter() {
+		this.createButton.setLayoutData(gd);
+		this.createButton.setEnabled(false);
+		this.createButton.addSelectionListener(new SelectionAdapter() {
 			@Override
 			public void widgetSelected(SelectionEvent e) {
 				if (targetManager == null) {
@@ -186,19 +220,22 @@
 				CreateComponentDialog dialog = new CreateComponentDialog(
 						getSite().getShell());
 				dialog.setTypeList(targetManager.getFactoryProfileTypeNamesR());
+				dialog.setProcessGroupList(targetManager.getSlaveManagerNames());
 				if (dialog.open() == IDialogConstants.OK_ID) {
-					targetManager.createComponentR(dialog.getParameter());
+					String cmd = dialog.getParameter();
+					LOGGER.info("create command: <{}>", cmd);
+					targetManager.createComponentR(cmd);
 				}
 			}
 		});
 
-		forkButton = new Button(menuButtonComposite, SWT.TOP);
-		forkButton.setText(Messages.getString("ManagerControlView.7")); //$NON-NLS-1$
+		this.forkButton = new Button(menuButtonComposite, SWT.TOP);
+		this.forkButton.setText(LABEL_FORK_BUTTON);
 		gd = new GridData();
 		gd.widthHint = MENU_BUTTON_WIDTH;
-		forkButton.setLayoutData(gd);
-		forkButton.setEnabled(false);
-		forkButton.addSelectionListener(new SelectionAdapter() {
+		this.forkButton.setLayoutData(gd);
+		this.forkButton.setEnabled(false);
+		this.forkButton.addSelectionListener(new SelectionAdapter() {
 			@Override
 			public void widgetSelected(SelectionEvent e) {
 				if (targetManager != null) {
@@ -208,16 +245,33 @@
 			}
 		});
 
-		shutdownButton = new Button(menuButtonComposite, SWT.TOP);
-		shutdownButton.setText(Messages.getString("ManagerControlView.8")); //$NON-NLS-1$
+		this.restartButton = new Button(menuButtonComposite, SWT.TOP);
+		this.restartButton.setText(LABEL_RESTART_BUTTON);
 		gd = new GridData();
 		gd.widthHint = MENU_BUTTON_WIDTH;
-		shutdownButton.setLayoutData(gd);
-		shutdownButton.setEnabled(false);
-		shutdownButton.addSelectionListener(new SelectionAdapter() {
+		this.restartButton.setLayoutData(gd);
+		this.restartButton.setEnabled(false);
+		this.restartButton.addSelectionListener(new SelectionAdapter() {
 			@Override
 			public void widgetSelected(SelectionEvent e) {
 				if (targetManager != null) {
+					targetManager.restartR();
+					targetManager = null;
+				}
+				buildData();
+			}
+		});
+
+		this.shutdownButton = new Button(menuButtonComposite, SWT.TOP);
+		this.shutdownButton.setText(LABEL_SHUTDOWN_BUTTON);
+		gd = new GridData();
+		gd.widthHint = MENU_BUTTON_WIDTH;
+		this.shutdownButton.setLayoutData(gd);
+		this.shutdownButton.setEnabled(false);
+		this.shutdownButton.addSelectionListener(new SelectionAdapter() {
+			@Override
+			public void widgetSelected(SelectionEvent e) {
+				if (targetManager != null) {
 					targetManager.shutdownR();
 					targetManager = null;
 				}
@@ -225,7 +279,7 @@
 			}
 		});
 
-		final Composite listComposite = new Composite(composite, SWT.FILL);
+		final Composite listComposite = new Composite(this.composite, SWT.FILL);
 		gl = new GridLayout();
 		gl.marginWidth = 0;
 		gl.marginHeight = 0;
@@ -238,11 +292,11 @@
 		listComposite.setLayout(gl);
 		listComposite.setLayoutData(gd);
 
-		modulesTableViewer = new TableViewer(listComposite, SWT.FULL_SELECTION
-				| SWT.SINGLE | SWT.BORDER);
-		modulesTableViewer.setContentProvider(new ArrayContentProvider());
+		this.modulesTableViewer = new TableViewer(listComposite,
+				SWT.FULL_SELECTION | SWT.SINGLE | SWT.BORDER);
+		this.modulesTableViewer.setContentProvider(new ArrayContentProvider());
 
-		modulesTable = modulesTableViewer.getTable();
+		this.modulesTable = this.modulesTableViewer.getTable();
 		gl = new GridLayout(1, false);
 		gl.numColumns = 1;
 		gd = new GridData();
@@ -251,11 +305,11 @@
 		gd.grabExcessVerticalSpace = true;
 		gd.grabExcessHorizontalSpace = true;
 		gd.horizontalSpan = 2;
-		modulesTable.setLayout(gl);
-		modulesTable.setLayoutData(gd);
-		modulesTable.setLinesVisible(true);
-		modulesTable.setHeaderVisible(true);
-		modulesTable.addSelectionListener(new SelectionListener() {
+		this.modulesTable.setLayout(gl);
+		this.modulesTable.setLayoutData(gd);
+		this.modulesTable.setLinesVisible(true);
+		this.modulesTable.setHeaderVisible(true);
+		this.modulesTable.addSelectionListener(new SelectionListener() {
 			public void widgetSelected(SelectionEvent e) {
 				updateEnableLoadButton();
 			}
@@ -265,29 +319,35 @@
 			}
 		});
 
-		moduleColumn = new TableColumn(modulesTable, SWT.NONE);
-		moduleColumn.setText(Messages.getString("ManagerControlView.9")); //$NON-NLS-1$
-		moduleColumn.setWidth(300);
+		this.moduleColumn1 = new TableColumn(this.modulesTable, SWT.NONE);
+		this.moduleColumn1.setText(LABEL_MODULE_COLUMN);
+		this.moduleColumn1.setWidth(300);
+		this.moduleColumn2 = new TableColumn(this.modulesTable, SWT.NONE);
+		this.moduleColumn2.setText("");
+		this.moduleColumn2.setWidth(300);
 
+		this.modulesTableViewer.setLabelProvider(new ModuleLabelProvider());
+
 		Label urlLabel = new Label(listComposite, SWT.NONE);
 		gd = new GridData();
 		urlLabel.setLayoutData(gd);
-		urlLabel.setText(Messages.getString("ManagerControlView.10")); //$NON-NLS-1$
+		urlLabel.setText(LABEL_URL_TEXT);
 
-		urlText = new Text(listComposite, SWT.SINGLE | SWT.BORDER);
+		this.urlText = new Text(listComposite, SWT.SINGLE | SWT.BORDER);
 		gd = new GridData();
 		gd.horizontalAlignment = SWT.FILL;
 		gd.grabExcessHorizontalSpace = true;
-		urlText.setLayoutData(gd);
-		urlText.setTextLimit(255);
-		urlText.setEnabled(false);
-		urlText.addModifyListener(new ModifyListener() {
+		this.urlText.setLayoutData(gd);
+		this.urlText.setTextLimit(255);
+		this.urlText.setEnabled(false);
+		this.urlText.addModifyListener(new ModifyListener() {
 			public void modifyText(ModifyEvent e) {
 				updateEnableLoadButton();
 			}
 		});
 
-		final Composite execButtonComposite = new Composite(composite, SWT.NONE);
+		final Composite execButtonComposite = new Composite(this.composite,
+				SWT.NONE);
 		gl = new GridLayout();
 		gd = new GridData();
 		gd.horizontalAlignment = SWT.FILL;
@@ -296,21 +356,22 @@
 		execButtonComposite.setLayout(gl);
 		execButtonComposite.setLayoutData(gd);
 
-		loadButton = new Button(execButtonComposite, SWT.TOP);
-		loadButton.setText(Messages.getString("ManagerControlView.11")); //$NON-NLS-1$
+		this.loadButton = new Button(execButtonComposite, SWT.TOP);
+		this.loadButton.setText(LABEL_LOAD_BUTTON);
 		gd = new GridData();
 		gd.widthHint = EXEC_BUTTON_WIDTH;
-		loadButton.setLayoutData(gd);
-		loadButton.setEnabled(false);
-		loadButton.addSelectionListener(new SelectionAdapter() {
+		this.loadButton.setLayoutData(gd);
+		this.loadButton.setEnabled(false);
+		this.loadButton.addSelectionListener(new SelectionAdapter() {
 			@Override
 			public void widgetSelected(SelectionEvent e) {
 				if (targetManager != null) {
 					String module = null;
 					if (modulesTable.getSelectionIndex() != -1) {
 						if (isSelectedLoadableModules) {
-							module = moduleList.get(modulesTable
+							String[] m = moduleList.get(modulesTable
 									.getSelectionIndex());
+							module = m[0];
 						}
 					} else if (urlText.getText().length() > 0) {
 						module = urlText.getText();
@@ -324,21 +385,22 @@
 			}
 		});
 
-		unloadButton = new Button(execButtonComposite, SWT.TOP);
-		unloadButton.setText(Messages.getString("ManagerControlView.13")); //$NON-NLS-1$
+		this.unloadButton = new Button(execButtonComposite, SWT.TOP);
+		this.unloadButton.setText(LABEL_UPLOAD_BUTTON);
 		gd = new GridData();
 		gd.widthHint = EXEC_BUTTON_WIDTH;
-		unloadButton.setLayoutData(gd);
-		unloadButton.setEnabled(false);
-		unloadButton.addSelectionListener(new SelectionAdapter() {
+		this.unloadButton.setLayoutData(gd);
+		this.unloadButton.setEnabled(false);
+		this.unloadButton.addSelectionListener(new SelectionAdapter() {
 			@Override
 			public void widgetSelected(SelectionEvent e) {
 				if (targetManager != null) {
 					if (isSelectedLoadedModules) {
 						if (modulesTable.getSelectionIndex() != -1) {
-							String mn = moduleList.get(modulesTable
+							String[] m = moduleList.get(modulesTable
 									.getSelectionIndex());
-							targetManager.unloadModuleR(mn);
+							String module = m[0];
+							targetManager.unloadModuleR(module);
 						}
 					}
 				}
@@ -346,6 +408,29 @@
 			}
 		});
 
+		this.deleteComponentButton = new Button(execButtonComposite, SWT.TOP);
+		this.deleteComponentButton.setText(LABEL_DELETE_COMPONENT_BUTTON);
+		gd = new GridData();
+		gd.widthHint = EXEC_BUTTON_WIDTH;
+		this.deleteComponentButton.setLayoutData(gd);
+		this.deleteComponentButton.setEnabled(false);
+		this.deleteComponentButton.addSelectionListener(new SelectionAdapter() {
+			@Override
+			public void widgetSelected(SelectionEvent e) {
+				if (targetManager != null) {
+					if (isSelectedActiveComponents) {
+						if (modulesTable.getSelectionIndex() != -1) {
+							String[] m = moduleList.get(modulesTable
+									.getSelectionIndex());
+							String comp = m[0];
+							targetManager.deleteComponentR(comp);
+						}
+					}
+				}
+				refreshModuleListData();
+			}
+		});
+
 		setSiteSelection();
 	}
 
@@ -368,6 +453,7 @@
 		this.activeComponentButton.setEnabled(false);
 		this.createButton.setEnabled(false);
 		this.forkButton.setEnabled(false);
+		this.restartButton.setEnabled(false);
 		this.shutdownButton.setEnabled(false);
 		this.loadButton.setEnabled(false);
 		this.unloadButton.setEnabled(false);
@@ -378,61 +464,70 @@
 			this.loadedModuleButton.setEnabled(true);
 			this.activeComponentButton.setEnabled(true);
 			this.createButton.setEnabled(true);
-			// マネージャの仕様が決まっていないので無効にする
-			this.forkButton.setEnabled(false);
-			this.shutdownButton.setEnabled(false);
+			this.forkButton.setEnabled(true);
+			this.restartButton.setEnabled(true);
+			this.shutdownButton.setEnabled(true);
 		}
 		refreshModuleListData();
 	}
 
 	private void refreshModuleListData() {
-		modulesTableViewer.setInput(Collections.EMPTY_LIST);
-		if (moduleList == null) {
-			moduleList = new ArrayList<String>();
+		this.modulesTableViewer.setInput(Collections.EMPTY_LIST);
+		if (this.moduleList == null) {
+			this.moduleList = new ArrayList<String[]>();
 		}
-		moduleList.clear();
-		urlText.setText(""); //$NON-NLS-1$
-		urlText.setEnabled(false);
-		loadButton.setEnabled(false);
-		unloadButton.setEnabled(false);
-		if (targetManager != null) {
-			if (isSelectedLoadableModules) {
-				for (Object o : targetManager.getLoadableModuleFileNames()) {
-					moduleList.add((String) o);
+		this.moduleList.clear();
+		this.urlText.setText("");
+		this.urlText.setEnabled(false);
+		this.loadButton.setEnabled(false);
+		this.unloadButton.setEnabled(false);
+		this.deleteComponentButton.setEnabled(false);
+		if (this.targetManager != null) {
+			if (this.isSelectedLoadableModules) {
+				for (String m : this.targetManager.getLoadableModuleFileNames()) {
+					this.moduleList.add(new String[] { m });
 				}
-				modulesTableViewer.setInput(moduleList);
-				urlText.setEnabled(true);
-			} else if (isSelectedLoadedModules) {
-				for (Object o : targetManager.getLoadedModuleFileNames()) {
-					moduleList.add((String) o);
+				this.modulesTableViewer.setInput(this.moduleList);
+				this.urlText.setEnabled(true);
+			} else if (this.isSelectedLoadedModules) {
+				for (String m : this.targetManager.getLoadedModuleFileNames()) {
+					this.moduleList.add(new String[] { m });
 				}
-				modulesTableViewer.setInput(moduleList);
-			} else if (isSelectedActiveComponents) {
-				for (Object o : targetManager.getComponentInstanceNames()) {
-					moduleList.add((String) o);
+				this.modulesTableViewer.setInput(this.moduleList);
+			} else if (this.isSelectedActiveComponents) {
+				for (RTC.ComponentProfile prof : this.targetManager
+						.getComponentProfiles()) {
+					String name = prof.instance_name;
+					String pg = SDOUtil.findValueAsString("process_group",
+							prof.properties);
+					pg = (pg == null) ? "" : pg;
+					this.moduleList.add(new String[] { name, pg });
 				}
-				modulesTableViewer.setInput(moduleList);
+				this.modulesTableViewer.setInput(this.moduleList);
 			}
 		}
 		updateEnableLoadButton();
 	}
 
 	private void updateEnableLoadButton() {
-		loadButton.setEnabled(false);
-		unloadButton.setEnabled(false);
-		if (modulesTable.getSelectionIndex() != -1) {
-			if (isSelectedLoadableModules) {
-				loadButton.setEnabled(true);
-			} else if (isSelectedLoadedModules) {
-				unloadButton.setEnabled(true);
+		this.loadButton.setEnabled(false);
+		this.unloadButton.setEnabled(false);
+		this.deleteComponentButton.setEnabled(false);
+		if (this.modulesTable.getSelectionIndex() != -1) {
+			if (this.isSelectedLoadableModules) {
+				this.loadButton.setEnabled(true);
+			} else if (this.isSelectedLoadedModules) {
+				this.unloadButton.setEnabled(true);
+			} else if (this.isSelectedActiveComponents) {
+				this.deleteComponentButton.setEnabled(true);
 			}
-		} else if (urlText.getText().length() > 0) {
+		} else if (this.urlText.getText().length() > 0) {
 			// URL指定の場合
-			loadButton.setEnabled(true);
+			this.loadButton.setEnabled(true);
 		}
 	}
 
-	@SuppressWarnings("unchecked") //$NON-NLS-1$
+	@SuppressWarnings("rawtypes")
 	@Override
 	public Object getAdapter(Class adapter) {
 		if (adapter.equals(IPropertySheetPage.class)) {
@@ -441,9 +536,34 @@
 		return super.getAdapter(adapter);
 	}
 
+	/** モジュール/コンポーネント一覧表示のLabelProvider */
+	public class ModuleLabelProvider extends LabelProvider implements
+			ITableLabelProvider, ITableColorProvider {
+		@Override
+		public Image getColumnImage(Object element, int columnIndex) {
+			return null;
+		}
+
+		@Override
+		public String getColumnText(Object element, int columnIndex) {
+			String[] entry = (String[]) element;
+			return (columnIndex < entry.length) ? entry[columnIndex] : "";
+		}
+
+		@Override
+		public Color getBackground(Object element, int columnIndex) {
+			return null;
+		}
+
+		@Override
+		public Color getForeground(Object element, int columnIndex) {
+			return null;
+		}
+	}
+
 	private ISelectionListener selectionListener = new ISelectionListener() {
+		@Override
 		public void selectionChanged(IWorkbenchPart part, ISelection selection) {
-			
 			targetManager = null;
 			if (selection instanceof IStructuredSelection) {
 				IStructuredSelection ss = (IStructuredSelection) selection;
@@ -464,11 +584,12 @@
 			return;
 		}
 
-		selectionListener.selectionChanged(null, getSite().getWorkbenchWindow().getSelectionService().getSelection());
-		
+		this.selectionListener.selectionChanged(null, getSite()
+				.getWorkbenchWindow().getSelectionService().getSelection());
+
 		// NameServiceViewの選択監視リスナを登録
 		getSite().getWorkbenchWindow().getSelectionService()
-				.addSelectionListener(selectionListener);
+				.addSelectionListener(this.selectionListener);
 
 		// SelectionProviderを登録(プロパティ・ビュー連携)
 		getSite().setSelectionProvider(new ISelectionProvider() {

Modified: trunk/rtmtools/jp.go.aist.rtm.systemeditor/test/jp/go/aist/rtm/systemeditor/ui/views/managercontrolview/mock/RTCManagerMock.java
===================================================================
--- trunk/rtmtools/jp.go.aist.rtm.systemeditor/test/jp/go/aist/rtm/systemeditor/ui/views/managercontrolview/mock/RTCManagerMock.java	2017-04-09 17:28:49 UTC (rev 723)
+++ trunk/rtmtools/jp.go.aist.rtm.systemeditor/test/jp/go/aist/rtm/systemeditor/ui/views/managercontrolview/mock/RTCManagerMock.java	2017-04-09 17:29:04 UTC (rev 724)
@@ -183,7 +183,7 @@
 	public void setConstraint(Rectangle rectangle) {
 	}
 
-	@SuppressWarnings("unchecked")
+	@SuppressWarnings("rawtypes")
 	public TreeIterator eAllContents() {
 		return null;
 	}
@@ -258,7 +258,7 @@
 	public void eSetDeliver(boolean deliver) {
 	}
 
-	@SuppressWarnings("unchecked")
+	@SuppressWarnings("rawtypes")
 	public java.lang.Object getAdapter(Class adapter) {
 		return null;
 	}
@@ -436,4 +436,84 @@
 	public EList<ModuleProfile> getLoadedModuleProfiles() {
 		return null;
 	}
+
+	@Override
+	public boolean isMaster() {
+		return false;
+	}
+
+	@Override
+	public void setMaster(boolean value) {
+	}
+
+	@Override
+	public EList<RTCManager> getMasterManagers() {
+		return null;
+	}
+
+	@Override
+	public EList<RTCManager> getSlaveManagers() {
+		return null;
+	}
+
+	@Override
+	public EList<jp.go.aist.rtm.toolscommon.model.component.NameValue> getConfiguratoins() {
+		return null;
+	}
+
+	@Override
+	public int restartR() {
+		return 0;
+	}
+
+	@Override
+	public boolean isMasterR() {
+		return false;
+	}
+
+	@Override
+	public EList<RTCManager> getMasterManagersR() {
+		return null;
+	}
+
+	@Override
+	public int addMasterManagerR(RTCManager mgr) {
+		return 0;
+	}
+
+	@Override
+	public int removeMasterManagerR(RTCManager mgr) {
+		return 0;
+	}
+
+	@Override
+	public EList<RTCManager> getSlaveManagersR() {
+		return null;
+	}
+
+	@Override
+	public int addSlaveManagerR(RTCManager mgr) {
+		return 0;
+	}
+
+	@Override
+	public int removeSlaveManagerR(RTCManager mgr) {
+		return 0;
+	}
+
+	@Override
+	public EList<jp.go.aist.rtm.toolscommon.model.component.NameValue> getConfigurationR() {
+		return null;
+	}
+
+	@Override
+	public int setConfigurationR(String name, String value) {
+		return 0;
+	}
+
+	@Override
+	public EList<String> getSlaveManagerNames() {
+		return null;
+	}
+
 }



openrtm-commit メーリングリストの案内