Search in sources :

Example 6 with Table

use of org.netxms.client.Table in project netxms by netxms.

the class TableLastValues method refresh.

/**
 * Refresh view
 */
private void refresh() {
    final Thread thread = new Thread() {

        @Override
        public void run() {
            try {
                final Table table = service.getSession().getTableLastValues(nodeId, dciId);
                runOnUiThread(new Runnable() {

                    @Override
                    public void run() {
                        showTable(table);
                    }
                });
            } catch (Exception e) {
                Log.e(TAG, "Exception in worker thread", e);
            }
        }
    };
    thread.setDaemon(true);
    thread.start();
}
Also used : Table(org.netxms.client.Table)

Example 7 with Table

use of org.netxms.client.Table in project netxms by netxms.

the class TableBarChartElement method refresh.

/* (non-Javadoc)
	 * @see org.netxms.ui.android.main.dashboards.elements.AbstractDashboardElement#refresh()
	 */
@Override
public void refresh() {
    try {
        final Table data = service.getSession().getTableLastValues(config.getNodeId(), config.getDciId());
        post(new Runnable() {

            @Override
            public void run() {
                // FIXME
                String instanceColumn = (config.getInstanceColumn() != null) ? config.getInstanceColumn() : "";
                if (instanceColumn == null)
                    return;
                int icIndex = data.getColumnIndex(instanceColumn);
                int dcIndex = data.getColumnIndex(config.getDataColumn());
                if ((icIndex == -1) || (dcIndex == -1))
                    // at least one column is missing
                    return;
                XYMultipleSeriesDataset dataset = chart.getDataset();
                for (int i = 0; i < data.getRowCount(); i++) {
                    String instance = data.getCell(i, icIndex).getValue();
                    if (instance == null)
                        continue;
                    double value;
                    try {
                        value = Double.parseDouble(data.getCell(i, dcIndex).getValue());
                    } catch (NumberFormatException e) {
                        value = 0.0;
                    }
                    Integer index = instanceMap.get(instance);
                    if (config.isIgnoreZeroValues() && (value == 0) && (index == null))
                        continue;
                    XYSeries series = new XYSeries(instance);
                    if (index != null) {
                        dataset.removeSeries(index);
                    } else {
                        index = dataset.getSeriesCount();
                        instanceMap.put(instance, index);
                    }
                    for (int j = 0; j < instanceMap.size(); j++) {
                        series.add(j + 1, (index == j) ? value : 0);
                    }
                    dataset.addSeries(index, series);
                }
                renderer.setXAxisMax(dataset.getSeriesCount() + 0.5);
                chartView.repaint();
            }
        });
    } catch (Exception e) {
        Log.e("nxclient/BarChartElement", "Exception while reading data from server", e);
    }
}
Also used : XYSeries(org.achartengine.model.XYSeries) Table(org.netxms.client.Table) XYMultipleSeriesDataset(org.achartengine.model.XYMultipleSeriesDataset)

Example 8 with Table

use of org.netxms.client.Table in project netxms by netxms.

the class TablePieChartElement method refresh.

/* (non-Javadoc)
	 * @see org.netxms.ui.android.main.dashboards.elements.AbstractDashboardElement#refresh()
	 */
@Override
public void refresh() {
    try {
        final Table data = service.getSession().getTableLastValues(config.getNodeId(), config.getDciId());
        post(new Runnable() {

            @Override
            public void run() {
                // FIXME
                String instanceColumn = (config.getInstanceColumn() != null) ? config.getInstanceColumn() : "";
                if (instanceColumn == null)
                    return;
                int icIndex = data.getColumnIndex(instanceColumn);
                int dcIndex = data.getColumnIndex(config.getDataColumn());
                if ((icIndex == -1) || (dcIndex == -1))
                    // at least one column is missing
                    return;
                for (int i = 0; i < data.getRowCount(); i++) {
                    String instance = data.getCell(i, icIndex).getValue();
                    if (instance == null)
                        continue;
                    double value;
                    try {
                        value = Double.parseDouble(data.getCell(i, dcIndex).getValue());
                    } catch (NumberFormatException e) {
                        value = 0.0;
                    }
                    Integer index = instanceMap.get(instance);
                    if (config.isIgnoreZeroValues() && (value == 0) && (index == null))
                        continue;
                    if (index != null) {
                        dataset.set(index, instance, value);
                    } else {
                        index = dataset.getItemCount();
                        if (index < MAX_CHART_ITEMS) {
                            instanceMap.put(instance, index);
                            dataset.add(instance, value);
                        }
                    }
                }
                removeAllViews();
                addView(ChartFactory.getPieChartView(getContext(), dataset, buildRenderer(dataset.getItemCount())));
            }
        });
    } catch (Exception e) {
        Log.e("nxclient/BarChartElement", "Exception while reading data from server", e);
    }
}
Also used : Table(org.netxms.client.Table)

Example 9 with Table

use of org.netxms.client.Table in project netxms by netxms.

the class LogViewer method refreshData.

/**
 * Refresh existing dataset
 */
private void refreshData() {
    new ConsoleJob(Messages.get().LogViewer_RefreshJob, this, Activator.PLUGIN_ID, JOB_FAMILY) {

        @Override
        protected String getErrorMessage() {
            return Messages.get().LogViewer_RefreshError + logName;
        }

        @Override
        protected void runInternal(IProgressMonitor monitor) throws Exception {
            final Table data = logHandle.retrieveData(0, resultSet.getRowCount(), true);
            runInUIThread(new Runnable() {

                @Override
                public void run() {
                    resultSet = data;
                    viewer.setInput(resultSet.getAllRows());
                }
            });
        }
    }.start();
}
Also used : IProgressMonitor(org.eclipse.core.runtime.IProgressMonitor) Table(org.netxms.client.Table) ConsoleJob(org.netxms.ui.eclipse.jobs.ConsoleJob) PartInitException(org.eclipse.ui.PartInitException)

Example 10 with Table

use of org.netxms.client.Table in project netxms by netxms.

the class LogViewer method doQuery.

/**
 * Prepare filter and execute query on server
 */
private void doQuery() {
    actionRefresh.setEnabled(false);
    actionGetMoreData.setEnabled(false);
    filter = filterBuilder.createFilter();
    new ConsoleJob(Messages.get().LogViewer_QueryJob, this, Activator.PLUGIN_ID, JOB_FAMILY) {

        @Override
        protected String getErrorMessage() {
            return Messages.get().LogViewer_QueryJobError + logName;
        }

        @Override
        protected void runInternal(IProgressMonitor monitor) throws Exception {
            logHandle.query(filter);
            final Table data = logHandle.retrieveData(0, PAGE_SIZE);
            runInUIThread(new Runnable() {

                @Override
                public void run() {
                    resultSet = data;
                    viewer.setInput(resultSet.getAllRows());
                    noData = (resultSet.getRowCount() < PAGE_SIZE);
                    actionGetMoreData.setEnabled(!noData);
                    actionRefresh.setEnabled(true);
                }
            });
        }
    }.start();
}
Also used : IProgressMonitor(org.eclipse.core.runtime.IProgressMonitor) Table(org.netxms.client.Table) ConsoleJob(org.netxms.ui.eclipse.jobs.ConsoleJob) PartInitException(org.eclipse.ui.PartInitException)

Aggregations

Table (org.netxms.client.Table)14 IProgressMonitor (org.eclipse.core.runtime.IProgressMonitor)10 ConsoleJob (org.netxms.ui.eclipse.jobs.ConsoleJob)10 PartInitException (org.eclipse.ui.PartInitException)8 NXCSession (org.netxms.client.NXCSession)5 ArrayList (java.util.ArrayList)2 Point (org.eclipse.swt.graphics.Point)2 TableRow (org.netxms.client.TableRow)2 AbstractObject (org.netxms.client.objects.AbstractObject)2 ByteArrayInputStream (java.io.ByteArrayInputStream)1 Date (java.util.Date)1 XYMultipleSeriesDataset (org.achartengine.model.XYMultipleSeriesDataset)1 XYSeries (org.achartengine.model.XYSeries)1 IStructuredSelection (org.eclipse.jface.viewers.IStructuredSelection)1 CLabel (org.eclipse.swt.custom.CLabel)1 Image (org.eclipse.swt.graphics.Image)1 ImageData (org.eclipse.swt.graphics.ImageData)1 FormAttachment (org.eclipse.swt.layout.FormAttachment)1 FormData (org.eclipse.swt.layout.FormData)1 Widget (org.eclipse.swt.widgets.Widget)1