summaryrefslogtreecommitdiffstats
path: root/src/org.gluster.storage.management.console/src/org/gluster/storage/management/console/jobs/DataSyncJob.java
diff options
context:
space:
mode:
authorShireesh Anjal <shireesh@gluster.com>2011-11-25 20:13:35 +0530
committerShireesh Anjal <shireesh@gluster.com>2011-11-25 20:13:35 +0530
commit1142b0e41de39010de7845cf70d71dbb001fc1dc (patch)
tree3513487f65c1a7df47996bd2852393aceaac1b8a /src/org.gluster.storage.management.console/src/org/gluster/storage/management/console/jobs/DataSyncJob.java
parent92c52d8edf285945d31e446503fc742fde9dcc49 (diff)
Renamed projects / packages com.gluster.* to org.gluster.*
Diffstat (limited to 'src/org.gluster.storage.management.console/src/org/gluster/storage/management/console/jobs/DataSyncJob.java')
-rw-r--r--src/org.gluster.storage.management.console/src/org/gluster/storage/management/console/jobs/DataSyncJob.java68
1 files changed, 68 insertions, 0 deletions
diff --git a/src/org.gluster.storage.management.console/src/org/gluster/storage/management/console/jobs/DataSyncJob.java b/src/org.gluster.storage.management.console/src/org/gluster/storage/management/console/jobs/DataSyncJob.java
new file mode 100644
index 00000000..ee4daafe
--- /dev/null
+++ b/src/org.gluster.storage.management.console/src/org/gluster/storage/management/console/jobs/DataSyncJob.java
@@ -0,0 +1,68 @@
+/*******************************************************************************
+ * Copyright (c) 2011 Gluster, Inc. <http://www.gluster.com>
+ * This file is part of Gluster Management Console.
+ *
+ * Gluster Management Console is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Affero General Public License as published
+ * by the Free Software Foundation; either version 3 of the License, or
+ * (at your option) any later version.
+ *
+ * Gluster Management Console is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
+ * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License
+ * for more details.
+ *
+ * You should have received a copy of the GNU Affero General Public License
+ * along with this program. If not, see
+ * <http://www.gnu.org/licenses/>.
+ *******************************************************************************/
+package org.gluster.storage.management.console.jobs;
+
+import org.eclipse.core.runtime.IProgressMonitor;
+import org.eclipse.core.runtime.IStatus;
+import org.eclipse.core.runtime.Status;
+import org.eclipse.core.runtime.jobs.Job;
+import org.eclipse.swt.widgets.Display;
+import org.gluster.storage.management.console.GlusterDataModelManager;
+import org.gluster.storage.management.console.utils.GlusterLogger;
+import org.gluster.storage.management.core.model.GlusterDataModel;
+
+
+/**
+ *
+ */
+public class DataSyncJob extends Job {
+ private static final GlusterLogger logger = GlusterLogger.getInstance();
+
+ public DataSyncJob(String name) {
+ super(name);
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see org.eclipse.core.runtime.jobs.Job#run(org.eclipse.core.runtime.IProgressMonitor)
+ */
+ @Override
+ protected IStatus run(final IProgressMonitor monitor) {
+ final GlusterDataModelManager modelManager = GlusterDataModelManager.getInstance();
+
+ // fetch the latest model
+ final GlusterDataModel model = modelManager.fetchModel(monitor);
+ if(model == null) {
+ return Status.CANCEL_STATUS;
+ }
+
+ monitor.beginTask("Notify views", 1);
+ Display.getDefault().asyncExec(new Runnable() {
+ @Override
+ public void run() {
+ modelManager.updateModel(model);
+ }
+ });
+ monitor.worked(1);
+ monitor.done();
+
+ return Status.OK_STATUS;
+ }
+} \ No newline at end of file