-// $Id$
/**
* Copyright (C) 2015 EDIT
* European Distributed Institute of Taxonomy
import java.text.DecimalFormat;
import java.util.Collection;
-import net.sf.ehcache.Cache;
-import net.sf.ehcache.CacheManager;
-import net.sf.ehcache.statistics.LiveCacheStatistics;
+import javax.annotation.PostConstruct;
+import javax.inject.Inject;
-import org.eclipse.jface.action.IMenuManager;
-import org.eclipse.jface.action.IToolBarManager;
+import org.eclipse.core.commands.Command;
+import org.eclipse.core.commands.ParameterizedCommand;
+import org.eclipse.e4.core.commands.ECommandService;
+import org.eclipse.e4.core.commands.EHandlerService;
import org.eclipse.swt.SWT;
import org.eclipse.swt.events.SelectionAdapter;
import org.eclipse.swt.events.SelectionEvent;
import org.eclipse.swt.widgets.TableColumn;
import org.eclipse.swt.widgets.TableItem;
import org.eclipse.swt.widgets.Text;
-import org.eclipse.ui.part.ViewPart;
import org.eclipse.wb.swt.SWTResourceManager;
-import eu.etaxonomy.cdm.api.cache.CdmCacher;
-import eu.etaxonomy.taxeditor.model.AbstractUtility;
-import eu.etaxonomy.taxeditor.remoting.cache.CdmRemoteCacheManager;
+import eu.etaxonomy.cdm.api.cache.CdmCacherBase;
+import eu.etaxonomy.cdm.cache.CdmRemoteCacheManager;
import eu.etaxonomy.taxeditor.session.ICdmEntitySession;
import eu.etaxonomy.taxeditor.session.ICdmEntitySessionManager;
import eu.etaxonomy.taxeditor.session.ICdmEntitySessionManagerObserver;
+import eu.etaxonomy.taxeditor.session.NullSession;
import eu.etaxonomy.taxeditor.store.CdmStore;
+import net.sf.ehcache.Cache;
+import net.sf.ehcache.CacheManager;
+import net.sf.ehcache.statistics.FlatStatistics;
/**
* @author cmathew
* @date 16 Feb 2015
- *
*/
-public class SessionsViewPart extends ViewPart implements ICdmEntitySessionManagerObserver {
+public class SessionsViewPart implements ICdmEntitySessionManagerObserver {
public static final String ID = "eu.etaxonomy.taxeditor.view.sessions.SessionsViewPart"; //$NON-NLS-1$
public static final String OPEN_INSPECT_SESSIONS_DIALOG_ID = "eu.etaxonomy.taxeditor.store.open.InspectSessionsDialog";
private Text txtCdmModelOnDisk;
private Text txtDefaultOnDisk;
+ @Inject
+ private ECommandService commandService;
+
+ @Inject
+ private EHandlerService handlerService;
+
+ @Inject
public SessionsViewPart() {
this.cdmEntitySessionManager = CdmStore.getCurrentSessionManager();
if(cdmEntitySessionManager != null) {
* Create contents of the view part.
* @param parent
*/
- @Override
+ @PostConstruct
public void createPartControl(Composite parent) {
Composite container = new Composite(parent, SWT.NONE);
container.setLayout(new GridLayout(5, false));
btnInspectActiveSession.addSelectionListener(new SelectionAdapter() {
@Override
public void widgetSelected(SelectionEvent e) {
- AbstractUtility.executeCommand(OPEN_INSPECT_SESSIONS_DIALOG_ID, this, null);
+ Command command = commandService.getCommand(OPEN_INSPECT_SESSIONS_DIALOG_ID);
+ handlerService.executeHandler(ParameterizedCommand.generateCommand(command, null));
}
});
btnInspectActiveSession.setLayoutData(new GridData(SWT.FILL, SWT.FILL, false, false, 2, 1));
}
createActions();
- initializeToolBar();
- initializeMenu();
}
/**
* Create the actions.
*/
private void createActions() {
-
-
for (String title : titles) {
TableColumn column = new TableColumn(tableSessions, SWT.NULL);
column.setWidth(200);
}
-
@Override
public void changed() {
if(tableSessions.isDisposed()) {
Collection<ICdmEntitySession> sessions = cdmEntitySessionManager.getSessions();
txtNoOfSessions.setText(String.valueOf(sessions.size()));
for(ICdmEntitySession session : sessions) {
- if(session.getOwner() != null) {
- TableItem item = new TableItem(tableSessions, SWT.NULL);
- item.setText(session.getOwner().toString());
- String activePrefix = "";
- if(session.isActive()) {
- activePrefix = "*";
- }
- item.setText(0, activePrefix + session.getOwner().toString());
- LiveCacheStatistics cacheStatistics = session.getCacheStatistics();
- item.setText(1, getInMemoryStats(cacheStatistics));
- item.setText(2, getOnDiskStats(cacheStatistics));
- }
+ addSession(session);
+ }
+ ICdmEntitySession nullSession = cdmEntitySessionManager.getNullSession();
+ if(nullSession != null) {
+ addSession(nullSession);
}
for (int i=0; i<titles.length; i++) {
tableSessions.getColumn (i).pack ();
int cdmEnityCacheSize = CacheManager.create().getCacheNames().length;
txtNoOfCaches.setText(String.valueOf(cdmEnityCacheSize));
- Cache defaultCache = CacheManager.create().getCache(CdmCacher.DEFAULT_CACHE_NAME);
+ Cache defaultCache = CacheManager.create().getCache(CdmCacherBase.DEFAULT_CACHE_NAME);
txtDefaultInMemory.setText("");
txtDefaultOnDisk.setText("");
if(defaultCache != null) {
- LiveCacheStatistics liveCacheStatistics = defaultCache.getLiveCacheStatistics();
+ FlatStatistics liveCacheStatistics = defaultCache.getStatistics();
txtDefaultInMemory.setText(getInMemoryStats(liveCacheStatistics));
txtDefaultOnDisk.setText(getOnDiskStats(liveCacheStatistics));
}
txtCdmModelInMemory.setText("");
txtCdmModelOnDisk.setText("");
if(cdmModelGetMethodsCache != null) {
- LiveCacheStatistics liveCacheStatistics = cdmModelGetMethodsCache.getLiveCacheStatistics();
+ FlatStatistics liveCacheStatistics = cdmModelGetMethodsCache.getStatistics();
txtCdmModelInMemory.setText(getInMemoryStats(liveCacheStatistics));
txtCdmModelOnDisk.setText(getOnDiskStats(liveCacheStatistics));
}
}
- private String getInMemoryStats(LiveCacheStatistics statistics) {
+ private void addSession(ICdmEntitySession session) {
+
+ TableItem item = new TableItem(tableSessions, SWT.NULL);
+
+ String activePrefix = "";
+ if(session.isActive()) {
+ activePrefix = "*";
+ }
+ String sessionOwnerString = "";
+ if(session instanceof NullSession) {
+ sessionOwnerString = "Null Session";
+ } else {
+ if(session.getOwner() != null) {
+ sessionOwnerString = session.getOwner().toString();
+ }
+ }
+ item.setText(0, activePrefix + sessionOwnerString);
+ FlatStatistics cacheStatistics = session.getCacheStatistics();
+ item.setText(1, getInMemoryStats(cacheStatistics));
+ item.setText(2, getOnDiskStats(cacheStatistics));
+ }
+
+ private String getInMemoryStats(FlatStatistics statistics) {
if(statistics != null) {
long localHeapSize = statistics.getLocalHeapSize();
return "";
}
- private String getOnDiskStats(LiveCacheStatistics statistics) {
+ private String getOnDiskStats(FlatStatistics statistics) {
if(statistics != null) {
long localDiskSize = statistics.getLocalDiskSize();
return "";
}
- /**
- * Initialize the toolbar.
- */
- private void initializeToolBar() {
- IToolBarManager toolbarManager = getViewSite().getActionBars().getToolBarManager();
- }
-
- /**
- * Initialize the menu.
- */
- private void initializeMenu() {
- IMenuManager menuManager = getViewSite().getActionBars().getMenuManager();
- }
-
- @Override
- public void setFocus() {
- // Set the focus
- }
}