From 3ffb9f8523c07ea5fbdcbac9ac080561d58cfebc Mon Sep 17 00:00:00 2001 From: Giancarlo Panichi Date: Mon, 22 Nov 2021 18:09:50 +0100 Subject: [PATCH] Refs #21354: Improve accounting manager portlet by new persistence Updated portlet behavior --- .../charts/job/JobChartContextPanel.java | 1003 ---------------- .../service/ServiceChartContextPanel.java | 1010 ----------------- .../storage/StorageChartContextPanel.java | 1007 ---------------- .../properties/GenresDataPropertiesCombo.java | 24 - .../command/AccountingCommandContext.java | 126 -- .../query/AccountingQueryContext.java | 71 -- .../response/SeriesResponse4JobContext.java | 91 -- .../SeriesResponse4PortletContext.java | 89 -- .../SeriesResponse4ServiceContext.java | 92 -- .../SeriesResponse4StorageContext.java | 85 -- .../response/SeriesResponse4TaskContext.java | 89 -- .../shared/data/AccountingFilterContext.java | 58 - .../shared/data/ScopeData.java | 46 - .../shared/data/ScopesInfo.java | 39 - .../data/response/job/SeriesJobContext.java | 57 - .../response/job/SeriesJobDataContext.java | 50 - .../portlet/SeriesPortletContext.java | 57 - .../portlet/SeriesPortletDataContext.java | 51 - .../service/SeriesServiceContext.java | 58 - .../service/SeriesServiceDataContext.java | 51 - .../storage/SeriesStorageContext.java | 59 - .../storage/SeriesStorageDataContext.java | 51 - .../data/response/task/SeriesTaskContext.java | 58 - .../response/task/SeriesTaskDataContext.java | 51 - 24 files changed, 4373 deletions(-) delete mode 100644 src/main/java/org/gcube/portlets/admin/accountingmanager/client/maindata/charts/job/JobChartContextPanel.java delete mode 100644 src/main/java/org/gcube/portlets/admin/accountingmanager/client/maindata/charts/service/ServiceChartContextPanel.java delete mode 100644 src/main/java/org/gcube/portlets/admin/accountingmanager/client/maindata/charts/storage/StorageChartContextPanel.java delete mode 100644 src/main/java/org/gcube/portlets/admin/accountingmanager/client/properties/GenresDataPropertiesCombo.java delete mode 100644 src/main/java/org/gcube/portlets/admin/accountingmanager/server/amservice/command/AccountingCommandContext.java delete mode 100644 src/main/java/org/gcube/portlets/admin/accountingmanager/server/amservice/query/AccountingQueryContext.java delete mode 100644 src/main/java/org/gcube/portlets/admin/accountingmanager/server/amservice/response/SeriesResponse4JobContext.java delete mode 100644 src/main/java/org/gcube/portlets/admin/accountingmanager/server/amservice/response/SeriesResponse4PortletContext.java delete mode 100644 src/main/java/org/gcube/portlets/admin/accountingmanager/server/amservice/response/SeriesResponse4ServiceContext.java delete mode 100644 src/main/java/org/gcube/portlets/admin/accountingmanager/server/amservice/response/SeriesResponse4StorageContext.java delete mode 100644 src/main/java/org/gcube/portlets/admin/accountingmanager/server/amservice/response/SeriesResponse4TaskContext.java delete mode 100644 src/main/java/org/gcube/portlets/admin/accountingmanager/shared/data/AccountingFilterContext.java delete mode 100644 src/main/java/org/gcube/portlets/admin/accountingmanager/shared/data/ScopeData.java delete mode 100644 src/main/java/org/gcube/portlets/admin/accountingmanager/shared/data/ScopesInfo.java delete mode 100644 src/main/java/org/gcube/portlets/admin/accountingmanager/shared/data/response/job/SeriesJobContext.java delete mode 100644 src/main/java/org/gcube/portlets/admin/accountingmanager/shared/data/response/job/SeriesJobDataContext.java delete mode 100644 src/main/java/org/gcube/portlets/admin/accountingmanager/shared/data/response/portlet/SeriesPortletContext.java delete mode 100644 src/main/java/org/gcube/portlets/admin/accountingmanager/shared/data/response/portlet/SeriesPortletDataContext.java delete mode 100644 src/main/java/org/gcube/portlets/admin/accountingmanager/shared/data/response/service/SeriesServiceContext.java delete mode 100644 src/main/java/org/gcube/portlets/admin/accountingmanager/shared/data/response/service/SeriesServiceDataContext.java delete mode 100644 src/main/java/org/gcube/portlets/admin/accountingmanager/shared/data/response/storage/SeriesStorageContext.java delete mode 100644 src/main/java/org/gcube/portlets/admin/accountingmanager/shared/data/response/storage/SeriesStorageDataContext.java delete mode 100644 src/main/java/org/gcube/portlets/admin/accountingmanager/shared/data/response/task/SeriesTaskContext.java delete mode 100644 src/main/java/org/gcube/portlets/admin/accountingmanager/shared/data/response/task/SeriesTaskDataContext.java diff --git a/src/main/java/org/gcube/portlets/admin/accountingmanager/client/maindata/charts/job/JobChartContextPanel.java b/src/main/java/org/gcube/portlets/admin/accountingmanager/client/maindata/charts/job/JobChartContextPanel.java deleted file mode 100644 index 0ea1338..0000000 --- a/src/main/java/org/gcube/portlets/admin/accountingmanager/client/maindata/charts/job/JobChartContextPanel.java +++ /dev/null @@ -1,1003 +0,0 @@ -package org.gcube.portlets.admin.accountingmanager.client.maindata.charts.job; - -import java.util.ArrayList; -import java.util.Date; - -import org.gcube.portlets.admin.accountingmanager.client.event.ExportRequestEvent; -import org.gcube.portlets.admin.accountingmanager.client.maindata.charts.utils.ChartDateTimeData; -import org.gcube.portlets.admin.accountingmanager.client.maindata.charts.utils.ChartTimeMeasure; -import org.gcube.portlets.admin.accountingmanager.client.maindata.charts.utils.DownloadConstants; -import org.gcube.portlets.admin.accountingmanager.client.maindata.charts.utils.JobChartMeasure; -import org.gcube.portlets.admin.accountingmanager.client.maindata.charts.utils.TimeUnitMeasure; -import org.gcube.portlets.admin.accountingmanager.client.resource.AccountingManagerResources; -import org.gcube.portlets.admin.accountingmanager.client.state.AccountingClientStateData; -import org.gcube.portlets.admin.accountingmanager.shared.data.AccountingPeriodMode; -import org.gcube.portlets.admin.accountingmanager.shared.data.response.SeriesJob; -import org.gcube.portlets.admin.accountingmanager.shared.data.response.job.SeriesJobContext; -import org.gcube.portlets.admin.accountingmanager.shared.data.response.job.SeriesJobData; -import org.gcube.portlets.admin.accountingmanager.shared.export.ExportType; - -import com.allen_sauer.gwt.log.client.Log; -import com.github.highcharts4gwt.client.view.widget.HighchartsLayoutPanel; -import com.github.highcharts4gwt.model.array.api.Array; -import com.github.highcharts4gwt.model.array.api.ArrayNumber; -import com.github.highcharts4gwt.model.array.api.ArrayString; -import com.github.highcharts4gwt.model.factory.api.HighchartsOptionFactory; -import com.github.highcharts4gwt.model.factory.jso.JsoHighchartsOptionFactory; -import com.github.highcharts4gwt.model.highcharts.option.api.ChartOptions; -import com.github.highcharts4gwt.model.highcharts.option.api.SeriesColumn; -import com.github.highcharts4gwt.model.highcharts.option.api.seriescolumn.Data; -import com.google.gwt.event.logical.shared.SelectionEvent; -import com.google.gwt.event.logical.shared.SelectionHandler; -import com.google.gwt.event.shared.EventBus; -import com.google.gwt.i18n.client.DateTimeFormat; -import com.google.gwt.i18n.client.DateTimeFormat.PredefinedFormat; -import com.sencha.gxt.cell.core.client.ButtonCell.ButtonArrowAlign; -import com.sencha.gxt.cell.core.client.ButtonCell.IconAlign; -import com.sencha.gxt.core.client.util.Margins; -import com.sencha.gxt.widget.core.client.button.TextButton; -import com.sencha.gxt.widget.core.client.container.BoxLayoutContainer.BoxLayoutData; -import com.sencha.gxt.widget.core.client.container.MarginData; -import com.sencha.gxt.widget.core.client.container.SimpleContainer; -import com.sencha.gxt.widget.core.client.container.VerticalLayoutContainer; -import com.sencha.gxt.widget.core.client.container.VerticalLayoutContainer.VerticalLayoutData; -import com.sencha.gxt.widget.core.client.menu.Item; -import com.sencha.gxt.widget.core.client.menu.Menu; -import com.sencha.gxt.widget.core.client.menu.MenuItem; -import com.sencha.gxt.widget.core.client.toolbar.ToolBar; - -/** - * - * @author Giancarlo Panichi - * - * - */ -public class JobChartContextPanel extends SimpleContainer { - private static final int MAX_NUMBER_OF_CONTEXT = 20; - - private static final String TIME_UNIT = "Time Unit"; - // private static final String MEASURE_TYPE = "Measure"; - - private DateTimeFormat dtf = DateTimeFormat.getFormat(PredefinedFormat.YEAR_MONTH_DAY); - - private EventBus eventBus; - private AccountingClientStateData accountingStateData; - private HighchartsLayoutPanel highchartsLayoutPanel; - - // Download Menu - private MenuItem downloadCSVItem; - private MenuItem downloadXMLItem; - private MenuItem downloadJSONItem; - private MenuItem downloadPNGItem; - private MenuItem downloadJPGItem; - private MenuItem downloadPDFItem; - private MenuItem downloadSVGItem; - - // Measure Menu - private MenuItem operationCountItem; - private MenuItem durationItem; - private MenuItem maxInvocationTimeItem; - private MenuItem minInvocationTimeItem; - - // Time Unit Menu - private MenuItem msItem; - private MenuItem sItem; - private MenuItem mItem; - private MenuItem hItem; - - private long unitMeasure = TimeUnitMeasure.getMilliseconds(); - private String unitMeasureLabel = TimeUnitMeasure.MS; - private TextButton unitButton; - - private ChartOptions options; - - private JobChartMeasure measure = JobChartMeasure.OperationCount; - private TextButton measureButton; - - private VerticalLayoutContainer vert; - - public JobChartContextPanel(EventBus eventBus, AccountingClientStateData accountingStateData) { - this.eventBus = eventBus; - this.accountingStateData = accountingStateData; - forceLayoutOnResize = true; - create(); - - } - - private void create() { - ToolBar toolBar = new ToolBar(); - toolBar.setSpacing(2); - // Download - final TextButton downloadButton = new TextButton(DownloadConstants.DOWNLOAD, - AccountingManagerResources.INSTANCE.accountingDownload24()); - // downloadButton.setScale(ButtonScale.MEDIUM); - downloadButton.setIconAlign(IconAlign.RIGHT); - downloadButton.setArrowAlign(ButtonArrowAlign.RIGHT); - downloadButton.setMenu(createDownloadMenu()); - - // Measure - measureButton = new TextButton(JobChartMeasure.OperationCount.getLabel(), - AccountingManagerResources.INSTANCE.accountingByte24()); - measureButton.setIconAlign(IconAlign.RIGHT); - measureButton.setArrowAlign(ButtonArrowAlign.RIGHT); - measureButton.setMenu(createMeasureMenu()); - - // Unit - unitButton = new TextButton(TIME_UNIT, AccountingManagerResources.INSTANCE.accountingUnitms24()); - unitButton.setIconAlign(IconAlign.RIGHT); - unitButton.setArrowAlign(ButtonArrowAlign.RIGHT); - unitButton.setMenu(createUnitMenu()); - unitButton.setVisible(false); - - toolBar.add(downloadButton, new BoxLayoutData(new Margins(0))); - toolBar.add(measureButton, new BoxLayoutData(new Margins(0))); - toolBar.add(unitButton, new BoxLayoutData(new Margins(0))); - - // - createChart(); - - highchartsLayoutPanel = new HighchartsLayoutPanel(); - highchartsLayoutPanel.renderChart(options); - - // - vert = new VerticalLayoutContainer(); - vert.add(toolBar, new VerticalLayoutData(1, -1, new Margins(0))); - vert.add(highchartsLayoutPanel, new VerticalLayoutData(1, 1, new Margins(0))); - - add(vert, new MarginData(0)); - - } - - private void updateChart() { - createChart(); - highchartsLayoutPanel.renderChart(options); - forceLayout(); - } - - private Menu createDownloadMenu() { - Menu menuDownload = new Menu(); - downloadCSVItem = new MenuItem(DownloadConstants.DOWNLOAD_CSV, - AccountingManagerResources.INSTANCE.accountingFileCSV24()); - downloadCSVItem.setHeight(30); - downloadXMLItem = new MenuItem(DownloadConstants.DOWNLOAD_XML, - AccountingManagerResources.INSTANCE.accountingFileXML24()); - downloadXMLItem.setHeight(30); - downloadJSONItem = new MenuItem(DownloadConstants.DOWNLOAD_JSON, - AccountingManagerResources.INSTANCE.accountingFileJSON24()); - downloadJSONItem.setHeight(30); - downloadPNGItem = new MenuItem(DownloadConstants.DOWNLOAD_PNG, - AccountingManagerResources.INSTANCE.accountingFilePNG24()); - downloadPNGItem.setHeight(30); - downloadJPGItem = new MenuItem(DownloadConstants.DOWNLOAD_JPG, - AccountingManagerResources.INSTANCE.accountingFileJPG24()); - downloadJPGItem.setHeight(30); - downloadPDFItem = new MenuItem(DownloadConstants.DOWNLOAD_PDF, - AccountingManagerResources.INSTANCE.accountingFilePDF24()); - downloadPDFItem.setHeight(30); - downloadSVGItem = new MenuItem(DownloadConstants.DOWNLOAD_SVG, - AccountingManagerResources.INSTANCE.accountingFileSVG24()); - downloadSVGItem.setHeight(30); - - downloadCSVItem.addSelectionHandler(new SelectionHandler() { - - @Override - public void onSelection(SelectionEvent event) { - onDownloadCSV(); - - } - - }); - - downloadXMLItem.addSelectionHandler(new SelectionHandler() { - - @Override - public void onSelection(SelectionEvent event) { - onDownloadXML(); - - } - - }); - - downloadJSONItem.addSelectionHandler(new SelectionHandler() { - - @Override - public void onSelection(SelectionEvent event) { - onDownloadJSON(); - - } - - }); - - downloadPNGItem.addSelectionHandler(new SelectionHandler() { - - @Override - public void onSelection(SelectionEvent event) { - String id = highchartsLayoutPanel.getElement().getId(); - onDownloadPNG(id); - - } - }); - - downloadJPGItem.addSelectionHandler(new SelectionHandler() { - - @Override - public void onSelection(SelectionEvent event) { - String id = highchartsLayoutPanel.getElement().getId(); - onDownloadJPG(id); - } - }); - - downloadPDFItem.addSelectionHandler(new SelectionHandler() { - - @Override - public void onSelection(SelectionEvent event) { - String id = highchartsLayoutPanel.getElement().getId(); - onDownloadPDF(id); - } - }); - - downloadSVGItem.addSelectionHandler(new SelectionHandler() { - - @Override - public void onSelection(SelectionEvent event) { - String id = highchartsLayoutPanel.getElement().getId(); - onDownloadSVG(id); - } - }); - - menuDownload.add(downloadCSVItem); - menuDownload.add(downloadXMLItem); - menuDownload.add(downloadJSONItem); - menuDownload.add(downloadPNGItem); - menuDownload.add(downloadJPGItem); - menuDownload.add(downloadPDFItem); - menuDownload.add(downloadSVGItem); - return menuDownload; - - } - - private Menu createMeasureMenu() { - Menu menuMeasure = new Menu(); - // TODO - durationItem = new MenuItem(JobChartMeasure.Duration.getLabel()); - durationItem.setHeight(30); - operationCountItem = new MenuItem(JobChartMeasure.OperationCount.getLabel()); - operationCountItem.setHeight(30); - maxInvocationTimeItem = new MenuItem(JobChartMeasure.MaxInvocationTime.getLabel()); - maxInvocationTimeItem.setHeight(30); - minInvocationTimeItem = new MenuItem(JobChartMeasure.MinInvocationTime.getLabel()); - minInvocationTimeItem.setHeight(30); - - durationItem.addSelectionHandler(new SelectionHandler() { - - @Override - public void onSelection(SelectionEvent event) { - measureButton.setText(JobChartMeasure.Duration.getLabel()); - measure = JobChartMeasure.Duration; - unitButton.setVisible(true); - updateChart(); - } - }); - - operationCountItem.addSelectionHandler(new SelectionHandler() { - - @Override - public void onSelection(SelectionEvent event) { - measureButton.setText(JobChartMeasure.OperationCount.getLabel()); - measure = JobChartMeasure.OperationCount; - unitButton.setVisible(false); - updateChart(); - } - }); - - maxInvocationTimeItem.addSelectionHandler(new SelectionHandler() { - - @Override - public void onSelection(SelectionEvent event) { - measureButton.setText(JobChartMeasure.MaxInvocationTime.getLabel()); - measure = JobChartMeasure.MaxInvocationTime; - unitButton.setVisible(true); - updateChart(); - } - }); - - minInvocationTimeItem.addSelectionHandler(new SelectionHandler() { - - @Override - public void onSelection(SelectionEvent event) { - measureButton.setText(JobChartMeasure.MinInvocationTime.getLabel()); - measure = JobChartMeasure.MinInvocationTime; - unitButton.setVisible(true); - updateChart(); - } - }); - - menuMeasure.add(durationItem); - menuMeasure.add(maxInvocationTimeItem); - menuMeasure.add(minInvocationTimeItem); - menuMeasure.add(operationCountItem); - - return menuMeasure; - - } - - private Menu createUnitMenu() { - Menu menuUnit = new Menu(); - msItem = new MenuItem(TimeUnitMeasure.MILLISECONDS, AccountingManagerResources.INSTANCE.accountingUnitms24()); - msItem.setHeight(30); - sItem = new MenuItem(TimeUnitMeasure.SECONDS, AccountingManagerResources.INSTANCE.accountingUnits24()); - sItem.setHeight(30); - mItem = new MenuItem(TimeUnitMeasure.MINUTES, AccountingManagerResources.INSTANCE.accountingUnitm24()); - mItem.setHeight(30); - hItem = new MenuItem(TimeUnitMeasure.HOURS, AccountingManagerResources.INSTANCE.accountingUnith24()); - hItem.setHeight(30); - - msItem.addSelectionHandler(new SelectionHandler() { - - @Override - public void onSelection(SelectionEvent event) { - unitMeasure = TimeUnitMeasure.getMilliseconds(); - unitMeasureLabel = TimeUnitMeasure.MS; - unitButton.setIcon(AccountingManagerResources.INSTANCE.accountingUnitms24()); - updateChart(); - } - }); - - sItem.addSelectionHandler(new SelectionHandler() { - - @Override - public void onSelection(SelectionEvent event) { - unitMeasure = TimeUnitMeasure.getSeconds(); - unitMeasureLabel = TimeUnitMeasure.S; - unitButton.setIcon(AccountingManagerResources.INSTANCE.accountingUnits24()); - updateChart(); - } - }); - - mItem.addSelectionHandler(new SelectionHandler() { - - @Override - public void onSelection(SelectionEvent event) { - unitMeasure = TimeUnitMeasure.getMinutes(); - unitMeasureLabel = TimeUnitMeasure.M; - unitButton.setIcon(AccountingManagerResources.INSTANCE.accountingUnitm24()); - updateChart(); - } - }); - - hItem.addSelectionHandler(new SelectionHandler() { - - @Override - public void onSelection(SelectionEvent event) { - unitMeasure = TimeUnitMeasure.getHours(); - unitMeasureLabel = TimeUnitMeasure.H; - unitButton.setIcon(AccountingManagerResources.INSTANCE.accountingUnith24()); - updateChart(); - } - }); - - menuUnit.add(msItem); - menuUnit.add(sItem); - menuUnit.add(mItem); - menuUnit.add(hItem); - return menuUnit; - - } - - private void onDownloadCSV() { - ExportRequestEvent event = new ExportRequestEvent(ExportType.CSV, accountingStateData.getAccountingType()); - eventBus.fireEvent(event); - } - - private void onDownloadXML() { - ExportRequestEvent event = new ExportRequestEvent(ExportType.XML, accountingStateData.getAccountingType()); - eventBus.fireEvent(event); - } - - private void onDownloadJSON() { - ExportRequestEvent event = new ExportRequestEvent(ExportType.JSON, accountingStateData.getAccountingType()); - eventBus.fireEvent(event); - } - - // chart.options.exporting.buttons.contextButton.menuItems[0].onclick(); - - public static native void onDownloadPNG(String id) /*-{ - console.log(id); - var chart = $wnd - .jQuery('#' + id) - .highcharts( - this.@org.gcube.portlets.admin.accountingmanager.client.maindata.charts.job.JobChartContextPanel::options); - console.log(chart); - chart.exportChart(); - - }-*/; - - public static native void onDownloadJPG(String id) /*-{ - console.log(id); - var chart = $wnd - .jQuery('#' + id) - .highcharts( - this.@org.gcube.portlets.admin.accountingmanager.client.maindata.charts.job.JobChartContextPanel::options); - console.log(chart); - chart.exportChart({ - type : 'image/jpeg' - }); - - }-*/; - - public static native void onDownloadPDF(String id) /*-{ - console.log(id); - var chart = $wnd - .jQuery('#' + id) - .highcharts( - this.@org.gcube.portlets.admin.accountingmanager.client.maindata.charts.job.JobChartContextPanel::options); - console.log(chart); - chart.exportChart({ - type : 'application/pdf' - }); - - }-*/; - - public static native void onDownloadSVG(String id) /*-{ - console.log(id); - var chart = $wnd - .jQuery('#' + id) - .highcharts( - this.@org.gcube.portlets.admin.accountingmanager.client.maindata.charts.job.JobChartContextPanel::options); - console.log(chart); - chart.exportChart({ - type : 'image/svg+xml' - }); - - }-*/; - - private void createChart() { - SeriesJob seriesJob = (SeriesJob) accountingStateData.getSeriesResponse(); - - if (!(seriesJob.getSeriesJobDefinition() instanceof SeriesJobContext)) { - Log.debug("Invalid SeriesJobContext!"); - return; - } - SeriesJobContext seriesJobContext = (SeriesJobContext) seriesJob.getSeriesJobDefinition(); - - HighchartsOptionFactory highchartsFactory = new JsoHighchartsOptionFactory(); - - options = highchartsFactory.createChartOptions(); - options.chart().zoomType("xy"); - options.exporting().buttons().contextButton().enabled(false); - options.exporting().filename("AccountingJobContext"); - options.title().text("Accounting Job Context"); - - /* - * options.subtitle().text("Click and drag in the plot area to zoom in" - * ); - */ - - ArrayString colors = options.colors(); - // colors.setValue(0, "#cc0038"); - // colors.setValue(1, "#32cd32"); - - // yAxis - options.setFieldAsJsonObject("yAxis", retrieveYAxis(colors)); - - options.plotOptions().setFieldAsJsonObject("column", - "{ " + "\"stacking\": \"normal\"," + "\"dataLabels\": { " + " \"enabled\": \"true\"," - + " \"color\": \"white\", " + " \"style\": {" - + " \"textShadow\": \"0 0 3px black\"" + " }" + " }" + " }"); - - ArrayList seriesColumn = new ArrayList<>(); - /* - * if (seriesJobContext.getShowOthers()) { - * createSeriesColumnShowOthers(seriesJobContext, highchartsFactory, - * colors, seriesColumn); } else { - */ - createSeriesColumnSimple(seriesJobContext, highchartsFactory, colors, seriesColumn); - /* } */ - - for (SeriesColumn serie : seriesColumn) { - options.series().addToEnd(serie); - } - - options.chart().showAxes(true); - - options.legend().enabled(true); - return; - } - - private void createSeriesColumnShowOthers(SeriesJobContext seriesJobContext, - HighchartsOptionFactory highchartsFactory, ArrayString colors, ArrayList seriesColumn) { - Log.debug("Series ShowOthers"); - if (accountingStateData.getSeriesRequest().getAccountingPeriod().getPeriod() - .compareTo(AccountingPeriodMode.DAILY) == 0 - || accountingStateData.getSeriesRequest().getAccountingPeriod().getPeriod() - .compareTo(AccountingPeriodMode.HOURLY) == 0 - || accountingStateData.getSeriesRequest().getAccountingPeriod().getPeriod() - .compareTo(AccountingPeriodMode.MINUTELY) == 0) { - - double minRange = ChartTimeMeasure - .calculateMinRange(accountingStateData.getSeriesRequest().getAccountingPeriod()); - - double interval = ChartTimeMeasure - .calculateInterval(accountingStateData.getSeriesRequest().getAccountingPeriod()); - - Date dateStart = dtf.parse(accountingStateData.getSeriesRequest().getAccountingPeriod().getStartDate()); - - dateStart.setTime(dateStart.getTime() + ChartTimeMeasure.timeZoneOffset() * ChartTimeMeasure.MINUTE); - - Log.debug("BuildChart DateStart: " - + DateTimeFormat.getFormat(PredefinedFormat.DATE_TIME_FULL).format(dateStart)); - - // xAxis - options.xAxis().type("datetime"); - options.xAxis().minRange(minRange); - options.tooltip().xDateFormat("Selected Data"); - - int i = 0; - for (; i < seriesJobContext.getSeriesJobDataContextList().size() && i < MAX_NUMBER_OF_CONTEXT; i++) { - SeriesColumn seriesColumnData = highchartsFactory.createSeriesColumn(); - - seriesColumnData.name(seriesJobContext.getSeriesJobDataContextList().get(i).getContext()); - seriesColumnData.color(colors.get(i)); - seriesColumnData.type("column"); - - ArrayNumber data = seriesColumnData.dataAsArrayNumber(); - - for (SeriesJobData seriesJobData : seriesJobContext.getSeriesJobDataContextList().get(i).getSeries()) { - switch (measure) { - case Duration: - data.push(seriesJobData.getDuration() / unitMeasure); - break; - case MaxInvocationTime: - data.push(seriesJobData.getMaxInvocationTime() / unitMeasure); - break; - case MinInvocationTime: - data.push(seriesJobData.getMinInvocationTime() / unitMeasure); - break; - case OperationCount: - data.push(seriesJobData.getOperationCount()); - break; - default: - data.push(seriesJobData.getDuration() / unitMeasure); - break; - - } - - } - - seriesColumnData.pointInterval(interval).pointStart(dateStart.getTime()); - seriesColumn.add(seriesColumnData); - - } - - if (i < seriesJobContext.getSeriesJobDataContextList().size()) { - SeriesColumn seriesColumnData = highchartsFactory.createSeriesColumn(); - - seriesColumnData.name("Others"); - seriesColumnData.color(colors.get(i)); - seriesColumnData.type("column"); - - ArrayList othersData = new ArrayList<>(); - for (int j = i; j < seriesJobContext.getSeriesJobDataContextList().size(); j++) { - Long value; - for (int k = 0; k < seriesJobContext.getSeriesJobDataContextList().get(j).getSeries().size(); k++) { - SeriesJobData seriesJobData = seriesJobContext.getSeriesJobDataContextList().get(j).getSeries() - .get(k); - if (j == i) { - switch (measure) { - case Duration: - othersData.add(seriesJobData.getDuration() / unitMeasure); - break; - case MaxInvocationTime: - othersData.add(seriesJobData.getMaxInvocationTime() / unitMeasure); - break; - case MinInvocationTime: - othersData.add(seriesJobData.getMinInvocationTime() / unitMeasure); - break; - case OperationCount: - othersData.add(seriesJobData.getOperationCount()); - break; - default: - othersData.add(seriesJobData.getDuration() / unitMeasure); - break; - } - } else { - switch (measure) { - case Duration: - value = (seriesJobData.getDuration() / unitMeasure) + othersData.get(k); - othersData.set(k, value); - break; - case MaxInvocationTime: - value = (seriesJobData.getMaxInvocationTime() / unitMeasure) + othersData.get(k); - othersData.set(k, value); - break; - case MinInvocationTime: - value = (seriesJobData.getMinInvocationTime() / unitMeasure) + othersData.get(k); - othersData.set(k, value); - break; - case OperationCount: - value = seriesJobData.getOperationCount() + othersData.get(k); - othersData.set(k, value); - break; - default: - value = (seriesJobData.getDuration() / unitMeasure) + othersData.get(k); - othersData.set(k, value); - break; - - } - - } - - } - } - - ArrayNumber data = seriesColumnData.dataAsArrayNumber(); - - for (Long value : othersData) { - data.push(value); - } - - seriesColumnData.pointInterval(interval).pointStart(dateStart.getTime()); - seriesColumn.add(seriesColumnData); - - } - } else { - // xAxis - options.xAxis().type("datetime"); - - if (accountingStateData.getSeriesRequest().getAccountingPeriod().getPeriod() - .compareTo(AccountingPeriodMode.MONTHLY) == 0) { - // options.tooltip().xDateFormat("%b, %Y"); - options.tooltip().xDateFormat("Selected Data"); - - } else { - if (accountingStateData.getSeriesRequest().getAccountingPeriod().getPeriod() - .compareTo(AccountingPeriodMode.YEARLY) == 0) { - // options.tooltip().xDateFormat("%Y"); - options.tooltip().xDateFormat("Selected Data"); - - } else { - options.tooltip().xDateFormat("Selected Data"); - } - - } - - int i = 0; - for (; i < seriesJobContext.getSeriesJobDataContextList().size() && i < MAX_NUMBER_OF_CONTEXT; i++) { - SeriesColumn seriesColumnData = highchartsFactory.createSeriesColumn(); - - seriesColumnData.name(seriesJobContext.getSeriesJobDataContextList().get(i).getContext()); - seriesColumnData.color(colors.get(i)); - seriesColumnData.type("column"); - - Array arrayData = seriesColumnData.dataAsArrayObject(); - - for (SeriesJobData seriesJobData : seriesJobContext.getSeriesJobDataContextList().get(i).getSeries()) { - long dateFrom1970 = seriesJobData.getDate().getTime(); - - Log.debug("SeriersJobData: " + seriesJobData.getDate()); - Log.debug("SeriersJobData: " + dateFrom1970); - - Data data = highchartsFactory.createSeriesColumnData(); - - switch (measure) { - case Duration: - data.x(dateFrom1970); - data.y(seriesJobData.getDuration() / unitMeasure); - arrayData.addToEnd(data); - break; - case MaxInvocationTime: - data.x(dateFrom1970); - data.y(seriesJobData.getMaxInvocationTime() / unitMeasure); - arrayData.addToEnd(data); - break; - case MinInvocationTime: - data.x(dateFrom1970); - data.y(seriesJobData.getMinInvocationTime() / unitMeasure); - arrayData.addToEnd(data); - break; - case OperationCount: - data.x(dateFrom1970); - data.y(seriesJobData.getOperationCount()); - arrayData.addToEnd(data); - break; - default: - data.x(dateFrom1970); - data.y(seriesJobData.getDuration() / unitMeasure); - arrayData.addToEnd(data); - break; - - } - - } - - seriesColumn.add(seriesColumnData); - - } - - if (i < seriesJobContext.getSeriesJobDataContextList().size()) { - SeriesColumn seriesColumnData = highchartsFactory.createSeriesColumn(); - - seriesColumnData.name("Others"); - seriesColumnData.color(colors.get(i)); - seriesColumnData.type("column"); - - ArrayList othersData = new ArrayList<>(); - for (int j = i; j < seriesJobContext.getSeriesJobDataContextList().size(); j++) { - ChartDateTimeData chartDateTimeData; - for (int k = 0; k < seriesJobContext.getSeriesJobDataContextList().get(j).getSeries().size(); k++) { - SeriesJobData seriesJobData = seriesJobContext.getSeriesJobDataContextList().get(j).getSeries() - .get(k); - if (j == i) { - switch (measure) { - case Duration: - chartDateTimeData = new ChartDateTimeData(seriesJobData.getDate(), - seriesJobData.getDuration() / unitMeasure); - othersData.add(chartDateTimeData); - break; - case MaxInvocationTime: - chartDateTimeData = new ChartDateTimeData(seriesJobData.getDate(), - seriesJobData.getMaxInvocationTime() / unitMeasure); - othersData.add(chartDateTimeData); - break; - case MinInvocationTime: - chartDateTimeData = new ChartDateTimeData(seriesJobData.getDate(), - seriesJobData.getMinInvocationTime() / unitMeasure); - othersData.add(chartDateTimeData); - break; - case OperationCount: - chartDateTimeData = new ChartDateTimeData(seriesJobData.getDate(), - seriesJobData.getOperationCount()); - othersData.add(chartDateTimeData); - break; - default: - chartDateTimeData = new ChartDateTimeData(seriesJobData.getDate(), - seriesJobData.getDuration() / unitMeasure); - othersData.add(chartDateTimeData); - break; - } - } else { - switch (measure) { - case Duration: - chartDateTimeData = new ChartDateTimeData(seriesJobData.getDate(), - (seriesJobData.getDuration() / unitMeasure) + othersData.get(k).getValue()); - othersData.set(k, chartDateTimeData); - break; - case MaxInvocationTime: - chartDateTimeData = new ChartDateTimeData(seriesJobData.getDate(), - (seriesJobData.getMaxInvocationTime() / unitMeasure) - + othersData.get(k).getValue()); - othersData.set(k, chartDateTimeData); - break; - case MinInvocationTime: - chartDateTimeData = new ChartDateTimeData(seriesJobData.getDate(), - (seriesJobData.getMinInvocationTime() / unitMeasure) - + othersData.get(k).getValue()); - othersData.set(k, chartDateTimeData); - break; - case OperationCount: - chartDateTimeData = new ChartDateTimeData(seriesJobData.getDate(), - seriesJobData.getOperationCount() + othersData.get(k).getValue()); - othersData.set(k, chartDateTimeData); - break; - default: - chartDateTimeData = new ChartDateTimeData(seriesJobData.getDate(), - (seriesJobData.getDuration() / unitMeasure) + othersData.get(k).getValue()); - othersData.set(k, chartDateTimeData); - break; - - } - - } - - } - } - - Array arrayData = seriesColumnData.dataAsArrayObject(); - - for (ChartDateTimeData chartDateTimeData : othersData) { - long dateFrom1970 = chartDateTimeData.getDate().getTime(); - - Log.debug("SeriersOthersData: " + chartDateTimeData.getDate()); - Log.debug("SeriersOthersData: " + dateFrom1970); - - Data data = highchartsFactory.createSeriesColumnData(); - - data.x(dateFrom1970); - data.y(chartDateTimeData.getValue()); - arrayData.addToEnd(data); - - } - - seriesColumn.add(seriesColumnData); - - } - } - } - - private void createSeriesColumnSimple(SeriesJobContext seriesJobContext, HighchartsOptionFactory highchartsFactory, - ArrayString colors, ArrayList seriesColumn) { - Log.debug("Series Simple"); - if (accountingStateData.getSeriesRequest().getAccountingPeriod().getPeriod() - .compareTo(AccountingPeriodMode.DAILY) == 0 - || accountingStateData.getSeriesRequest().getAccountingPeriod().getPeriod() - .compareTo(AccountingPeriodMode.HOURLY) == 0 - || accountingStateData.getSeriesRequest().getAccountingPeriod().getPeriod() - .compareTo(AccountingPeriodMode.MINUTELY) == 0) { - - double minRange = ChartTimeMeasure - .calculateMinRange(accountingStateData.getSeriesRequest().getAccountingPeriod()); - - double interval = ChartTimeMeasure - .calculateInterval(accountingStateData.getSeriesRequest().getAccountingPeriod()); - - Date dateStart = dtf.parse(accountingStateData.getSeriesRequest().getAccountingPeriod().getStartDate()); - - dateStart.setTime(dateStart.getTime() + ChartTimeMeasure.timeZoneOffset() * ChartTimeMeasure.MINUTE); - - Log.debug("BuildChart DateStart: " - + DateTimeFormat.getFormat(PredefinedFormat.DATE_TIME_FULL).format(dateStart)); - - // xAxis - options.xAxis().type("datetime"); - options.xAxis().minRange(minRange); - options.tooltip().xDateFormat("Selected Data"); - - for (int i = 0; i < seriesJobContext.getSeriesJobDataContextList().size(); i++) { - SeriesColumn seriesColumnData = highchartsFactory.createSeriesColumn(); - - seriesColumnData.name(seriesJobContext.getSeriesJobDataContextList().get(i).getContext()); - seriesColumnData.color(colors.get(i)); - seriesColumnData.type("column"); - - ArrayNumber data = seriesColumnData.dataAsArrayNumber(); - - for (SeriesJobData seriesJobData : seriesJobContext.getSeriesJobDataContextList().get(i).getSeries()) { - switch (measure) { - case Duration: - data.push(seriesJobData.getDuration() / unitMeasure); - break; - case MaxInvocationTime: - data.push(seriesJobData.getMaxInvocationTime() / unitMeasure); - break; - case MinInvocationTime: - data.push(seriesJobData.getMinInvocationTime() / unitMeasure); - break; - case OperationCount: - data.push(seriesJobData.getOperationCount()); - break; - default: - data.push(seriesJobData.getDuration() / unitMeasure); - break; - - } - - } - - seriesColumnData.pointInterval(interval).pointStart(dateStart.getTime()); - seriesColumn.add(seriesColumnData); - - } - } else { - // xAxis - options.xAxis().type("datetime"); - - if (accountingStateData.getSeriesRequest().getAccountingPeriod().getPeriod() - .compareTo(AccountingPeriodMode.MONTHLY) == 0) { - // options.tooltip().xDateFormat("%b, %Y"); - options.tooltip().xDateFormat("Selected Data"); - - } else { - if (accountingStateData.getSeriesRequest().getAccountingPeriod().getPeriod() - .compareTo(AccountingPeriodMode.YEARLY) == 0) { - // options.tooltip().xDateFormat("%Y"); - options.tooltip().xDateFormat("Selected Data"); - - } else { - options.tooltip().xDateFormat("Selected Data"); - } - - } - - for (int i = 0; i < seriesJobContext.getSeriesJobDataContextList().size(); i++) { - SeriesColumn seriesColumnData = highchartsFactory.createSeriesColumn(); - - seriesColumnData.name(seriesJobContext.getSeriesJobDataContextList().get(i).getContext()); - seriesColumnData.color(colors.get(i)); - seriesColumnData.type("column"); - - Array arrayData = seriesColumnData.dataAsArrayObject(); - - for (SeriesJobData seriesJobData : seriesJobContext.getSeriesJobDataContextList().get(i).getSeries()) { - long dateFrom1970 = seriesJobData.getDate().getTime(); - - Log.debug("SeriersJobData: " + seriesJobData.getDate()); - Log.debug("SeriersJobData: " + dateFrom1970); - - Data data = highchartsFactory.createSeriesColumnData(); - - switch (measure) { - case Duration: - data.x(dateFrom1970); - data.y(seriesJobData.getDuration() / unitMeasure); - arrayData.addToEnd(data); - break; - case MaxInvocationTime: - data.x(dateFrom1970); - data.y(seriesJobData.getMaxInvocationTime() / unitMeasure); - arrayData.addToEnd(data); - break; - case MinInvocationTime: - data.x(dateFrom1970); - data.y(seriesJobData.getMinInvocationTime() / unitMeasure); - arrayData.addToEnd(data); - break; - case OperationCount: - data.x(dateFrom1970); - data.y(seriesJobData.getOperationCount()); - arrayData.addToEnd(data); - break; - default: - data.x(dateFrom1970); - data.y(seriesJobData.getDuration() / unitMeasure); - arrayData.addToEnd(data); - break; - - } - - } - - seriesColumn.add(seriesColumnData); - - } - - } - } - - private String retrieveYAxis(ArrayString colors) { - switch (measure) { - case Duration: - return "[{" + " \"id\": \"" + JobChartMeasure.Duration.name() + "\"," + " \"labels\": {" - + " \"format\": \"{value} " + unitMeasureLabel + "\"," + " \"style\": {" - + " \"color\": \"" + colors.get(1) + "\"" + " }" + " }," + " \"stackLabels\": {" - + " \"enabled\": \"true\"," + " \"style\": {" + " \"fontWeight\": \"bold\"," - + " \"color\": \"gray\"" + " } " + " }," + " \"title\": { " + " \"text\": \"" - + JobChartMeasure.Duration.getLabel() + "\"," + " \"style\": {" + " \"color\": \"" - + colors.get(1) + "\"" + " }" + " }" + "}]"; - case MaxInvocationTime: - return "[{" + " \"id\": \"" + JobChartMeasure.MaxInvocationTime.name() + "\"," + " \"labels\": {" - + " \"format\": \"{value} " + unitMeasureLabel + "\"," + " \"style\": {" - + " \"color\": \"" + colors.get(1) + "\"" + " }" + " }," + " \"stackLabels\": {" - + " \"enabled\": \"true\"," + " \"style\": {" + " \"fontWeight\": \"bold\"," - + " \"color\": \"gray\"" + " } " + " }," + " \"title\": { " + " \"text\": \"" - + JobChartMeasure.MaxInvocationTime.getLabel() + "\"," + " \"style\": {" + " \"color\": \"" - + colors.get(1) + "\"" + " }" + " }" + "}]"; - case MinInvocationTime: - return "[{" + " \"id\": \"" + JobChartMeasure.MinInvocationTime.name() + "\"," + " \"labels\": {" - + " \"format\": \"{value} " + unitMeasureLabel + "\"," + " \"style\": {" - + " \"color\": \"" + colors.get(1) + "\"" + " }" + " }," + " \"stackLabels\": {" - + " \"enabled\": \"true\"," + " \"style\": {" + " \"fontWeight\": \"bold\"," - + " \"color\": \"gray\"" + " } " + " }," + " \"title\": { " + " \"text\": \"" - + JobChartMeasure.MinInvocationTime.getLabel() + "\"," + " \"style\": {" + " \"color\": \"" - + colors.get(1) + "\"" + " }" + " }" + "}]"; - case OperationCount: - return "[{" + " \"id\": \"" + JobChartMeasure.OperationCount.name() + "\"," + " \"labels\": { " - + " \"format\": \"{value}\"," + " \"style\": { " + " \"color\": \"" + colors.get(1) - + "\"" + " }" + " }," + " \"stackLabels\": {" + " \"enabled\": \"true\"," + " \"style\": {" - + " \"fontWeight\": \"bold\"," + " \"color\": \"gray\"" + " } " + " }," - + " \"title\": { " + " \"text\": \"" + JobChartMeasure.OperationCount.getLabel() + "\"," - + " \"style\": {" + " \"color\": \"" + colors.get(1) + "\"" + " }" + " }" + "}]"; - - default: - return "[{" + " \"id\": \"" + JobChartMeasure.Duration.name() + "\"," + " \"labels\": {" - + " \"format\": \"{value} " + unitMeasureLabel + "\"," + " \"style\": {" - + " \"color\": \"" + colors.get(1) + "\"" + " }" + " }," + " \"stackLabels\": {" - + " \"enabled\": \"true\"," + " \"style\": {" + " \"fontWeight\": \"bold\"," - + " \"color\": \"gray\"" + " } " + " }," + " \"title\": { " + " \"text\": \"" - + JobChartMeasure.Duration.getLabel() + "\"," + " \"style\": {" + " \"color\": \"" - + colors.get(1) + "\"" + " }" + " }" + "}]"; - - } - - } - -} diff --git a/src/main/java/org/gcube/portlets/admin/accountingmanager/client/maindata/charts/service/ServiceChartContextPanel.java b/src/main/java/org/gcube/portlets/admin/accountingmanager/client/maindata/charts/service/ServiceChartContextPanel.java deleted file mode 100644 index 6c1397a..0000000 --- a/src/main/java/org/gcube/portlets/admin/accountingmanager/client/maindata/charts/service/ServiceChartContextPanel.java +++ /dev/null @@ -1,1010 +0,0 @@ -package org.gcube.portlets.admin.accountingmanager.client.maindata.charts.service; - -import java.util.ArrayList; -import java.util.Date; - -import org.gcube.portlets.admin.accountingmanager.client.event.ExportRequestEvent; -import org.gcube.portlets.admin.accountingmanager.client.maindata.charts.utils.ChartDateTimeData; -import org.gcube.portlets.admin.accountingmanager.client.maindata.charts.utils.ChartTimeMeasure; -import org.gcube.portlets.admin.accountingmanager.client.maindata.charts.utils.DownloadConstants; -import org.gcube.portlets.admin.accountingmanager.client.maindata.charts.utils.ServiceChartMeasure; -import org.gcube.portlets.admin.accountingmanager.client.maindata.charts.utils.TimeUnitMeasure; -import org.gcube.portlets.admin.accountingmanager.client.resource.AccountingManagerResources; -import org.gcube.portlets.admin.accountingmanager.client.state.AccountingClientStateData; -import org.gcube.portlets.admin.accountingmanager.shared.data.AccountingPeriodMode; -import org.gcube.portlets.admin.accountingmanager.shared.data.response.SeriesService; -import org.gcube.portlets.admin.accountingmanager.shared.data.response.service.SeriesServiceContext; -import org.gcube.portlets.admin.accountingmanager.shared.data.response.service.SeriesServiceData; -import org.gcube.portlets.admin.accountingmanager.shared.export.ExportType; - -import com.allen_sauer.gwt.log.client.Log; -import com.github.highcharts4gwt.client.view.widget.HighchartsLayoutPanel; -import com.github.highcharts4gwt.model.array.api.Array; -import com.github.highcharts4gwt.model.array.api.ArrayNumber; -import com.github.highcharts4gwt.model.array.api.ArrayString; -import com.github.highcharts4gwt.model.factory.api.HighchartsOptionFactory; -import com.github.highcharts4gwt.model.factory.jso.JsoHighchartsOptionFactory; -import com.github.highcharts4gwt.model.highcharts.option.api.ChartOptions; -import com.github.highcharts4gwt.model.highcharts.option.api.SeriesColumn; -import com.github.highcharts4gwt.model.highcharts.option.api.seriescolumn.Data; -import com.google.gwt.event.logical.shared.SelectionEvent; -import com.google.gwt.event.logical.shared.SelectionHandler; -import com.google.gwt.event.shared.EventBus; -import com.google.gwt.i18n.client.DateTimeFormat; -import com.google.gwt.i18n.client.DateTimeFormat.PredefinedFormat; -import com.sencha.gxt.cell.core.client.ButtonCell.ButtonArrowAlign; -import com.sencha.gxt.cell.core.client.ButtonCell.IconAlign; -import com.sencha.gxt.core.client.util.Margins; -import com.sencha.gxt.widget.core.client.button.TextButton; -import com.sencha.gxt.widget.core.client.container.BoxLayoutContainer.BoxLayoutData; -import com.sencha.gxt.widget.core.client.container.MarginData; -import com.sencha.gxt.widget.core.client.container.SimpleContainer; -import com.sencha.gxt.widget.core.client.container.VerticalLayoutContainer; -import com.sencha.gxt.widget.core.client.container.VerticalLayoutContainer.VerticalLayoutData; -import com.sencha.gxt.widget.core.client.menu.Item; -import com.sencha.gxt.widget.core.client.menu.Menu; -import com.sencha.gxt.widget.core.client.menu.MenuItem; -import com.sencha.gxt.widget.core.client.toolbar.ToolBar; - -/** - * - * @author Giancarlo Panichi - * - * - */ -public class ServiceChartContextPanel extends SimpleContainer { - private static final int MAX_NUMBER_OF_CONTEXT = 20; - - private static final String TIME_UNIT = "Time Unit"; - // private static final String MEASURE_TYPE = "Measure"; - - private DateTimeFormat dtf = DateTimeFormat.getFormat(PredefinedFormat.YEAR_MONTH_DAY); - - private EventBus eventBus; - private AccountingClientStateData accountingStateData; - private HighchartsLayoutPanel highchartsLayoutPanel; - - // Download Menu - private MenuItem downloadCSVItem; - private MenuItem downloadXMLItem; - private MenuItem downloadJSONItem; - private MenuItem downloadPNGItem; - private MenuItem downloadJPGItem; - private MenuItem downloadPDFItem; - private MenuItem downloadSVGItem; - - // Measure Menu - private MenuItem operationCountItem; - private MenuItem durationItem; - private MenuItem maxInvocationTimeItem; - private MenuItem minInvocationTimeItem; - - // Time Unit Menu - private MenuItem msItem; - private MenuItem sItem; - private MenuItem mItem; - private MenuItem hItem; - - private long unitMeasure = TimeUnitMeasure.getMilliseconds(); - private String unitMeasureLabel = TimeUnitMeasure.MS; - private TextButton unitButton; - - private ChartOptions options; - - private ServiceChartMeasure measure = ServiceChartMeasure.OperationCount; - private TextButton measureButton; - - private VerticalLayoutContainer vert; - - public ServiceChartContextPanel(EventBus eventBus, AccountingClientStateData accountingStateData) { - this.eventBus = eventBus; - this.accountingStateData = accountingStateData; - forceLayoutOnResize = true; - create(); - - } - - private void create() { - ToolBar toolBar = new ToolBar(); - toolBar.setSpacing(2); - // Download - final TextButton downloadButton = new TextButton(DownloadConstants.DOWNLOAD, - AccountingManagerResources.INSTANCE.accountingDownload24()); - // downloadButton.setScale(ButtonScale.MEDIUM); - downloadButton.setIconAlign(IconAlign.RIGHT); - downloadButton.setArrowAlign(ButtonArrowAlign.RIGHT); - downloadButton.setMenu(createDownloadMenu()); - - // Measure - measureButton = new TextButton(ServiceChartMeasure.OperationCount.getLabel(), - AccountingManagerResources.INSTANCE.accountingByte24()); - measureButton.setIconAlign(IconAlign.RIGHT); - measureButton.setArrowAlign(ButtonArrowAlign.RIGHT); - measureButton.setMenu(createMeasureMenu()); - - // Unit - unitButton = new TextButton(TIME_UNIT, AccountingManagerResources.INSTANCE.accountingUnitms24()); - unitButton.setIconAlign(IconAlign.RIGHT); - unitButton.setArrowAlign(ButtonArrowAlign.RIGHT); - unitButton.setMenu(createUnitMenu()); - unitButton.setVisible(false); - - toolBar.add(downloadButton, new BoxLayoutData(new Margins(0))); - toolBar.add(measureButton, new BoxLayoutData(new Margins(0))); - toolBar.add(unitButton, new BoxLayoutData(new Margins(0))); - - // - createChart(); - - highchartsLayoutPanel = new HighchartsLayoutPanel(); - highchartsLayoutPanel.renderChart(options); - - // - vert = new VerticalLayoutContainer(); - vert.add(toolBar, new VerticalLayoutData(1, -1, new Margins(0))); - vert.add(highchartsLayoutPanel, new VerticalLayoutData(1, 1, new Margins(0))); - - add(vert, new MarginData(0)); - - } - - private void updateChart() { - createChart(); - highchartsLayoutPanel.renderChart(options); - forceLayout(); - } - - private Menu createDownloadMenu() { - Menu menuDownload = new Menu(); - downloadCSVItem = new MenuItem(DownloadConstants.DOWNLOAD_CSV, - AccountingManagerResources.INSTANCE.accountingFileCSV24()); - downloadCSVItem.setHeight(30); - downloadXMLItem = new MenuItem(DownloadConstants.DOWNLOAD_XML, - AccountingManagerResources.INSTANCE.accountingFileXML24()); - downloadXMLItem.setHeight(30); - downloadJSONItem = new MenuItem(DownloadConstants.DOWNLOAD_JSON, - AccountingManagerResources.INSTANCE.accountingFileJSON24()); - downloadJSONItem.setHeight(30); - downloadPNGItem = new MenuItem(DownloadConstants.DOWNLOAD_PNG, - AccountingManagerResources.INSTANCE.accountingFilePNG24()); - downloadPNGItem.setHeight(30); - downloadJPGItem = new MenuItem(DownloadConstants.DOWNLOAD_JPG, - AccountingManagerResources.INSTANCE.accountingFileJPG24()); - downloadJPGItem.setHeight(30); - downloadPDFItem = new MenuItem(DownloadConstants.DOWNLOAD_PDF, - AccountingManagerResources.INSTANCE.accountingFilePDF24()); - downloadPDFItem.setHeight(30); - downloadSVGItem = new MenuItem(DownloadConstants.DOWNLOAD_SVG, - AccountingManagerResources.INSTANCE.accountingFileSVG24()); - downloadSVGItem.setHeight(30); - - downloadCSVItem.addSelectionHandler(new SelectionHandler() { - - @Override - public void onSelection(SelectionEvent event) { - onDownloadCSV(); - - } - - }); - - downloadXMLItem.addSelectionHandler(new SelectionHandler() { - - @Override - public void onSelection(SelectionEvent event) { - onDownloadXML(); - - } - - }); - - downloadJSONItem.addSelectionHandler(new SelectionHandler() { - - @Override - public void onSelection(SelectionEvent event) { - onDownloadJSON(); - - } - - }); - - downloadPNGItem.addSelectionHandler(new SelectionHandler() { - - @Override - public void onSelection(SelectionEvent event) { - String id = highchartsLayoutPanel.getElement().getId(); - onDownloadPNG(id); - - } - }); - - downloadJPGItem.addSelectionHandler(new SelectionHandler() { - - @Override - public void onSelection(SelectionEvent event) { - String id = highchartsLayoutPanel.getElement().getId(); - onDownloadJPG(id); - } - }); - - downloadPDFItem.addSelectionHandler(new SelectionHandler() { - - @Override - public void onSelection(SelectionEvent event) { - String id = highchartsLayoutPanel.getElement().getId(); - onDownloadPDF(id); - } - }); - - downloadSVGItem.addSelectionHandler(new SelectionHandler() { - - @Override - public void onSelection(SelectionEvent event) { - String id = highchartsLayoutPanel.getElement().getId(); - onDownloadSVG(id); - } - }); - - menuDownload.add(downloadCSVItem); - menuDownload.add(downloadXMLItem); - menuDownload.add(downloadJSONItem); - menuDownload.add(downloadPNGItem); - menuDownload.add(downloadJPGItem); - menuDownload.add(downloadPDFItem); - menuDownload.add(downloadSVGItem); - return menuDownload; - - } - - private Menu createMeasureMenu() { - Menu menuMeasure = new Menu(); - // TODO - durationItem = new MenuItem(ServiceChartMeasure.Duration.getLabel()); - durationItem.setHeight(30); - operationCountItem = new MenuItem(ServiceChartMeasure.OperationCount.getLabel()); - operationCountItem.setHeight(30); - maxInvocationTimeItem = new MenuItem(ServiceChartMeasure.MaxInvocationTime.getLabel()); - maxInvocationTimeItem.setHeight(30); - minInvocationTimeItem = new MenuItem(ServiceChartMeasure.MinInvocationTime.getLabel()); - minInvocationTimeItem.setHeight(30); - - durationItem.addSelectionHandler(new SelectionHandler() { - - @Override - public void onSelection(SelectionEvent event) { - measureButton.setText(ServiceChartMeasure.Duration.getLabel()); - measure = ServiceChartMeasure.Duration; - unitButton.setVisible(true); - updateChart(); - } - }); - - operationCountItem.addSelectionHandler(new SelectionHandler() { - - @Override - public void onSelection(SelectionEvent event) { - measureButton.setText(ServiceChartMeasure.OperationCount.getLabel()); - measure = ServiceChartMeasure.OperationCount; - unitButton.setVisible(false); - updateChart(); - } - }); - - maxInvocationTimeItem.addSelectionHandler(new SelectionHandler() { - - @Override - public void onSelection(SelectionEvent event) { - measureButton.setText(ServiceChartMeasure.MaxInvocationTime.getLabel()); - measure = ServiceChartMeasure.MaxInvocationTime; - unitButton.setVisible(true); - updateChart(); - } - }); - - minInvocationTimeItem.addSelectionHandler(new SelectionHandler() { - - @Override - public void onSelection(SelectionEvent event) { - measureButton.setText(ServiceChartMeasure.MinInvocationTime.getLabel()); - measure = ServiceChartMeasure.MinInvocationTime; - unitButton.setVisible(true); - updateChart(); - } - }); - - menuMeasure.add(durationItem); - menuMeasure.add(maxInvocationTimeItem); - menuMeasure.add(minInvocationTimeItem); - menuMeasure.add(operationCountItem); - - return menuMeasure; - - } - - private Menu createUnitMenu() { - Menu menuUnit = new Menu(); - msItem = new MenuItem(TimeUnitMeasure.MILLISECONDS, AccountingManagerResources.INSTANCE.accountingUnitms24()); - msItem.setHeight(30); - sItem = new MenuItem(TimeUnitMeasure.SECONDS, AccountingManagerResources.INSTANCE.accountingUnits24()); - sItem.setHeight(30); - mItem = new MenuItem(TimeUnitMeasure.MINUTES, AccountingManagerResources.INSTANCE.accountingUnitm24()); - mItem.setHeight(30); - hItem = new MenuItem(TimeUnitMeasure.HOURS, AccountingManagerResources.INSTANCE.accountingUnith24()); - hItem.setHeight(30); - - msItem.addSelectionHandler(new SelectionHandler() { - - @Override - public void onSelection(SelectionEvent event) { - unitMeasure = TimeUnitMeasure.getMilliseconds(); - unitMeasureLabel = TimeUnitMeasure.MS; - unitButton.setIcon(AccountingManagerResources.INSTANCE.accountingUnitms24()); - updateChart(); - } - }); - - sItem.addSelectionHandler(new SelectionHandler() { - - @Override - public void onSelection(SelectionEvent event) { - unitMeasure = TimeUnitMeasure.getSeconds(); - unitMeasureLabel = TimeUnitMeasure.S; - unitButton.setIcon(AccountingManagerResources.INSTANCE.accountingUnits24()); - updateChart(); - } - }); - - mItem.addSelectionHandler(new SelectionHandler() { - - @Override - public void onSelection(SelectionEvent event) { - unitMeasure = TimeUnitMeasure.getMinutes(); - unitMeasureLabel = TimeUnitMeasure.M; - unitButton.setIcon(AccountingManagerResources.INSTANCE.accountingUnitm24()); - updateChart(); - } - }); - - hItem.addSelectionHandler(new SelectionHandler() { - - @Override - public void onSelection(SelectionEvent event) { - unitMeasure = TimeUnitMeasure.getHours(); - unitMeasureLabel = TimeUnitMeasure.H; - unitButton.setIcon(AccountingManagerResources.INSTANCE.accountingUnith24()); - updateChart(); - } - }); - - menuUnit.add(msItem); - menuUnit.add(sItem); - menuUnit.add(mItem); - menuUnit.add(hItem); - return menuUnit; - - } - - private void onDownloadCSV() { - ExportRequestEvent event = new ExportRequestEvent(ExportType.CSV, accountingStateData.getAccountingType()); - eventBus.fireEvent(event); - } - - private void onDownloadXML() { - ExportRequestEvent event = new ExportRequestEvent(ExportType.XML, accountingStateData.getAccountingType()); - eventBus.fireEvent(event); - } - - private void onDownloadJSON() { - ExportRequestEvent event = new ExportRequestEvent(ExportType.JSON, accountingStateData.getAccountingType()); - eventBus.fireEvent(event); - } - - // chart.options.exporting.buttons.contextButton.menuItems[0].onclick(); - - public static native void onDownloadPNG(String id) /*-{ - console.log(id); - var chart = $wnd - .jQuery('#' + id) - .highcharts( - this.@org.gcube.portlets.admin.accountingmanager.client.maindata.charts.service.ServiceChartContextPanel::options); - console.log(chart); - chart.exportChart(); - - }-*/; - - public static native void onDownloadJPG(String id) /*-{ - console.log(id); - var chart = $wnd - .jQuery('#' + id) - .highcharts( - this.@org.gcube.portlets.admin.accountingmanager.client.maindata.charts.service.ServiceChartContextPanel::options); - console.log(chart); - chart.exportChart({ - type : 'image/jpeg' - }); - - }-*/; - - public static native void onDownloadPDF(String id) /*-{ - console.log(id); - var chart = $wnd - .jQuery('#' + id) - .highcharts( - this.@org.gcube.portlets.admin.accountingmanager.client.maindata.charts.service.ServiceChartContextPanel::options); - console.log(chart); - chart.exportChart({ - type : 'application/pdf' - }); - - }-*/; - - public static native void onDownloadSVG(String id) /*-{ - console.log(id); - var chart = $wnd - .jQuery('#' + id) - .highcharts( - this.@org.gcube.portlets.admin.accountingmanager.client.maindata.charts.service.ServiceChartContextPanel::options); - console.log(chart); - chart.exportChart({ - type : 'image/svg+xml' - }); - - }-*/; - - private void createChart() { - SeriesService seriesService = (SeriesService) accountingStateData.getSeriesResponse(); - - if (!(seriesService.getSerieServiceDefinition() instanceof SeriesServiceContext)) { - Log.debug("Invalid SeriesServiceContext!"); - return; - } - SeriesServiceContext seriesServiceContext = (SeriesServiceContext) seriesService.getSerieServiceDefinition(); - - HighchartsOptionFactory highchartsFactory = new JsoHighchartsOptionFactory(); - - options = highchartsFactory.createChartOptions(); - options.chart().zoomType("xy"); - options.exporting().buttons().contextButton().enabled(false); - options.exporting().filename("AccountingServiceContext"); - options.title().text("Accounting Service Context"); - - /* - * options.subtitle().text("Click and drag in the plot area to zoom in" - * ); - */ - - ArrayString colors = options.colors(); - // colors.setValue(0, "#cc0038"); - // colors.setValue(1, "#32cd32"); - - // yAxis - options.setFieldAsJsonObject("yAxis", retrieveYAxis(colors)); - - options.plotOptions().setFieldAsJsonObject("column", - "{ " + "\"stacking\": \"normal\"," + "\"dataLabels\": { " + " \"enabled\": \"true\"," - + " \"color\": \"white\", " + " \"style\": {" - + " \"textShadow\": \"0 0 3px black\"" + " }" + " }" + " }"); - - ArrayList seriesColumn = new ArrayList<>(); - /* - * if (seriesServiceContext.getShowOthers()) { - * createSeriesColumnShowOthers(seriesServiceContext, highchartsFactory, - * colors, seriesColumn); } else { - */ - createSeriesColumnSimple(seriesServiceContext, highchartsFactory, colors, seriesColumn); - /* } */ - for (SeriesColumn serie : seriesColumn) { - options.series().addToEnd(serie); - } - - options.chart().showAxes(true); - - options.legend().enabled(true); - return; - } - - private void createSeriesColumnShowOthers(SeriesServiceContext seriesServiceContext, - HighchartsOptionFactory highchartsFactory, ArrayString colors, ArrayList seriesColumn) { - Log.debug("Series ShowOthers"); - if (accountingStateData.getSeriesRequest().getAccountingPeriod().getPeriod() - .compareTo(AccountingPeriodMode.DAILY) == 0 - || accountingStateData.getSeriesRequest().getAccountingPeriod().getPeriod() - .compareTo(AccountingPeriodMode.HOURLY) == 0 - || accountingStateData.getSeriesRequest().getAccountingPeriod().getPeriod() - .compareTo(AccountingPeriodMode.MINUTELY) == 0) { - - double minRange = ChartTimeMeasure - .calculateMinRange(accountingStateData.getSeriesRequest().getAccountingPeriod()); - - double interval = ChartTimeMeasure - .calculateInterval(accountingStateData.getSeriesRequest().getAccountingPeriod()); - - Date dateStart = dtf.parse(accountingStateData.getSeriesRequest().getAccountingPeriod().getStartDate()); - - dateStart.setTime(dateStart.getTime() + ChartTimeMeasure.timeZoneOffset() * ChartTimeMeasure.MINUTE); - - Log.debug("BuildChart DateStart: " - + DateTimeFormat.getFormat(PredefinedFormat.DATE_TIME_FULL).format(dateStart)); - - // xAxis - options.xAxis().type("datetime"); - options.xAxis().minRange(minRange); - options.tooltip().xDateFormat("Selected Data"); - - int i = 0; - for (; i < seriesServiceContext.getSeriesServiceDataContextList().size() - && i < MAX_NUMBER_OF_CONTEXT; i++) { - SeriesColumn seriesColumnData = highchartsFactory.createSeriesColumn(); - - seriesColumnData.name(seriesServiceContext.getSeriesServiceDataContextList().get(i).getContext()); - seriesColumnData.color(colors.get(i)); - seriesColumnData.type("column"); - - ArrayNumber data = seriesColumnData.dataAsArrayNumber(); - - for (SeriesServiceData seriesServiceData : seriesServiceContext.getSeriesServiceDataContextList().get(i) - .getSeries()) { - switch (measure) { - case Duration: - data.push(seriesServiceData.getDuration() / unitMeasure); - break; - case MaxInvocationTime: - data.push(seriesServiceData.getMaxInvocationTime() / unitMeasure); - break; - case MinInvocationTime: - data.push(seriesServiceData.getMinInvocationTime() / unitMeasure); - break; - case OperationCount: - data.push(seriesServiceData.getOperationCount()); - break; - default: - data.push(seriesServiceData.getDuration() / unitMeasure); - break; - - } - - } - - seriesColumnData.pointInterval(interval).pointStart(dateStart.getTime()); - seriesColumn.add(seriesColumnData); - - } - - if (i < seriesServiceContext.getSeriesServiceDataContextList().size()) { - SeriesColumn seriesColumnData = highchartsFactory.createSeriesColumn(); - - seriesColumnData.name("Others"); - seriesColumnData.color(colors.get(i)); - seriesColumnData.type("column"); - - ArrayList othersData = new ArrayList<>(); - for (int j = i; j < seriesServiceContext.getSeriesServiceDataContextList().size(); j++) { - Long value; - for (int k = 0; k < seriesServiceContext.getSeriesServiceDataContextList().get(j).getSeries() - .size(); k++) { - SeriesServiceData seriesServiceData = seriesServiceContext.getSeriesServiceDataContextList() - .get(j).getSeries().get(k); - if (j == i) { - switch (measure) { - case Duration: - othersData.add(seriesServiceData.getDuration() / unitMeasure); - break; - case MaxInvocationTime: - othersData.add(seriesServiceData.getMaxInvocationTime() / unitMeasure); - break; - case MinInvocationTime: - othersData.add(seriesServiceData.getMinInvocationTime() / unitMeasure); - break; - case OperationCount: - othersData.add(seriesServiceData.getOperationCount()); - break; - default: - othersData.add(seriesServiceData.getDuration() / unitMeasure); - break; - } - } else { - switch (measure) { - case Duration: - value = (seriesServiceData.getDuration() / unitMeasure) + othersData.get(k); - othersData.set(k, value); - break; - case MaxInvocationTime: - value = (seriesServiceData.getMaxInvocationTime() / unitMeasure) + othersData.get(k); - othersData.set(k, value); - break; - case MinInvocationTime: - value = (seriesServiceData.getMinInvocationTime() / unitMeasure) + othersData.get(k); - othersData.set(k, value); - break; - case OperationCount: - value = seriesServiceData.getOperationCount() + othersData.get(k); - othersData.set(k, value); - break; - default: - value = (seriesServiceData.getDuration() / unitMeasure) + othersData.get(k); - othersData.set(k, value); - break; - - } - - } - - } - } - - ArrayNumber data = seriesColumnData.dataAsArrayNumber(); - - for (Long value : othersData) { - data.push(value); - } - - seriesColumnData.pointInterval(interval).pointStart(dateStart.getTime()); - seriesColumn.add(seriesColumnData); - - } - } else { - // xAxis - options.xAxis().type("datetime"); - - if (accountingStateData.getSeriesRequest().getAccountingPeriod().getPeriod() - .compareTo(AccountingPeriodMode.MONTHLY) == 0) { - // options.tooltip().xDateFormat("%b, %Y"); - options.tooltip().xDateFormat("Selected Data"); - - } else { - if (accountingStateData.getSeriesRequest().getAccountingPeriod().getPeriod() - .compareTo(AccountingPeriodMode.YEARLY) == 0) { - // options.tooltip().xDateFormat("%Y"); - options.tooltip().xDateFormat("Selected Data"); - - } else { - options.tooltip().xDateFormat("Selected Data"); - } - - } - - int i = 0; - for (; i < seriesServiceContext.getSeriesServiceDataContextList().size() - && i < MAX_NUMBER_OF_CONTEXT; i++) { - SeriesColumn seriesColumnData = highchartsFactory.createSeriesColumn(); - - seriesColumnData.name(seriesServiceContext.getSeriesServiceDataContextList().get(i).getContext()); - seriesColumnData.color(colors.get(i)); - seriesColumnData.type("column"); - - Array arrayData = seriesColumnData.dataAsArrayObject(); - - for (SeriesServiceData seriesServiceData : seriesServiceContext.getSeriesServiceDataContextList().get(i) - .getSeries()) { - long dateFrom1970 = seriesServiceData.getDate().getTime(); - - Log.debug("SeriersServiceData: " + seriesServiceData.getDate()); - Log.debug("SeriersServiceData: " + dateFrom1970); - - Data data = highchartsFactory.createSeriesColumnData(); - - switch (measure) { - case Duration: - data.x(dateFrom1970); - data.y(seriesServiceData.getDuration() / unitMeasure); - arrayData.addToEnd(data); - break; - case MaxInvocationTime: - data.x(dateFrom1970); - data.y(seriesServiceData.getMaxInvocationTime() / unitMeasure); - arrayData.addToEnd(data); - break; - case MinInvocationTime: - data.x(dateFrom1970); - data.y(seriesServiceData.getMinInvocationTime() / unitMeasure); - arrayData.addToEnd(data); - break; - case OperationCount: - data.x(dateFrom1970); - data.y(seriesServiceData.getOperationCount()); - arrayData.addToEnd(data); - break; - default: - data.x(dateFrom1970); - data.y(seriesServiceData.getDuration() / unitMeasure); - arrayData.addToEnd(data); - break; - - } - - } - - seriesColumn.add(seriesColumnData); - - } - - if (i < seriesServiceContext.getSeriesServiceDataContextList().size()) { - SeriesColumn seriesColumnData = highchartsFactory.createSeriesColumn(); - - seriesColumnData.name("Others"); - seriesColumnData.color(colors.get(i)); - seriesColumnData.type("column"); - - ArrayList othersData = new ArrayList<>(); - for (int j = i; j < seriesServiceContext.getSeriesServiceDataContextList().size(); j++) { - ChartDateTimeData chartDateTimeData; - for (int k = 0; k < seriesServiceContext.getSeriesServiceDataContextList().get(j).getSeries() - .size(); k++) { - SeriesServiceData seriesServiceData = seriesServiceContext.getSeriesServiceDataContextList() - .get(j).getSeries().get(k); - if (j == i) { - switch (measure) { - case Duration: - chartDateTimeData = new ChartDateTimeData(seriesServiceData.getDate(), - seriesServiceData.getDuration() / unitMeasure); - othersData.add(chartDateTimeData); - break; - case MaxInvocationTime: - chartDateTimeData = new ChartDateTimeData(seriesServiceData.getDate(), - seriesServiceData.getMaxInvocationTime() / unitMeasure); - othersData.add(chartDateTimeData); - break; - case MinInvocationTime: - chartDateTimeData = new ChartDateTimeData(seriesServiceData.getDate(), - seriesServiceData.getMinInvocationTime() / unitMeasure); - othersData.add(chartDateTimeData); - break; - case OperationCount: - chartDateTimeData = new ChartDateTimeData(seriesServiceData.getDate(), - seriesServiceData.getOperationCount()); - othersData.add(chartDateTimeData); - break; - default: - chartDateTimeData = new ChartDateTimeData(seriesServiceData.getDate(), - seriesServiceData.getDuration() / unitMeasure); - othersData.add(chartDateTimeData); - break; - } - } else { - switch (measure) { - case Duration: - chartDateTimeData = new ChartDateTimeData(seriesServiceData.getDate(), - (seriesServiceData.getDuration() / unitMeasure) + othersData.get(k).getValue()); - othersData.set(k, chartDateTimeData); - break; - case MaxInvocationTime: - chartDateTimeData = new ChartDateTimeData(seriesServiceData.getDate(), - (seriesServiceData.getMaxInvocationTime() / unitMeasure) - + othersData.get(k).getValue()); - othersData.set(k, chartDateTimeData); - break; - case MinInvocationTime: - chartDateTimeData = new ChartDateTimeData(seriesServiceData.getDate(), - (seriesServiceData.getMinInvocationTime() / unitMeasure) - + othersData.get(k).getValue()); - othersData.set(k, chartDateTimeData); - break; - case OperationCount: - chartDateTimeData = new ChartDateTimeData(seriesServiceData.getDate(), - seriesServiceData.getOperationCount() + othersData.get(k).getValue()); - othersData.set(k, chartDateTimeData); - break; - default: - chartDateTimeData = new ChartDateTimeData(seriesServiceData.getDate(), - (seriesServiceData.getDuration() / unitMeasure) + othersData.get(k).getValue()); - othersData.set(k, chartDateTimeData); - break; - - } - - } - - } - } - - Array arrayData = seriesColumnData.dataAsArrayObject(); - - for (ChartDateTimeData chartDateTimeData : othersData) { - long dateFrom1970 = chartDateTimeData.getDate().getTime(); - - Log.debug("SeriersOthersData: " + chartDateTimeData.getDate()); - Log.debug("SeriersOthersData: " + dateFrom1970); - - Data data = highchartsFactory.createSeriesColumnData(); - - data.x(dateFrom1970); - data.y(chartDateTimeData.getValue()); - arrayData.addToEnd(data); - - } - - seriesColumn.add(seriesColumnData); - - } - - } - } - - private void createSeriesColumnSimple(SeriesServiceContext seriesServiceContext, - HighchartsOptionFactory highchartsFactory, ArrayString colors, ArrayList seriesColumn) { - Log.debug("Series Simple"); - if (accountingStateData.getSeriesRequest().getAccountingPeriod().getPeriod() - .compareTo(AccountingPeriodMode.DAILY) == 0 - || accountingStateData.getSeriesRequest().getAccountingPeriod().getPeriod() - .compareTo(AccountingPeriodMode.HOURLY) == 0 - || accountingStateData.getSeriesRequest().getAccountingPeriod().getPeriod() - .compareTo(AccountingPeriodMode.MINUTELY) == 0) { - - double minRange = ChartTimeMeasure - .calculateMinRange(accountingStateData.getSeriesRequest().getAccountingPeriod()); - - double interval = ChartTimeMeasure - .calculateInterval(accountingStateData.getSeriesRequest().getAccountingPeriod()); - - Date dateStart = dtf.parse(accountingStateData.getSeriesRequest().getAccountingPeriod().getStartDate()); - - dateStart.setTime(dateStart.getTime() + ChartTimeMeasure.timeZoneOffset() * ChartTimeMeasure.MINUTE); - - Log.debug("BuildChart DateStart: " - + DateTimeFormat.getFormat(PredefinedFormat.DATE_TIME_FULL).format(dateStart)); - - // xAxis - options.xAxis().type("datetime"); - options.xAxis().minRange(minRange); - options.tooltip().xDateFormat("Selected Data"); - - for (int i = 0; i < seriesServiceContext.getSeriesServiceDataContextList().size(); i++) { - SeriesColumn seriesColumnData = highchartsFactory.createSeriesColumn(); - - seriesColumnData.name(seriesServiceContext.getSeriesServiceDataContextList().get(i).getContext()); - seriesColumnData.color(colors.get(i)); - seriesColumnData.type("column"); - - ArrayNumber data = seriesColumnData.dataAsArrayNumber(); - - for (SeriesServiceData seriesServiceData : seriesServiceContext.getSeriesServiceDataContextList().get(i) - .getSeries()) { - switch (measure) { - case Duration: - data.push(seriesServiceData.getDuration() / unitMeasure); - break; - case MaxInvocationTime: - data.push(seriesServiceData.getMaxInvocationTime() / unitMeasure); - break; - case MinInvocationTime: - data.push(seriesServiceData.getMinInvocationTime() / unitMeasure); - break; - case OperationCount: - data.push(seriesServiceData.getOperationCount()); - break; - default: - data.push(seriesServiceData.getDuration() / unitMeasure); - break; - - } - - } - - seriesColumnData.pointInterval(interval).pointStart(dateStart.getTime()); - seriesColumn.add(seriesColumnData); - - } - } else { - // xAxis - options.xAxis().type("datetime"); - - if (accountingStateData.getSeriesRequest().getAccountingPeriod().getPeriod() - .compareTo(AccountingPeriodMode.MONTHLY) == 0) { - // options.tooltip().xDateFormat("%b, %Y"); - options.tooltip().xDateFormat("Selected Data"); - - } else { - if (accountingStateData.getSeriesRequest().getAccountingPeriod().getPeriod() - .compareTo(AccountingPeriodMode.YEARLY) == 0) { - // options.tooltip().xDateFormat("%Y"); - options.tooltip().xDateFormat("Selected Data"); - - } else { - options.tooltip().xDateFormat("Selected Data"); - } - - } - - for (int i = 0; i < seriesServiceContext.getSeriesServiceDataContextList().size(); i++) { - SeriesColumn seriesColumnData = highchartsFactory.createSeriesColumn(); - - seriesColumnData.name(seriesServiceContext.getSeriesServiceDataContextList().get(i).getContext()); - seriesColumnData.color(colors.get(i)); - seriesColumnData.type("column"); - - Array arrayData = seriesColumnData.dataAsArrayObject(); - - for (SeriesServiceData seriesServiceData : seriesServiceContext.getSeriesServiceDataContextList().get(i) - .getSeries()) { - long dateFrom1970 = seriesServiceData.getDate().getTime(); - - Log.debug("SeriersServiceData: " + seriesServiceData.getDate()); - Log.debug("SeriersServiceData: " + dateFrom1970); - - Data data = highchartsFactory.createSeriesColumnData(); - - switch (measure) { - case Duration: - data.x(dateFrom1970); - data.y(seriesServiceData.getDuration() / unitMeasure); - arrayData.addToEnd(data); - break; - case MaxInvocationTime: - data.x(dateFrom1970); - data.y(seriesServiceData.getMaxInvocationTime() / unitMeasure); - arrayData.addToEnd(data); - break; - case MinInvocationTime: - data.x(dateFrom1970); - data.y(seriesServiceData.getMinInvocationTime() / unitMeasure); - arrayData.addToEnd(data); - break; - case OperationCount: - data.x(dateFrom1970); - data.y(seriesServiceData.getOperationCount()); - arrayData.addToEnd(data); - break; - default: - data.x(dateFrom1970); - data.y(seriesServiceData.getDuration() / unitMeasure); - arrayData.addToEnd(data); - break; - - } - - } - - seriesColumn.add(seriesColumnData); - - } - } - } - - private String retrieveYAxis(ArrayString colors) { - switch (measure) { - case Duration: - return "[{" + " \"id\": \"" + ServiceChartMeasure.Duration.name() + "\"," + " \"labels\": {" - + " \"format\": \"{value} " + unitMeasureLabel + "\"," + " \"style\": {" - + " \"color\": \"" + colors.get(1) + "\"" + " }" + " }," + " \"stackLabels\": {" - + " \"enabled\": \"true\"," + " \"style\": {" + " \"fontWeight\": \"bold\"," - + " \"color\": \"gray\"" + " } " + " }," + " \"title\": { " + " \"text\": \"" - + ServiceChartMeasure.Duration.getLabel() + "\"," + " \"style\": {" + " \"color\": \"" - + colors.get(1) + "\"" + " }" + " }" + "}]"; - case MaxInvocationTime: - return "[{" + " \"id\": \"" + ServiceChartMeasure.MaxInvocationTime.name() + "\"," + " \"labels\": {" - + " \"format\": \"{value} " + unitMeasureLabel + "\"," + " \"style\": {" - + " \"color\": \"" + colors.get(1) + "\"" + " }" + " }," + " \"stackLabels\": {" - + " \"enabled\": \"true\"," + " \"style\": {" + " \"fontWeight\": \"bold\"," - + " \"color\": \"gray\"" + " } " + " }," + " \"title\": { " + " \"text\": \"" - + ServiceChartMeasure.MaxInvocationTime.getLabel() + "\"," + " \"style\": {" - + " \"color\": \"" + colors.get(1) + "\"" + " }" + " }" + "}]"; - case MinInvocationTime: - return "[{" + " \"id\": \"" + ServiceChartMeasure.MinInvocationTime.name() + "\"," + " \"labels\": {" - + " \"format\": \"{value} " + unitMeasureLabel + "\"," + " \"style\": {" - + " \"color\": \"" + colors.get(1) + "\"" + " }" + " }," + " \"stackLabels\": {" - + " \"enabled\": \"true\"," + " \"style\": {" + " \"fontWeight\": \"bold\"," - + " \"color\": \"gray\"" + " } " + " }," + " \"title\": { " + " \"text\": \"" - + ServiceChartMeasure.MinInvocationTime.getLabel() + "\"," + " \"style\": {" - + " \"color\": \"" + colors.get(1) + "\"" + " }" + " }" + "}]"; - case OperationCount: - return "[{" + " \"id\": \"" + ServiceChartMeasure.OperationCount.name() + "\"," + " \"labels\": { " - + " \"format\": \"{value}\"," + " \"style\": { " + " \"color\": \"" + colors.get(1) - + "\"" + " }" + " }," + " \"stackLabels\": {" + " \"enabled\": \"true\"," + " \"style\": {" - + " \"fontWeight\": \"bold\"," + " \"color\": \"gray\"" + " } " + " }," - + " \"title\": { " + " \"text\": \"" + ServiceChartMeasure.OperationCount.getLabel() + "\"," - + " \"style\": {" + " \"color\": \"" + colors.get(1) + "\"" + " }" + " }" + "}]"; - - default: - return "[{" + " \"id\": \"" + ServiceChartMeasure.Duration.name() + "\"," + " \"labels\": {" - + " \"format\": \"{value} " + unitMeasureLabel + "\"," + " \"style\": {" - + " \"color\": \"" + colors.get(1) + "\"" + " }" + " }," + " \"stackLabels\": {" - + " \"enabled\": \"true\"," + " \"style\": {" + " \"fontWeight\": \"bold\"," - + " \"color\": \"gray\"" + " } " + " }," + " \"title\": { " + " \"text\": \"" - + ServiceChartMeasure.Duration.getLabel() + "\"," + " \"style\": {" + " \"color\": \"" - + colors.get(1) + "\"" + " }" + " }" + "}]"; - - } - - } - -} diff --git a/src/main/java/org/gcube/portlets/admin/accountingmanager/client/maindata/charts/storage/StorageChartContextPanel.java b/src/main/java/org/gcube/portlets/admin/accountingmanager/client/maindata/charts/storage/StorageChartContextPanel.java deleted file mode 100644 index 4377896..0000000 --- a/src/main/java/org/gcube/portlets/admin/accountingmanager/client/maindata/charts/storage/StorageChartContextPanel.java +++ /dev/null @@ -1,1007 +0,0 @@ -package org.gcube.portlets.admin.accountingmanager.client.maindata.charts.storage; - -import java.util.ArrayList; -import java.util.Date; - -import org.gcube.portlets.admin.accountingmanager.client.event.ExportRequestEvent; -import org.gcube.portlets.admin.accountingmanager.client.maindata.charts.utils.ByteUnitMeasure; -import org.gcube.portlets.admin.accountingmanager.client.maindata.charts.utils.ChartDateTimeData; -import org.gcube.portlets.admin.accountingmanager.client.maindata.charts.utils.ChartTimeMeasure; -import org.gcube.portlets.admin.accountingmanager.client.maindata.charts.utils.DownloadConstants; -import org.gcube.portlets.admin.accountingmanager.client.maindata.charts.utils.StorageChartMeasure; -import org.gcube.portlets.admin.accountingmanager.client.resource.AccountingManagerResources; -import org.gcube.portlets.admin.accountingmanager.client.state.AccountingClientStateData; -import org.gcube.portlets.admin.accountingmanager.shared.data.AccountingPeriodMode; -import org.gcube.portlets.admin.accountingmanager.shared.data.response.SeriesStorage; -import org.gcube.portlets.admin.accountingmanager.shared.data.response.storage.SeriesStorageContext; -import org.gcube.portlets.admin.accountingmanager.shared.data.response.storage.SeriesStorageData; -import org.gcube.portlets.admin.accountingmanager.shared.export.ExportType; - -import com.allen_sauer.gwt.log.client.Log; -import com.github.highcharts4gwt.client.view.widget.HighchartsLayoutPanel; -import com.github.highcharts4gwt.model.array.api.Array; -import com.github.highcharts4gwt.model.array.api.ArrayNumber; -import com.github.highcharts4gwt.model.array.api.ArrayString; -import com.github.highcharts4gwt.model.factory.api.HighchartsOptionFactory; -import com.github.highcharts4gwt.model.factory.jso.JsoHighchartsOptionFactory; -import com.github.highcharts4gwt.model.highcharts.option.api.ChartOptions; -import com.github.highcharts4gwt.model.highcharts.option.api.SeriesColumn; -import com.github.highcharts4gwt.model.highcharts.option.api.seriescolumn.Data; -import com.google.gwt.event.logical.shared.SelectionEvent; -import com.google.gwt.event.logical.shared.SelectionHandler; -import com.google.gwt.event.shared.EventBus; -import com.google.gwt.i18n.client.DateTimeFormat; -import com.google.gwt.i18n.client.DateTimeFormat.PredefinedFormat; -import com.sencha.gxt.cell.core.client.ButtonCell.ButtonArrowAlign; -import com.sencha.gxt.cell.core.client.ButtonCell.IconAlign; -import com.sencha.gxt.core.client.util.Margins; -import com.sencha.gxt.widget.core.client.button.TextButton; -import com.sencha.gxt.widget.core.client.container.BoxLayoutContainer.BoxLayoutData; -import com.sencha.gxt.widget.core.client.container.MarginData; -import com.sencha.gxt.widget.core.client.container.SimpleContainer; -import com.sencha.gxt.widget.core.client.container.VerticalLayoutContainer; -import com.sencha.gxt.widget.core.client.container.VerticalLayoutContainer.VerticalLayoutData; -import com.sencha.gxt.widget.core.client.menu.Item; -import com.sencha.gxt.widget.core.client.menu.Menu; -import com.sencha.gxt.widget.core.client.menu.MenuItem; -import com.sencha.gxt.widget.core.client.toolbar.ToolBar; - -/** - * - * @author Giancarlo Panichi - * - * - */ -public class StorageChartContextPanel extends SimpleContainer { - private static final int MAX_NUMBER_OF_CONTEXT = 20; - - private static final String DATA_VOLUME_UNIT = "Data Volume Unit"; - // private static final String MEASURE_TYPE = "Measure"; - - private DateTimeFormat dtf = DateTimeFormat - .getFormat(PredefinedFormat.YEAR_MONTH_DAY); - - private EventBus eventBus; - private AccountingClientStateData accountingStateData; - private HighchartsLayoutPanel highchartsLayoutPanel; - - // Download Menu - private MenuItem downloadCSVItem; - private MenuItem downloadXMLItem; - private MenuItem downloadJSONItem; - private MenuItem downloadPNGItem; - private MenuItem downloadJPGItem; - private MenuItem downloadPDFItem; - private MenuItem downloadSVGItem; - - // Measure Menu - private MenuItem dataVolumeItem; - private MenuItem operationCountItem; - - // Unit Menu - private MenuItem kBItem; - private MenuItem MBItem; - private MenuItem GBItem; - private MenuItem TBItem; - - private long unitMeasure = ByteUnitMeasure.getMegaByteDimForStorage(); - private String unitMeasureLabel = ByteUnitMeasure.MB; - private TextButton unitButton; - - private ChartOptions options; - - private StorageChartMeasure measure = StorageChartMeasure.DataVolume; - private TextButton measureButton; - - private VerticalLayoutContainer vert; - - public StorageChartContextPanel(EventBus eventBus, - AccountingClientStateData accountingStateData) { - this.eventBus = eventBus; - this.accountingStateData = accountingStateData; - forceLayoutOnResize = true; - create(); - - } - - private void create() { - ToolBar toolBar = new ToolBar(); - toolBar.setSpacing(2); - // Download - final TextButton downloadButton = new TextButton( - DownloadConstants.DOWNLOAD, - AccountingManagerResources.INSTANCE.accountingDownload24()); - // downloadButton.setScale(ButtonScale.MEDIUM); - downloadButton.setIconAlign(IconAlign.RIGHT); - downloadButton.setArrowAlign(ButtonArrowAlign.RIGHT); - downloadButton.setMenu(createDownloadMenu()); - - // Measure - measureButton = new TextButton( - StorageChartMeasure.DataVolume.getLabel(), - AccountingManagerResources.INSTANCE.accountingByte24()); - measureButton.setIconAlign(IconAlign.RIGHT); - measureButton.setArrowAlign(ButtonArrowAlign.RIGHT); - measureButton.setMenu(createMeasureMenu()); - - // Unit - unitButton = new TextButton(DATA_VOLUME_UNIT, - AccountingManagerResources.INSTANCE.accountingUnitMB24()); - unitButton.setIconAlign(IconAlign.RIGHT); - unitButton.setArrowAlign(ButtonArrowAlign.RIGHT); - unitButton.setMenu(createUnitMenu()); - - toolBar.add(downloadButton, new BoxLayoutData(new Margins(0))); - toolBar.add(measureButton, new BoxLayoutData(new Margins(0))); - toolBar.add(unitButton, new BoxLayoutData(new Margins(0))); - - // - createChart(); - - highchartsLayoutPanel = new HighchartsLayoutPanel(); - highchartsLayoutPanel.renderChart(options); - - // - vert = new VerticalLayoutContainer(); - vert.add(toolBar, new VerticalLayoutData(1, -1, new Margins(0))); - vert.add(highchartsLayoutPanel, new VerticalLayoutData(1, 1, - new Margins(0))); - - add(vert, new MarginData(0)); - - } - - private void updateChart() { - createChart(); - highchartsLayoutPanel.renderChart(options); - forceLayout(); - /* - * vert.remove(highchartsLayoutPanel); // createChart(); - * - * highchartsLayoutPanel = new HighchartsLayoutPanel(); - * highchartsLayoutPanel.renderChart(options); - * - * vert.add(highchartsLayoutPanel, new VerticalLayoutData(1, 1, new - * Margins(0))); - * - * forceLayout(); - */ - } - - private Menu createDownloadMenu() { - Menu menuDownload = new Menu(); - downloadCSVItem = new MenuItem(DownloadConstants.DOWNLOAD_CSV, - AccountingManagerResources.INSTANCE.accountingFileCSV24()); - downloadCSVItem.setHeight(30); - downloadXMLItem = new MenuItem(DownloadConstants.DOWNLOAD_XML, - AccountingManagerResources.INSTANCE.accountingFileXML24()); - downloadXMLItem.setHeight(30); - downloadJSONItem = new MenuItem(DownloadConstants.DOWNLOAD_JSON, - AccountingManagerResources.INSTANCE.accountingFileJSON24()); - downloadJSONItem.setHeight(30); - downloadPNGItem = new MenuItem(DownloadConstants.DOWNLOAD_PNG, - AccountingManagerResources.INSTANCE.accountingFilePNG24()); - downloadPNGItem.setHeight(30); - downloadJPGItem = new MenuItem(DownloadConstants.DOWNLOAD_JPG, - AccountingManagerResources.INSTANCE.accountingFileJPG24()); - downloadJPGItem.setHeight(30); - downloadPDFItem = new MenuItem(DownloadConstants.DOWNLOAD_PDF, - AccountingManagerResources.INSTANCE.accountingFilePDF24()); - downloadPDFItem.setHeight(30); - downloadSVGItem = new MenuItem(DownloadConstants.DOWNLOAD_SVG, - AccountingManagerResources.INSTANCE.accountingFileSVG24()); - downloadSVGItem.setHeight(30); - - downloadCSVItem.addSelectionHandler(new SelectionHandler() { - - @Override - public void onSelection(SelectionEvent event) { - onDownloadCSV(); - - } - - }); - - downloadXMLItem.addSelectionHandler(new SelectionHandler() { - - @Override - public void onSelection(SelectionEvent event) { - onDownloadXML(); - - } - - }); - - downloadJSONItem.addSelectionHandler(new SelectionHandler() { - - @Override - public void onSelection(SelectionEvent event) { - onDownloadJSON(); - - } - - }); - - downloadPNGItem.addSelectionHandler(new SelectionHandler() { - - @Override - public void onSelection(SelectionEvent event) { - String id = highchartsLayoutPanel.getElement().getId(); - onDownloadPNG(id); - - } - }); - - downloadJPGItem.addSelectionHandler(new SelectionHandler() { - - @Override - public void onSelection(SelectionEvent event) { - String id = highchartsLayoutPanel.getElement().getId(); - onDownloadJPG(id); - } - }); - - downloadPDFItem.addSelectionHandler(new SelectionHandler() { - - @Override - public void onSelection(SelectionEvent event) { - String id = highchartsLayoutPanel.getElement().getId(); - onDownloadPDF(id); - } - }); - - downloadSVGItem.addSelectionHandler(new SelectionHandler() { - - @Override - public void onSelection(SelectionEvent event) { - String id = highchartsLayoutPanel.getElement().getId(); - onDownloadSVG(id); - } - }); - - menuDownload.add(downloadCSVItem); - menuDownload.add(downloadXMLItem); - menuDownload.add(downloadJSONItem); - menuDownload.add(downloadPNGItem); - menuDownload.add(downloadJPGItem); - menuDownload.add(downloadPDFItem); - menuDownload.add(downloadSVGItem); - return menuDownload; - - } - - private Menu createMeasureMenu() { - Menu menuMeasure = new Menu(); - dataVolumeItem = new MenuItem(StorageChartMeasure.DataVolume.getLabel()); - dataVolumeItem.setHeight(30); - operationCountItem = new MenuItem( - StorageChartMeasure.OperationCount.getLabel()); - operationCountItem.setHeight(30); - - dataVolumeItem.addSelectionHandler(new SelectionHandler() { - - @Override - public void onSelection(SelectionEvent event) { - measureButton.setText(StorageChartMeasure.DataVolume.getLabel()); - measure = StorageChartMeasure.DataVolume; - unitButton.setVisible(true); - updateChart(); - } - }); - - operationCountItem.addSelectionHandler(new SelectionHandler() { - - @Override - public void onSelection(SelectionEvent event) { - measureButton.setText(StorageChartMeasure.OperationCount - .getLabel()); - measure = StorageChartMeasure.OperationCount; - unitButton.setVisible(false); - updateChart(); - } - }); - - menuMeasure.add(dataVolumeItem); - menuMeasure.add(operationCountItem); - - return menuMeasure; - - } - - private Menu createUnitMenu() { - Menu menuUnit = new Menu(); - kBItem = new MenuItem(ByteUnitMeasure.KILOBYTE, - AccountingManagerResources.INSTANCE.accountingUnitkB24()); - kBItem.setHeight(30); - MBItem = new MenuItem(ByteUnitMeasure.MEGABYTE, - AccountingManagerResources.INSTANCE.accountingUnitMB24()); - MBItem.setHeight(30); - GBItem = new MenuItem(ByteUnitMeasure.GIGABYTE, - AccountingManagerResources.INSTANCE.accountingUnitGB24()); - GBItem.setHeight(30); - TBItem = new MenuItem(ByteUnitMeasure.TERABYTE, - AccountingManagerResources.INSTANCE.accountingUnitTB24()); - TBItem.setHeight(30); - - kBItem.addSelectionHandler(new SelectionHandler() { - - @Override - public void onSelection(SelectionEvent event) { - unitMeasure = ByteUnitMeasure.getKiloByteDimForStorage(); - unitMeasureLabel = ByteUnitMeasure.kB; - unitButton.setIcon(AccountingManagerResources.INSTANCE - .accountingUnitkB24()); - updateChart(); - } - }); - - MBItem.addSelectionHandler(new SelectionHandler() { - - @Override - public void onSelection(SelectionEvent event) { - unitMeasure = ByteUnitMeasure.getMegaByteDimForStorage(); - unitMeasureLabel = ByteUnitMeasure.MB; - unitButton.setIcon(AccountingManagerResources.INSTANCE - .accountingUnitMB24()); - updateChart(); - } - }); - - GBItem.addSelectionHandler(new SelectionHandler() { - - @Override - public void onSelection(SelectionEvent event) { - unitMeasure = ByteUnitMeasure.getGigaByteDimForStorage(); - unitMeasureLabel = ByteUnitMeasure.GB; - unitButton.setIcon(AccountingManagerResources.INSTANCE - .accountingUnitGB24()); - updateChart(); - } - }); - - TBItem.addSelectionHandler(new SelectionHandler() { - - @Override - public void onSelection(SelectionEvent event) { - unitMeasure = ByteUnitMeasure.getTeraByteDimForStorage(); - unitMeasureLabel = ByteUnitMeasure.TB; - unitButton.setIcon(AccountingManagerResources.INSTANCE - .accountingUnitTB24()); - updateChart(); - } - }); - - menuUnit.add(kBItem); - menuUnit.add(MBItem); - menuUnit.add(GBItem); - menuUnit.add(TBItem); - return menuUnit; - - } - - private void onDownloadCSV() { - ExportRequestEvent event = new ExportRequestEvent(ExportType.CSV, - accountingStateData.getAccountingType()); - eventBus.fireEvent(event); - } - - private void onDownloadXML() { - ExportRequestEvent event = new ExportRequestEvent(ExportType.XML, - accountingStateData.getAccountingType()); - eventBus.fireEvent(event); - } - - private void onDownloadJSON() { - ExportRequestEvent event = new ExportRequestEvent(ExportType.JSON, - accountingStateData.getAccountingType()); - eventBus.fireEvent(event); - } - - // chart.options.exporting.buttons.contextButton.menuItems[0].onclick(); - - public static native void onDownloadPNG(String id) /*-{ - console.log(id); - var chart = $wnd - .jQuery('#' + id) - .highcharts( - this.@org.gcube.portlets.admin.accountingmanager.client.maindata.charts.storage.StorageChartContextPanel::options); - console.log(chart); - chart.exportChart(); - - }-*/; - - public static native void onDownloadJPG(String id) /*-{ - console.log(id); - var chart = $wnd - .jQuery('#' + id) - .highcharts( - this.@org.gcube.portlets.admin.accountingmanager.client.maindata.charts.storage.StorageChartContextPanel::options); - console.log(chart); - chart.exportChart({ - type : 'image/jpeg' - }); - - }-*/; - - public static native void onDownloadPDF(String id) /*-{ - console.log(id); - var chart = $wnd - .jQuery('#' + id) - .highcharts( - this.@org.gcube.portlets.admin.accountingmanager.client.maindata.charts.storage.StorageChartContextPanel::options); - console.log(chart); - chart.exportChart({ - type : 'application/pdf' - }); - - }-*/; - - public static native void onDownloadSVG(String id) /*-{ - console.log(id); - var chart = $wnd - .jQuery('#' + id) - .highcharts( - this.@org.gcube.portlets.admin.accountingmanager.client.maindata.charts.storage.StorageChartContextPanel::options); - console.log(chart); - chart.exportChart({ - type : 'image/svg+xml' - }); - - }-*/; - - private void createChart() { - SeriesStorage seriesStorage = (SeriesStorage) accountingStateData - .getSeriesResponse(); - - if (!(seriesStorage.getSeriesStorageDefinition() instanceof SeriesStorageContext)) { - Log.debug("Invalid SeriesStorageContext!"); - return; - } - SeriesStorageContext seriesStorageContext = (SeriesStorageContext) seriesStorage - .getSeriesStorageDefinition(); - - HighchartsOptionFactory highchartsFactory = new JsoHighchartsOptionFactory(); - - options = highchartsFactory.createChartOptions(); - options.chart().zoomType("xy"); - options.exporting().buttons().contextButton().enabled(false); - options.exporting().filename("AccountingStorageContext"); - options.title().text("Accounting Storage Context"); - - /* - * options.subtitle().text("Click and drag in the plot area to zoom in"); - */ - - ArrayString colors = options.colors(); - // colors.setValue(0, "#cc0038"); - // colors.setValue(1, "#32cd32"); - - // yAxis - options.setFieldAsJsonObject("yAxis", retrieveYAxis(colors)); - - options.plotOptions().setFieldAsJsonObject( - "column", - "{ " + "\"stacking\": \"normal\"," + "\"dataLabels\": { " - + " \"enabled\": \"true\"," - + " \"color\": \"white\", " + " \"style\": {" - + " \"textShadow\": \"0 0 3px black\"" + " }" - + " }" + " }"); - - ArrayList seriesColumn = new ArrayList<>(); - /*if (seriesStorageContext.getShowOthers()) { - createSeriesColumnShowOthers(seriesStorageContext, highchartsFactory, - colors, seriesColumn); - } else {*/ - createSeriesColumnSimple(seriesStorageContext, highchartsFactory, - colors, seriesColumn); - /*}*/ - - for (SeriesColumn serie : seriesColumn) { - options.series().addToEnd(serie); - } - - options.chart().showAxes(true); - - options.legend().enabled(true); - return; - } - - private void createSeriesColumnShowOthers( - SeriesStorageContext seriesStorageContext, - HighchartsOptionFactory highchartsFactory, ArrayString colors, - ArrayList seriesColumn) { - Log.debug("Series ShowOthers"); - if (accountingStateData.getSeriesRequest().getAccountingPeriod() - .getPeriod().compareTo(AccountingPeriodMode.DAILY) == 0 - || accountingStateData.getSeriesRequest().getAccountingPeriod() - .getPeriod().compareTo(AccountingPeriodMode.HOURLY) == 0 - || accountingStateData.getSeriesRequest().getAccountingPeriod() - .getPeriod().compareTo(AccountingPeriodMode.MINUTELY) == 0) { - - double minRange = ChartTimeMeasure - .calculateMinRange(accountingStateData.getSeriesRequest() - .getAccountingPeriod()); - - double interval = ChartTimeMeasure - .calculateInterval(accountingStateData.getSeriesRequest() - .getAccountingPeriod()); - - Date dateStart = dtf.parse(accountingStateData.getSeriesRequest() - .getAccountingPeriod().getStartDate()); - - dateStart.setTime(dateStart.getTime() - + ChartTimeMeasure.timeZoneOffset() - * ChartTimeMeasure.MINUTE); - - Log.debug("BuildChart DateStart: " - + DateTimeFormat.getFormat(PredefinedFormat.DATE_TIME_FULL) - .format(dateStart)); - - // xAxis - options.xAxis().type("datetime"); - options.xAxis().minRange(minRange); - options.tooltip().xDateFormat("Selected Data"); - - int i = 0; - for (; i < seriesStorageContext.getSeriesStorageDataContextList().size() - && i < MAX_NUMBER_OF_CONTEXT; i++) { - SeriesColumn seriesColumnData = highchartsFactory - .createSeriesColumn(); - - seriesColumnData.name(seriesStorageContext - .getSeriesStorageDataContextList().get(i).getContext()); - seriesColumnData.color(colors.get(i)); - seriesColumnData.type("column"); - - ArrayNumber data = seriesColumnData.dataAsArrayNumber(); - - for (SeriesStorageData seriesStorageData : seriesStorageContext - .getSeriesStorageDataContextList().get(i).getSeries()) { - switch (measure) { - case DataVolume: - data.push(seriesStorageData.getDataVolume() - / unitMeasure); - break; - case OperationCount: - data.push(seriesStorageData.getOperationCount()); - break; - default: - data.push(seriesStorageData.getDataVolume()); - break; - - } - - } - - seriesColumnData.pointInterval(interval).pointStart( - dateStart.getTime()); - seriesColumn.add(seriesColumnData); - - } - - if (i < seriesStorageContext.getSeriesStorageDataContextList().size()) { - SeriesColumn seriesColumnData = highchartsFactory - .createSeriesColumn(); - - seriesColumnData.name("Others"); - seriesColumnData.color(colors.get(i)); - seriesColumnData.type("column"); - - ArrayList othersData = new ArrayList<>(); - for (int j = i; j < seriesStorageContext - .getSeriesStorageDataContextList().size(); j++) { - Long value; - for (int k = 0; k < seriesStorageContext - .getSeriesStorageDataContextList().get(j).getSeries() - .size(); k++) { - SeriesStorageData seriesStorageData = seriesStorageContext - .getSeriesStorageDataContextList().get(j) - .getSeries().get(k); - if (j == i) { - switch (measure) { - case DataVolume: - othersData.add(seriesStorageData - .getDataVolume() / unitMeasure); - break; - case OperationCount: - othersData.add(seriesStorageData - .getOperationCount()); - break; - default: - othersData.add(seriesStorageData - .getDataVolume() / unitMeasure); - break; - - } - } else { - switch (measure) { - case DataVolume: - - value = seriesStorageData.getDataVolume() - / unitMeasure + othersData.get(k); - othersData.set(k, value); - break; - case OperationCount: - value = seriesStorageData.getOperationCount() - + othersData.get(k); - othersData.set(k, value); - break; - default: - value = seriesStorageData.getDataVolume() - / unitMeasure + othersData.get(k); - othersData.set(k, value); - break; - - } - } - - } - } - - ArrayNumber data = seriesColumnData.dataAsArrayNumber(); - - for (Long value : othersData) { - data.push(value); - } - - seriesColumnData.pointInterval(interval).pointStart( - dateStart.getTime()); - seriesColumn.add(seriesColumnData); - } - - } else { - // xAxis - options.xAxis().type("datetime"); - - if (accountingStateData.getSeriesRequest().getAccountingPeriod() - .getPeriod().compareTo(AccountingPeriodMode.MONTHLY) == 0) { - //options.tooltip().xDateFormat("%b, %Y"); - options.tooltip().xDateFormat("Selected Data"); - - } else { - if (accountingStateData.getSeriesRequest() - .getAccountingPeriod().getPeriod() - .compareTo(AccountingPeriodMode.YEARLY) == 0) { - //options.tooltip().xDateFormat("%Y"); - options.tooltip().xDateFormat("Selected Data"); - - } else { - options.tooltip().xDateFormat("Selected Data"); - } - - } - - int i = 0; - for (; i < seriesStorageContext.getSeriesStorageDataContextList().size() - && i < MAX_NUMBER_OF_CONTEXT; i++) { - SeriesColumn seriesColumnData = highchartsFactory - .createSeriesColumn(); - - seriesColumnData.name(seriesStorageContext - .getSeriesStorageDataContextList().get(i).getContext()); - seriesColumnData.color(colors.get(i)); - seriesColumnData.type("column"); - - Array arrayData = seriesColumnData.dataAsArrayObject(); - - for (SeriesStorageData seriesStorageData : seriesStorageContext - .getSeriesStorageDataContextList().get(i).getSeries()) { - long dateFrom1970 = seriesStorageData.getDate().getTime(); - - Log.debug("SeriersStorageData: " - + seriesStorageData.getDate()); - Log.debug("SeriersStorageData: " + dateFrom1970); - - Data data = highchartsFactory.createSeriesColumnData(); - - switch (measure) { - case DataVolume: - data.x(dateFrom1970); - data.y(seriesStorageData.getDataVolume() / unitMeasure); - arrayData.addToEnd(data); - break; - case OperationCount: - data.x(dateFrom1970); - data.y(seriesStorageData.getOperationCount()); - arrayData.addToEnd(data); - break; - default: - data.x(dateFrom1970); - data.y(seriesStorageData.getDataVolume() / unitMeasure); - arrayData.addToEnd(data); - break; - - } - - } - - seriesColumn.add(seriesColumnData); - - } - - if (i < seriesStorageContext.getSeriesStorageDataContextList().size()) { - SeriesColumn seriesColumnData = highchartsFactory - .createSeriesColumn(); - - seriesColumnData.name("Others"); - seriesColumnData.color(colors.get(i)); - seriesColumnData.type("column"); - - ArrayList othersData = new ArrayList<>(); - for (int j = i; j < seriesStorageContext - .getSeriesStorageDataContextList().size(); j++) { - ChartDateTimeData chartDateTimeData; - for (int k = 0; k < seriesStorageContext - .getSeriesStorageDataContextList().get(j).getSeries() - .size(); k++) { - SeriesStorageData seriesStorageData = seriesStorageContext - .getSeriesStorageDataContextList().get(j) - .getSeries().get(k); - if (j == i) { - switch (measure) { - case DataVolume: - chartDateTimeData = new ChartDateTimeData( - seriesStorageData.getDate(), - seriesStorageData.getDataVolume() - / unitMeasure); - othersData.add(chartDateTimeData); - break; - case OperationCount: - chartDateTimeData = new ChartDateTimeData( - seriesStorageData.getDate(), - seriesStorageData.getOperationCount()); - othersData.add(chartDateTimeData); - break; - default: - chartDateTimeData = new ChartDateTimeData( - seriesStorageData.getDate(), - seriesStorageData.getDataVolume() - / unitMeasure); - othersData.add(chartDateTimeData); - break; - } - } else { - switch (measure) { - case DataVolume: - chartDateTimeData = new ChartDateTimeData( - seriesStorageData.getDate(), - (seriesStorageData.getDataVolume() / unitMeasure) - + othersData.get(k).getValue()); - othersData.set(k, chartDateTimeData); - break; - case OperationCount: - chartDateTimeData = new ChartDateTimeData( - seriesStorageData.getDate(), - seriesStorageData.getOperationCount() - + othersData.get(k).getValue()); - othersData.set(k, chartDateTimeData); - break; - default: - chartDateTimeData = new ChartDateTimeData( - seriesStorageData.getDate(), - (seriesStorageData.getDataVolume() / unitMeasure) - + othersData.get(k).getValue()); - othersData.set(k, chartDateTimeData); - break; - - } - } - - } - } - - Array arrayData = seriesColumnData.dataAsArrayObject(); - - for (ChartDateTimeData chartDateTimeData : othersData) { - long dateFrom1970 = chartDateTimeData.getDate().getTime(); - - Log.debug("SeriersOthersData: " - + chartDateTimeData.getDate()); - Log.debug("SeriersOthersData: " + dateFrom1970); - - Data data = highchartsFactory.createSeriesColumnData(); - - data.x(dateFrom1970); - data.y(chartDateTimeData.getValue()); - arrayData.addToEnd(data); - - } - - seriesColumn.add(seriesColumnData); - } - - } - - } - - private void createSeriesColumnSimple(SeriesStorageContext seriesStorageContext, - HighchartsOptionFactory highchartsFactory, ArrayString colors, - ArrayList seriesColumn) { - - Log.debug("Series Simple"); - if (accountingStateData.getSeriesRequest().getAccountingPeriod() - .getPeriod().compareTo(AccountingPeriodMode.DAILY) == 0 - || accountingStateData.getSeriesRequest().getAccountingPeriod() - .getPeriod().compareTo(AccountingPeriodMode.HOURLY) == 0 - || accountingStateData.getSeriesRequest().getAccountingPeriod() - .getPeriod().compareTo(AccountingPeriodMode.MINUTELY) == 0) { - - double minRange = ChartTimeMeasure - .calculateMinRange(accountingStateData.getSeriesRequest() - .getAccountingPeriod()); - - double interval = ChartTimeMeasure - .calculateInterval(accountingStateData.getSeriesRequest() - .getAccountingPeriod()); - - Date dateStart = dtf.parse(accountingStateData.getSeriesRequest() - .getAccountingPeriod().getStartDate()); - - dateStart.setTime(dateStart.getTime() - + ChartTimeMeasure.timeZoneOffset() - * ChartTimeMeasure.MINUTE); - - Log.debug("BuildChart DateStart: " - + DateTimeFormat.getFormat(PredefinedFormat.DATE_TIME_FULL) - .format(dateStart)); - - // xAxis - options.xAxis().type("datetime"); - options.xAxis().minRange(minRange); - options.tooltip().xDateFormat("Selected Data"); - - for (int i = 0; i < seriesStorageContext.getSeriesStorageDataContextList() - .size(); i++) { - SeriesColumn seriesColumnData = highchartsFactory - .createSeriesColumn(); - - seriesColumnData.name(seriesStorageContext - .getSeriesStorageDataContextList().get(i).getContext()); - seriesColumnData.color(colors.get(i)); - seriesColumnData.type("column"); - - ArrayNumber data = seriesColumnData.dataAsArrayNumber(); - - for (SeriesStorageData seriesStorageData : seriesStorageContext - .getSeriesStorageDataContextList().get(i).getSeries()) { - switch (measure) { - case DataVolume: - data.push(seriesStorageData.getDataVolume() - / unitMeasure); - break; - case OperationCount: - data.push(seriesStorageData.getOperationCount()); - break; - default: - data.push(seriesStorageData.getDataVolume()); - break; - - } - - } - - seriesColumnData.pointInterval(interval).pointStart( - dateStart.getTime()); - seriesColumn.add(seriesColumnData); - - } - - } else { - // xAxis - options.xAxis().type("datetime"); - - if (accountingStateData.getSeriesRequest().getAccountingPeriod() - .getPeriod().compareTo(AccountingPeriodMode.MONTHLY) == 0) { - //options.tooltip().xDateFormat("%b, %Y"); - options.tooltip().xDateFormat("Selected Data"); - - } else { - if (accountingStateData.getSeriesRequest() - .getAccountingPeriod().getPeriod() - .compareTo(AccountingPeriodMode.YEARLY) == 0) { - //options.tooltip().xDateFormat("%Y"); - options.tooltip().xDateFormat("Selected Data"); - - } else { - options.tooltip().xDateFormat("Selected Data"); - } - - } - - for (int i = 0; i < seriesStorageContext.getSeriesStorageDataContextList() - .size(); i++) { - SeriesColumn seriesColumnData = highchartsFactory - .createSeriesColumn(); - - seriesColumnData.name(seriesStorageContext - .getSeriesStorageDataContextList().get(i).getContext()); - seriesColumnData.color(colors.get(i)); - seriesColumnData.type("column"); - - Array arrayData = seriesColumnData.dataAsArrayObject(); - - for (SeriesStorageData seriesStorageData : seriesStorageContext - .getSeriesStorageDataContextList().get(i).getSeries()) { - long dateFrom1970 = seriesStorageData.getDate().getTime(); - - Log.debug("SeriersStorageData: " - + seriesStorageData.getDate()); - Log.debug("SeriersStorageData: " + dateFrom1970); - - Data data = highchartsFactory.createSeriesColumnData(); - - switch (measure) { - case DataVolume: - data.x(dateFrom1970); - data.y(seriesStorageData.getDataVolume() / unitMeasure); - arrayData.addToEnd(data); - break; - case OperationCount: - data.x(dateFrom1970); - data.y(seriesStorageData.getOperationCount()); - arrayData.addToEnd(data); - break; - default: - data.x(dateFrom1970); - data.y(seriesStorageData.getDataVolume() / unitMeasure); - arrayData.addToEnd(data); - break; - - } - - } - - seriesColumn.add(seriesColumnData); - - } - - } - } - - private String retrieveYAxis(ArrayString colors) { - switch (measure) { - case DataVolume: - return "[{" + " \"id\": \"" + StorageChartMeasure.DataVolume.name() - + "\"," + " \"labels\": {" + " \"format\": \"{value} " - + unitMeasureLabel + "\"," + " \"style\": {" - + " \"color\": \"" + colors.get(1) + "\"" + " }" - + " }," + " \"stackLabels\": {" + " \"enabled\": \"true\"," - + " \"style\": {" + " \"fontWeight\": \"bold\"," - + " \"color\": \"gray\"" + " } " + " }," - + " \"title\": { " + " \"text\": \"" - + StorageChartMeasure.DataVolume.getLabel() + "\"," - + " \"style\": {" + " \"color\": \"" - + colors.get(1) + "\"" + " }" + " }" + "}]"; - - case OperationCount: - return "[{" + " \"id\": \"" - + StorageChartMeasure.OperationCount.name() + "\"," - + " \"labels\": { " + " \"format\": \"{value}\"," - + " \"style\": { " + " \"color\": \"" - + colors.get(1) + "\"" + " }" + " }," - + " \"stackLabels\": {" + " \"enabled\": \"true\"," - + " \"style\": {" + " \"fontWeight\": \"bold\"," - + " \"color\": \"gray\"" + " } " + " }," - + " \"title\": { " + " \"text\": \"" - + StorageChartMeasure.OperationCount.getLabel() + "\"," - + " \"style\": {" + " \"color\": \"" - + colors.get(1) + "\"" + " }" + " }" + "}]"; - - default: - return "[{" + " \"id\": \"" + StorageChartMeasure.DataVolume.name() - + "\"," + " \"labels\": {" + " \"format\": \"{value} " - + unitMeasureLabel + "\"," + " \"style\": {" - + " \"color\": \"" + colors.get(1) + "\"" + " }" - + " }," + " \"stackLabels\": {" + " \"enabled\": \"true\"," - + " \"style\": {" + " \"fontWeight\": \"bold\"," - + " \"color\": \"gray\"" + " } " + " }," - + " \"title\": { " + " \"text\": \"" - + StorageChartMeasure.DataVolume.getLabel() + "\"," - + " \"style\": {" + " \"color\": \"" - + colors.get(1) + "\"" + " }" + " }" + "}]"; - - } - - } - -} diff --git a/src/main/java/org/gcube/portlets/admin/accountingmanager/client/properties/GenresDataPropertiesCombo.java b/src/main/java/org/gcube/portlets/admin/accountingmanager/client/properties/GenresDataPropertiesCombo.java deleted file mode 100644 index 8006eea..0000000 --- a/src/main/java/org/gcube/portlets/admin/accountingmanager/client/properties/GenresDataPropertiesCombo.java +++ /dev/null @@ -1,24 +0,0 @@ -package org.gcube.portlets.admin.accountingmanager.client.properties; - -import org.gcube.portlets.admin.accountingmanager.shared.data.GenresData; - -import com.google.gwt.editor.client.Editor.Path; -import com.sencha.gxt.data.shared.LabelProvider; -import com.sencha.gxt.data.shared.ModelKeyProvider; -import com.sencha.gxt.data.shared.PropertyAccess; - -/** - * - * @author giancarlo - * email: g.panichi@isti.cnr.it - * - */ -public interface GenresDataPropertiesCombo extends - PropertyAccess { - - @Path("genre") - ModelKeyProvider id(); - - LabelProvider label(); - -} \ No newline at end of file diff --git a/src/main/java/org/gcube/portlets/admin/accountingmanager/server/amservice/command/AccountingCommandContext.java b/src/main/java/org/gcube/portlets/admin/accountingmanager/server/amservice/command/AccountingCommandContext.java deleted file mode 100644 index 0f44916..0000000 --- a/src/main/java/org/gcube/portlets/admin/accountingmanager/server/amservice/command/AccountingCommandContext.java +++ /dev/null @@ -1,126 +0,0 @@ -package org.gcube.portlets.admin.accountingmanager.server.amservice.command; - -import java.util.Calendar; -import java.util.SortedMap; - -import org.gcube.accounting.analytics.Filter; -import org.gcube.accounting.analytics.Info; -import org.gcube.accounting.analytics.persistence.AccountingPersistenceQuery; -import org.gcube.accounting.analytics.persistence.AccountingPersistenceQueryFactory; -import org.gcube.portlets.admin.accountingmanager.server.amservice.query.AccountingQueryContext; -import org.gcube.portlets.admin.accountingmanager.server.amservice.response.SeriesResponse4JobContext; -import org.gcube.portlets.admin.accountingmanager.server.amservice.response.SeriesResponse4PortletContext; -import org.gcube.portlets.admin.accountingmanager.server.amservice.response.SeriesResponse4ServiceContext; -import org.gcube.portlets.admin.accountingmanager.server.amservice.response.SeriesResponse4StorageContext; -import org.gcube.portlets.admin.accountingmanager.server.amservice.response.SeriesResponse4TaskContext; -import org.gcube.portlets.admin.accountingmanager.server.amservice.response.SeriesResponseBuilder; -import org.gcube.portlets.admin.accountingmanager.server.amservice.response.SeriesResponseDirector; -import org.gcube.portlets.admin.accountingmanager.shared.data.AccountingType; -import org.gcube.portlets.admin.accountingmanager.shared.data.Context; -import org.gcube.portlets.admin.accountingmanager.shared.data.response.SeriesResponse; -import org.gcube.portlets.admin.accountingmanager.shared.exception.ServiceException; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - -/** - * - * @author Giancarlo Panichi - * - * - */ -public class AccountingCommandContext implements AccountingCommand { - private static final Logger logger = LoggerFactory - .getLogger(AccountingCommandContext.class); - - private AccountingQueryContext accountingQueryContext; - private AccountingType accountingType; - - public AccountingCommandContext(AccountingQueryContext accountingQueryContext, - AccountingType accountingType) { - this.accountingQueryContext = accountingQueryContext; - this.accountingType = accountingType; - } - - @Override - public SeriesResponse execute() throws ServiceException { - try { - AccountingPersistenceQuery apq = AccountingPersistenceQueryFactory - .getInstance(); - - logger.debug("Query Context: " - + accountingQueryContext.getContext()); - - SortedMap> contextSM; - - Context context=accountingQueryContext.getContext(); - - if(context==null){ - throw new ServiceException( - "Error retrieving context param: null!"); - } - - contextSM= apq.getContextTimeSeries(accountingQueryContext.getType(), - accountingQueryContext.getTemporalConstraint(), - accountingQueryContext.getFilters(), - context.getContexts(), - true); - - - if (contextSM == null) { - throw new ServiceException( - "Error retrieving info for context: sorted map is null!"); - } - - logger.debug("ContextSM: " + contextSM); - - SeriesResponseBuilder seriesResponseBuilder = getSeriesResponseBuilder( - accountingType, context, contextSM); - - SeriesResponseDirector seriesResponseDirector = new SeriesResponseDirector(); - seriesResponseDirector - .setSeriesResponseBuilder(seriesResponseBuilder); - seriesResponseDirector.constructSeriesResponse(); - SeriesResponse seriesResponse = seriesResponseDirector - .getSeriesResponse(); - - if (seriesResponse == null) { - throw new ServiceException("Error creating series response!"); - } - logger.debug("SeriesResponse Created: " + seriesResponse); - return seriesResponse; - - } catch (Throwable e) { - logger.error("Error in AccountingCommandTop(): " - + e.getLocalizedMessage()); - e.printStackTrace(); - throw new ServiceException("No data available!"); - - } - } - - private SeriesResponseBuilder getSeriesResponseBuilder( - AccountingType accountingType, Context context, - SortedMap> contextSM) - throws ServiceException { - if (accountingType == null) { - throw new ServiceException("Error accounting type is null"); - } - - switch (accountingType) { - case JOB: - return new SeriesResponse4JobContext(context,contextSM); - case PORTLET: - return new SeriesResponse4PortletContext(context, contextSM); - case SERVICE: - return new SeriesResponse4ServiceContext(context, contextSM); - case STORAGE: - return new SeriesResponse4StorageContext(context, contextSM); - case TASK: - return new SeriesResponse4TaskContext(context, contextSM); - default: - throw new ServiceException("Error request type is unknow!"); - - } - } - -} diff --git a/src/main/java/org/gcube/portlets/admin/accountingmanager/server/amservice/query/AccountingQueryContext.java b/src/main/java/org/gcube/portlets/admin/accountingmanager/server/amservice/query/AccountingQueryContext.java deleted file mode 100644 index 4376338..0000000 --- a/src/main/java/org/gcube/portlets/admin/accountingmanager/server/amservice/query/AccountingQueryContext.java +++ /dev/null @@ -1,71 +0,0 @@ -package org.gcube.portlets.admin.accountingmanager.server.amservice.query; - -import java.util.ArrayList; - -import org.gcube.accounting.analytics.Filter; -import org.gcube.accounting.analytics.TemporalConstraint; -import org.gcube.accounting.datamodel.AggregatedUsageRecord; -import org.gcube.portlets.admin.accountingmanager.shared.data.ChartType; -import org.gcube.portlets.admin.accountingmanager.shared.data.Context; - -/** - * - * @author Giancarlo Panichi - * - * - */ -public class AccountingQueryContext extends AccountingQuery { - private Class> type; - private Context context; - private TemporalConstraint temporalConstraint; - private ArrayList filters; - - public AccountingQueryContext(Class> type, Context context, - TemporalConstraint temporalConstraint, ArrayList filters) { - super(); - chartType = ChartType.Context; - this.type = type; - this.temporalConstraint = temporalConstraint; - this.filters = filters; - this.context = context; - } - - public Class> getType() { - return type; - } - - public void setType(Class> type) { - this.type = type; - } - - public TemporalConstraint getTemporalConstraint() { - return temporalConstraint; - } - - public void setTemporalConstraint(TemporalConstraint temporalConstraint) { - this.temporalConstraint = temporalConstraint; - } - - public ArrayList getFilters() { - return filters; - } - - public void setFilters(ArrayList filters) { - this.filters = filters; - } - - public Context getContext() { - return context; - } - - public void setContext(Context context) { - this.context = context; - } - - @Override - public String toString() { - return "AccountingQueryContext [type=" + type + ", context=" + context + ", temporalConstraint=" - + temporalConstraint + ", filters=" + filters + "]"; - } - -} \ No newline at end of file diff --git a/src/main/java/org/gcube/portlets/admin/accountingmanager/server/amservice/response/SeriesResponse4JobContext.java b/src/main/java/org/gcube/portlets/admin/accountingmanager/server/amservice/response/SeriesResponse4JobContext.java deleted file mode 100644 index ff9b131..0000000 --- a/src/main/java/org/gcube/portlets/admin/accountingmanager/server/amservice/response/SeriesResponse4JobContext.java +++ /dev/null @@ -1,91 +0,0 @@ -package org.gcube.portlets.admin.accountingmanager.server.amservice.response; - -import java.util.ArrayList; -import java.util.Calendar; -import java.util.SortedMap; - -import org.gcube.accounting.analytics.Filter; -import org.gcube.accounting.analytics.Info; -import org.gcube.accounting.datamodel.aggregation.AggregatedServiceUsageRecord; -import org.gcube.portlets.admin.accountingmanager.shared.data.Context; -import org.gcube.portlets.admin.accountingmanager.shared.data.response.SeriesJob; -import org.gcube.portlets.admin.accountingmanager.shared.data.response.job.SeriesJobContext; -import org.gcube.portlets.admin.accountingmanager.shared.data.response.job.SeriesJobData; -import org.gcube.portlets.admin.accountingmanager.shared.data.response.job.SeriesJobDataContext; -import org.gcube.portlets.admin.accountingmanager.shared.exception.ServiceException; -import org.json.JSONObject; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - -/** - * Context Series Response 4 Job - * - * @author Giancarlo Panichi - * - * - */ -public class SeriesResponse4JobContext extends SeriesResponseBuilder { - protected static Logger logger = LoggerFactory - .getLogger(SeriesResponse4JobContext.class); - private Context context; - private SortedMap> contextSM; - - public SeriesResponse4JobContext(Context context, - SortedMap> contextSM) { - this.context=context; - this.contextSM = contextSM; - } - - @Override - public void buildSeriesResponse() throws ServiceException { - try { - if (contextSM == null || contextSM.isEmpty()) { - logger.error("Error creating series for job accounting: No data available!"); - throw new ServiceException("No data available!"); - } - - ArrayList seriesJobDataContextList = new ArrayList<>(); - - for (Filter contextValue : contextSM.keySet()) { - - ArrayList series = new ArrayList<>(); - SortedMap infos = contextSM.get(contextValue); - for (Info info : infos.values()) { - JSONObject jso = info.getValue(); - Long duration = jso - .getLong(AggregatedServiceUsageRecord.DURATION); - Long operationCount = jso - .getLong(AggregatedServiceUsageRecord.OPERATION_COUNT); - Long maxInvocationTime = jso - .getLong(AggregatedServiceUsageRecord.MAX_INVOCATION_TIME); - Long minInvocationTime = jso - .getLong(AggregatedServiceUsageRecord.MIN_INVOCATION_TIME); - - series.add(new SeriesJobData(info.getCalendar().getTime(), - operationCount, duration, maxInvocationTime, - minInvocationTime)); - - } - SeriesJobDataContext seriesJobDataContext = new SeriesJobDataContext( - contextValue.getValue(), series); - seriesJobDataContextList.add(seriesJobDataContext); - - } - - SeriesJobContext seriesJobContext = new SeriesJobContext(context, - seriesJobDataContextList); - SeriesJob seriesService = new SeriesJob(seriesJobContext); - - seriesResponseSpec.setSr(seriesService); - - } catch (Throwable e) { - logger.error("Error creating series for job accounting context chart: " - + e.getLocalizedMessage()); - e.printStackTrace(); - throw new ServiceException( - "Error creating series for job accounting context chart: " - + e.getLocalizedMessage()); - } - - } -} diff --git a/src/main/java/org/gcube/portlets/admin/accountingmanager/server/amservice/response/SeriesResponse4PortletContext.java b/src/main/java/org/gcube/portlets/admin/accountingmanager/server/amservice/response/SeriesResponse4PortletContext.java deleted file mode 100644 index 30fc7fb..0000000 --- a/src/main/java/org/gcube/portlets/admin/accountingmanager/server/amservice/response/SeriesResponse4PortletContext.java +++ /dev/null @@ -1,89 +0,0 @@ -package org.gcube.portlets.admin.accountingmanager.server.amservice.response; - -import java.util.ArrayList; -import java.util.Calendar; -import java.util.SortedMap; - -import org.gcube.accounting.analytics.Filter; -import org.gcube.accounting.analytics.Info; -import org.gcube.accounting.datamodel.aggregation.AggregatedPortletUsageRecord; -import org.gcube.portlets.admin.accountingmanager.shared.data.Context; -import org.gcube.portlets.admin.accountingmanager.shared.data.response.SeriesPortlet; -import org.gcube.portlets.admin.accountingmanager.shared.data.response.portlet.SeriesPortletContext; -import org.gcube.portlets.admin.accountingmanager.shared.data.response.portlet.SeriesPortletData; -import org.gcube.portlets.admin.accountingmanager.shared.data.response.portlet.SeriesPortletDataContext; -import org.gcube.portlets.admin.accountingmanager.shared.exception.ServiceException; -import org.json.JSONObject; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - -/** - * Context Series Response 4 Portlet - * - * @author Giancarlo Panichi - * - * - */ -public class SeriesResponse4PortletContext extends SeriesResponseBuilder { - protected static Logger logger = LoggerFactory - .getLogger(SeriesResponse4PortletContext.class); - private Context context; - private SortedMap> contextSM; - - public SeriesResponse4PortletContext(Context context, - SortedMap> contextSM) { - this.context = context; - this.contextSM = contextSM; - } - - @Override - public void buildSeriesResponse() throws ServiceException { - try { - if (contextSM == null || contextSM.isEmpty()) { - logger.error("Error creating series for portlet accounting: No data available!"); - throw new ServiceException("No data available!"); - } - - ArrayList seriesPortletDataContextList = new ArrayList<>(); - - for (Filter contextValue : contextSM.keySet()) { - - ArrayList series = new ArrayList<>(); - SortedMap infos = contextSM.get(contextValue); - for (Info info : infos.values()) { - JSONObject jso = info.getValue(); - // Long duration = - // jso.getLong(AggregatedPortletUsageRecord.DURATION); - Long operationCount = jso - .getLong(AggregatedPortletUsageRecord.OPERATION_COUNT); - // Long maxInvocationTime = - // jso.getLong(AggregatedPortletUsageRecord.MAX_INVOCATION_TIME); - // Long minInvocationTime = - // jso.getLong(AggregatedPortletUsageRecord.MIN_INVOCATION_TIME); - - series.add(new SeriesPortletData(info.getCalendar() - .getTime(), operationCount)); - } - SeriesPortletDataContext seriesPortletDataContext = new SeriesPortletDataContext( - contextValue.getValue(), series); - seriesPortletDataContextList.add(seriesPortletDataContext); - - } - - SeriesPortletContext seriesPortletContext = new SeriesPortletContext( - context, seriesPortletDataContextList); - SeriesPortlet seriesPortlet = new SeriesPortlet( - seriesPortletContext); - - seriesResponseSpec.setSr(seriesPortlet); - - } catch (Throwable e) { - logger.error("Error creating series for portlet accounting context chart: " - + e.getLocalizedMessage()); - e.printStackTrace(); - throw new ServiceException( - "Error creating series for portlet accounting context chart: " - + e.getLocalizedMessage()); - } - } -} diff --git a/src/main/java/org/gcube/portlets/admin/accountingmanager/server/amservice/response/SeriesResponse4ServiceContext.java b/src/main/java/org/gcube/portlets/admin/accountingmanager/server/amservice/response/SeriesResponse4ServiceContext.java deleted file mode 100644 index 7bf9e98..0000000 --- a/src/main/java/org/gcube/portlets/admin/accountingmanager/server/amservice/response/SeriesResponse4ServiceContext.java +++ /dev/null @@ -1,92 +0,0 @@ -package org.gcube.portlets.admin.accountingmanager.server.amservice.response; - -import java.util.ArrayList; -import java.util.Calendar; -import java.util.SortedMap; - -import org.gcube.accounting.analytics.Filter; -import org.gcube.accounting.analytics.Info; -import org.gcube.accounting.datamodel.aggregation.AggregatedServiceUsageRecord; -import org.gcube.portlets.admin.accountingmanager.shared.data.Context; -import org.gcube.portlets.admin.accountingmanager.shared.data.response.SeriesService; -import org.gcube.portlets.admin.accountingmanager.shared.data.response.service.SeriesServiceContext; -import org.gcube.portlets.admin.accountingmanager.shared.data.response.service.SeriesServiceData; -import org.gcube.portlets.admin.accountingmanager.shared.data.response.service.SeriesServiceDataContext; -import org.gcube.portlets.admin.accountingmanager.shared.exception.ServiceException; -import org.json.JSONObject; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - -/** - * Context Series Response 4 Service - * - * @author Giancarlo Panichi - * - * - */ -public class SeriesResponse4ServiceContext extends SeriesResponseBuilder { - protected static Logger logger = LoggerFactory - .getLogger(SeriesResponse4ServiceContext.class); - private Context context; - private SortedMap> contextSM; - - public SeriesResponse4ServiceContext(Context context, - SortedMap> contextSM) { - this.context = context; - this.contextSM = contextSM; - } - - @Override - public void buildSeriesResponse() throws ServiceException { - try { - if (contextSM == null || contextSM.isEmpty()) { - logger.error("Error creating series for service accounting: No data available!"); - throw new ServiceException("No data available!"); - } - - ArrayList seriesServiceDataContextList = new ArrayList<>(); - - for (Filter contextValue : contextSM.keySet()) { - - ArrayList series = new ArrayList<>(); - SortedMap infos = contextSM.get(contextValue); - for (Info info : infos.values()) { - JSONObject jso = info.getValue(); - Long duration = jso - .getLong(AggregatedServiceUsageRecord.DURATION); - Long operationCount = jso - .getLong(AggregatedServiceUsageRecord.OPERATION_COUNT); - Long maxInvocationTime = jso - .getLong(AggregatedServiceUsageRecord.MAX_INVOCATION_TIME); - Long minInvocationTime = jso - .getLong(AggregatedServiceUsageRecord.MIN_INVOCATION_TIME); - - series.add(new SeriesServiceData(info.getCalendar() - .getTime(), operationCount, duration, - maxInvocationTime, minInvocationTime)); - - } - SeriesServiceDataContext seriesServiceDataContext = new SeriesServiceDataContext( - contextValue.getValue(), series); - seriesServiceDataContextList.add(seriesServiceDataContext); - - } - - SeriesServiceContext seriesServiceContext = new SeriesServiceContext(context, - seriesServiceDataContextList); - SeriesService seriesService = new SeriesService( - seriesServiceContext); - - seriesResponseSpec.setSr(seriesService); - - } catch (Throwable e) { - logger.error("Error creating series for service accounting context chart: " - + e.getLocalizedMessage()); - e.printStackTrace(); - throw new ServiceException( - "Error creating series for service accounting context chart: " - + e.getLocalizedMessage()); - } - - } -} diff --git a/src/main/java/org/gcube/portlets/admin/accountingmanager/server/amservice/response/SeriesResponse4StorageContext.java b/src/main/java/org/gcube/portlets/admin/accountingmanager/server/amservice/response/SeriesResponse4StorageContext.java deleted file mode 100644 index d6b587b..0000000 --- a/src/main/java/org/gcube/portlets/admin/accountingmanager/server/amservice/response/SeriesResponse4StorageContext.java +++ /dev/null @@ -1,85 +0,0 @@ -package org.gcube.portlets.admin.accountingmanager.server.amservice.response; - -import java.util.ArrayList; -import java.util.Calendar; -import java.util.SortedMap; - -import org.gcube.accounting.analytics.Filter; -import org.gcube.accounting.analytics.Info; -import org.gcube.accounting.datamodel.aggregation.AggregatedStorageUsageRecord; -import org.gcube.portlets.admin.accountingmanager.shared.data.Context; -import org.gcube.portlets.admin.accountingmanager.shared.data.response.SeriesStorage; -import org.gcube.portlets.admin.accountingmanager.shared.data.response.storage.SeriesStorageContext; -import org.gcube.portlets.admin.accountingmanager.shared.data.response.storage.SeriesStorageData; -import org.gcube.portlets.admin.accountingmanager.shared.data.response.storage.SeriesStorageDataContext; -import org.gcube.portlets.admin.accountingmanager.shared.exception.ServiceException; -import org.json.JSONObject; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - -/** - * Context Series Response 4 Storage - * - * @author Giancarlo Panichi - * - * - */ -public class SeriesResponse4StorageContext extends SeriesResponseBuilder { - protected static Logger logger = LoggerFactory - .getLogger(SeriesResponse4StorageContext.class); - private Context context; - private SortedMap> contextSM; - - public SeriesResponse4StorageContext(Context context, - SortedMap> contextSM) { - this.context = context; - this.contextSM = contextSM; - - } - - @Override - public void buildSeriesResponse() throws ServiceException { - try { - if (contextSM == null || contextSM.isEmpty()) { - logger.error("Error creating series for storage accounting: No data available!"); - throw new ServiceException("No data available!"); - } - - ArrayList seriesStorageDataContextList = new ArrayList<>(); - - for (Filter contextValue : contextSM.keySet()) { - - ArrayList series = new ArrayList<>(); - SortedMap infos = contextSM.get(contextValue); - for (Info info : infos.values()) { - JSONObject jso = info.getValue(); - Long dataVolume = jso - .getLong(AggregatedStorageUsageRecord.DATA_VOLUME); - Long operationCount = jso - .getLong(AggregatedStorageUsageRecord.OPERATION_COUNT); - series.add(new SeriesStorageData(info.getCalendar() - .getTime(), dataVolume, operationCount)); - - } - SeriesStorageDataContext seriesStorageDataContext = new SeriesStorageDataContext( - contextValue.getValue(), series); - seriesStorageDataContextList.add(seriesStorageDataContext); - - } - - SeriesStorageContext seriesStorageContext = new SeriesStorageContext( - context, seriesStorageDataContextList); - SeriesStorage seriesStorage = new SeriesStorage( - seriesStorageContext); - - seriesResponseSpec.setSr(seriesStorage); - } catch (Throwable e) { - logger.error("Error creating series for storage accounting context chart: " - + e.getLocalizedMessage()); - e.printStackTrace(); - throw new ServiceException( - "Error creating series for storage accounting context chart: " - + e.getLocalizedMessage()); - } - } -} diff --git a/src/main/java/org/gcube/portlets/admin/accountingmanager/server/amservice/response/SeriesResponse4TaskContext.java b/src/main/java/org/gcube/portlets/admin/accountingmanager/server/amservice/response/SeriesResponse4TaskContext.java deleted file mode 100644 index 7ec753e..0000000 --- a/src/main/java/org/gcube/portlets/admin/accountingmanager/server/amservice/response/SeriesResponse4TaskContext.java +++ /dev/null @@ -1,89 +0,0 @@ -package org.gcube.portlets.admin.accountingmanager.server.amservice.response; - -import java.util.ArrayList; -import java.util.Calendar; -import java.util.SortedMap; - -import org.gcube.accounting.analytics.Filter; -import org.gcube.accounting.analytics.Info; -//import org.gcube.accounting.datamodel.aggregation.AggregatedTaskUsageRecord; -import org.gcube.portlets.admin.accountingmanager.shared.data.Context; -import org.gcube.portlets.admin.accountingmanager.shared.data.response.SeriesTask; -import org.gcube.portlets.admin.accountingmanager.shared.data.response.task.SeriesTaskContext; -import org.gcube.portlets.admin.accountingmanager.shared.data.response.task.SeriesTaskData; -import org.gcube.portlets.admin.accountingmanager.shared.data.response.task.SeriesTaskDataContext; -import org.gcube.portlets.admin.accountingmanager.shared.exception.ServiceException; -import org.json.JSONObject; -import org.slf4j.Logger; -import org.slf4j.LoggerFactory; - -/** - * Context Series Response 4 Task - * - * @author Giancarlo Panichi - * - * - */ -public class SeriesResponse4TaskContext extends SeriesResponseBuilder { - protected static Logger logger = LoggerFactory - .getLogger(SeriesResponse4TaskContext.class); - private Context context; - private SortedMap> contextSM; - - public SeriesResponse4TaskContext(Context context, - SortedMap> contextSM) { - this.context = context; - this.contextSM = contextSM; - } - - @Override - public void buildSeriesResponse() throws ServiceException { - try { - if (contextSM == null || contextSM.isEmpty()) { - logger.error("Error creating series for task accounting: No data available!"); - throw new ServiceException("No data available!"); - } - - ArrayList seriesTaskDataContextList = new ArrayList<>(); - - for (Filter contextValue : contextSM.keySet()) { - - ArrayList series = new ArrayList<>(); - SortedMap infos = contextSM.get(contextValue); - for (Info info : infos.values()) { - @SuppressWarnings("unused") - JSONObject jso = info.getValue(); - // Long duration = - // jso.getLong(AggregatedTaskUsageRecord.DURATION); - //Long operationCount = jso - // .getLong(AggregatedTaskUsageRecord.OPERATION_COUNT); - // Long maxInvocationTime = - // jso.getLong(AggregatedTaskUsageRecord.MAX_INVOCATION_TIME); - // Long minInvocationTime = - // jso.getLong(AggregatedTaskUsageRecord.MIN_INVOCATION_TIME); - - //series.add(new SeriesTaskData(info.getCalendar().getTime(), - // operationCount)); - } - SeriesTaskDataContext seriesTaskDataContext = new SeriesTaskDataContext( - contextValue.getValue(), series); - seriesTaskDataContextList.add(seriesTaskDataContext); - - } - - SeriesTaskContext seriesTaskContext = new SeriesTaskContext( - context, seriesTaskDataContextList); - SeriesTask seriesTask = new SeriesTask(seriesTaskContext); - - seriesResponseSpec.setSr(seriesTask); - - } catch (Throwable e) { - logger.error("Error creating series for portlet accounting context chart: " - + e.getLocalizedMessage()); - e.printStackTrace(); - throw new ServiceException( - "Error creating series for portlet accounting context chart: " - + e.getLocalizedMessage()); - } - } -} diff --git a/src/main/java/org/gcube/portlets/admin/accountingmanager/shared/data/AccountingFilterContext.java b/src/main/java/org/gcube/portlets/admin/accountingmanager/shared/data/AccountingFilterContext.java deleted file mode 100644 index 8cbcf8f..0000000 --- a/src/main/java/org/gcube/portlets/admin/accountingmanager/shared/data/AccountingFilterContext.java +++ /dev/null @@ -1,58 +0,0 @@ -package org.gcube.portlets.admin.accountingmanager.shared.data; - -import java.io.Serializable; -import java.util.ArrayList; - -/** - * - * @author Giancarlo Panichi - * - * - */ -public class AccountingFilterContext extends AccountingFilterDefinition - implements Serializable { - - private static final long serialVersionUID = -6805006183397381154L; - private Context context; - private ArrayList filters; - - public AccountingFilterContext() { - super(); - this.chartType = ChartType.Context; - context = null; - filters = null; - - } - - public AccountingFilterContext(Context context, - ArrayList filters) { - super(); - chartType = ChartType.Context; - this.context = context; - this.filters = filters; - - } - - public Context getContext() { - return context; - } - - public void setContext(Context context) { - this.context = context; - } - - public ArrayList getFilters() { - return filters; - } - - public void setFilters(ArrayList filters) { - this.filters = filters; - } - - @Override - public String toString() { - return "AccountingFilterContext [context=" + context + ", filters=" - + filters + "]"; - } - -} diff --git a/src/main/java/org/gcube/portlets/admin/accountingmanager/shared/data/ScopeData.java b/src/main/java/org/gcube/portlets/admin/accountingmanager/shared/data/ScopeData.java deleted file mode 100644 index 34d8509..0000000 --- a/src/main/java/org/gcube/portlets/admin/accountingmanager/shared/data/ScopeData.java +++ /dev/null @@ -1,46 +0,0 @@ -package org.gcube.portlets.admin.accountingmanager.shared.data; - -import java.io.Serializable; - -/** - * - * @author Giancarlo Panichi - * - * - */ -public class GenresData implements Serializable { - - private static final long serialVersionUID = 719740085818609829L; - private String genre; - - public GenresData() { - super(); - } - - public GenresData(String genre) { - super(); - this.genre = genre; - } - - public String getGenre() { - return genre; - } - - public void setGenre(String genre) { - this.genre = genre; - } - - public String getLabel() { - return genre; - } - - public void setLabel(String genre) { - this.genre = genre; - } - - @Override - public String toString() { - return "GenresData [genre=" + genre + "]"; - } - -} diff --git a/src/main/java/org/gcube/portlets/admin/accountingmanager/shared/data/ScopesInfo.java b/src/main/java/org/gcube/portlets/admin/accountingmanager/shared/data/ScopesInfo.java deleted file mode 100644 index b5100e8..0000000 --- a/src/main/java/org/gcube/portlets/admin/accountingmanager/shared/data/ScopesInfo.java +++ /dev/null @@ -1,39 +0,0 @@ -package org.gcube.portlets.admin.accountingmanager.shared.data; - -import java.io.Serializable; -import java.util.ArrayList; - -/** - * - * @author Giancarlo Panichi - * - * - */ -public class Genres implements Serializable { - - private static final long serialVersionUID = -1704075020370137961L; - private ArrayList genresList; - - public Genres() { - super(); - } - - public Genres(ArrayList genresList) { - super(); - this.genresList = genresList; - } - - public ArrayList getGenresList() { - return genresList; - } - - public void setGenresList(ArrayList genresList) { - this.genresList = genresList; - } - - @Override - public String toString() { - return "Genres [genresList=" + genresList + "]"; - } - -} diff --git a/src/main/java/org/gcube/portlets/admin/accountingmanager/shared/data/response/job/SeriesJobContext.java b/src/main/java/org/gcube/portlets/admin/accountingmanager/shared/data/response/job/SeriesJobContext.java deleted file mode 100644 index f4ebe59..0000000 --- a/src/main/java/org/gcube/portlets/admin/accountingmanager/shared/data/response/job/SeriesJobContext.java +++ /dev/null @@ -1,57 +0,0 @@ -package org.gcube.portlets.admin.accountingmanager.shared.data.response.job; - -import java.util.ArrayList; - -import org.gcube.portlets.admin.accountingmanager.shared.data.ChartType; -import org.gcube.portlets.admin.accountingmanager.shared.data.Context; - -/** - * - * @author Giancarlo Panichi - * - * - */ -public class SeriesJobContext extends SeriesJobDefinition { - - private static final long serialVersionUID = -2350334263342186590L; - private Context context; - private ArrayList seriesJobDataContextList; - - public SeriesJobContext() { - super(); - this.chartType = ChartType.Context; - } - - public SeriesJobContext(Context context, - ArrayList seriesJobDataContextList) { - super(); - this.chartType = ChartType.Context; - this.context = context; - this.seriesJobDataContextList = seriesJobDataContextList; - } - - public Context getContext() { - return context; - } - - public void setContext(Context context) { - this.context = context; - } - - public ArrayList getSeriesJobDataContextList() { - return seriesJobDataContextList; - } - - public void setSeriesJobDataContextList( - ArrayList seriesJobDataContextList) { - this.seriesJobDataContextList = seriesJobDataContextList; - } - - @Override - public String toString() { - return "SeriesJobContext [context=" + context - + ", seriesJobDataContextList=" + seriesJobDataContextList - + "]"; - } - -} diff --git a/src/main/java/org/gcube/portlets/admin/accountingmanager/shared/data/response/job/SeriesJobDataContext.java b/src/main/java/org/gcube/portlets/admin/accountingmanager/shared/data/response/job/SeriesJobDataContext.java deleted file mode 100644 index 62e858d..0000000 --- a/src/main/java/org/gcube/portlets/admin/accountingmanager/shared/data/response/job/SeriesJobDataContext.java +++ /dev/null @@ -1,50 +0,0 @@ -package org.gcube.portlets.admin.accountingmanager.shared.data.response.job; - -import java.io.Serializable; -import java.util.ArrayList; - -/** - * - * @author Giancarlo Panichi - * - * - */ -public class SeriesJobDataContext implements Serializable { - - private static final long serialVersionUID = 6043106605633429465L; - private String context; - private ArrayList series; - - public SeriesJobDataContext() { - super(); - } - - public SeriesJobDataContext(String context, ArrayList series) { - super(); - this.context = context; - this.series = series; - } - - public String getContext() { - return context; - } - - public void setContext(String context) { - this.context = context; - } - - public ArrayList getSeries() { - return series; - } - - public void setSeries(ArrayList series) { - this.series = series; - } - - @Override - public String toString() { - return "SeriesJobDataContext [context=" + context + ", series=" - + series + "]"; - } - -} diff --git a/src/main/java/org/gcube/portlets/admin/accountingmanager/shared/data/response/portlet/SeriesPortletContext.java b/src/main/java/org/gcube/portlets/admin/accountingmanager/shared/data/response/portlet/SeriesPortletContext.java deleted file mode 100644 index 18e4980..0000000 --- a/src/main/java/org/gcube/portlets/admin/accountingmanager/shared/data/response/portlet/SeriesPortletContext.java +++ /dev/null @@ -1,57 +0,0 @@ -package org.gcube.portlets.admin.accountingmanager.shared.data.response.portlet; - -import java.util.ArrayList; - -import org.gcube.portlets.admin.accountingmanager.shared.data.ChartType; -import org.gcube.portlets.admin.accountingmanager.shared.data.Context; - -/** - * - * @author Giancarlo Panichi - * - * - */ -public class SeriesPortletContext extends SeriesPortletDefinition { - - private static final long serialVersionUID = -2350334263342186590L; - private Context context; - private ArrayList seriesPortletDataContextList; - - public SeriesPortletContext() { - super(); - this.chartType = ChartType.Context; - } - - public SeriesPortletContext(Context context, - ArrayList seriesPortletDataContextList) { - super(); - this.chartType = ChartType.Context; - this.context = context; - this.seriesPortletDataContextList = seriesPortletDataContextList; - } - - public Context getContext() { - return context; - } - - public void setContext(Context context) { - this.context = context; - } - - public ArrayList getSeriesPortletDataContextList() { - return seriesPortletDataContextList; - } - - public void setSeriesPortletDataContextList( - ArrayList seriesPortletDataContextList) { - this.seriesPortletDataContextList = seriesPortletDataContextList; - } - - @Override - public String toString() { - return "SeriesPortletContext [context=" + context - + ", seriesPortletDataContextList=" - + seriesPortletDataContextList + "]"; - } - -} diff --git a/src/main/java/org/gcube/portlets/admin/accountingmanager/shared/data/response/portlet/SeriesPortletDataContext.java b/src/main/java/org/gcube/portlets/admin/accountingmanager/shared/data/response/portlet/SeriesPortletDataContext.java deleted file mode 100644 index d8bbb1e..0000000 --- a/src/main/java/org/gcube/portlets/admin/accountingmanager/shared/data/response/portlet/SeriesPortletDataContext.java +++ /dev/null @@ -1,51 +0,0 @@ -package org.gcube.portlets.admin.accountingmanager.shared.data.response.portlet; - -import java.io.Serializable; -import java.util.ArrayList; - -/** - * - * @author Giancarlo Panichi - * - * - */ -public class SeriesPortletDataContext implements Serializable { - - private static final long serialVersionUID = 6043106605633429465L; - private String context; - private ArrayList series; - - public SeriesPortletDataContext() { - super(); - } - - public SeriesPortletDataContext(String context, - ArrayList series) { - super(); - this.context = context; - this.series = series; - } - - public String getContext() { - return context; - } - - public void setContext(String context) { - this.context = context; - } - - public ArrayList getSeries() { - return series; - } - - public void setSeries(ArrayList series) { - this.series = series; - } - - @Override - public String toString() { - return "SeriesPortletDataContext [context=" + context + ", series=" - + series + "]"; - } - -} diff --git a/src/main/java/org/gcube/portlets/admin/accountingmanager/shared/data/response/service/SeriesServiceContext.java b/src/main/java/org/gcube/portlets/admin/accountingmanager/shared/data/response/service/SeriesServiceContext.java deleted file mode 100644 index 18297ef..0000000 --- a/src/main/java/org/gcube/portlets/admin/accountingmanager/shared/data/response/service/SeriesServiceContext.java +++ /dev/null @@ -1,58 +0,0 @@ -package org.gcube.portlets.admin.accountingmanager.shared.data.response.service; - -import java.util.ArrayList; - -import org.gcube.portlets.admin.accountingmanager.shared.data.ChartType; -import org.gcube.portlets.admin.accountingmanager.shared.data.Context; - -/** - * - * @author Giancarlo Panichi - * - * - */ -public class SeriesServiceContext extends SeriesServiceDefinition { - - private static final long serialVersionUID = -2350334263342186590L; - private Context context; - private ArrayList seriesServiceDataContextList; - - public SeriesServiceContext() { - super(); - this.chartType = ChartType.Context; - - } - - public SeriesServiceContext(Context context, - ArrayList seriesServiceDataContextList) { - super(); - this.chartType = ChartType.Context; - this.context = context; - this.seriesServiceDataContextList = seriesServiceDataContextList; - } - - public Context getContext() { - return context; - } - - public void setContext(Context context) { - this.context = context; - } - - public ArrayList getSeriesServiceDataContextList() { - return seriesServiceDataContextList; - } - - public void setSeriesServiceDataContextList( - ArrayList seriesServiceDataContextList) { - this.seriesServiceDataContextList = seriesServiceDataContextList; - } - - @Override - public String toString() { - return "SeriesServiceContext [context=" + context - + ", seriesServiceDataContextList=" - + seriesServiceDataContextList + "]"; - } - -} diff --git a/src/main/java/org/gcube/portlets/admin/accountingmanager/shared/data/response/service/SeriesServiceDataContext.java b/src/main/java/org/gcube/portlets/admin/accountingmanager/shared/data/response/service/SeriesServiceDataContext.java deleted file mode 100644 index 24b1c47..0000000 --- a/src/main/java/org/gcube/portlets/admin/accountingmanager/shared/data/response/service/SeriesServiceDataContext.java +++ /dev/null @@ -1,51 +0,0 @@ -package org.gcube.portlets.admin.accountingmanager.shared.data.response.service; - -import java.io.Serializable; -import java.util.ArrayList; - -/** - * - * @author Giancarlo Panichi - * - * - */ -public class SeriesServiceDataContext implements Serializable { - - private static final long serialVersionUID = 6043106605633429465L; - private String context; - private ArrayList series; - - public SeriesServiceDataContext() { - super(); - } - - public SeriesServiceDataContext(String context, - ArrayList series) { - super(); - this.context = context; - this.series = series; - } - - public String getContext() { - return context; - } - - public void setContext(String context) { - this.context = context; - } - - public ArrayList getSeries() { - return series; - } - - public void setSeries(ArrayList series) { - this.series = series; - } - - @Override - public String toString() { - return "SeriesServiceDataContext [context=" + context + ", series=" - + series + "]"; - } - -} diff --git a/src/main/java/org/gcube/portlets/admin/accountingmanager/shared/data/response/storage/SeriesStorageContext.java b/src/main/java/org/gcube/portlets/admin/accountingmanager/shared/data/response/storage/SeriesStorageContext.java deleted file mode 100644 index f12ab07..0000000 --- a/src/main/java/org/gcube/portlets/admin/accountingmanager/shared/data/response/storage/SeriesStorageContext.java +++ /dev/null @@ -1,59 +0,0 @@ -package org.gcube.portlets.admin.accountingmanager.shared.data.response.storage; - -import java.util.ArrayList; - -import org.gcube.portlets.admin.accountingmanager.shared.data.ChartType; -import org.gcube.portlets.admin.accountingmanager.shared.data.Context; - -/** - * - * @author Giancarlo Panichi - * - * - */ -public class SeriesStorageContext extends SeriesStorageDefinition { - - private static final long serialVersionUID = -5477545972037227361L; - private Context context; - private ArrayList seriesStorageDataContextList; - - public SeriesStorageContext() { - super(); - this.chartType = ChartType.Context; - - } - - public SeriesStorageContext(Context context, - ArrayList seriesStorageDataContextList) { - super(); - this.chartType = ChartType.Context; - this.context=context; - this.seriesStorageDataContextList = seriesStorageDataContextList; - } - - public Context getContext() { - return context; - } - - public void setContext(Context context) { - this.context = context; - } - - public ArrayList getSeriesStorageDataContextList() { - return seriesStorageDataContextList; - } - - public void setSeriesStorageDataContextList( - ArrayList seriesStorageDataContextList) { - this.seriesStorageDataContextList = seriesStorageDataContextList; - } - - @Override - public String toString() { - return "SeriesStorageContext [context=" + context - + ", seriesStorageDataContextList=" - + seriesStorageDataContextList + "]"; - } - - -} diff --git a/src/main/java/org/gcube/portlets/admin/accountingmanager/shared/data/response/storage/SeriesStorageDataContext.java b/src/main/java/org/gcube/portlets/admin/accountingmanager/shared/data/response/storage/SeriesStorageDataContext.java deleted file mode 100644 index 875975b..0000000 --- a/src/main/java/org/gcube/portlets/admin/accountingmanager/shared/data/response/storage/SeriesStorageDataContext.java +++ /dev/null @@ -1,51 +0,0 @@ -package org.gcube.portlets.admin.accountingmanager.shared.data.response.storage; - -import java.io.Serializable; -import java.util.ArrayList; - -/** - * - * @author Giancarlo Panichi - * - * - */ -public class SeriesStorageDataContext implements Serializable { - - private static final long serialVersionUID = -627227653308818605L; - private String context; - private ArrayList series; - - public SeriesStorageDataContext() { - super(); - } - - public SeriesStorageDataContext(String context, - ArrayList series) { - super(); - this.context = context; - this.series = series; - } - - public String getContext() { - return context; - } - - public void setContext(String context) { - this.context = context; - } - - public ArrayList getSeries() { - return series; - } - - public void setSeries(ArrayList series) { - this.series = series; - } - - @Override - public String toString() { - return "SeriesStorageDataContext [context=" + context + ", series=" - + series + "]"; - } - -} diff --git a/src/main/java/org/gcube/portlets/admin/accountingmanager/shared/data/response/task/SeriesTaskContext.java b/src/main/java/org/gcube/portlets/admin/accountingmanager/shared/data/response/task/SeriesTaskContext.java deleted file mode 100644 index 0319dbf..0000000 --- a/src/main/java/org/gcube/portlets/admin/accountingmanager/shared/data/response/task/SeriesTaskContext.java +++ /dev/null @@ -1,58 +0,0 @@ -package org.gcube.portlets.admin.accountingmanager.shared.data.response.task; - -import java.util.ArrayList; - -import org.gcube.portlets.admin.accountingmanager.shared.data.ChartType; -import org.gcube.portlets.admin.accountingmanager.shared.data.Context; - -/** - * - * @author Giancarlo Panichi - * - * - */ -public class SeriesTaskContext extends SeriesTaskDefinition { - - private static final long serialVersionUID = 6805210072384752359L; - private Context context; - private ArrayList seriesTaskDataContextList; - - public SeriesTaskContext() { - super(); - this.chartType = ChartType.Context; - - } - - public SeriesTaskContext(Context context, - ArrayList seriesTaskDataTopList) { - super(); - this.chartType = ChartType.Context; - this.context = context; - this.seriesTaskDataContextList = seriesTaskDataTopList; - } - - public Context getContext() { - return context; - } - - public void setContext(Context context) { - this.context = context; - } - - public ArrayList getSeriesTaskDataContextList() { - return seriesTaskDataContextList; - } - - public void setSeriesTaskDataContextList( - ArrayList seriesTaskDataContextList) { - this.seriesTaskDataContextList = seriesTaskDataContextList; - } - - @Override - public String toString() { - return "SeriesTaskContext [context=" + context - + ", seriesTaskDataContextList=" + seriesTaskDataContextList - + "]"; - } - -} diff --git a/src/main/java/org/gcube/portlets/admin/accountingmanager/shared/data/response/task/SeriesTaskDataContext.java b/src/main/java/org/gcube/portlets/admin/accountingmanager/shared/data/response/task/SeriesTaskDataContext.java deleted file mode 100644 index cbe5369..0000000 --- a/src/main/java/org/gcube/portlets/admin/accountingmanager/shared/data/response/task/SeriesTaskDataContext.java +++ /dev/null @@ -1,51 +0,0 @@ -package org.gcube.portlets.admin.accountingmanager.shared.data.response.task; - -import java.io.Serializable; -import java.util.ArrayList; - -/** - * - * @author Giancarlo Panichi - * - * - */ -public class SeriesTaskDataContext implements Serializable { - - private static final long serialVersionUID = 6799983693606904130L; - private String context; - private ArrayList series; - - public SeriesTaskDataContext() { - super(); - } - - public SeriesTaskDataContext(String context, - ArrayList series) { - super(); - this.context = context; - this.series = series; - } - - public String getContext() { - return context; - } - - public void setContext(String context) { - this.context = context; - } - - public ArrayList getSeries() { - return series; - } - - public void setSeries(ArrayList series) { - this.series = series; - } - - @Override - public String toString() { - return "SeriesTaskDataContext [context=" + context + ", series=" - + series + "]"; - } - -}