Example usage for com.google.gwt.user.cellview.client Column setSortable

List of usage examples for com.google.gwt.user.cellview.client Column setSortable

Introduction

In this page you can find the example usage for com.google.gwt.user.cellview.client Column setSortable.

Prototype

public void setSortable(boolean sortable) 

Source Link

Document

Set whether or not the column can be sorted.

Usage

From source file:org.jboss.as.console.client.shared.subsys.elytron.ui.GenericListComplexAttribute.java

License:Open Source License

private void setupTable() {
    table = new DefaultCellTable<>(10);
    table.setSelectionModel(selectionModel);

    // columns//from ww  w  .  j a  v a 2 s  .c  o  m
    for (Property propDescription : resourceDescription.get(ATTRIBUTES).asPropertyList()) {
        Column<ModelNode, String> column = createColumn(propDescription.getName());
        column.setSortable(true);
        column.setHorizontalAlignment(HasHorizontalAlignment.ALIGN_CENTER);
        table.addColumn(column, label(propDescription.getName()));
    }
    ;
}

From source file:org.jboss.as.console.client.shared.subsys.elytron.ui.IdentityAttributeMappingView.java

License:Open Source License

@SuppressWarnings("unchecked")
public Widget asWidget() {
    VerticalPanel panel = new VerticalPanel();
    panel.addStyleName("fill-layout-width");

    // table/*  w  w  w  .  j  a va2  s  .  co  m*/
    table = new DefaultCellTable<>(5, nameProvider);
    dataProvider = new ListDataProvider<>(nameProvider);
    dataProvider.addDataDisplay(table);
    table.setSelectionModel(selectionModel);

    // columns
    Column<ModelNode, String> fromColumn = new TextColumn<ModelNode>() {
        @Override
        public String getValue(ModelNode node) {
            return node.get("from").asString();
        }
    };
    fromColumn.setSortable(true);
    Column<ModelNode, String> toColumn = new TextColumn<ModelNode>() {
        @Override
        public String getValue(ModelNode node) {
            return node.get("to").asString();
        }
    };
    Column<ModelNode, String> filterColumn = new TextColumn<ModelNode>() {
        @Override
        public String getValue(ModelNode node) {
            return node.get("filter").asString();
        }
    };
    filterColumn.setHorizontalAlignment(HasHorizontalAlignment.ALIGN_CENTER);
    toColumn.setHorizontalAlignment(HasHorizontalAlignment.ALIGN_CENTER);
    ColumnSortEvent.ListHandler<ModelNode> sortHandler = new ColumnSortEvent.ListHandler<>(
            dataProvider.getList());
    sortHandler.setComparator(fromColumn, (o1, o2) -> o1.get("from").asString().toLowerCase()
            .compareTo(o2.get("from").asString().toLowerCase()));
    table.addColumn(fromColumn, "From");
    table.addColumn(toColumn, "To");
    table.addColumn(filterColumn, "Filter");
    table.setColumnWidth(fromColumn, 30, Style.Unit.PCT);
    table.setColumnWidth(toColumn, 40, Style.Unit.PCT);
    table.setColumnWidth(filterColumn, 20, Style.Unit.PCT);
    table.addColumnSortHandler(sortHandler);
    table.getColumnSortList().push(fromColumn);

    panel.add(table);
    DefaultPager pager = new DefaultPager();
    pager.setDisplay(table);
    panel.add(pager);
    return panel;
}

From source file:org.jboss.as.console.client.shared.subsys.elytron.ui.JdbcRealmPrincipalsQueryView.java

License:Open Source License

@SuppressWarnings("unchecked")
public Widget asWidget() {
    VerticalPanel panel = new VerticalPanel();
    panel.addStyleName("fill-layout-width");

    // table/*from  ww  w  .j a  v  a  2s.co m*/
    table = new DefaultCellTable<>(5, nameProvider);
    dataProvider = new ListDataProvider<>(nameProvider);
    dataProvider.addDataDisplay(table);
    table.setSelectionModel(selectionModel);

    // columns
    Column<ModelNode, String> nameColumn = new TextColumn<ModelNode>() {
        @Override
        public String getValue(ModelNode node) {
            return node.get("sql").asString();
        }
    };
    nameColumn.setSortable(true);
    Column<ModelNode, String> datasourceColumn = new TextColumn<ModelNode>() {
        @Override
        public String getValue(ModelNode node) {
            return node.get("data-source").asString();
        }
    };

    table.addColumn(nameColumn, Console.CONSTANTS.common_label_name());
    table.addColumn(datasourceColumn, "Datasource");
    table.setColumnWidth(nameColumn, 85, Style.Unit.PCT);
    table.setColumnWidth(datasourceColumn, 15, Style.Unit.PCT);
    datasourceColumn.setHorizontalAlignment(HasHorizontalAlignment.ALIGN_CENTER);

    panel.add(setupTableButtons());
    panel.add(table);
    DefaultPager pager = new DefaultPager();
    pager.setDisplay(table);
    panel.add(pager);
    return panel;
}

From source file:org.jboss.as.console.client.shared.subsys.elytron.ui.NewIdentityAttributesView.java

License:Open Source License

@SuppressWarnings("unchecked")
public Widget asWidget() {
    VerticalPanel panel = new VerticalPanel();
    panel.addStyleName("fill-layout-width");

    // table//from w  w  w.  j a va 2  s.  co m
    table = new DefaultCellTable<>(5, nameProvider);
    dataProvider = new ListDataProvider<>(nameProvider);
    dataProvider.addDataDisplay(table);
    table.setSelectionModel(selectionModel);

    // columns
    Column<ModelNode, String> nameColumn = new TextColumn<ModelNode>() {
        @Override
        public String getValue(ModelNode node) {
            return node.get("name").asString();
        }
    };
    nameColumn.setSortable(true);
    Column<ModelNode, String> valueColumn = new TextColumn<ModelNode>() {
        @Override
        public String getValue(ModelNode node) {
            return node.get("value").asString();
        }
    };
    valueColumn.setHorizontalAlignment(HasHorizontalAlignment.ALIGN_CENTER);
    ColumnSortEvent.ListHandler<ModelNode> sortHandler = new ColumnSortEvent.ListHandler<>(
            dataProvider.getList());
    sortHandler.setComparator(nameColumn, (o1, o2) -> o1.get("name").asString().toLowerCase()
            .compareTo(o2.get("name").asString().toLowerCase()));
    table.addColumn(nameColumn, "From");
    table.addColumn(valueColumn, "To");
    table.setColumnWidth(nameColumn, 30, Style.Unit.PCT);
    table.setColumnWidth(valueColumn, 70, Style.Unit.PCT);
    table.addColumnSortHandler(sortHandler);
    table.getColumnSortList().push(nameColumn);

    panel.add(table);
    DefaultPager pager = new DefaultPager();
    pager.setDisplay(table);
    panel.add(pager);
    return panel;
}

From source file:org.jboss.as.console.client.shared.subsys.elytron.ui.SecurityDomainRealmEditor.java

License:Open Source License

private void setupTable() {
    table = new DefaultCellTable<>(5);
    table.setSelectionModel(selectionModel);

    // columns//from   ww  w  . j av  a 2  s . c o  m
    Column<ModelNode, String> realmColumn = createColumn("realm");
    Column<ModelNode, String> principalTransformColumn = createColumn("principal-transformer");
    Column<ModelNode, String> roleDecoderColumn = createColumn("role-decoder");
    Column<ModelNode, String> roleMapperColumn = createColumn("role-mapper");
    realmColumn.setSortable(true);
    realmColumn.setHorizontalAlignment(HasHorizontalAlignment.ALIGN_CENTER);
    principalTransformColumn.setHorizontalAlignment(HasHorizontalAlignment.ALIGN_CENTER);
    roleDecoderColumn.setHorizontalAlignment(HasHorizontalAlignment.ALIGN_CENTER);
    roleMapperColumn.setHorizontalAlignment(HasHorizontalAlignment.ALIGN_CENTER);
    table.addColumn(realmColumn, "Realm");
    table.addColumn(principalTransformColumn, "Principal Transform");
    table.addColumn(roleDecoderColumn, "Role Decoder");
    table.addColumn(roleMapperColumn, "Role Mapper");
    table.setColumnWidth(realmColumn, 30, Style.Unit.PCT);
    table.setColumnWidth(principalTransformColumn, 30, Style.Unit.PCT);
    table.setColumnWidth(roleDecoderColumn, 20, Style.Unit.PCT);
    table.setColumnWidth(roleMapperColumn, 20, Style.Unit.PCT);
}

From source file:org.jboss.as.console.client.shared.subsys.osgi.runtime.BundleRuntimeView.java

License:Open Source License

@Override
protected DefaultCellTable<OSGiBundle> makeEntityTable() {
    bundleTable = new DefaultCellTable<OSGiBundle>(8);
    sortHandler = new MyListHandler<OSGiBundle>();

    TextColumn<OSGiBundle> idColumn = new TextColumn<OSGiBundle>() {
        @Override/*w  ww  .ja  va 2s .c o  m*/
        public String getValue(OSGiBundle record) {
            return record.getName();
        }
    };
    idColumn.setSortable(true);
    sortHandler.setComparator(idColumn, new Comparator<OSGiBundle>() {
        @Override
        public int compare(OSGiBundle o1, OSGiBundle o2) {
            return new Long(o1.getName()).compareTo(new Long(o2.getName()));
        }
    });
    bundleTable.addColumn(idColumn, Console.CONSTANTS.subsys_osgi_bundleID());

    TextColumn<OSGiBundle> symbolicNameColumn = new TextColumn<OSGiBundle>() {
        @Override
        public String getValue(OSGiBundle record) {
            return record.getSymbolicName();
        }
    };
    symbolicNameColumn.setSortable(true);
    sortHandler.setComparator(symbolicNameColumn, new Comparator<OSGiBundle>() {
        @Override
        public int compare(OSGiBundle o1, OSGiBundle o2) {
            return o1.getSymbolicName().compareTo(o2.getSymbolicName());
        }
    });
    bundleTable.addColumn(symbolicNameColumn, Console.CONSTANTS.subsys_osgi_bundleSymbolicName());

    TextColumn<OSGiBundle> versionColumn = new TextColumn<OSGiBundle>() {
        @Override
        public String getValue(OSGiBundle record) {
            return record.getVersion();
        }
    };
    bundleTable.addColumn(versionColumn, Console.CONSTANTS.subsys_osgi_bundleVersion());

    Column<OSGiBundle, ImageResource> stateColumn = new Column<OSGiBundle, ImageResource>(
            new ImageResourceCell()) {
        @Override
        public ImageResource getValue(OSGiBundle bundle) {
            if ("ACTIVE".equals(bundle.getState()))
                return Icons.INSTANCE.status_good();
            if ("STARTING".equals(bundle.getState()))
                return Icons.INSTANCE.status_warn();
            if ("RESOLVED".equals(bundle.getState()))
                return Icons.INSTANCE.status_none();

            // default
            return Icons.INSTANCE.status_none();
        }
    };
    stateColumn.setSortable(true);
    sortHandler.setComparator(stateColumn, new Comparator<OSGiBundle>() {
        @Override
        public int compare(OSGiBundle o1, OSGiBundle o2) {
            List<String> order = Arrays.asList("RESOLVED", "STARTING", "ACTIVE");
            Integer i1 = order.indexOf(o1.getState());
            Integer i2 = order.indexOf(o2.getState());

            return i1.compareTo(i2);
        }
    });
    bundleTable.addColumn(stateColumn, Console.CONSTANTS.subsys_osgi_bundleState());

    class BundleColumn extends Column<OSGiBundle, OSGiBundle> {
        public BundleColumn(Cell<OSGiBundle> cell) {
            super(cell);
        }

        @Override
        public OSGiBundle getValue(OSGiBundle record) {
            return record;
        }
    }
    ;
    TextLinkCell<OSGiBundle> startCell = new TextLinkCell<OSGiBundle>(
            Console.CONSTANTS.common_label_start() + "&nbsp;&nbsp;", new ActionCell.Delegate<OSGiBundle>() {
                @Override
                public void execute(OSGiBundle bundle) {
                    if ("fragment".equals(bundle.getType())) {
                        Feedback.alert(Console.CONSTANTS.subsys_osgi(),
                                Console.MESSAGES.subsys_osgi_cant_start_fragment(bundle.getSymbolicName()));
                    } else {
                        presenter.startBundle(bundle);
                    }
                }
            });

    final TextLinkCell<OSGiBundle> stopCell = new TextLinkCell<OSGiBundle>(
            Console.CONSTANTS.common_label_stop(), new ActionCell.Delegate<OSGiBundle>() {
                @Override
                public void execute(OSGiBundle bundle) {
                    if ("fragment".equals(bundle.getType())) {
                        Feedback.alert(Console.CONSTANTS.subsys_osgi(),
                                Console.MESSAGES.subsys_osgi_cant_stop_fragment(bundle.getSymbolicName()));
                    } else {
                        presenter.stopBundle(bundle);
                    }
                }
            });
    List<HasCell<OSGiBundle, OSGiBundle>> buttonCells = new ArrayList<HasCell<OSGiBundle, OSGiBundle>>();
    buttonCells.add(new BundleColumn(startCell));
    buttonCells.add(new BundleColumn(stopCell));
    BundleColumn myColumn = new BundleColumn(new CompositeCell(buttonCells));

    bundleTable.addColumn(myColumn, Console.CONSTANTS.common_label_action());

    bundleTable.addColumnSortHandler(sortHandler);
    bundleTable.getColumnSortList().push(idColumn); // initial sort is on bundle ID

    return bundleTable;
}

From source file:org.jboss.as.console.client.shared.subsys.undertow.FilterRefEditor.java

License:Open Source License

@SuppressWarnings("unchecked")
public Widget asWidget() {
    VerticalPanel panel = new VerticalPanel();
    panel.addStyleName("fill-layout-width");

    // table/*  w w  w  .  j  a  v  a  2s . c o m*/
    table = new DefaultCellTable<>(5, nameProvider);
    dataProvider = new ListDataProvider<>(nameProvider);
    dataProvider.addDataDisplay(table);
    table.setSelectionModel(selectionModel);

    // columns
    Column<Property, String> nameColumn = new TextColumn<Property>() {
        @Override
        public String getValue(Property property) {
            return property.getName();
        }
    };
    nameColumn.setSortable(true);
    Column<Property, String> predicateColumn = new TextColumn<Property>() {
        @Override
        public String getValue(Property property) {
            return getClassValue(property, "predicate");
        }
    };
    Column<Property, String> priorityColumn = new TextColumn<Property>() {
        @Override
        public String getValue(Property property) {
            return getClassValue(property, "priority");
        }
    };
    priorityColumn.setHorizontalAlignment(HasHorizontalAlignment.ALIGN_CENTER);
    predicateColumn.setHorizontalAlignment(HasHorizontalAlignment.ALIGN_CENTER);
    ColumnSortEvent.ListHandler<Property> sortHandler = new ColumnSortEvent.ListHandler<>(
            dataProvider.getList());
    sortHandler.setComparator(nameColumn,
            (o1, o2) -> o1.getName().toLowerCase().compareTo(o2.getName().toLowerCase()));
    table.addColumn(nameColumn, Console.CONSTANTS.common_label_name());
    table.addColumn(predicateColumn, "Predicate");
    table.addColumn(priorityColumn, "Priority");
    table.setColumnWidth(nameColumn, 30, Style.Unit.PCT);
    table.setColumnWidth(predicateColumn, 40, Style.Unit.PCT);
    table.setColumnWidth(priorityColumn, 20, Style.Unit.PCT);
    table.addColumnSortHandler(sortHandler);
    table.getColumnSortList().push(nameColumn);

    // tools
    ToolStrip tools = new ToolStrip();
    ToolButton addButton = new ToolButton(Console.CONSTANTS.common_label_add(), event -> {
        presenter.setSelectedHost(hostname);
        presenter.onLaunchAddFilterReferenceDialog(operationAddress, hostname);
    });
    ToolButton removeButton = new ToolButton(Console.CONSTANTS.common_label_delete(), event -> {
        final Property selection = selectionModel.getSelectedObject();
        if (selection != null) {
            Feedback.confirm("Filter reference",
                    Console.MESSAGES.deleteConfirm("Filter reference " + selection.getName()), isConfirmed -> {
                        if (isConfirmed) {
                            presenter.setSelectedHost(hostname);
                            presenter.onRemoveResource(resolvedOperationAddress, selection.getName());
                        }
                    });
        }
    });
    tools.addToolButtonRight(addButton);
    tools.addToolButtonRight(removeButton);
    panel.add(tools);

    panel.add(table);
    DefaultPager pager = new DefaultPager();
    pager.setDisplay(table);
    panel.add(pager);
    return panel;
}

From source file:org.jboss.as.console.client.shared.subsys.ws.HandlerClassEditor.java

License:Open Source License

@SuppressWarnings("unchecked")
public Widget asWidget() {
    VerticalPanel panel = new VerticalPanel();
    panel.addStyleName("fill-layout-width");

    // table/*ww w.j  a v a 2 s.c o m*/
    table = new DefaultCellTable<>(numRows, nameProvider);
    dataProvider = new ListDataProvider<>(nameProvider);
    dataProvider.addDataDisplay(table);
    final SingleSelectionModel<Property> selectionModel = new SingleSelectionModel<>(nameProvider);
    table.setSelectionModel(selectionModel);

    // columns
    Column<Property, String> nameColumn = new TextColumn<Property>() {
        @Override
        public String getValue(Property property) {
            return property.getName();
        }
    };
    nameColumn.setSortable(true);
    Column<Property, String> classColumn = new TextColumn<Property>() {
        @Override
        public String getValue(Property property) {
            return getClassValue(property).asString();
        }
    };
    ColumnSortEvent.ListHandler<Property> sortHandler = new ColumnSortEvent.ListHandler<>(
            dataProvider.getList());
    sortHandler.setComparator(nameColumn,
            (o1, o2) -> o1.getName().toLowerCase().compareTo(o2.getName().toLowerCase()));
    table.addColumn(nameColumn, Console.CONSTANTS.common_label_name());
    table.addColumn(classColumn, "Handler class");
    table.setColumnWidth(nameColumn, 40, Style.Unit.PCT);
    table.setColumnWidth(classColumn, 60, Style.Unit.PCT);
    table.addColumnSortHandler(sortHandler);
    table.getColumnSortList().push(nameColumn);

    // tools
    ToolStrip tools = new ToolStrip();
    ToolButton addButton = new ToolButton(Console.CONSTANTS.common_label_add(), event -> onAdd());
    ToolButton removeButton = new ToolButton(Console.CONSTANTS.common_label_delete(), event -> {
        final Property selection = selectionModel.getSelectedObject();
        if (selection != null) {
            Feedback.confirm(Console.CONSTANTS.subsys_ws_remove_handler(),
                    Console.MESSAGES.deleteConfirm("handler class " + selection.getName()),
                    new Feedback.ConfirmationHandler() {
                        @Override
                        public void onConfirmation(boolean isConfirmed) {
                            if (isConfirmed) {
                                circuit.dispatch(
                                        new DeleteHandler(resolvedOperationAddress, selection.getName()));
                            }
                        }
                    });
        }
    });
    addButton.setOperationAddress(operationAddress.getTemplate(), ModelDescriptionConstants.ADD);
    removeButton.setOperationAddress(operationAddress.getTemplate(), ModelDescriptionConstants.REMOVE);
    tools.addToolButtonRight(addButton);
    tools.addToolButtonRight(removeButton);
    panel.add(tools);

    panel.add(table);
    DefaultPager pager = new DefaultPager();
    pager.setDisplay(table);
    panel.add(pager);
    return panel;
}

From source file:org.jboss.as.console.client.teiid.runtime.VDBModelsTab.java

License:Open Source License

private DefaultCellTable getModelTable(ListHandler<Model> sortHandler) {
    ProvidesKey keyProvider = new ProvidesKey<Model>() {
        @Override/*from  w w w  . j a v a2 s.c  o m*/
        public Object getKey(Model item) {
            String key = "";
            if (!item.getSourceMappings().isEmpty()) {
                SourceMapping sm = item.getSourceMappings().get(0);
                key = sm.getSourceName();
            }
            return getVdbName() + "." + getVdbVersion() + "." + item.getName() + "." + key;
        }
    };

    final DefaultCellTable modelsTable = new DefaultCellTable<Model>(5, keyProvider);
    modelsTable.addColumnSortHandler(sortHandler);

    TextColumn<Model> nameColumn = new TextColumn<Model>() {
        @Override
        public String getValue(Model record) {
            return record.getName();
        }
    };
    nameColumn.setSortable(true);
    sortHandler.setComparator(nameColumn, new Comparator<Model>() {
        @Override
        public int compare(Model o1, Model o2) {
            return o1.getName().compareTo(o2.getName());
        }
    });

    TextColumn<Model> modelTypeColumn = new TextColumn<Model>() {
        @Override
        public String getValue(Model record) {
            return record.getModelType();
        }
    };
    modelTypeColumn.setSortable(true);
    sortHandler.setComparator(modelTypeColumn, new Comparator<Model>() {
        @Override
        public int compare(Model o1, Model o2) {
            return o1.getModelType().compareTo(o2.getModelType());
        }
    });

    TextColumn<Model> visibleColumn = new TextColumn<Model>() {
        @Override
        public String getValue(Model record) {
            return String.valueOf(record.isVisible());
        }
    };
    visibleColumn.setSortable(true);
    sortHandler.setComparator(visibleColumn, new Comparator<Model>() {
        @Override
        public int compare(Model o1, Model o2) {
            return o1.isVisible().compareTo(o2.isVisible());
        }
    });

    TextColumn<Model> multiSourceColumn = new TextColumn<Model>() {
        @Override
        public String getValue(Model record) {
            return String.valueOf(isMultiSource(record));
        }
    };

    final TextColumn<Model> sourceNameColumn = new TextColumn<Model>() {
        @Override
        public String getValue(Model record) {
            if (isSource(record)) {
                return record.getSourceMappings().get(0).getSourceName();
            }
            return "";
        }
    };
    sourceNameColumn.setSortable(true);
    sortHandler.setComparator(sourceNameColumn, new Comparator<Model>() {
        @Override
        public int compare(Model o1, Model o2) {
            SourceMapping sm1 = o1.getSourceMappings().get(0);
            SourceMapping sm2 = o2.getSourceMappings().get(0);
            return sm1.getSourceName().compareTo(sm2.getSourceName());
        }
    });

    Column<Model, String> jndiNameColumn = new Column<Model, String>(new EditTextCell()) {
        @Override
        public String getValue(Model record) {
            if (isSource(record)) {
                return record.getSourceMappings().get(0).getJndiName();
            }
            return "";
        }
    };
    jndiNameColumn.setFieldUpdater(new FieldUpdater<Model, String>() {
        public void update(int index, Model model, String value) {
            changeDataSourceName(model, value);
        }
    });
    jndiNameColumn.setSortable(true);
    sortHandler.setComparator(jndiNameColumn, new Comparator<Model>() {
        @Override
        public int compare(Model o1, Model o2) {
            SourceMapping sm1 = o1.getSourceMappings().get(0);
            SourceMapping sm2 = o2.getSourceMappings().get(0);
            return sm1.getJndiName().compareTo(sm2.getJndiName());
        }
    });

    TextColumn<Model> translatorNameColumn = new TextColumn<Model>() {
        @Override
        public String getValue(Model record) {
            if (isSource(record)) {
                return record.getSourceMappings().get(0).getTranslatorName();
            }
            return "";
        }
    };
    translatorNameColumn.setFieldUpdater(new FieldUpdater<Model, String>() {
        public void update(int index, Model model, String value) {
            changeTranslatorName(model, value);
        }
    });
    translatorNameColumn.setSortable(true);
    sortHandler.setComparator(translatorNameColumn, new Comparator<Model>() {
        @Override
        public int compare(Model o1, Model o2) {
            SourceMapping sm1 = o1.getSourceMappings().get(0);
            SourceMapping sm2 = o2.getSourceMappings().get(0);
            return sm1.getTranslatorName().compareTo(sm2.getTranslatorName());
        }
    });

    Column<Model, String> schemaBtn = new Column<Model, String>(new ButtonCell()) {
        @Override
        public String getValue(Model record) {
            return "DDL";
        }
    };
    schemaBtn.setFieldUpdater(new FieldUpdater<Model, String>() {
        @Override
        public void update(int index, Model model, String value) {
            showSchema(model);
        }
    });

    modelsTable.setTitle("Models");
    modelsTable.addColumn(nameColumn, "Name");
    modelsTable.addColumn(modelTypeColumn, "Type");
    modelsTable.addColumn(visibleColumn, "Visible?");
    modelsTable.addColumn(multiSourceColumn, "Multi-Source?");
    modelsTable.addColumn(sourceNameColumn, "Source Name");
    modelsTable.addColumn(translatorNameColumn, "Translator Name");
    modelsTable.addColumn(jndiNameColumn, "Datasource JNDI Name");
    modelsTable.addColumn(schemaBtn, "Schema");

    modelsTable.setSelectionModel(new SingleSelectionModel<Model>(keyProvider));

    modelsTable.getColumnSortList().push(nameColumn);

    return modelsTable;
}

From source file:org.jboss.as.console.client.teiid.runtime.VDBRequestsTab.java

License:Open Source License

private DefaultCellTable getRequestsTable(ListHandler<Request> sortHandler, final boolean sourceTable) {
    ProvidesKey<Request> keyProvider = new ProvidesKey<Request>() {
        @Override/*  w  ww.ja  v  a  2  s. c o  m*/
        public Object getKey(Request item) {
            if (sourceTable) {
                return item.getNodeId();
            }
            return item.getExecutionId();
        }
    };

    final DefaultCellTable table = new DefaultCellTable<Request>(20, keyProvider);
    table.addColumnSortHandler(sortHandler);

    TextColumn<Request> executionIdColumn = new TextColumn<Request>() {
        @Override
        public String getValue(Request record) {
            if (sourceTable) {
                return String.valueOf(record.getNodeId());
            }
            return String.valueOf(record.getExecutionId());
        }
    };
    executionIdColumn.setSortable(true);
    sortHandler.setComparator(executionIdColumn, new Comparator<Request>() {
        @Override
        public int compare(Request o1, Request o2) {
            return o1.getExecutionId().compareTo(o2.getExecutionId());
        }
    });

    TextColumn<Request> sessionIdColumn = new TextColumn<Request>() {
        @Override
        public String getValue(Request record) {
            return String.valueOf(record.getSessionId());
        }
    };
    sessionIdColumn.setSortable(true);
    sortHandler.setComparator(sessionIdColumn, new Comparator<Request>() {
        @Override
        public int compare(Request o1, Request o2) {
            return o1.getSessionId().compareTo(o2.getSessionId());
        }
    });

    Column<Request, Date> timeColumn = new Column<Request, Date>(new DateCell()) {
        @Override
        public Date getValue(Request record) {
            return new Date(record.getStartTime());
        }
    };
    timeColumn.setSortable(true);
    sortHandler.setComparator(timeColumn, new Comparator<Request>() {
        @Override
        public int compare(Request o1, Request o2) {
            return o1.getStartTime().compareTo(o2.getStartTime());
        }
    });

    Column<Request, String> cmdColumn = new Column<Request, String>(new ClickableTextCell()) {
        @Override
        public String getValue(Request record) {
            return record.getCommand();
        }
    };
    sortHandler.setComparator(cmdColumn, new Comparator<Request>() {
        @Override
        public int compare(Request o1, Request o2) {
            return o1.getCommand().compareTo(o2.getCommand());
        }
    });

    Column<Request, String> planBtn = new Column<Request, String>(new ButtonCell()) {
        @Override
        public String getValue(Request record) {
            return "Plan";
        }
    };
    planBtn.setFieldUpdater(new FieldUpdater<Request, String>() {
        @Override
        public void update(int index, Request request, String value) {
            showPlanDialog(request);
        }
    });
    Column<Request, String> cancelBtn = new Column<Request, String>(new ButtonCell()) {
        @Override
        public String getValue(Request record) {
            return "Cancel";
        }
    };
    cancelBtn.setFieldUpdater(new FieldUpdater<Request, String>() {
        @Override
        public void update(int index, Request request, String value) {
            cancelQuery(request);
        }
    });

    table.setSelectionModel(new SingleSelectionModel<Request>(keyProvider));

    table.setTitle("Requests");
    if (sourceTable) {
        table.addColumn(executionIdColumn, "Node Id");
    } else {
        table.addColumn(executionIdColumn, "Execution Id");
    }
    table.addColumn(sessionIdColumn, "Session Id");
    table.addColumn(timeColumn, "Start Time");
    table.addColumn(cmdColumn, "Command");
    if (!sourceTable) {
        table.addColumn(planBtn, "Query Plan");
        table.addColumn(cancelBtn, "Cancel Query");
    }

    // sets initial sorting
    table.getColumnSortList().push(executionIdColumn);
    return table;
}