@Override
  protected void configureTable() {
    ListGridField idField = new ListGridField(FIELD_ID, MSG.common_title_id());

    ListGridField versionField =
        new ListGridField(BundleVersionDataSource.FIELD_VERSION, MSG.common_title_version());
    versionField.setCellFormatter(
        new CellFormatter() {
          public String format(Object o, ListGridRecord listGridRecord, int i, int i1) {
            Integer _bundleId = listGridRecord.getAttributeAsInt("bundleId");
            Integer _bvId = listGridRecord.getAttributeAsInt("id");
            return "<a href=\""
                + LinkManager.getBundleVersionLink(_bundleId, _bvId)
                + "\">"
                + o
                + "</a>";
          }
        });

    ListGridField nameField =
        new ListGridField(BundleVersionDataSource.FIELD_NAME, MSG.common_title_name());

    ListGridField descriptionField =
        new ListGridField(
            BundleVersionDataSource.FIELD_DESCRIPTION, MSG.common_title_description());

    ListGridField fileCountField =
        new ListGridField(BundleVersionDataSource.FIELD_FILECOUNT, MSG.view_bundle_bundleFiles());

    idField.setWidth(50);
    versionField.setWidth("20%");
    nameField.setWidth("25%");
    descriptionField.setWidth("*");
    fileCountField.setWidth("10%");

    setListGridFields(idField, versionField, nameField, descriptionField, fileCountField);

    setListGridDoubleClickHandler(
        new DoubleClickHandler() {
          @Override
          public void onDoubleClick(DoubleClickEvent event) {
            ListGrid listGrid = (ListGrid) event.getSource();
            ListGridRecord[] selectedRows = listGrid.getSelectedRecords();
            if (selectedRows != null && selectedRows.length == 1) {
              String selectedId =
                  selectedRows[0].getAttribute(BundleVersionDataSource.FIELD_BUNDLE_ID);
              String selectedVersionId =
                  selectedRows[0].getAttribute(BundleVersionDataSource.FIELD_ID);
              CoreGUI.goToView(
                  LinkManager.getBundleVersionLink(
                      Integer.valueOf(selectedId), Integer.valueOf(selectedVersionId)));
            }
          }
        });
  }
  @Override
  protected List<DataSourceField> addDataSourceFields() {
    List<DataSourceField> fields = super.addDataSourceFields();

    DataSourceField idDataField = new DataSourceTextField("id", MSG.common_title_id());
    idDataField.setPrimaryKey(true);
    fields.add(idDataField);

    DataSourceTextField nameDataField = new DataSourceTextField("name", MSG.common_title_name());
    nameDataField.setCanEdit(false);
    fields.add(nameDataField);

    DataSourceTextField parentIdField =
        new DataSourceTextField("parentId", MSG.dataSource_ContentRepoTree_field_parentId());
    parentIdField.setForeignKey("id");
    fields.add(parentIdField);

    return fields;
  }
  private void prepareDetailsSection(SectionStack stack, ServerPlugin plugin) {
    DynamicForm form = new DynamicForm();
    form.setMargin(10);
    form.setWidth100();
    form.setWrapItemTitles(false);
    form.setNumCols(4);

    StaticTextItem nameItem = new StaticTextItem("name", MSG.common_title_name());
    nameItem.setValue(plugin.getName());

    StaticTextItem displayNameItem =
        new StaticTextItem("displayName", MSG.common_title_display_name());
    displayNameItem.setValue(plugin.getDisplayName());

    StaticTextItem versionItem = new StaticTextItem("version", MSG.common_title_version());
    versionItem.setValue(plugin.getVersion());

    StaticTextItem md5Item = new StaticTextItem("MD5", "MD5");
    md5Item.setValue(plugin.getMD5());

    StaticTextItem pathItem = new StaticTextItem("path", MSG.common_title_path());
    pathItem.setValue(plugin.getPath());

    StaticTextItem ampsItem =
        new StaticTextItem("ampsVersion", "AMPS " + MSG.common_title_version());
    ampsItem.setValue(plugin.getAmpsVersion());

    StaticTextItem descItem = new StaticTextItem("desc", MSG.common_title_description());
    descItem.setValue(plugin.getDescription());

    StaticTextItem mtimeItem = new StaticTextItem("mtime", MSG.common_title_lastUpdated());
    mtimeItem.setValue(
        TimestampCellFormatter.format(
            Long.valueOf(plugin.getMtime()), TimestampCellFormatter.DATE_TIME_FORMAT_MEDIUM));

    StaticTextItem kindItem = new StaticTextItem("kind", MSG.common_title_kind());
    switch (plugin.getDeployment()) {
      case AGENT:
        kindItem.setValue(MSG.view_admin_plugins_agent());
        break;
      case SERVER:
        kindItem.setValue(MSG.view_admin_plugins_server());
        break;
    }

    CanvasItem enabledItem = new CanvasItem("enabled", MSG.common_title_enabled());
    Img img = new Img(ImageManager.getAvailabilityIcon(plugin.isEnabled()), 16, 16);
    enabledItem.setCanvas(img);

    StaticTextItem typeItem = new StaticTextItem("type", MSG.common_title_type());
    typeItem.setValue(plugin.getType());

    form.setItems(
        displayNameItem,
        nameItem,
        versionItem,
        ampsItem,
        md5Item,
        kindItem,
        descItem,
        pathItem,
        mtimeItem,
        enabledItem,
        typeItem);

    SectionStackSection section = new SectionStackSection(MSG.common_title_details());
    section.setExpanded(true);
    section.setItems(form);

    detailsSection = section;
    ++initSectionCount;

    return;
  }
示例#4
0
  private DynamicForm getServerDetails() {
    final DynamicForm form = new LocatableDynamicForm(extendLocatorId("serverDetails"));
    form.setWidth100();
    form.setExtraSpace(15);
    form.setIsGroup(true);
    form.setGroupTitle(MSG.view_admin_systemSettings_serverDetails());

    final StaticTextItem productName = new StaticTextItem("productname", MSG.common_title_name());
    final StaticTextItem productVersion =
        new StaticTextItem("productversion", MSG.common_title_version());
    final StaticTextItem productBuildNumber =
        new StaticTextItem(
            "productbuild", MSG.view_admin_systemSettings_serverDetails_buildNumber());

    final StaticTextItem serverTimezone =
        new StaticTextItem("timezone", MSG.view_admin_systemSettings_serverDetails_tz());
    final StaticTextItem serverTime =
        new StaticTextItem("localtime", MSG.view_admin_systemSettings_serverDetails_time());
    final StaticTextItem serverInstallDir =
        new StaticTextItem("installdir", MSG.view_admin_systemSettings_serverDetails_installDir());
    final StaticTextItem dbUrl =
        new StaticTextItem("dbUrl", MSG.view_admin_systemSettings_serverDetails_dbUrl());
    final StaticTextItem dbProductName =
        new StaticTextItem("dbProductName", MSG.view_admin_systemSettings_serverDetails_dbName());
    final StaticTextItem dbProductVersion =
        new StaticTextItem(
            "dbProductVersion", MSG.view_admin_systemSettings_serverDetails_dbVersion());
    final StaticTextItem dbDriverName =
        new StaticTextItem(
            "dbDriverName", MSG.view_admin_systemSettings_serverDetails_dbDriverName());
    final StaticTextItem dbDriverVersion =
        new StaticTextItem(
            "dbDriverVersion", MSG.view_admin_systemSettings_serverDetails_dbDriverVersion());
    final StaticTextItem currentMeasRawTable =
        new StaticTextItem(
            "currentMeasRawTable", MSG.view_admin_systemSettings_serverDetails_currentTable());
    final StaticTextItem nextMeasTableRotation =
        new StaticTextItem(
            "nextMeasTableRotation", MSG.view_admin_systemSettings_serverDetails_nextRotation());

    productName.setWrapTitle(false);
    productVersion.setWrapTitle(false);
    productBuildNumber.setWrapTitle(false);
    serverTimezone.setWrapTitle(false);
    serverTime.setWrapTitle(false);
    serverInstallDir.setWrapTitle(false);
    dbUrl.setWrapTitle(false);
    dbProductName.setWrapTitle(false);
    dbProductVersion.setWrapTitle(false);
    dbDriverName.setWrapTitle(false);
    dbDriverVersion.setWrapTitle(false);
    currentMeasRawTable.setWrapTitle(false);
    nextMeasTableRotation.setWrapTitle(false);

    form.setItems(
        productName,
        productVersion,
        productBuildNumber,
        serverTimezone,
        serverTime,
        serverInstallDir,
        dbUrl,
        dbProductName,
        dbProductVersion,
        dbDriverName,
        dbDriverVersion,
        currentMeasRawTable,
        nextMeasTableRotation);

    GWTServiceLookup.getSystemService()
        .getServerDetails(
            new AsyncCallback<ServerDetails>() {

              @Override
              public void onSuccess(ServerDetails result) {
                ProductInfo productInfo = result.getProductInfo();
                form.setValue(productName.getName(), productInfo.getName());
                form.setValue(productVersion.getName(), productInfo.getVersion());
                form.setValue(productBuildNumber.getName(), productInfo.getBuildNumber());

                Map<Detail, String> details = result.getDetails();
                form.setValue(
                    serverTimezone.getName(), details.get(ServerDetails.Detail.SERVER_TIMEZONE));
                form.setValue(
                    serverTime.getName(), details.get(ServerDetails.Detail.SERVER_LOCAL_TIME));
                form.setValue(
                    serverInstallDir.getName(),
                    details.get(ServerDetails.Detail.SERVER_INSTALL_DIR));
                form.setValue(
                    dbUrl.getName(), details.get(ServerDetails.Detail.DATABASE_CONNECTION_URL));
                form.setValue(
                    dbProductName.getName(),
                    details.get(ServerDetails.Detail.DATABASE_PRODUCT_NAME));
                form.setValue(
                    dbProductVersion.getName(),
                    details.get(ServerDetails.Detail.DATABASE_PRODUCT_VERSION));
                form.setValue(
                    dbDriverName.getName(), details.get(ServerDetails.Detail.DATABASE_DRIVER_NAME));
                form.setValue(
                    dbDriverVersion.getName(),
                    details.get(ServerDetails.Detail.DATABASE_DRIVER_VERSION));
                form.setValue(
                    currentMeasRawTable.getName(),
                    details.get(ServerDetails.Detail.CURRENT_MEASUREMENT_TABLE));
                form.setValue(
                    nextMeasTableRotation.getName(),
                    details.get(ServerDetails.Detail.NEXT_MEASUREMENT_TABLE_ROTATION));
              }

              @Override
              public void onFailure(Throwable caught) {
                CoreGUI.getErrorHandler()
                    .handleError(MSG.view_admin_systemSettings_cannotLoadServerDetails(), caught);
              }
            });

    return form;
  }