use of org.talend.designer.runtime.visualization.internal.ui.RefreshJob in project tdi-studio-se by Talend.
the class RuntimeGraphcsComposite method createControls.
@Override
protected void createControls(Composite parent) {
chartsPage = new Composite(parent, SWT.NULL);
parent.setBackground(Display.getDefault().getSystemColor(SWT.COLOR_LIST_BACKGROUND));
chartsPage.setBackground(parent.getBackground());
FormLayout formLayout = new FormLayout();
formLayout.marginWidth = 0;
formLayout.marginHeight = 0;
chartsPage.setLayout(formLayout);
FormData pageData = new FormData();
pageData.top = new FormAttachment(0, 0);
pageData.bottom = new FormAttachment(100, 0);
pageData.left = new FormAttachment(0, 0);
pageData.right = new FormAttachment(100, 0);
chartsPage.setLayoutData(pageData);
mBeanServerChangeListener = new IMBeanServerChangeListener() {
@Override
public void serverChanged(MBeanServerEvent event) {
new RefreshJob(Messages.reconstructChartJobLabel, toString()) {
@Override
protected void refreshUI() {
IActiveJvm jvm = getJvm();
if (jvm != null) {
reconstructCharts(jvm, false);
}
}
}.schedule();
}
};
PlatformUI.getWorkbench().getHelpSystem().setHelp(parent, IHelpContextIds.TIMELINE_PAGE);
}
use of org.talend.designer.runtime.visualization.internal.ui.RefreshJob in project tdi-studio-se by Talend.
the class JvmTreeViewer method updateStatusLine.
/**
* Updates the status line.
*
* @param selection the selection
*/
void updateStatusLine(final IStructuredSelection selection) {
RefreshJob refreshJob = new RefreshJob(Messages.refreshStatusLineJobLabel, JvmTreeViewer.class.getName()) {
private ProfilerState state;
private Object element;
@Override
protected void refreshModel(IProgressMonitor monitor) {
element = selection.getFirstElement();
if (element instanceof IActiveJvm) {
IActiveJvm activeJvm = (IActiveJvm) element;
state = activeJvm.getCpuProfiler().getState();
}
}
@Override
protected void refreshUI() {
StringBuffer text = new StringBuffer();
StringBuffer errorText = new StringBuffer();
errorImage = null;
if (element instanceof IActiveJvm) {
IActiveJvm activeJvm = (IActiveJvm) element;
if (activeJvm.isConnected()) {
text.append(Messages.connectedMsg);
if (state == ProfilerState.RUNNING) {
//$NON-NLS-1$
text.append(" ").append(Messages.cpuProfilerRunningMsg);
}
} else if (!activeJvm.isConnectionSupported()) {
String errorMessage = activeJvm.getErrorStateMessage();
if (errorMessage != null) {
errorText.append(errorMessage);
}
} else {
text.append(Messages.disconnectedMsg);
}
} else if (element instanceof IHost) {
IHost host = (IHost) element;
if (host.getName().equals(IHost.LOCALHOST)) {
if (!JvmModel.getInstance().hasValidJdk()) {
errorText.append(Messages.invalidJdkLocationMsg);
errorImage = getErrorImage();
} else if (host.getActiveJvms().isEmpty()) {
errorText.append(Messages.cannnotDetectJvmMsg);
errorImage = getErrorImage();
}
}
}
statusLineManager.setErrorMessage(errorImage, errorText.toString());
statusLineItem.setText(text.toString());
}
};
refreshJob.schedule();
}
use of org.talend.designer.runtime.visualization.internal.ui.RefreshJob in project tdi-studio-se by Talend.
the class TimelineChart method refresh.
/**
* Refreshes the chart.
*/
public void refresh() {
refreshJob = new RefreshJob(NLS.bind(Messages.refreshChartJobLabel, attributeGroup.getName()), sectionId + attributeGroup.getName()) {
@Override
protected void refreshModel(IProgressMonitor monitor) {
// do nothing
}
@Override
protected void refreshUI() {
refreshChartWidget();
}
};
refreshJob.schedule();
}
use of org.talend.designer.runtime.visualization.internal.ui.RefreshJob in project tdi-studio-se by Talend.
the class TimelineSection method createControls.
/*
* @see AbstractJvmPropertySection#createControls(Composite)
*/
@Override
protected void createControls(Composite parent) {
timelinePageBook = new PageBook(parent, SWT.NONE);
chartsPage = new Composite(timelinePageBook, SWT.NONE);
messagePage = createMessagePage();
parent.setBackground(Display.getDefault().getSystemColor(SWT.COLOR_LIST_BACKGROUND));
GridLayout layout = new GridLayout(2, true);
layout.horizontalSpacing = 15;
chartsPage.setLayout(layout);
timelinePageBook.showPage(chartsPage);
mBeanServerChangeListener = new IMBeanServerChangeListener() {
@Override
public void serverChanged(MBeanServerEvent event) {
new RefreshJob(Messages.reconstructChartJobLabel, toString()) {
@Override
protected void refreshUI() {
IActiveJvm jvm = getJvm();
if (jvm != null) {
reconstructCharts(jvm, false);
}
}
}.schedule();
}
};
PlatformUI.getWorkbench().getHelpSystem().setHelp(parent, IHelpContextIds.TIMELINE_PAGE);
}
use of org.talend.designer.runtime.visualization.internal.ui.RefreshJob in project tdi-studio-se by Talend.
the class StopMonitoringAction method run.
/*
* @see Action#run()
*/
@Override
public void run() {
RefreshJob refreshJob = new RefreshJob(Messages.stopMonitoringJobLabel, UUID.randomUUID().toString()) {
@Override
protected void refreshModel(IProgressMonitor monitor) {
for (IActiveJvm jvm : jvms) {
jvm.disconnect();
}
}
@Override
protected void refreshUI() {
if (!treeViewer.getControl().isDisposed()) {
treeViewer.refresh();
}
}
};
refreshJob.schedule();
}
Aggregations