Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'core/bundles/org.eclipse.jst.ws.consumption.ui/src/org/eclipse/jst/ws/internal/consumption/ui/widgets/ConfigClientHandlersTableWidget.java')
-rw-r--r--core/bundles/org.eclipse.jst.ws.consumption.ui/src/org/eclipse/jst/ws/internal/consumption/ui/widgets/ConfigClientHandlersTableWidget.java637
1 files changed, 637 insertions, 0 deletions
diff --git a/core/bundles/org.eclipse.jst.ws.consumption.ui/src/org/eclipse/jst/ws/internal/consumption/ui/widgets/ConfigClientHandlersTableWidget.java b/core/bundles/org.eclipse.jst.ws.consumption.ui/src/org/eclipse/jst/ws/internal/consumption/ui/widgets/ConfigClientHandlersTableWidget.java
new file mode 100644
index 000000000..c615cce7c
--- /dev/null
+++ b/core/bundles/org.eclipse.jst.ws.consumption.ui/src/org/eclipse/jst/ws/internal/consumption/ui/widgets/ConfigClientHandlersTableWidget.java
@@ -0,0 +1,637 @@
+/*******************************************************************************
+ * Copyright (c) 2004, 2006 IBM Corporation and others.
+ * 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:
+ * IBM Corporation - initial API and implementation
+ * yyyymmdd bug Email and other contact information
+ * -------- -------- -----------------------------------------------------------
+ * 20060404 134913 sengpl@ca.ibm.com - Seng Phung-Lu
+ * 20060426 135614 sengpl@ca.ibm.com - Seng Phung-Lu
+ *******************************************************************************/
+package org.eclipse.jst.ws.internal.consumption.ui.widgets;
+
+import java.util.Hashtable;
+import java.util.List;
+import java.util.Vector;
+
+import org.eclipse.core.resources.IProject;
+import org.eclipse.core.runtime.IPath;
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.core.runtime.Status;
+import org.eclipse.jface.viewers.ISelection;
+import org.eclipse.jface.viewers.ISelectionChangedListener;
+import org.eclipse.jface.viewers.IStructuredContentProvider;
+import org.eclipse.jface.viewers.IStructuredSelection;
+import org.eclipse.jface.viewers.ITableLabelProvider;
+import org.eclipse.jface.viewers.LabelProvider;
+import org.eclipse.jface.viewers.SelectionChangedEvent;
+import org.eclipse.jface.viewers.TableViewer;
+import org.eclipse.jface.viewers.Viewer;
+import org.eclipse.jface.window.Window;
+import org.eclipse.jst.j2ee.webservice.wsclient.ServiceRef;
+import org.eclipse.jst.ws.internal.common.ResourceUtils;
+import org.eclipse.jst.ws.internal.consumption.ui.ConsumptionUIMessages;
+import org.eclipse.jst.ws.internal.consumption.ui.common.HandlerServiceRefHelper;
+import org.eclipse.jst.ws.internal.consumption.ui.common.HandlerServiceRefHolder;
+import org.eclipse.jst.ws.internal.consumption.ui.widgets.object.HandlerTableItem;
+import org.eclipse.jst.ws.internal.ui.common.UIUtils;
+import org.eclipse.osgi.util.NLS;
+import org.eclipse.swt.SWT;
+import org.eclipse.swt.events.ControlAdapter;
+import org.eclipse.swt.events.ControlEvent;
+import org.eclipse.swt.events.SelectionAdapter;
+import org.eclipse.swt.events.SelectionEvent;
+import org.eclipse.swt.events.SelectionListener;
+import org.eclipse.swt.graphics.Image;
+import org.eclipse.swt.graphics.Point;
+import org.eclipse.swt.graphics.Rectangle;
+import org.eclipse.swt.layout.GridData;
+import org.eclipse.swt.layout.GridLayout;
+import org.eclipse.swt.widgets.Button;
+import org.eclipse.swt.widgets.Combo;
+import org.eclipse.swt.widgets.Composite;
+import org.eclipse.swt.widgets.Control;
+import org.eclipse.swt.widgets.Label;
+import org.eclipse.swt.widgets.Listener;
+import org.eclipse.swt.widgets.Table;
+import org.eclipse.swt.widgets.TableColumn;
+import org.eclipse.swt.widgets.Text;
+import org.eclipse.wst.command.internal.env.core.common.StatusUtils;
+import org.eclipse.wst.command.internal.env.ui.widgets.SimpleWidgetDataContributor;
+import org.eclipse.wst.command.internal.env.ui.widgets.WidgetDataEvents;
+
+/**
+ * ConfigClientHandlersTreeWidget
+ *
+ */
+public class ConfigClientHandlersTableWidget extends SimpleWidgetDataContributor {
+
+ private String pluginId_ = "org.eclipse.jst.ws.consumption.ui";
+
+ private Composite parent_;
+ private String outputLocation_;
+ private Composite webServiceRefComp_;
+ private Combo webServiceRefCombo_;
+ private Text webServiceDescText_ = null;
+ private Table handlersTable_;
+ private TableViewer tableViewer_;
+ private Button addButton_;
+ private Button removeButton_;
+ private Button genSkeletonRadioButton_;
+ private Composite sourceLocationComp_;
+ private Combo sourceLocationCombo_;
+
+ private HandlerServiceRefHolder[] handlerServiceRefHolder_;
+ private HandlerServiceRefHolder currentHSRH_;
+ private Hashtable pathsTable_ = new Hashtable();
+ private boolean isMultipleSelection_ = false;
+ private boolean isGenSkeletonEnabled_;
+ private String serviceRefName_;
+ private int DEFAULT_COLUMN_WIDTH = 150;
+
+ // ----TOOLTIPS Section----
+ /* CONTEXT_ID HDLR0001 for the Handler Config Page */
+ private final String INFOPOP_HDLR_WS_HANDLERS = "HDLR0001"; //$NON-NLS-1$
+
+ /* CONTEXT_ID HDLR0002 for the Handler Config Page */
+ private final String INFOPOP_HDLR_GEN_SKELETON = "HDLR0002"; //$NON-NLS-1$
+
+ /* CONTEXT_ID HDLR0003 for the Handler Config Page */
+ private final String INFOPOP_COMBO_SOURCE_LOC = "HDLR0003"; //$NON-NLS-1$
+
+ /* CONTEXT_ID HDLR0004 for the Handler Config Page */
+ private final String INFOPOP_WS_CLIENT_REF = "HDLR0004"; //$NON-NLS-1$
+
+ // ------------------------
+
+ public ConfigClientHandlersTableWidget() {
+ super();
+ }
+
+ public WidgetDataEvents addControls(Composite parent, Listener statusListener) {
+
+ UIUtils uiUtils = new UIUtils(pluginId_);
+
+ parent_ = parent;
+
+ // Web service reference combo
+ webServiceRefComp_ = uiUtils.createComposite(parent_, 2);
+
+ Composite displayComp = new Composite(parent_, SWT.NONE);
+ GridLayout gridlayout = new GridLayout(2, false);
+ displayComp.setLayout(gridlayout);
+ displayComp.setLayoutData(uiUtils.createFillAll());
+
+ final Composite handlersComp = uiUtils.createComposite(displayComp, 1);
+ GridData griddata = new GridData(GridData.HORIZONTAL_ALIGN_FILL |GridData.GRAB_HORIZONTAL | GridData.VERTICAL_ALIGN_BEGINNING
+ | GridData.VERTICAL_ALIGN_FILL | GridData.GRAB_VERTICAL | GridData.FILL_VERTICAL);
+ handlersComp.setLayoutData(griddata);
+ handlersComp.setSize(130, 600);
+
+ Composite buttonsComp = uiUtils.createComposite(displayComp, 1);
+ griddata = new GridData(GridData.HORIZONTAL_ALIGN_FILL | GridData.GRAB_HORIZONTAL | GridData.VERTICAL_ALIGN_BEGINNING);
+ buttonsComp.setLayoutData(griddata);
+
+ Text handlersText = new Text(handlersComp, SWT.READ_ONLY);
+ handlersText.setText(ConsumptionUIMessages.LABEL_HANDLERS_CONFIG);
+ GridData gd = new GridData(GridData.HORIZONTAL_ALIGN_FILL);
+ gd.horizontalSpan = 2;
+ handlersText.setLayoutData(gd);
+
+ handlersTable_ = uiUtils.createTable(handlersComp, ConsumptionUIMessages.TOOLTIP_EDIT_WS_HANDLERS, INFOPOP_HDLR_WS_HANDLERS, SWT.MULTI | SWT.FULL_SELECTION | SWT.BORDER);
+ handlersTable_.setHeaderVisible(true);
+ handlersTable_.setLinesVisible(true);
+
+ // empty space
+ Label wsLabel = new Label(buttonsComp, SWT.NONE);
+ gd = new GridData(GridData.HORIZONTAL_ALIGN_FILL);
+ gd.horizontalSpan = 2;
+ wsLabel.setLayoutData(gd);
+
+ Button moveUpButton = uiUtils.createPushButton(buttonsComp, ConsumptionUIMessages.LABEL_BUTTON_MOVE_UP, null, null);
+ GridData muGriddata = new GridData();
+ Point musize = moveUpButton.computeSize(SWT.DEFAULT, SWT.DEFAULT);
+ moveUpButton.addSelectionListener(new SelectionListener() {
+
+ public void widgetSelected(SelectionEvent event) {
+ handleMoveUpButtonSelected(event);
+ }
+
+ public void widgetDefaultSelected(SelectionEvent event) {
+ }
+ });
+
+ Button moveDownButton = uiUtils.createPushButton(buttonsComp, ConsumptionUIMessages.LABEL_BUTTON_MOVE_DOWN, null, null);
+ GridData mdGriddata = new GridData();
+ Point mdsize = moveDownButton.computeSize(SWT.DEFAULT, SWT.DEFAULT);
+ moveDownButton.addSelectionListener(new SelectionListener() {
+
+ public void widgetSelected(SelectionEvent event) {
+ handleMoveDownButtonSelected(event);
+ }
+
+ public void widgetDefaultSelected(SelectionEvent event) {
+ }
+ });
+
+ // empty space
+ wsLabel = new Label(buttonsComp, SWT.NONE);
+ gd = new GridData(GridData.HORIZONTAL_ALIGN_FILL);
+ gd.horizontalSpan = 2;
+ wsLabel.setLayoutData(gd);
+
+ addButton_ = uiUtils.createPushButton(buttonsComp, ConsumptionUIMessages.LABEL_BUTTON_ADD, null, null);
+ GridData addGriddata = new GridData();
+ Point addSize = addButton_.computeSize(SWT.DEFAULT, SWT.DEFAULT);
+ addButton_.addSelectionListener(new SelectionListener() {
+
+ public void widgetSelected(SelectionEvent event) {
+ handleAddButtonSelected(event);
+ }
+
+ public void widgetDefaultSelected(SelectionEvent event) {
+ }
+ });
+
+ removeButton_ = uiUtils.createPushButton(buttonsComp, ConsumptionUIMessages.LABEL_BUTTON_REMOVE, null, null);
+ GridData remGriddata = new GridData();
+ Point remSize = removeButton_.computeSize(SWT.DEFAULT, SWT.DEFAULT);
+ removeButton_.addSelectionListener(new SelectionListener() {
+
+ public void widgetSelected(SelectionEvent event) {
+ handleRemoveButtonSelected(event);
+ }
+
+ public void widgetDefaultSelected(SelectionEvent event) {
+ }
+ });
+ enableRemove(false);
+
+ // set the width to the max of the button labels
+ int widthHint = 0;
+ int[] sizes = new int[]{musize.x, mdsize.x, addSize.x, remSize.x, 100};
+ for(int j = 0; j < sizes.length; j++) {
+ if (sizes[j] > widthHint)
+ widthHint = sizes[j];
+ }
+ muGriddata.widthHint = widthHint;
+ mdGriddata.widthHint = widthHint;
+ addGriddata.widthHint = widthHint;
+ remGriddata.widthHint = widthHint;
+
+ moveUpButton.setLayoutData(muGriddata);
+ moveDownButton.setLayoutData(mdGriddata);
+ addButton_.setLayoutData(addGriddata);
+ removeButton_.setLayoutData(remGriddata);
+
+ // table stuff
+ String[] columns_ = new String[] { ConsumptionUIMessages.LABEL_HANDLER_NAME, ConsumptionUIMessages.LABLE_HANDLER_CLASS};
+
+ final TableColumn[] tableCols = new TableColumn[columns_.length];
+ for (int i = 0; i < columns_.length; i++) {
+ TableColumn tableColumn = new TableColumn(handlersTable_, i);
+ tableColumn.setText(columns_[i]);
+ tableColumn.setAlignment(SWT.LEFT);
+ tableColumn.setWidth(DEFAULT_COLUMN_WIDTH);
+ tableColumn.setResizable(true);
+ tableCols[i] = tableColumn;
+ }
+
+ handlersComp.addControlListener(new ControlAdapter() {
+ public void controlResized(ControlEvent e) {
+ Rectangle area = handlersComp.getClientArea();
+ Point preferredSize = handlersTable_.computeSize(SWT.DEFAULT, SWT.DEFAULT);
+ int width = area.width - 2*handlersTable_.getBorderWidth()-10;
+ if (preferredSize.y > area.height + handlersTable_.getHeaderHeight()) {
+ // Subtract the scrollbar width from the total column width
+ // if a vertical scrollbar will be required
+ Point vBarSize = handlersTable_.getVerticalBar().getSize();
+ width -= vBarSize.x;
+ }
+ Point oldSize = handlersTable_.getSize();
+ if (oldSize.x > area.width) {
+ // table is getting smaller so make the columns
+ // smaller first and then resize the table to
+ // match the client area width
+ tableCols[0].setWidth(width/2);
+ tableCols[1].setWidth(width - tableCols[0].getWidth());
+ handlersTable_.setSize(area.width, area.height);
+ } else {
+ // table is getting bigger so make the table
+ // bigger first and then make the columns wider
+ // to match the client area width
+ handlersTable_.setSize(area.width, area.height);
+ tableCols[0].setWidth(width/2);
+ tableCols[1].setWidth(width - tableCols[0].getWidth());
+ }
+ }
+ });
+
+ tableViewer_ = new TableViewer(handlersTable_);
+ Control control = tableViewer_.getControl();
+
+ GridData data = new GridData();
+ data.horizontalAlignment = GridData.FILL;
+ data.grabExcessHorizontalSpace = true;
+ data.verticalAlignment = GridData.FILL;
+ data.grabExcessVerticalSpace = true;
+ control.setLayoutData(data);
+
+ tableViewer_.setColumnProperties(columns_);
+ tableViewer_.setContentProvider(new ListContentProvider());
+ tableViewer_.setLabelProvider(new ListLabelProvider());
+ tableViewer_.addSelectionChangedListener(new ISelectionChangedListener() {
+
+ public void selectionChanged(SelectionChangedEvent event) {
+ enableRemove(true);
+ }
+ });
+
+ // gen skeleton check box
+ genSkeletonRadioButton_ = uiUtils.createCheckbox(parent_, ConsumptionUIMessages.LABEL_BUTTON_GEN_SKELETON, ConsumptionUIMessages.TOOLTIP_BUTTON_GEN_SKELETON, INFOPOP_HDLR_GEN_SKELETON);
+ genSkeletonRadioButton_.addSelectionListener(new SelectionAdapter() {
+
+ public void widgetSelected(SelectionEvent evt) {
+ handleGenSkeletonRadioButton();
+ }
+ });
+
+ // source location combo
+ sourceLocationComp_ = uiUtils.createComposite(parent_, 2);
+ sourceLocationCombo_ = uiUtils.createCombo(sourceLocationComp_, ConsumptionUIMessages.LABEL_COMBO_SOURCE_LOC, ConsumptionUIMessages.TOOLTIP_COMBO_SOURCE_LOC, INFOPOP_COMBO_SOURCE_LOC,
+ SWT.READ_ONLY);
+ sourceLocationCombo_.addSelectionListener(new SelectionAdapter() {
+
+ public void widgetSelected(SelectionEvent evt) {
+ handleSourceLocationCombo(evt);
+ }
+ });
+
+ return this;
+ }
+
+ // Called at start
+ private void populateHandlersTable() {
+ try {
+ UIUtils uiUtils = new UIUtils(pluginId_);
+
+ // process for multiple service selection
+ if (isMultipleSelection_) {
+ webServiceDescText_ = uiUtils.createText(webServiceRefComp_, ConsumptionUIMessages.LABEL_COMBO_WS_CLIENT_REF,
+ ConsumptionUIMessages.TOOLTIP_WS_CLIENT_REF, INFOPOP_WS_CLIENT_REF, SWT.READ_ONLY);
+ if (handlerServiceRefHolder_!=null){
+ currentHSRH_ = handlerServiceRefHolder_[0];
+ String text = NLS.bind(ConsumptionUIMessages.MSG_TEXT_NUM_OF_CLIENTS, Integer.toString(handlerServiceRefHolder_.length));
+ webServiceDescText_.setText(text);
+ }
+
+ genSkeletonRadioButton_.setSelection(false);
+ genSkeletonRadioButton_.setEnabled(false);
+ genSkeletonRadioButton_.setVisible(false);
+
+ sourceLocationComp_.setVisible(false);
+ sourceLocationCombo_.setEnabled(false);
+ sourceLocationCombo_.setVisible(false);
+
+ refresh();
+
+ }
+ else {
+
+ webServiceRefCombo_ = uiUtils.createCombo(webServiceRefComp_, ConsumptionUIMessages.LABEL_COMBO_WS_CLIENT_REF,
+ ConsumptionUIMessages.TOOLTIP_WS_CLIENT_REF, INFOPOP_WS_CLIENT_REF, SWT.READ_ONLY);
+ webServiceRefCombo_.addSelectionListener(new SelectionAdapter() {
+ public void widgetSelected(SelectionEvent evt) {
+ handleWebServiceRefCombo(evt);
+ }
+ });
+
+ String[] wsRefNames = HandlerServiceRefHelper.getAllServiceRefNames(handlerServiceRefHolder_);
+ webServiceRefCombo_.setItems(wsRefNames);
+
+ if (handlerServiceRefHolder_.length < 1) {
+ webServiceRefCombo_.select(0);
+ webServiceRefCombo_.setEnabled(false);
+ }
+ else {
+ if (serviceRefName_ != null) {
+ int index = webServiceRefCombo_.indexOf(serviceRefName_);
+ if (index != -1) webServiceRefCombo_.select(index);
+ }
+ else
+ webServiceRefCombo_.select(0);
+ }
+
+ // set handler table
+ HandlerServiceRefHolder hsrh = HandlerServiceRefHelper.getForServiceRefName(handlerServiceRefHolder_, webServiceRefCombo_.getText());
+ if (hsrh != null) {
+ currentHSRH_ = hsrh;
+ List handlers = hsrh.getHandlerList();
+ tableViewer_.setInput(handlers);
+ tableViewer_.refresh();
+ }
+
+ // set output folder
+ setSourceOutputLocation();
+ }
+ parent_.getShell().setSize(530, 650);
+ }
+ catch (Exception e) {
+ e.printStackTrace();
+ }
+
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.eclipse.wst.command.env.ui.widgets.WidgetContributor#getStatus()
+ */
+ public IStatus getStatus() {
+ IStatus finalStatus = Status.OK_STATUS;
+ if (isMultipleSelection_)
+ return StatusUtils.infoStatus(ConsumptionUIMessages.PAGE_DESC_MULTIPLE_CLIENTS_CONFIG);
+ return finalStatus;
+ }
+
+ protected void handleAddButtonSelected(SelectionEvent event) {
+
+ AddHandlerDialog dialog = new AddHandlerDialog(parent_.getShell(), true);
+ dialog.create();
+ dialog.getShell().setSize( 500, 200 );
+
+ int result = dialog.open();
+
+ if (result == Window.OK) {
+ String name = dialog.getName();
+ String className = dialog.getClassName();
+
+ HandlerTableItem hi = new HandlerTableItem();
+ hi.setHandlerName(name);
+ hi.setHandlerClassName(className);
+
+ ServiceRef serviceRef = currentHSRH_.getServiceRef();
+ hi.setWsDescRef(serviceRef);
+ currentHSRH_.getHandlerList().add(hi);
+ }
+
+ refresh();
+ }
+
+ protected void handleRemoveButtonSelected(SelectionEvent event) {
+ handleDeleteKeyPressed();
+ }
+
+ protected void handleMoveUpButtonSelected(SelectionEvent event) {
+
+ int index = tableViewer_.getTable().getSelectionIndex();
+ if (index != -1) {
+ if (index > 0) {
+ if (currentHSRH_!=null) {
+ List handlers = currentHSRH_.getHandlerList();
+ Object object = handlers.remove(index);
+ handlers.add( index - 1, object);
+ tableViewer_.refresh();
+ }
+ }
+ }
+
+ }
+
+ protected void handleMoveDownButtonSelected(SelectionEvent event) {
+
+ int index = tableViewer_.getTable().getSelectionIndex();
+ if (index != -1) {
+ if (currentHSRH_!=null){
+ List handlers = currentHSRH_.getHandlerList();
+ if (index < handlers.size() - 1) {
+ Object object = handlers.remove(index);
+ handlers.add(index + 1, object);
+ tableViewer_.refresh();
+ }
+ }
+ }
+
+ }
+
+ protected void handleSourceLocationCombo(SelectionEvent event) {
+ outputLocation_ = sourceLocationCombo_.getText();
+ IPath outputPath = (IPath) pathsTable_.get(outputLocation_);
+ currentHSRH_.setSourceOutputPath(outputPath);
+ }
+
+ protected void handleGenSkeletonRadioButton() {
+ if (genSkeletonRadioButton_.isEnabled()) {
+ if (genSkeletonRadioButton_.getSelection()) {
+ this.isGenSkeletonEnabled_ = true;
+ sourceLocationCombo_.setEnabled(true);
+ }
+ else {
+ this.isGenSkeletonEnabled_ = false;
+ sourceLocationCombo_.setEnabled(false);
+ }
+ }
+ }
+
+ protected void handleWebServiceRefCombo(SelectionEvent event) {
+
+ if (webServiceRefCombo_!=null && webServiceRefCombo_.isEnabled()) {
+ HandlerServiceRefHolder hsrh = HandlerServiceRefHelper.getForServiceRefName(handlerServiceRefHolder_, webServiceRefCombo_.getText());
+ currentHSRH_ = hsrh;
+ refresh();
+ }
+
+ if (isGenSkeletonEnabled_){
+ setSourceOutputLocation();
+ }
+
+ }
+
+ /**
+ * @return Returns the isGenSkeletonEnabled_.
+ */
+ public boolean isGenSkeletonEnabled_() {
+ return isGenSkeletonEnabled_;
+ }
+
+ protected class ListLabelProvider extends LabelProvider implements ITableLabelProvider {
+
+ public Image getColumnImage(Object element, int columnIndex) {
+ return null;
+ }
+
+ public String getColumnText(Object object, int columnIndex) {
+
+ if (object instanceof HandlerTableItem) {
+ HandlerTableItem hti = (HandlerTableItem) object;
+ if (columnIndex == 0) {
+
+ return hti.getHandlerName() != null ? hti.getHandlerName() : "";
+ }
+ else if (columnIndex == 1) { return hti.getHandlerClassName() != null ? hti.getHandlerClassName() : ""; }
+ }
+ return null;
+ }
+
+ }
+
+ private void enableRemove(boolean enabled) {
+ removeButton_.setEnabled(enabled && !tableViewer_.getSelection().isEmpty());
+ }
+
+ protected class ListContentProvider implements IStructuredContentProvider {
+
+ public Object[] getElements(Object element) {
+ if (element instanceof Vector) { return ((Vector) element).toArray(); }
+ return null;
+ }
+
+ public void dispose() {
+ }
+
+ public void inputChanged(Viewer viewer, Object old, Object newobj) {
+ }
+
+ public boolean isDeleted(Object object) {
+ return false;
+ }
+ }
+
+ protected void handleDeleteKeyPressed() {
+ ISelection selection = tableViewer_.getSelection();
+ if (selection != null && !selection.isEmpty() && (selection instanceof IStructuredSelection)) {
+ int selectionIndex = handlersTable_.getSelectionIndex();
+ if (currentHSRH_!=null){
+ currentHSRH_.getHandlerList().remove(selectionIndex);
+ }
+ refresh();
+ }
+ }
+
+ public void refresh() {
+
+ try {
+ tableViewer_.setInput(null);
+ if (currentHSRH_!=null){
+ List handlers = currentHSRH_.getHandlerList();
+ tableViewer_.setInput(handlers);
+ tableViewer_.refresh();
+ }
+ }
+ catch (Exception e) {
+ e.printStackTrace();
+ }
+
+ }
+
+ public void setGenSkeletonEnabled(boolean isGenSkeletonEnabled) {
+ this.isGenSkeletonEnabled_ = isGenSkeletonEnabled;
+ genSkeletonRadioButton_.setSelection(isGenSkeletonEnabled);
+
+ }
+
+ public boolean getGenSkeletonEnabled() {
+ return this.isGenSkeletonEnabled_;
+ }
+
+ private void setSourceOutputLocation(){
+ if (currentHSRH_!=null){
+ IProject project = currentHSRH_.getProject();
+ if (project!=null){
+ IPath[]locations = ResourceUtils.getAllJavaSourceLocations(project);
+ String[] paths = new String[locations.length];
+ for (int i = 0; i < locations.length; i++) {
+ paths[i] = locations[i].toString();
+ pathsTable_.put(paths[i], locations[i]);
+ }
+ sourceLocationCombo_.setItems(paths);
+ sourceLocationCombo_.select(0);
+ }
+
+ // set in model
+ outputLocation_ = sourceLocationCombo_.getText();
+ IPath outputPath = (IPath) pathsTable_.get(outputLocation_);
+ currentHSRH_.setSourceOutputPath(outputPath);
+ }
+ }
+
+ /**
+ * Called at the beginning
+ */
+ public void internalize(){
+ populateHandlersTable();
+ }
+
+ /**
+ * Initial selection
+ * @param wsRefName
+ */
+ public void setServiceRefName(String wsRefName) {
+ serviceRefName_ = wsRefName;
+ }
+
+ /**
+ * true if multiple clients are selected
+ * @param isMulitpleSelection
+ */
+ public void setIsMultipleSelection(boolean isMulitpleSelection) {
+ this.isMultipleSelection_ = isMulitpleSelection;
+ }
+
+ /**
+ * An array of HandlerDescriptionHolders
+ * @return
+ */
+ public void setHandlerServiceRefHolder(HandlerServiceRefHolder[] handlerHolders){
+ this.handlerServiceRefHolder_ = handlerHolders;
+ }
+
+ public HandlerServiceRefHolder[] getHandlerServiceRefHolder(){
+ return this.handlerServiceRefHolder_;
+ }
+
+}

Back to the top