/**
SpagoBI - The Business Intelligence Free Platform
Copyright (C) 2005-2010 Engineering Ingegneria Informatica S.p.A.
This library is free software; you can redistribute it and/or
modify it under the terms of the GNU Lesser General Public
License as published by the Free Software Foundation; either
version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public
License along with this library; if not, write to the Free Software
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
**/
package it.eng.spagobi.studio.console.editors.pages;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.Vector;
import it.eng.spagobi.server.services.api.bo.IDataSet;
import it.eng.spagobi.server.services.api.bo.IDataStoreMetadata;
import it.eng.spagobi.server.services.api.bo.IDataStoreMetadataField;
import it.eng.spagobi.server.services.api.exception.MissingParValueException;
import it.eng.spagobi.server.services.api.exception.NoServerException;
import it.eng.spagobi.studio.console.editors.ConsoleEditor;
import it.eng.spagobi.studio.console.editors.internal.DetailPanelPageTableRow;
import it.eng.spagobi.studio.console.model.bo.ColumnConfig;
import it.eng.spagobi.studio.console.model.bo.ConsoleTemplateModel;
import it.eng.spagobi.studio.console.model.bo.DatasetElement;
import it.eng.spagobi.studio.console.model.bo.DetailPanel;
import it.eng.spagobi.studio.console.model.bo.FilterBar;
import it.eng.spagobi.studio.console.model.bo.Page;
import it.eng.spagobi.studio.console.model.bo.TablePage;
import it.eng.spagobi.studio.utils.bo.Dataset;
import it.eng.spagobi.studio.utils.exceptions.NoActiveServerException;
import it.eng.spagobi.studio.utils.services.SpagoBIServerObjectsFactory;
import org.eclipse.jface.dialogs.MessageDialog;
import org.eclipse.jface.viewers.ComboBoxCellEditor;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.layout.FillLayout;
import org.eclipse.swt.SWT;
import org.eclipse.swt.layout.GridLayout;
import org.eclipse.swt.widgets.Group;
import org.eclipse.swt.widgets.Label;
import org.eclipse.swt.layout.GridData;
import org.eclipse.swt.widgets.Control;
import org.eclipse.swt.widgets.Event;
import org.eclipse.swt.widgets.Listener;
import org.eclipse.swt.widgets.TableItem;
import org.eclipse.swt.widgets.Text;
import org.eclipse.swt.widgets.Table;
import org.eclipse.swt.widgets.TableColumn;
import org.eclipse.swt.widgets.Button;
import org.eclipse.swt.custom.CCombo;
import org.eclipse.swt.custom.TableEditor;
import org.eclipse.swt.events.ModifyEvent;
import org.eclipse.swt.events.ModifyListener;
import org.eclipse.swt.events.SelectionAdapter;
import org.eclipse.swt.events.SelectionEvent;
import org.eclipse.swt.widgets.Combo;
import org.eclipse.ui.PlatformUI;
import org.slf4j.LoggerFactory;
/**
* @author Marco Cortella (marco.cortella@eng.it)
*
*/
public class DetailPanelPage extends AbstractPage {
private ConsoleEditor editor;
private String projectName;
private ConsoleTemplateModel consoleTemplateModel;
private Text text;
private Text text_1;
private Text text_2;
private Table table;
private Table tableColumns;
private Combo comboDataset;
private Combo comboDatasetLabel;
private Combo comboColumnId;
private List<DetailPanelPageTableRow> detailPanelPageTableRows;
private static org.slf4j.Logger logger = LoggerFactory.getLogger(DetailPanelPage.class);
private TableItem selectedRow;
private Page firstPage;
public static final int COLUMN_NAME = 0;
public static final int COLUMN_HEADER = 1;
public static final int COLUMN_HEADER_TYPE = 2;
public static final int COLUMN_TYPE = 3;
public static final int COLUMN_WIDTH = 4;
private Text textTitle;
private boolean previousTitleFound;
/**
* @param parent
* @param style
*/
public DetailPanelPage(Composite parent, int style) {
super(parent, style);
}
public void drawPage(){
detailPanelPageTableRows = new ArrayList<DetailPanelPageTableRow>();
setLayout(new FillLayout(SWT.HORIZONTAL));
Composite mainComposite = new Composite(this, SWT.NONE);
mainComposite.setLayout(new GridLayout(1, false));
Group grpPageDetail = new Group(mainComposite, SWT.NONE);
grpPageDetail.setText("Page Detail");
grpPageDetail.setLayout(new GridLayout(1, false));
grpPageDetail.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 1, 1));
Composite compositeTitle = new Composite(grpPageDetail, SWT.NONE);
compositeTitle.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false, 1, 1));
compositeTitle.setLayout(new GridLayout(2, false));
Label lblTitle = new Label(compositeTitle, SWT.NONE);
lblTitle.setLayoutData(new GridData(SWT.RIGHT, SWT.CENTER, false, false, 1, 1));
lblTitle.setText("Title");
textTitle = new Text(compositeTitle, SWT.BORDER);
textTitle.setText("Page Title");
textTitle.addModifyListener(new ModifyListener() {
public void modifyText(ModifyEvent arg0) {
if (firstPage != null){
if (previousTitleFound){
previousTitleFound = false;
} else {
editor.setIsDirty(true);
}
firstPage.setTitle(textTitle.getText());
}
}
});
GridData gd_textTitle = new GridData(SWT.LEFT, SWT.CENTER, true, false, 1, 1);
gd_textTitle.widthHint = 119;
textTitle.setLayoutData(gd_textTitle);
Group grpTable = new Group(grpPageDetail, SWT.NONE);
grpTable.setText("Table");
grpTable.setLayout(new GridLayout(1, false));
grpTable.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 1, 1));
Composite compositeTable = new Composite(grpTable, SWT.NONE);
compositeTable.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, false, 1, 1));
compositeTable.setBounds(0, 0, 408, 61);
compositeTable.setLayout(new GridLayout(4, false));
Label lblDatasetSelection = new Label(compositeTable, SWT.NONE);
lblDatasetSelection.setSize(93, 15);
lblDatasetSelection.setText("Dataset Selection:");
comboDataset = new Combo(compositeTable, SWT.READ_ONLY);
comboDataset.addSelectionListener(new SelectionAdapter() {
@Override
public void widgetSelected(SelectionEvent e) {
editor.setIsDirty(true);
int index = comboDataset.getSelectionIndex();
String dsId = comboDataset.getItem(index);
String dsLabel = null;
firstPage.getTable().setDataset(dsId);
Vector<DatasetElement> datasets = consoleTemplateModel.getDatasets();
if (!datasets.isEmpty() ){
for (DatasetElement datasetElement:datasets){
if (datasetElement.getId().equals(dsId)){
dsLabel = datasetElement.getLabel();
}
}
}
if (dsLabel != null){
populateColumnsTable(dsLabel);
//Populate columnId combo
populateColumnIdCombo(dsLabel);
}
}
});
comboDataset.setSize(111, 23);
Label lblDatasetlabels = new Label(compositeTable, SWT.NONE);
lblDatasetlabels.setSize(78, 15);
lblDatasetlabels.setText("Dataset Labels:");
comboDatasetLabel = new Combo(compositeTable, SWT.READ_ONLY);
comboDatasetLabel.setSize(91, 23);
comboDatasetLabel.addSelectionListener(new SelectionAdapter() {
@Override
public void widgetSelected(SelectionEvent e) {
editor.setIsDirty(true);
int index = comboDatasetLabel.getSelectionIndex();
String dsId = comboDatasetLabel.getItem(index);
if (dsId != null){
firstPage.getTable().setDatasetLabels(dsId);
}
}
});
Label lblColumnId = new Label(compositeTable, SWT.NONE);
lblColumnId.setSize(60, 15);
lblColumnId.setText("Column ID:");
comboColumnId = new Combo(compositeTable, SWT.READ_ONLY);
comboColumnId.setSize(111, 23);
comboColumnId.addSelectionListener(new SelectionAdapter() {
@Override
public void widgetSelected(SelectionEvent e) {
editor.setIsDirty(true);
int index = comboColumnId.getSelectionIndex();
String columnId = comboColumnId.getItem(index);
firstPage.getTable().setColumnId(columnId);
}
});
Group grpColumnConfig = new Group(grpTable, SWT.NONE);
grpColumnConfig.setText("Column Config");
grpColumnConfig.setLayout(new GridLayout(1, false));
grpColumnConfig.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 1, 1));
grpColumnConfig.setBounds(0, 0, 70, 82);
tableColumns = new Table(grpColumnConfig, SWT.BORDER | SWT.FULL_SELECTION);
tableColumns.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 1, 1));
tableColumns.setHeaderVisible(true);
tableColumns.setLinesVisible(true);
TableColumn tblclmnColumnName = new TableColumn(tableColumns, SWT.NONE);
tblclmnColumnName.setWidth(100);
tblclmnColumnName.setText("Column Name");
TableColumn tblclmnHeader = new TableColumn(tableColumns, SWT.NONE);
tblclmnHeader.setWidth(100);
tblclmnHeader.setText("Header");
TableColumn tblclmnHeaderType = new TableColumn(tableColumns, SWT.NONE);
tblclmnHeaderType.setWidth(86);
tblclmnHeaderType.setText("Header Type");
TableColumn tblclmnType = new TableColumn(tableColumns, SWT.NONE);
tblclmnType.setWidth(66);
tblclmnType.setText("Type");
TableColumn tblclmnWidth = new TableColumn(tableColumns, SWT.NONE);
tblclmnWidth.setWidth(51);
tblclmnWidth.setText("Width");
/*
Group grpNavigationBar = new Group(grpPageDetail, SWT.NONE);
grpNavigationBar.setText("Navigation Bar");
grpNavigationBar.setLayout(new GridLayout(1, false));
grpNavigationBar.setLayoutData(new GridData(SWT.FILL, SWT.CENTER, true, true, 1, 1));
Composite composite = new Composite(grpNavigationBar, SWT.NONE);
composite.setLayout(new GridLayout(4, false));
composite.setLayoutData(new GridData(SWT.LEFT, SWT.CENTER, true, false, 1, 1));
composite.setBounds(0, 0, 64, 64);
Label lblText = new Label(composite, SWT.NONE);
lblText.setSize(25, 15);
lblText.setText("Text:");
text = new Text(composite, SWT.BORDER);
text.setSize(76, 21);
Label lblNewLabel = new Label(composite, SWT.NONE);
lblNewLabel.setSize(41, 15);
lblNewLabel.setText("Tooltip:");
text_1 = new Text(composite, SWT.BORDER);
text_1.setSize(245, 21);
Label lblLabel = new Label(composite, SWT.NONE);
lblLabel.setSize(31, 15);
lblLabel.setText("Label:");
text_2 = new Text(composite, SWT.BORDER);
text_2.setSize(76, 21);
new Label(composite, SWT.NONE);
new Label(composite, SWT.NONE);
Composite composite_1 = new Composite(grpNavigationBar, SWT.NONE);
Button btnAdd = new Button(composite_1, SWT.NONE);
btnAdd.addSelectionListener(new SelectionAdapter() {
@Override
public void widgetSelected(SelectionEvent e) {
}
});
btnAdd.setBounds(0, 0, 75, 25);
btnAdd.setText("Add");
table = new Table(grpNavigationBar, SWT.BORDER | SWT.FULL_SELECTION);
table.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 1, 1));
table.setHeaderVisible(true);
table.setLinesVisible(true);
TableColumn tblclmnText = new TableColumn(table, SWT.NONE);
tblclmnText.setWidth(100);
tblclmnText.setText("Text");
TableColumn tblclmnTooltip = new TableColumn(table, SWT.NONE);
tblclmnTooltip.setWidth(100);
tblclmnTooltip.setText("Tooltip");
TableColumn tblclmnLabel = new TableColumn(table, SWT.NONE);
tblclmnLabel.setWidth(100);
tblclmnLabel.setText("Label");
*/
//check for previously defined pages or create one
if (consoleTemplateModel.getDetailPanel() == null){
DetailPanel detailPanel = new DetailPanel();
consoleTemplateModel.setDetailPanel(detailPanel);
}
Vector<Page> pages = consoleTemplateModel.getDetailPanel().getPages();
if (!pages.isEmpty()){
firstPage = pages.get(0);
previousTitleFound = true;
textTitle.setText(firstPage.getTitle());
} else {
Page newPage = new Page();
//newPage.setTitle("Page title");
if (textTitle.getText() != null){
newPage.setTitle(textTitle.getText());
}
TablePage newTable = new TablePage();
//by default create a FilterBar that is required
FilterBar newFilterBar = new FilterBar();
newFilterBar.setType("custom");
newTable.setFilterBar(newFilterBar);
newPage.setTable(newTable);
consoleTemplateModel.getDetailPanel().getPages().add(newPage);
firstPage = newPage;
}
populateDatasetCombo();
populateDatasetLabelCombo();
//populate ColumnId combo if dataset already selected
if (firstPage.getTable().getDataset() != null){
int index = comboDataset.getSelectionIndex();
String dsId = comboDataset.getItem(index);
String dsLabel = null;
Vector<DatasetElement> datasets = consoleTemplateModel.getDatasets();
if (!datasets.isEmpty() ){
for (DatasetElement datasetElement:datasets){
if (datasetElement.getId().equals(dsId)){
dsLabel = datasetElement.getLabel();
}
}
String columnId = null;
if (firstPage != null){
if(firstPage.getTable() != null){
if(firstPage.getTable().getColumnId() != null){
columnId = firstPage.getTable().getColumnId();
}
}
}
populateColumnIdCombo(dsLabel);
if (columnId != null){
String[] comboItems = comboColumnId.getItems();
for(int i=0; i<comboItems.length;i++){
if (comboItems[i].equals(columnId)){
comboColumnId.select(i);
break;
}
}
}
}
}
//populate tableColumns if found already existing objects
Map<String,ColumnConfig> columnConfigSet = firstPage.getTable().getColumnConfig();
if (!columnConfigSet.isEmpty()){
for(Map.Entry<String,ColumnConfig> entry:columnConfigSet.entrySet() ){
createTableItem(entry.getKey(),entry.getValue());
}
}
}
public void populateColumnIdCombo(String datasetLabel){
comboColumnId.removeAll();
firstPage.getTable().setColumnId(null);
IDataStoreMetadata dataStoreMetadata = retrieveDatasetMetadata(datasetLabel);
if (dataStoreMetadata != null){
for (int i = 0; i < dataStoreMetadata.getFieldsMetadata().length; i++) {
IDataStoreMetadataField dsmf = dataStoreMetadata.getFieldsMetadata()[i];
//create Table Columns in object Model
comboColumnId.add(dsmf.getName());
}
}
}
public void populateDatasetCombo(){
comboDataset.removeAll();
Vector<DatasetElement> datasets = consoleTemplateModel.getDatasets();
if (!datasets.isEmpty() ){
for (DatasetElement datasetElement:datasets){
comboDataset.add(datasetElement.getId());
}
}
//check previously defined Dataset in detailPanel Page
if (firstPage != null){
if(firstPage.getTable() != null){
if(firstPage.getTable().getDataset() != null){
String datasetName = firstPage.getTable().getDataset();
String[] comboItems = comboDataset.getItems();
for(int i=0; i<comboItems.length;i++){
if (comboItems[i].equals(datasetName)){
comboDataset.select(i);
break;
}
}
}
}
}
}
public void populateDatasetLabelCombo(){
comboDatasetLabel.removeAll();
//firstPage.getTable().setDatasetLabels(null);
Vector<DatasetElement> datasets = consoleTemplateModel.getDatasets();
if (!datasets.isEmpty() ){
for (DatasetElement datasetElement:datasets){
comboDatasetLabel.add(datasetElement.getId());
}
}
//check previously defined Dataset in detailPanel Page
if (firstPage != null){
if(firstPage.getTable() != null){
if(firstPage.getTable().getDatasetLabels() != null){
String datasetLabelName = firstPage.getTable().getDatasetLabels();
String[] comboItems = comboDatasetLabel.getItems();
for(int i=0; i<comboItems.length;i++){
if (comboItems[i].equals(datasetLabelName)){
comboDatasetLabel.select(i);
break;
}
}
}
}
}
}
public void populateColumnsTable(String dsLabel){
//First, clean all UI elements in the table
for (DetailPanelPageTableRow detailPanelPageTableRow:detailPanelPageTableRows){
detailPanelPageTableRow.disposeRowElements();
}
//remove all elements from the internal list
detailPanelPageTableRows.clear();
tableColumns.clearAll();
tableColumns.redraw();
Map<String,ColumnConfig> columnConfigSet = firstPage.getTable().getColumnConfig();
columnConfigSet.clear();
IDataStoreMetadata dataStoreMetadata = retrieveDatasetMetadata(dsLabel);
if (dataStoreMetadata != null){
for (int i = 0; i < dataStoreMetadata.getFieldsMetadata().length; i++) {
IDataStoreMetadataField dsmf = dataStoreMetadata.getFieldsMetadata()[i];
//create Table Columns in object Model
ColumnConfig column = new ColumnConfig();
column.setHeader(dsmf.getName());
columnConfigSet.put(dsmf.getName(), column);
//add Table Item to Columns Table (GUI)
createTableItem(dsmf.getName(),column);
}
}
}
public void createTableItem(String columnName, ColumnConfig column ){
final TableItem item = new TableItem(tableColumns, SWT.NONE);
item.setData(column);
//set Column name
item.setText(COLUMN_NAME, columnName);
//create Cell Editor Text Header
TableEditor editor_header = new TableEditor(tableColumns);
final Text textHeader = new Text(tableColumns, SWT.NONE);
textHeader.setText(column.getHeader());
editor_header.grabHorizontal = true;
textHeader.addModifyListener(new ModifyListener() {
public void modifyText(ModifyEvent arg0) {
editor.setIsDirty(true);
if (item != null){
ColumnConfig columnConfig = (ColumnConfig)item.getData();
columnConfig.setHeader(textHeader.getText());
}
}
});
editor_header.setEditor(textHeader,item, COLUMN_HEADER);
//create Cell Editor Combo Header Type
TableEditor editor_headerType = new TableEditor(tableColumns);
final CCombo comboHeaderType = new CCombo(tableColumns, SWT.READ_ONLY);
comboHeaderType.add("static");
comboHeaderType.add("dataset");
comboHeaderType.add("i18N");
comboHeaderType.add("datasetI18N");
editor_headerType.grabHorizontal = true;
//check previously defined objects
if(column.getHeaderType() != null){
selectCComboElement(comboHeaderType,column.getHeaderType());
} else {
//default value is static
comboHeaderType.select(0);
column.setHeaderType("static");
}
comboHeaderType.addSelectionListener(new SelectionAdapter() {
@Override
public void widgetSelected(SelectionEvent e) {
editor.setIsDirty(true);
ColumnConfig columnConfig = (ColumnConfig)item.getData();
columnConfig.setHeaderType(comboHeaderType.getText());
}
});
editor_headerType.setEditor(comboHeaderType,item, COLUMN_HEADER_TYPE);
//create Cell Editor Combo Type
TableEditor editor_type = new TableEditor(tableColumns);
final CCombo comboType = new CCombo(tableColumns, SWT.READ_ONLY);
comboType.add("string");
comboType.add("int");
comboType.add("date");
comboType.add("timestamp");
editor_type.grabHorizontal = true;
//check previously defined objects
if(column.getType() != null){
selectCComboElement(comboType,column.getType());
} else {
//default value is string
comboType.select(0);
column.setType("string");
}
comboType.addSelectionListener(new SelectionAdapter() {
@Override
public void widgetSelected(SelectionEvent e) {
editor.setIsDirty(true);
ColumnConfig columnConfig = (ColumnConfig)item.getData();
columnConfig.setType(comboType.getText());
}
});
editor_type.setEditor(comboType,item, COLUMN_TYPE);
//create Cell Editor Text Width
TableEditor editor_width = new TableEditor(tableColumns);
final Text textWidth = new Text(tableColumns, SWT.NONE);
editor_width.grabHorizontal = true;
if(column.getWidth() != 0){
textWidth.setText(String.valueOf(column.getWidth()));
}
textWidth.addModifyListener(new ModifyListener() {
public void modifyText(ModifyEvent arg0) {
editor.setIsDirty(true);
if (item != null){
ColumnConfig columnConfig = (ColumnConfig)item.getData();
columnConfig.setWidth(Integer.parseInt(textWidth.getText()));
}
}
});
editor_width.setEditor(textWidth,item, COLUMN_WIDTH);
//create internal object with UI elements of this item
DetailPanelPageTableRow detailPanelPageTableRow = new DetailPanelPageTableRow(item,textHeader,comboHeaderType,comboType,textWidth);
detailPanelPageTableRows.add(detailPanelPageTableRow);
tableColumns.redraw();
}
private IDataStoreMetadata retrieveDatasetMetadata(String dsLabel) {
logger.debug("IN");
try {
logger.debug("retrieve metadata for dataset with label "+dsLabel);
SpagoBIServerObjectsFactory sbso= null;
try{
sbso =new SpagoBIServerObjectsFactory(projectName);
}catch (NoActiveServerException e1) {
logger.error("No active server found",e1);
return null;
}
// get the dataset
HashMap<String, it.eng.spagobi.studio.utils.bo.Dataset> datasetInfos;
datasetInfos = retrieveDatasetList();
it.eng.spagobi.studio.utils.bo.Dataset dataset = datasetInfos.get(dsLabel);
IDataStoreMetadata dataStoreMetadata = sbso.getServerDatasets().getDataStoreMetadata(dataset.getId());
HashMap<String, IDataStoreMetadata> datasetMetadataInfos;
if (dataStoreMetadata != null) {
return dataStoreMetadata;
} else {
logger.warn("Dataset returned no metadata");
MessageDialog.openWarning(this.getShell(), "Warning", "Dataset with label = " + dsLabel + " returned no metadata: test it on server to have metadata avalaible");
}
} catch (MissingParValueException e2) {
logger.error("Could not execute dataset with label = "+ dsLabel + " due to parameter lack: execute dataset test in server to retrieve metadata", e2);
MessageDialog.openError(this.getShell(), "Error",
"Could not execute dataset with label = "+dsLabel+ " due to parameter lack: execute dataset test in server to retrieve metadata");
} catch (NoServerException e1) {
logger.error("Error No comunciation with server retrieving dataset with label = "+ dsLabel + " metadata", e1);
MessageDialog.openError(this.getShell(), "Error", "No comunciation with server retrieving dataset with label = "+ dsLabel + " metadata");
}
logger.debug("OUT");
return null;
}
public HashMap<String, it.eng.spagobi.studio.utils.bo.Dataset> retrieveDatasetList(){
logger.debug("IN");
HashMap<String, it.eng.spagobi.studio.utils.bo.Dataset> datasetInfosPar = null;
try{
SpagoBIServerObjectsFactory proxyServerObjects = null;
proxyServerObjects = new SpagoBIServerObjectsFactory(projectName);
//IDataSet[] dataSets = proxyServerObjects.getServerDatasets().getDataSetList();
Vector<IDataSet> datasetVector = proxyServerObjects.getServerDatasets().getAllDatasets();
datasetInfosPar = new HashMap<String, it.eng.spagobi.studio.utils.bo.Dataset>();
for (Iterator iterator = datasetVector.iterator(); iterator.hasNext();) {
it.eng.spagobi.studio.utils.bo.Dataset dataset = (it.eng.spagobi.studio.utils.bo.Dataset) iterator.next();
datasetInfosPar.put(dataset.getLabel(), dataset);
}
logger.debug("Retrieved "+datasetInfosPar.size()+" datasets");
}
catch (NoActiveServerException e1) {
logger.error("No active server found", e1);
MessageDialog.openError(PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell(),
"Error", "No active server found");
return null;
}
catch (Exception e1) {
logger.error("Not working server found", e1);
MessageDialog.openError(PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell(),
"Error", "Not working server found");
return null;
}
logger.debug("OUT");
return datasetInfosPar;
}
public void selectCComboElement(CCombo combo, String element){
String[] items = combo.getItems();
for (int i=0; i<items.length; i++){
if (items[i].equals(element)){
combo.select(i);
break;
}
}
}
public ConsoleEditor getEditor() {
return editor;
}
public void setEditor(ConsoleEditor editor) {
this.editor = editor;
}
/**
* @return the projectName
*/
public String getProjectName() {
return projectName;
}
/**
* @param projectName the projectName to set
*/
public void setProjectName(String projectName) {
this.projectName = projectName;
}
/**
* @return the consoleTemplateModel
*/
public ConsoleTemplateModel getConsoleTemplateModel() {
return consoleTemplateModel;
}
/**
* @param consoleTemplateModel the consoleTemplateModel to set
*/
public void setConsoleTemplateModel(ConsoleTemplateModel consoleTemplateModel) {
this.consoleTemplateModel = consoleTemplateModel;
}
}