Package com.googlecode.gwt.charts.client

Source Code of com.googlecode.gwt.charts.client.DataSource

/*
* Copyright 2012 Rui Afonso
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with
* the License. You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on
* an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the
* specific language governing permissions and limitations under the License.
*/
package com.googlecode.gwt.charts.client;

import com.google.gwt.core.client.JavaScriptObject;
import com.google.gwt.core.client.JsArray;
import com.google.gwt.core.client.JsArrayBoolean;
import com.google.gwt.core.client.JsArrayNumber;
import com.google.gwt.core.client.JsArrayString;
import com.google.gwt.core.client.JsDate;

import com.googlecode.gwt.charts.client.util.DateHelper;

import java.util.Date;

/**
* This class implements the common methods of DataTable and DataView.
*
* @see <a href="http://code.google.com/apis/visualization/documentation/reference.html#DataTable"> DataTable API
*      Reference</a>
*/
public class DataSource extends JavaScriptObject {

  protected DataSource() {
  }

  /**
   * Returns the identifier of a given column specified by the column index in the underlying table. For data tables
   * that are retrieved by queries, the column identifier is set by the data source, and can be used to refer to
   * columns when using the query language.
   *
   * @param columnIndex the column position
   * @return the identifier of the given column index
   */
  public final native String getColumnId(int columnIndex) /*-{
    return this.getColumnId(columnIndex);
  }-*/;

  /**
   * Returns the label of a given column specified by the column index in the underlying table. The column label is
   * typically displayed as part of the visualization. For example the column label can be displayed as a column
   * header in a table, or as the legend label in a pie chart. For data tables that are retrieved by queries, the
   * column label is set by the data source, or by the label clause of the query language.
   *
   * @param columnIndex the column position
   * @return the label of the given column index
   */
  public final native String getColumnLabel(int columnIndex) /*-{
    return this.getColumnLabel(columnIndex);
  }-*/;

  /**
   * Returns the formatting pattern used to format the values of the specified column. columnIndex should be a number
   * greater than or equal to zero, and less than the number of columns as returned by the getNumberOfColumns()
   * method. For data tables that are retrieved by queries, The column pattern is set by the data source, or by the
   * format clause of the query language. An example of a pattern is '#,##0.00'. For more on patterns see the query
   * language reference.
   *
   * @param columnIndex the column position
   * @return the pattern of the given column index
   */
  public final native String getColumnPattern(int columnIndex) /*-{
    return this.getColumnPattern(columnIndex);
  }-*/;

  /**
   * Returns a map of all properties for the specified column. Note that the properties object is returned by
   * reference, so changing values in the retrieved object changes them in the DataTable. columnIndex is the numeric
   * index of the column to retrieve properties for.
   *
   * @param columnIndex the column position
   * @return the properties of the given column index
   */
  public final native Properties getColumnProperties(int columnIndex) /*-{
    return this.getColumnProperties(columnIndex);
  }-*/;

  /**
   * Returns the value of a named property, or null if no such property is set for the specified column. The return
   * type varies, depending on the property. columnIndex should be a number greater than or equal to zero, and less
   * than the number of columns as returned by the getNumberOfColumns() method. name is the property name, as a
   * string.
   *
   * @param columnIndex the column position
   * @param propertyName a property name
   * @return the property value of the given column and property name
   */
  // FIXME value type can vary
  public final native String getColumnProperty(int columnIndex, String propertyName) /*-{
    return this.getColumnProperty(columnIndex, propertyName);
  }-*/;

  /**
   * Returns the minimal and maximal values of values in a specified column. The returned object has properties min
   * and max. If the range has no values, min and max will contain null. columnIndex should be a number greater than
   * or equal to zero, and less than the number of columns as returned by the getNumberOfColumns() method.
   *
   * @param columnIndex the column position
   * @return an object with minimal and maximal values of values in the specified column
   */
  public final native ColumnRange getColumnRange(int columnIndex) /*-{
    return this.getColumnRange(columnIndex);
  }-*/;

  /**
   * Returns the role of the specified column.
   *
   * @param columnIndex the column position
   * @return the role of the specified column
   */
  public final native RoleType getColumnRole(int columnIndex) /*-{
    return @com.googlecode.gwt.charts.client.RoleType::findByName(Ljava/lang/String;) (this.getColumnRole(columnIndex));
  }-*/;

  /**
   * Returns the type of a given column specified by the column index. columnIndex should be a number greater than or
   * equal to zero, and less than the number of columns as returned by the getNumberOfColumns() method.
   *
   * @param columnIndex the column position
   * @return the type of the specified column
   */
  public final native ColumnType getColumnType(int columnIndex) /*-{
    return @com.googlecode.gwt.charts.client.ColumnType::findByName(Ljava/lang/String;) (this.getColumnType(columnIndex));
  }-*/;

  /**
   * Returns the unique values in a certain column, in ascending order.
   *
   * @param columnIndex should be a number greater than or equal to zero, and less than the number of columns as
   *        returned by the getNumberOfColumns() method.
   * @return the unique values in a certain column, in ascending order.
   */
  public final native JsArrayBoolean getDistinctValuesBoolean(int columnIndex) /*-{
    return this.getDistinctValues(columnIndex);
  }-*/;

  /**
   * Returns the unique values in a certain column, in ascending order.
   *
   * @param columnIndex should be a number greater than or equal to zero, and less than the number of columns as
   *        returned by the getNumberOfColumns() method.
   * @return the unique values in a certain column, in ascending order.
   */
  public final native JsArray<JsDate> getDistinctValuesDate(int columnIndex) /*-{
    return this.getDistinctValues(columnIndex);
  }-*/;

  /**
   * Returns the unique values in a certain column, in ascending order.
   *
   * @param columnIndex should be a number greater than or equal to zero, and less than the number of columns as
   *        returned by the getNumberOfColumns() method.
   * @return the unique values in a certain column, in ascending order.
   */
  public final native JsArray<JavaScriptObject> getDistinctValuesObject(int columnIndex) /*-{
    return this.getDistinctValues(columnIndex);
  }-*/;

  /**
   * Returns the unique values in a certain column, in ascending order.
   *
   * @param columnIndex should be a number greater than or equal to zero, and less than the number of columns as
   *        returned by the getNumberOfColumns() method.
   * @return the unique values in a certain column, in ascending order.
   */
  public final native JsArrayNumber getDistinctValuesNumber(int columnIndex) /*-{
    return this.getDistinctValues(columnIndex);
  }-*/;

  /**
   * Returns the unique values in a certain column, in ascending order.
   *
   * @param columnIndex should be a number greater than or equal to zero, and less than the number of columns as
   *        returned by the getNumberOfColumns() method.
   * @return the unique values in a certain column, in ascending order.
   */
  public final native JsArrayString getDistinctValuesString(int columnIndex) /*-{
    return this.getDistinctValues(columnIndex);
  }-*/;

  /**
   * Returns the unique values in a certain column, in ascending order.
   *
   * @param columnIndex should be a number greater than or equal to zero, and less than the number of columns as
   *        returned by the getNumberOfColumns() method.
   * @return the unique values in a certain column, in ascending order.
   */
  public final native JsArray<TimeOfDay> getDistinctValuesTimeOfDay(int columnIndex) /*-{
    return this.getDistinctValues(columnIndex);
  }-*/;

  /**
   * Returns the row indexes for rows that match all of the given filters. The indexes are returned in ascending
   * order. The output of this method can be used as input to DataView.setRows() to change the displayed set of rows
   * in a visualization.
   *
   * @param filters An array of objects that describe an acceptable cell value.
   * @return the row indexes for rows that match all of the given filters.
   */
  public final native JsArrayNumber getFilteredRows(JsArray<RowFilter> filters) /*-{
    return this.getFilteredRows(filters);
  }-*/;

  /**
   * Returns the formatted value of the cell at the given row and column indexes.
   *
   * @param rowIndex should be a number greater than or equal to zero, and less than the number of rows
   * @param columnIndex should be a number greater than or equal to zero, and less than the number of columns
   * @return the formatted value
   */
  public final native String getFormattedValue(int rowIndex, int columnIndex) /*-{
    return this.getFormattedValue(rowIndex, columnIndex);
  }-*/;

  /**
   * Returns the number of columns in the table.
   *
   * @return number of columns in the table
   */
  public final native int getNumberOfColumns() /*-{
    return this.getNumberOfColumns();
  }-*/;

  /**
   * Returns the number of rows in the table.
   *
   * @return number of rows in the table
   */
  public final native int getNumberOfRows() /*-{
    return this.getNumberOfRows();
  }-*/;

  /**
   * Returns a map of all the properties for the specified cell. Note that the properties object is returned by
   * reference, so changing values in the retrieved object changes them in the DataSource.
   *
   * @param rowIndex is the cell's row index.
   * @param columnIndex is the cell's column index.
   * @return a map of all the properties for the specified cell
   */
  public final native Properties getProperties(int rowIndex, int columnIndex) /*-{
    return this.getProperties(rowIndex, columnIndex);
  }-*/;

  /**
   * Returns the value of a named property, or null if no such property is set for the specified cell.
   *
   * @param rowIndex is the cell's row index.
   * @param columnIndex is the cell's column index.
   * @param name is a string with the property name.
   * @return the value of a named property or null
   */
  public final native boolean getPropertyBoolean(int rowIndex, int columnIndex, String name) /*-{
    return this.getProperty(rowIndex, columnIndex, name);
  }-*/;

  /**
   * Returns the value of a named property, or null if no such property is set for the specified cell.
   *
   * @param rowIndex is the cell's row index.
   * @param columnIndex is the cell's column index.
   * @param name is a string with the property name.
   * @return the value of a named property or null
   */
  public final Date getPropertyDate(int rowIndex, int columnIndex, String name) {
    JsDate jsDate = getPropertyObject(rowIndex, columnIndex, name).cast();
    return DateHelper.getDate(jsDate);
  }

  /**
   * Returns the value of a named property, or null if no such property is set for the specified cell.
   *
   * @param rowIndex is the cell's row index.
   * @param columnIndex is the cell's column index.
   * @param name is a string with the property name.
   * @return the value of a named property or null
   */
  public final native double getPropertyNumber(int rowIndex, int columnIndex, String name) /*-{
    return this.getProperty(rowIndex, columnIndex, name);
  }-*/;

  /**
   * Returns the value of a named property, or null if no such property is set for the specified cell.
   *
   * @param rowIndex is the cell's row index.
   * @param columnIndex is the cell's column index.
   * @param name is a string with the property name.
   * @return the value of a named property or null
   */
  public final native JavaScriptObject getPropertyObject(int rowIndex, int columnIndex, String name) /*-{
    return this.getProperty(rowIndex, columnIndex, name);
  }-*/;

  /**
   * Returns the value of a named property, or null if no such property is set for the specified cell.
   *
   * @param rowIndex is the cell's row index.
   * @param columnIndex is the cell's column index.
   * @param name is a string with the property name.
   * @return the value of a named property or null
   */
  public final native String getPropertyString(int rowIndex, int columnIndex, String name) /*-{
    return this.getProperty(rowIndex, columnIndex, name);
  }-*/;

  /**
   * Returns a map of all properties for the specified row. Note that the properties object is returned by reference,
   * so changing values in the retrieved object changes them in the DataTable.
   *
   * @param rowIndex is the index of the row to retrieve properties for.
   * @return a map of all properties for the specified row
   */
  public final native Properties getRowProperties(int rowIndex) /*-{
    return this.getRowProperties(rowIndex);
  }-*/;

  /**
   * Returns the value of a named property, or null if no such property is set for the specified row.
   *
   * @param rowIndex is the cell's row index.
   * @param name is a string with the property name.
   * @return the value of a named property or null
   */
  public final native boolean getRowPropertyBoolean(int rowIndex, String name) /*-{
    return this.getRowProperty(rowIndex, name);
  }-*/;

  /**
   * Returns the value of a named property, or null if no such property is set for the specified row.
   *
   * @param rowIndex is the cell's row index.
   * @param name is a string with the property name.
   * @return the value of a named property or null
   */
  public final Date getRowPropertyDate(int rowIndex, String name) {
    JsDate jsDate = getRowPropertyObject(rowIndex, name).cast();
    return DateHelper.getDate(jsDate);
  }

  /**
   * Returns the value of a named property, or null if no such property is set for the specified row.
   *
   * @param rowIndex is the cell's row index.
   * @param name is a string with the property name.
   * @return the value of a named property or null
   */
  public final native double getRowPropertyNumber(int rowIndex, String name) /*-{
    return this.getRowProperty(rowIndex, name);
  }-*/;

  /**
   * Returns the value of a named property, or null if no such property is set for the specified row.
   *
   * @param rowIndex is the cell's row index.
   * @param name is a string with the property name.
   * @return the value of a named property or null
   */
  public final native JavaScriptObject getRowPropertyObject(int rowIndex, String name) /*-{
    return this.getRowProperty(rowIndex, name);
  }-*/;

  /**
   * Returns the value of a named property, or null if no such property is set for the specified row.
   *
   * @param rowIndex is the cell's row index.
   * @param name is a string with the property name.
   * @return the value of a named property or null
   */
  public final native String getRowPropertyString(int rowIndex, String name) /*-{
    return this.getRowProperty(rowIndex, name);
  }-*/;

  /**
   * Returns a map of all properties for the table.
   *
   * @return a map of all properties
   */
  public final native Properties getTableProperties() /*-{
    return this.getTableProperties();
  }-*/;

  /**
   * Returns the value of a named property, or null if no such property is set for the table.
   *
   * @param name is a string with the property name.
   * @return the value of a named property or null
   */
  public final native boolean getTablePropertyBoolean(String name) /*-{
    return this.getTableProperty(name);
  }-*/;

  /**
   * Returns the value of a named property, or null if no such property is set for the table.
   *
   * @param name is a string with the property name.
   * @return the value of a named property or null
   */
  public final Date getTablePropertyDate(String name) {
    JsDate jsDate = getTablePropertyObject(name).cast();
    return DateHelper.getDate(jsDate);
  }

  /**
   * Returns the value of a named property, or null if no such property is set for the table.
   *
   * @param name is a string with the property name.
   * @return the value of a named property or null
   */
  public final native double getTablePropertyNumber(String name) /*-{
    return this.getTableProperty(name);
  }-*/;

  /**
   * Returns the value of a named property, or null if no such property is set for the table.
   *
   * @param name is a string with the property name.
   * @return the value of a named property or null
   */
  public final native JavaScriptObject getTablePropertyObject(String name) /*-{
    return this.getTableProperty(name);
  }-*/;

  /**
   * Returns the value of a named property, or null if no such property is set for the table.
   *
   * @param name is a string with the property name.
   * @return the value of a named property or null
   */
  public final native String getTablePropertyString(String name) /*-{
    return this.getTableProperty(name);
  }-*/;

  /**
   * Returns the value of the cell at the given row and column indexes.
   * @param rowIndex should be a number greater than or equal to zero, and less than the number of rows
   * @param columnIndex should be a number greater than or equal to zero, and less than the number of columns
   * @return value of the specified cell
   */
  public final native boolean getValueBoolean(int rowIndex, int columnIndex) /*-{
    return this.getValue(rowIndex, columnIndex);
  }-*/;

  /**
   * Returns the value of the cell at the given row and column indexes.
   * @param rowIndex should be a number greater than or equal to zero, and less than the number of rows
   * @param columnIndex should be a number greater than or equal to zero, and less than the number of columns
   * @return value of the specified cell
   */
  public final Date getValueDate(int rowIndex, int columnIndex) {
    JsDate jsDate = getValueObject(rowIndex, columnIndex).cast();
    return DateHelper.getDate(jsDate);
  }

  /**
   * Returns the value of the cell at the given row and column indexes.
   * @param rowIndex should be a number greater than or equal to zero, and less than the number of rows
   * @param columnIndex should be a number greater than or equal to zero, and less than the number of columns
   * @return value of the specified cell
   */
  public final native double getValueNumber(int rowIndex, int columnIndex) /*-{
    return this.getValue(rowIndex, columnIndex);
  }-*/;

  /**
   * Returns the value of the cell at the given row and column indexes.
   * @param rowIndex should be a number greater than or equal to zero, and less than the number of rows
   * @param columnIndex should be a number greater than or equal to zero, and less than the number of columns
   * @return value of the specified cell
   */
  public final native JavaScriptObject getValueObject(int rowIndex, int columnIndex) /*-{
    return this.getValue(rowIndex, columnIndex);
  }-*/;

  /**
   * Returns the value of the cell at the given row and column indexes.
   * @param rowIndex should be a number greater than or equal to zero, and less than the number of rows
   * @param columnIndex should be a number greater than or equal to zero, and less than the number of columns
   * @return value of the specified cell
   */
  public final native String getValueString(int rowIndex, int columnIndex) /*-{
    return this.getValue(rowIndex, columnIndex);
  }-*/;

  /**
   * Returns the value of the cell at the given row and column indexes.
   * @param rowIndex should be a number greater than or equal to zero, and less than the number of rows
   * @param columnIndex should be a number greater than or equal to zero, and less than the number of columns
   * @return value of the specified cell
   */
  public final native TimeOfDay getValueTimeOfDay(int rowIndex, int columnIndex) /*-{
    return this.getValue(rowIndex, columnIndex);
  }-*/;

  /**
   * Checks if the value of the cell at the given row and column indexes is null
   * @param rowIndex should be a number greater than or equal to zero, and less than the number of rows
   * @param columnIndex should be a number greater than or equal to zero, and less than the number of columns
   * @return true if null, false otherwise
   */
  public final native boolean isValueNull(int rowIndex, int columnIndex) /*-{
    return this.getValue(rowIndex, columnIndex) == null;
  }-*/;

  /**
   * Returns a JSON representation of the DataTable that can be passed into the DataTable constructor.
   * @return a JSON representation of the DataTable
   */
  public final native String toJSON() /*-{
    return this.toJSON();
  }-*/;
}
 
TOP

Related Classes of com.googlecode.gwt.charts.client.DataSource

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.