Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJohn Arthorne2008-02-13 22:30:43 +0000
committerJohn Arthorne2008-02-13 22:30:43 +0000
commit747901281ac6b7ec11d18501ac299f6e5c223e99 (patch)
tree5ee3ff23f10b99e40881af640dd52b778b22ac33 /bundles/org.eclipse.equinox.p2.updatechecker
parente10226ab3bfc9387c2c011d22194e4112efa9ec0 (diff)
downloadrt.equinox.p2-747901281ac6b7ec11d18501ac299f6e5c223e99.tar.gz
rt.equinox.p2-747901281ac6b7ec11d18501ac299f6e5c223e99.tar.xz
rt.equinox.p2-747901281ac6b7ec11d18501ac299f6e5c223e99.zip
Bug 218252 [prov] All registered services should be service interfaces
Diffstat (limited to 'bundles/org.eclipse.equinox.p2.updatechecker')
-rw-r--r--bundles/org.eclipse.equinox.p2.updatechecker/src/org/eclipse/equinox/internal/p2/updatechecker/Activator.java12
-rw-r--r--bundles/org.eclipse.equinox.p2.updatechecker/src/org/eclipse/equinox/internal/p2/updatechecker/UpdateChecker.java (renamed from bundles/org.eclipse.equinox.p2.updatechecker/src/org/eclipse/equinox/internal/provisional/p2/updatechecker/UpdateChecker.java)21
-rw-r--r--bundles/org.eclipse.equinox.p2.updatechecker/src/org/eclipse/equinox/internal/provisional/p2/updatechecker/IUpdateChecker.java26
-rw-r--r--bundles/org.eclipse.equinox.p2.updatechecker/src/org/eclipse/equinox/internal/provisional/p2/updatechecker/IUpdateListener.java2
-rw-r--r--bundles/org.eclipse.equinox.p2.updatechecker/src/org/eclipse/equinox/internal/provisional/p2/updatechecker/UpdateEvent.java2
5 files changed, 39 insertions, 24 deletions
diff --git a/bundles/org.eclipse.equinox.p2.updatechecker/src/org/eclipse/equinox/internal/p2/updatechecker/Activator.java b/bundles/org.eclipse.equinox.p2.updatechecker/src/org/eclipse/equinox/internal/p2/updatechecker/Activator.java
index ecf2d5090..9b56f6d10 100644
--- a/bundles/org.eclipse.equinox.p2.updatechecker/src/org/eclipse/equinox/internal/p2/updatechecker/Activator.java
+++ b/bundles/org.eclipse.equinox.p2.updatechecker/src/org/eclipse/equinox/internal/p2/updatechecker/Activator.java
@@ -10,18 +10,15 @@
*******************************************************************************/
package org.eclipse.equinox.internal.p2.updatechecker;
-import org.eclipse.equinox.internal.provisional.p2.updatechecker.UpdateChecker;
+import org.eclipse.equinox.internal.provisional.p2.updatechecker.IUpdateChecker;
import org.osgi.framework.*;
/**
* Activator class that registers the update checker service.
- *
- * @since 3.4
*/
public class Activator implements BundleActivator {
private static BundleContext context;
- private UpdateChecker updateChecker;
private ServiceRegistration registrationChecker;
public static BundleContext getContext() {
@@ -30,15 +27,10 @@ public class Activator implements BundleActivator {
public void start(BundleContext bundleContext) throws Exception {
Activator.context = bundleContext;
-
- updateChecker = new UpdateChecker();
- registrationChecker = context.registerService(UpdateChecker.class.getName(), updateChecker, null);
-
+ registrationChecker = context.registerService(IUpdateChecker.SERVICE_NAME, new UpdateChecker(), null);
}
public void stop(BundleContext bundleContext) throws Exception {
registrationChecker.unregister();
- updateChecker = null;
}
-
}
diff --git a/bundles/org.eclipse.equinox.p2.updatechecker/src/org/eclipse/equinox/internal/provisional/p2/updatechecker/UpdateChecker.java b/bundles/org.eclipse.equinox.p2.updatechecker/src/org/eclipse/equinox/internal/p2/updatechecker/UpdateChecker.java
index 5489a8e47..09939bdb3 100644
--- a/bundles/org.eclipse.equinox.p2.updatechecker/src/org/eclipse/equinox/internal/provisional/p2/updatechecker/UpdateChecker.java
+++ b/bundles/org.eclipse.equinox.p2.updatechecker/src/org/eclipse/equinox/internal/p2/updatechecker/UpdateChecker.java
@@ -8,31 +8,26 @@
* Contributors:
* IBM Corporation - initial API and implementation
*******************************************************************************/
-package org.eclipse.equinox.internal.provisional.p2.updatechecker;
+package org.eclipse.equinox.internal.p2.updatechecker;
import java.text.SimpleDateFormat;
import java.util.*;
import org.eclipse.equinox.internal.p2.core.helpers.ServiceHelper;
-import org.eclipse.equinox.internal.p2.updatechecker.Activator;
import org.eclipse.equinox.internal.provisional.p2.director.IPlanner;
import org.eclipse.equinox.internal.provisional.p2.engine.*;
import org.eclipse.equinox.internal.provisional.p2.metadata.IInstallableUnit;
import org.eclipse.equinox.internal.provisional.p2.metadata.query.InstallableUnitQuery;
import org.eclipse.equinox.internal.provisional.p2.query.Collector;
+import org.eclipse.equinox.internal.provisional.p2.updatechecker.*;
/**
- * An UpdateChecker periodically polls for updates to specified profiles and
- * informs listeners if updates are available. Listeners may then determine
- * whether to retrieve the updates, inform the user, etc.
- *
+ * Default implementation of {@link IUpdateChecker}.
+ * <p>
* This implementation is not optimized. It doesn't optimize for multiple
* polls on the same profile, nor does it cache any info about a profile from
* poll to poll.
- *
- * @since 3.4
*/
-public class UpdateChecker {
- public static long ONE_TIME_CHECK = -1L;
+public class UpdateChecker implements IUpdateChecker {
public static boolean DEBUG = false;
public static boolean TRACE = false;
private HashSet checkers = new HashSet(); // threads
@@ -83,6 +78,9 @@ public class UpdateChecker {
}
}
+ /* (non-Javadoc)
+ * @see org.eclipse.equinox.internal.provisional.p2.updatechecker.IUpdateChecker#addUpdateCheck(java.lang.String, long, long, org.eclipse.equinox.internal.provisional.p2.updatechecker.IUpdateListener)
+ */
public void addUpdateCheck(String profileId, long delay, long poll, IUpdateListener listener) {
log("Adding update checker for " + profileId + " at " + getTimeStamp()); //$NON-NLS-1$ //$NON-NLS-2$
UpdateCheckThread thread = new UpdateCheckThread(profileId, delay, poll, listener);
@@ -90,6 +88,9 @@ public class UpdateChecker {
thread.start();
}
+ /* (non-Javadoc)
+ * @see org.eclipse.equinox.internal.provisional.p2.updatechecker.IUpdateChecker#removeUpdateCheck(org.eclipse.equinox.internal.provisional.p2.updatechecker.IUpdateListener)
+ */
public void removeUpdateCheck(IUpdateListener listener) {
Iterator iter = checkers.iterator();
while (iter.hasNext()) {
diff --git a/bundles/org.eclipse.equinox.p2.updatechecker/src/org/eclipse/equinox/internal/provisional/p2/updatechecker/IUpdateChecker.java b/bundles/org.eclipse.equinox.p2.updatechecker/src/org/eclipse/equinox/internal/provisional/p2/updatechecker/IUpdateChecker.java
new file mode 100644
index 000000000..335a82b93
--- /dev/null
+++ b/bundles/org.eclipse.equinox.p2.updatechecker/src/org/eclipse/equinox/internal/provisional/p2/updatechecker/IUpdateChecker.java
@@ -0,0 +1,26 @@
+/*******************************************************************************
+ * Copyright (c) 2008 IBM Corporation and others.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * IBM Corporation - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.equinox.internal.provisional.p2.updatechecker;
+
+/**
+ * An UpdateChecker periodically polls for updates to specified profiles and
+ * informs listeners if updates are available. Listeners may then determine
+ * whether to retrieve the updates, inform the user, etc.
+ */
+public interface IUpdateChecker {
+ public static final String SERVICE_NAME = IUpdateChecker.class.getName();
+ public static long ONE_TIME_CHECK = -1L;
+
+ public abstract void addUpdateCheck(String profileId, long delay, long poll, IUpdateListener listener);
+
+ public abstract void removeUpdateCheck(IUpdateListener listener);
+
+} \ No newline at end of file
diff --git a/bundles/org.eclipse.equinox.p2.updatechecker/src/org/eclipse/equinox/internal/provisional/p2/updatechecker/IUpdateListener.java b/bundles/org.eclipse.equinox.p2.updatechecker/src/org/eclipse/equinox/internal/provisional/p2/updatechecker/IUpdateListener.java
index 5c9d8073f..7cde63663 100644
--- a/bundles/org.eclipse.equinox.p2.updatechecker/src/org/eclipse/equinox/internal/provisional/p2/updatechecker/IUpdateListener.java
+++ b/bundles/org.eclipse.equinox.p2.updatechecker/src/org/eclipse/equinox/internal/provisional/p2/updatechecker/IUpdateListener.java
@@ -14,8 +14,6 @@ package org.eclipse.equinox.internal.provisional.p2.updatechecker;
* An IUpdateListener informs listeners that an update is available for
* the specified profile. Listeners should expect to receive this notification
* from a background thread.
- *
- * @since 3.4
*/
public interface IUpdateListener {
diff --git a/bundles/org.eclipse.equinox.p2.updatechecker/src/org/eclipse/equinox/internal/provisional/p2/updatechecker/UpdateEvent.java b/bundles/org.eclipse.equinox.p2.updatechecker/src/org/eclipse/equinox/internal/provisional/p2/updatechecker/UpdateEvent.java
index 05c86bfee..187b32cbf 100644
--- a/bundles/org.eclipse.equinox.p2.updatechecker/src/org/eclipse/equinox/internal/provisional/p2/updatechecker/UpdateEvent.java
+++ b/bundles/org.eclipse.equinox.p2.updatechecker/src/org/eclipse/equinox/internal/provisional/p2/updatechecker/UpdateEvent.java
@@ -14,8 +14,6 @@ import org.eclipse.equinox.internal.provisional.p2.metadata.IInstallableUnit;
/**
* An UpdateEvent describes what IU's have updates for a given profile.
- *
- * @since 3.4
*/
public class UpdateEvent {

Back to the top