You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sling.apache.org by cz...@apache.org on 2011/01/17 18:16:51 UTC
svn commit: r1060001 - in /sling/trunk/installer/core/src:
main/java/org/apache/sling/installer/api/
main/java/org/apache/sling/installer/api/tasks/
main/java/org/apache/sling/installer/core/impl/
main/java/org/apache/sling/installer/core/impl/config/ ...
Author: cziegeler
Date: Mon Jan 17 17:16:50 2011
New Revision: 1060001
URL: http://svn.apache.org/viewvc?rev=1060001&view=rev
Log:
Add some more javadocs and clean up abstract task: it should not expose the internally used logging api.
Added:
sling/trunk/installer/core/src/main/java/org/apache/sling/installer/core/impl/AbstractInstallTask.java (with props)
Modified:
sling/trunk/installer/core/src/main/java/org/apache/sling/installer/api/InstallableResource.java
sling/trunk/installer/core/src/main/java/org/apache/sling/installer/api/tasks/InstallTask.java
sling/trunk/installer/core/src/main/java/org/apache/sling/installer/api/tasks/InstallTaskFactory.java
sling/trunk/installer/core/src/main/java/org/apache/sling/installer/api/tasks/InstallationContext.java
sling/trunk/installer/core/src/main/java/org/apache/sling/installer/api/tasks/RegisteredResource.java
sling/trunk/installer/core/src/main/java/org/apache/sling/installer/api/tasks/ResourceState.java
sling/trunk/installer/core/src/main/java/org/apache/sling/installer/api/tasks/ResourceTransformer.java
sling/trunk/installer/core/src/main/java/org/apache/sling/installer/api/tasks/TaskResource.java
sling/trunk/installer/core/src/main/java/org/apache/sling/installer/core/impl/EntityResourceList.java
sling/trunk/installer/core/src/main/java/org/apache/sling/installer/core/impl/OsgiInstallerImpl.java
sling/trunk/installer/core/src/main/java/org/apache/sling/installer/core/impl/RegisteredResourceImpl.java
sling/trunk/installer/core/src/main/java/org/apache/sling/installer/core/impl/config/AbstractConfigTask.java
sling/trunk/installer/core/src/main/java/org/apache/sling/installer/core/impl/tasks/BundleInstallTask.java
sling/trunk/installer/core/src/main/java/org/apache/sling/installer/core/impl/tasks/BundleRemoveTask.java
sling/trunk/installer/core/src/main/java/org/apache/sling/installer/core/impl/tasks/BundleStartTask.java
sling/trunk/installer/core/src/main/java/org/apache/sling/installer/core/impl/tasks/BundleUpdateTask.java
sling/trunk/installer/core/src/main/java/org/apache/sling/installer/core/impl/tasks/SynchronousRefreshPackagesTask.java
sling/trunk/installer/core/src/main/java/org/apache/sling/installer/core/impl/tasks/SystemBundleUpdateTask.java
sling/trunk/installer/core/src/test/java/org/apache/sling/installer/core/impl/MockBundleResource.java
sling/trunk/installer/core/src/test/java/org/apache/sling/installer/core/impl/tasks/BundleTaskCreatorTest.java
Modified: sling/trunk/installer/core/src/main/java/org/apache/sling/installer/api/InstallableResource.java
URL: http://svn.apache.org/viewvc/sling/trunk/installer/core/src/main/java/org/apache/sling/installer/api/InstallableResource.java?rev=1060001&r1=1060000&r2=1060001&view=diff
==============================================================================
--- sling/trunk/installer/core/src/main/java/org/apache/sling/installer/api/InstallableResource.java (original)
+++ sling/trunk/installer/core/src/main/java/org/apache/sling/installer/api/InstallableResource.java Mon Jan 17 17:16:50 2011
@@ -24,7 +24,9 @@ import java.util.Dictionary;
/**
* A piece of data that can be installed by the {@link OsgiInstaller}
- * Currently the OSGi installer supports bundles and configurations.
+ * Currently the OSGi installer supports bundles and configurations,
+ * but it can be extended by additional task factories supporting
+ * other formats.
*
* The installable resource contains as much information as the client
* can provide. An input stream or dictionary is mandatory everything
@@ -32,24 +34,46 @@ import java.util.Dictionary;
* by the OSGi installer. If such evaluation fails the resource will
* be ignore during installation.
*
+ * If the client provides a configuration it should use the
+ * resource type {@link #TYPE_PROPERTIES}. Otherwise the resource
+ * type {@link #TYPE_FILE} should be used. These two generic types
+ * are transformed by resource transformer services to the appropriate
+ * resource type like bundle or configuration etc. This frees the
+ * client from having any knowledge about the provided data.
+ * However, if the client has the knowledge about the data it can
+ * provided a specific resource type.
*/
public class InstallableResource {
- /** @since 3.1 */
+ /**
+ * The type for properties - in this case {@link #getDictionary()}
+ * should contain a dictionary or the {@link #getInputStream()}
+ * should point to a property or configuration file.
+ * @since 3.1 */
public static final String TYPE_PROPERTIES = "properties";
- /** @since 3.1 */
+
+ /**
+ * The type for all other provided data like a bundle etc.
+ * In this case {@link #getInputStream()} must return an input
+ * stream to the data. {@link #getDictionary()} might return
+ * additional information.
+ * @since 3.1 */
public static final String TYPE_FILE = "file";
/**
* The type for a bundle - in this case {@link #getInputStream} must
* return an input stream to the bundle. {@link #getDictionary()} might
* return additional information.
+ * This type should only be used if the client really knows that the
+ * provided data is a bundle.
*/
public static final String TYPE_BUNDLE = "bundle";
/**
* The type for a configuration - in this case {@link #getDictionary()}
* must return a dictionary with the configuration.
+ * This type should only be used if the client really knows that the
+ * provided data is an OSGi configuration.
*/
public static final String TYPE_CONFIG = "config";
@@ -72,7 +96,7 @@ public class InstallableResource {
/**
* Create a data object - this is a simple constructor just using the
* values as they are provided.
- * @param id Unique id for the resource, For auto detection if the resource
+ * @param id Unique id for the resource, For auto detection of the resource
* type, the id should contain an extension like .jar, .cfg etc.
* @param is The input stream to the data or
* @param dict A dictionary with data
Modified: sling/trunk/installer/core/src/main/java/org/apache/sling/installer/api/tasks/InstallTask.java
URL: http://svn.apache.org/viewvc/sling/trunk/installer/core/src/main/java/org/apache/sling/installer/api/tasks/InstallTask.java?rev=1060001&r1=1060000&r2=1060001&view=diff
==============================================================================
--- sling/trunk/installer/core/src/main/java/org/apache/sling/installer/api/tasks/InstallTask.java (original)
+++ sling/trunk/installer/core/src/main/java/org/apache/sling/installer/api/tasks/InstallTask.java Mon Jan 17 17:16:50 2011
@@ -18,20 +18,19 @@
*/
package org.apache.sling.installer.api.tasks;
-import org.apache.sling.installer.core.impl.OsgiInstallerImpl;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-
/**
- * Base class for tasks that can be executed by the {@link OsgiInstallerImpl}
+ * Base class for tasks that can be executed by the
+ * {@link org.apache.sling.installer.api.OsgiInstaller}.
*/
public abstract class InstallTask implements Comparable<InstallTask> {
+ /** The resource group this task is working on. */
private final TaskResourceGroup resourceGroup;
- private final Logger logger = LoggerFactory.getLogger(this.getClass());
-
+ /**
+ * Constructor for the task
+ * @param erl The resource group or <code>null</code>.
+ */
public InstallTask(final TaskResourceGroup erl) {
this.resourceGroup = erl;
}
@@ -53,22 +52,28 @@ public abstract class InstallTask implem
return this.resourceGroup;
}
- public Logger getLogger() {
- return this.logger;
- }
-
+ /**
+ * This is the heart of the task - it performs the actual task.
+ * @param ctx The installation context.
+ */
public abstract void execute(InstallationContext ctx);
- /** Tasks are sorted according to this key */
+ /**
+ * Tasks are sorted according to this key.
+ * Therefore this key must uniquely identify this task.
+ * A typical sort key contains the entity id of the resource
+ * in execution.
+ */
public abstract String getSortKey();
- /** All comparisons are based on getSortKey() */
- public final int compareTo(InstallTask o) {
- return getSortKey().compareTo(o.getSortKey());
- }
-
+ /**
+ * Set the finished state for the resource.
+ * @param state The new state.
+ */
public void setFinishedState(final ResourceState state) {
- this.resourceGroup.setFinishState(state);
+ if ( this.resourceGroup != null ) {
+ this.resourceGroup.setFinishState(state);
+ }
}
@Override
@@ -88,4 +93,11 @@ public abstract class InstallTask implem
public final int hashCode() {
return getSortKey().hashCode();
}
+
+ /**
+ * All comparisons are based on getSortKey().
+ */
+ public final int compareTo(InstallTask o) {
+ return getSortKey().compareTo(o.getSortKey());
+ }
}
\ No newline at end of file
Modified: sling/trunk/installer/core/src/main/java/org/apache/sling/installer/api/tasks/InstallTaskFactory.java
URL: http://svn.apache.org/viewvc/sling/trunk/installer/core/src/main/java/org/apache/sling/installer/api/tasks/InstallTaskFactory.java?rev=1060001&r1=1060000&r2=1060001&view=diff
==============================================================================
--- sling/trunk/installer/core/src/main/java/org/apache/sling/installer/api/tasks/InstallTaskFactory.java (original)
+++ sling/trunk/installer/core/src/main/java/org/apache/sling/installer/api/tasks/InstallTaskFactory.java Mon Jan 17 17:16:50 2011
@@ -18,6 +18,13 @@
*/
package org.apache.sling.installer.api.tasks;
+/**
+ * The install task factory creates a task for a given
+ * resource.
+ * An install task factory is a plugin service that
+ * checks a resource if it is installable by this plugin
+ * and creates an appropriate task.
+ */
public interface InstallTaskFactory {
/**
Modified: sling/trunk/installer/core/src/main/java/org/apache/sling/installer/api/tasks/InstallationContext.java
URL: http://svn.apache.org/viewvc/sling/trunk/installer/core/src/main/java/org/apache/sling/installer/api/tasks/InstallationContext.java?rev=1060001&r1=1060000&r2=1060001&view=diff
==============================================================================
--- sling/trunk/installer/core/src/main/java/org/apache/sling/installer/api/tasks/InstallationContext.java (original)
+++ sling/trunk/installer/core/src/main/java/org/apache/sling/installer/api/tasks/InstallationContext.java Mon Jan 17 17:16:50 2011
@@ -18,21 +18,30 @@
*/
package org.apache.sling.installer.api.tasks;
-
/**
* Context for the installation tasks.
- * Currently it allows to add a task to the current or the next cycle.
+ *
+ * The context is passed into an {@link InstallTask} during
+ * execution of a task. The task can schedule tasks to the
+ * current or next execution cycle.
+ *
+ * In addition access to an audit log is provided. The task
+ * should make an entry into the log each time a task has
+ * succeeded like something has been installed, updated or
+ * deleted.
*/
public interface InstallationContext {
/**
- * Schedule a task for execution in the current OsgiController cycle
+ * Schedule a task for execution in the current cycle.
*/
void addTaskToCurrentCycle(InstallTask t);
/**
- * Schedule a task for execution in the next OsgiController cycle,
+ * Schedule a task for execution in the next cycle,
* usually to indicate that a task must be retried
+ * or the current task is finished and another task
+ * has to be run.
*/
void addTaskToNextCycle(InstallTask t);
Modified: sling/trunk/installer/core/src/main/java/org/apache/sling/installer/api/tasks/RegisteredResource.java
URL: http://svn.apache.org/viewvc/sling/trunk/installer/core/src/main/java/org/apache/sling/installer/api/tasks/RegisteredResource.java?rev=1060001&r1=1060000&r2=1060001&view=diff
==============================================================================
--- sling/trunk/installer/core/src/main/java/org/apache/sling/installer/api/tasks/RegisteredResource.java (original)
+++ sling/trunk/installer/core/src/main/java/org/apache/sling/installer/api/tasks/RegisteredResource.java Mon Jan 17 17:16:50 2011
@@ -25,6 +25,7 @@ import java.util.Dictionary;
/**
* A resource that's been registered in the OSGi controller.
* Data can be either an input stream or a dictionary.
+ * Registered resources are processed by a {@link ResourceTransformer}.
*/
public interface RegisteredResource {
@@ -50,8 +51,8 @@ public interface RegisteredResource {
* Return an input stream with the data of this resource.
* Null if resource contains a configuration instead. Caller is responsible for
* closing the stream.
- * If this resource is of type CONFIG it must not return an input stream and
- * if this resource is of type BUNDLE it must return an input stream!
+ * If this resource is of type PROPERTIES it must not return an input stream and
+ * if this resource is of type FILE it must return an input stream!
* @return The input stream or null.
*/
InputStream getInputStream() throws IOException;
@@ -59,7 +60,7 @@ public interface RegisteredResource {
/**
* Return this resource's dictionary.
* Null if resource contains an InputStream instead. If this resource is of
- * type CONFIG it must return a dictionary and if this resource is of type BUNDLE
+ * type PROPERTIES it must return a dictionary and if this resource is of type FILE
* it might return a dictionary!
* @return The resource's dictionary or null.
*/
Modified: sling/trunk/installer/core/src/main/java/org/apache/sling/installer/api/tasks/ResourceState.java
URL: http://svn.apache.org/viewvc/sling/trunk/installer/core/src/main/java/org/apache/sling/installer/api/tasks/ResourceState.java?rev=1060001&r1=1060000&r2=1060001&view=diff
==============================================================================
--- sling/trunk/installer/core/src/main/java/org/apache/sling/installer/api/tasks/ResourceState.java (original)
+++ sling/trunk/installer/core/src/main/java/org/apache/sling/installer/api/tasks/ResourceState.java Mon Jan 17 17:16:50 2011
@@ -18,11 +18,14 @@
*/
package org.apache.sling.installer.api.tasks;
+/**
+ * The state of a resource.
+ */
public enum ResourceState {
- INSTALL,
- UNINSTALL,
- INSTALLED,
- UNINSTALLED,
- IGNORED
+ INSTALL, // the resource should be installed
+ UNINSTALL, // the resource should be uninstalled
+ INSTALLED, // the resource is installed
+ UNINSTALLED, // the resource is uninstalled
+ IGNORED // the resource has been ignored
}
Modified: sling/trunk/installer/core/src/main/java/org/apache/sling/installer/api/tasks/ResourceTransformer.java
URL: http://svn.apache.org/viewvc/sling/trunk/installer/core/src/main/java/org/apache/sling/installer/api/tasks/ResourceTransformer.java?rev=1060001&r1=1060000&r2=1060001&view=diff
==============================================================================
--- sling/trunk/installer/core/src/main/java/org/apache/sling/installer/api/tasks/ResourceTransformer.java (original)
+++ sling/trunk/installer/core/src/main/java/org/apache/sling/installer/api/tasks/ResourceTransformer.java Mon Jan 17 17:16:50 2011
@@ -19,8 +19,11 @@
package org.apache.sling.installer.api.tasks;
/**
- * A resource transformer might transform a registered resource
- * before it is installed.
+ * A resource transformer transform a registered resource
+ * before it can be installed.
+ * Based on the transformation result, the installer creates
+ * one or more {@link TaskResource}s from the registered
+ * resources and passes them on to the {@link InstallTaskFactory}.
*/
public interface ResourceTransformer {
Modified: sling/trunk/installer/core/src/main/java/org/apache/sling/installer/api/tasks/TaskResource.java
URL: http://svn.apache.org/viewvc/sling/trunk/installer/core/src/main/java/org/apache/sling/installer/api/tasks/TaskResource.java?rev=1060001&r1=1060000&r2=1060001&view=diff
==============================================================================
--- sling/trunk/installer/core/src/main/java/org/apache/sling/installer/api/tasks/TaskResource.java (original)
+++ sling/trunk/installer/core/src/main/java/org/apache/sling/installer/api/tasks/TaskResource.java Mon Jan 17 17:16:50 2011
@@ -47,11 +47,6 @@ public interface TaskResource extends Re
ResourceState getState();
/**
- * Set the new state of teh resource.
- */
- void setState(final ResourceState s);
-
- /**
* Get the value of a temporary attribute.
* @param key The name of the attribute
* @return The value of the attribute or <code>null</code>
Added: sling/trunk/installer/core/src/main/java/org/apache/sling/installer/core/impl/AbstractInstallTask.java
URL: http://svn.apache.org/viewvc/sling/trunk/installer/core/src/main/java/org/apache/sling/installer/core/impl/AbstractInstallTask.java?rev=1060001&view=auto
==============================================================================
--- sling/trunk/installer/core/src/main/java/org/apache/sling/installer/core/impl/AbstractInstallTask.java (added)
+++ sling/trunk/installer/core/src/main/java/org/apache/sling/installer/core/impl/AbstractInstallTask.java Mon Jan 17 17:16:50 2011
@@ -0,0 +1,38 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.sling.installer.core.impl;
+
+import org.apache.sling.installer.api.tasks.InstallTask;
+import org.apache.sling.installer.api.tasks.TaskResourceGroup;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
+public abstract class AbstractInstallTask extends InstallTask {
+
+ public AbstractInstallTask(TaskResourceGroup erl) {
+ super(erl);
+ }
+
+ private final Logger logger = LoggerFactory.getLogger(this.getClass());
+
+ protected Logger getLogger() {
+ return this.logger;
+ }
+
+}
Propchange: sling/trunk/installer/core/src/main/java/org/apache/sling/installer/core/impl/AbstractInstallTask.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: sling/trunk/installer/core/src/main/java/org/apache/sling/installer/core/impl/AbstractInstallTask.java
------------------------------------------------------------------------------
svn:keywords = author date id revision rev url
Propchange: sling/trunk/installer/core/src/main/java/org/apache/sling/installer/core/impl/AbstractInstallTask.java
------------------------------------------------------------------------------
svn:mime-type = text/plain
Modified: sling/trunk/installer/core/src/main/java/org/apache/sling/installer/core/impl/EntityResourceList.java
URL: http://svn.apache.org/viewvc/sling/trunk/installer/core/src/main/java/org/apache/sling/installer/core/impl/EntityResourceList.java?rev=1060001&r1=1060000&r2=1060001&view=diff
==============================================================================
--- sling/trunk/installer/core/src/main/java/org/apache/sling/installer/core/impl/EntityResourceList.java (original)
+++ sling/trunk/installer/core/src/main/java/org/apache/sling/installer/core/impl/EntityResourceList.java Mon Jan 17 17:16:50 2011
@@ -28,9 +28,9 @@ import java.util.SortedSet;
import java.util.TreeSet;
import org.apache.sling.installer.api.tasks.RegisteredResource;
-import org.apache.sling.installer.api.tasks.TaskResourceGroup;
import org.apache.sling.installer.api.tasks.ResourceState;
import org.apache.sling.installer.api.tasks.TaskResource;
+import org.apache.sling.installer.api.tasks.TaskResourceGroup;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -125,18 +125,18 @@ public class EntityResourceList implemen
// first resource got uninstalled, go back to second
if (second.getState() == ResourceState.IGNORED || second.getState() == ResourceState.INSTALLED) {
LOGGER.debug("Reactivating for next cycle: {}", second);
- second.setState(ResourceState.INSTALL);
+ ((RegisteredResourceImpl)second).setState(ResourceState.INSTALL);
}
} else {
// don't install as the first did not get uninstalled
if ( second.getState() == ResourceState.INSTALL ) {
- second.setState(ResourceState.IGNORED);
+ ((RegisteredResourceImpl)second).setState(ResourceState.IGNORED);
}
// and now set resource to uninstalled
state = ResourceState.UNINSTALLED;
}
}
- toActivate.setState(state);
+ ((RegisteredResourceImpl)toActivate).setState(state);
if ( state == ResourceState.UNINSTALLED ) {
this.cleanup(toActivate);
}
@@ -164,7 +164,7 @@ public class EntityResourceList implemen
this.cleanup(rr);
resources.remove(rr);
if ( first && rr.equals(r) ) {
- r.setState(rr.getState());
+ ((RegisteredResourceImpl)r).setState(rr.getState());
}
break;
}
@@ -182,7 +182,7 @@ public class EntityResourceList implemen
if ( first && (r.getState() == ResourceState.INSTALLED
|| r.getState() == ResourceState.INSTALL)) {
LOGGER.debug("Marking for uninstalling: {}", r);
- r.setState(ResourceState.UNINSTALL);
+ ((RegisteredResourceImpl)r).setState(ResourceState.UNINSTALL);
} else {
LOGGER.debug("Removing unused: {}", r);
i.remove();
Modified: sling/trunk/installer/core/src/main/java/org/apache/sling/installer/core/impl/OsgiInstallerImpl.java
URL: http://svn.apache.org/viewvc/sling/trunk/installer/core/src/main/java/org/apache/sling/installer/core/impl/OsgiInstallerImpl.java?rev=1060001&r1=1060000&r2=1060001&view=diff
==============================================================================
--- sling/trunk/installer/core/src/main/java/org/apache/sling/installer/core/impl/OsgiInstallerImpl.java (original)
+++ sling/trunk/installer/core/src/main/java/org/apache/sling/installer/core/impl/OsgiInstallerImpl.java Mon Jan 17 17:16:50 2011
@@ -38,10 +38,10 @@ import org.apache.sling.installer.api.ta
import org.apache.sling.installer.api.tasks.InstallTaskFactory;
import org.apache.sling.installer.api.tasks.InstallationContext;
import org.apache.sling.installer.api.tasks.RegisteredResource;
-import org.apache.sling.installer.api.tasks.TaskResourceGroup;
import org.apache.sling.installer.api.tasks.ResourceState;
import org.apache.sling.installer.api.tasks.ResourceTransformer;
import org.apache.sling.installer.api.tasks.TaskResource;
+import org.apache.sling.installer.api.tasks.TaskResourceGroup;
import org.apache.sling.installer.api.tasks.TransformationResult;
import org.osgi.framework.BundleContext;
import org.osgi.framework.BundleEvent;
@@ -362,7 +362,7 @@ public class OsgiInstallerImpl
logger.debug("Resource {} seems to be removed.", r);
if ( first && (r.getState() == ResourceState.INSTALLED
|| r.getState() == ResourceState.INSTALL) ) {
- r.setState(ResourceState.UNINSTALL);
+ ((RegisteredResourceImpl)r).setState(ResourceState.UNINSTALL);
} else {
toRemove.add(r);
}
Modified: sling/trunk/installer/core/src/main/java/org/apache/sling/installer/core/impl/RegisteredResourceImpl.java
URL: http://svn.apache.org/viewvc/sling/trunk/installer/core/src/main/java/org/apache/sling/installer/core/impl/RegisteredResourceImpl.java?rev=1060001&r1=1060000&r2=1060001&view=diff
==============================================================================
--- sling/trunk/installer/core/src/main/java/org/apache/sling/installer/core/impl/RegisteredResourceImpl.java (original)
+++ sling/trunk/installer/core/src/main/java/org/apache/sling/installer/core/impl/RegisteredResourceImpl.java Mon Jan 17 17:16:50 2011
@@ -276,7 +276,7 @@ public class RegisteredResourceImpl
}
/**
- * @see org.apache.sling.installer.api.tasks.TaskResource#setState(org.apache.sling.installer.api.tasks.ResourceState)
+ *Set the state for the resource.
*/
public void setState(ResourceState s) {
this.state = s;
Modified: sling/trunk/installer/core/src/main/java/org/apache/sling/installer/core/impl/config/AbstractConfigTask.java
URL: http://svn.apache.org/viewvc/sling/trunk/installer/core/src/main/java/org/apache/sling/installer/core/impl/config/AbstractConfigTask.java?rev=1060001&r1=1060000&r2=1060001&view=diff
==============================================================================
--- sling/trunk/installer/core/src/main/java/org/apache/sling/installer/core/impl/config/AbstractConfigTask.java (original)
+++ sling/trunk/installer/core/src/main/java/org/apache/sling/installer/core/impl/config/AbstractConfigTask.java Mon Jan 17 17:16:50 2011
@@ -25,8 +25,8 @@ import java.util.HashSet;
import java.util.Hashtable;
import java.util.Set;
-import org.apache.sling.installer.api.tasks.InstallTask;
import org.apache.sling.installer.api.tasks.TaskResourceGroup;
+import org.apache.sling.installer.core.impl.AbstractInstallTask;
import org.osgi.framework.Constants;
import org.osgi.framework.InvalidSyntaxException;
import org.osgi.service.cm.Configuration;
@@ -36,7 +36,7 @@ import org.osgi.util.tracker.ServiceTrac
/**
* Base class for configuration-related tasks
*/
-abstract class AbstractConfigTask extends InstallTask {
+abstract class AbstractConfigTask extends AbstractInstallTask {
/** Configuration properties to ignore when comparing configs */
protected static final Set<String> ignoredProperties = new HashSet<String>();
Modified: sling/trunk/installer/core/src/main/java/org/apache/sling/installer/core/impl/tasks/BundleInstallTask.java
URL: http://svn.apache.org/viewvc/sling/trunk/installer/core/src/main/java/org/apache/sling/installer/core/impl/tasks/BundleInstallTask.java?rev=1060001&r1=1060000&r2=1060001&view=diff
==============================================================================
--- sling/trunk/installer/core/src/main/java/org/apache/sling/installer/core/impl/tasks/BundleInstallTask.java (original)
+++ sling/trunk/installer/core/src/main/java/org/apache/sling/installer/core/impl/tasks/BundleInstallTask.java Mon Jan 17 17:16:50 2011
@@ -19,15 +19,15 @@
package org.apache.sling.installer.core.impl.tasks;
import org.apache.sling.installer.api.InstallableResource;
-import org.apache.sling.installer.api.tasks.InstallTask;
import org.apache.sling.installer.api.tasks.InstallationContext;
import org.apache.sling.installer.api.tasks.TaskResourceGroup;
+import org.apache.sling.installer.core.impl.AbstractInstallTask;
import org.osgi.framework.Bundle;
import org.osgi.service.startlevel.StartLevel;
/** Install a bundle supplied as a RegisteredResource.
* Creates a BundleStartTask to start the bundle */
-public class BundleInstallTask extends InstallTask {
+public class BundleInstallTask extends AbstractInstallTask {
private static final String BUNDLE_INSTALL_ORDER = "50-";
Modified: sling/trunk/installer/core/src/main/java/org/apache/sling/installer/core/impl/tasks/BundleRemoveTask.java
URL: http://svn.apache.org/viewvc/sling/trunk/installer/core/src/main/java/org/apache/sling/installer/core/impl/tasks/BundleRemoveTask.java?rev=1060001&r1=1060000&r2=1060001&view=diff
==============================================================================
--- sling/trunk/installer/core/src/main/java/org/apache/sling/installer/core/impl/tasks/BundleRemoveTask.java (original)
+++ sling/trunk/installer/core/src/main/java/org/apache/sling/installer/core/impl/tasks/BundleRemoveTask.java Mon Jan 17 17:16:50 2011
@@ -18,10 +18,10 @@
*/
package org.apache.sling.installer.core.impl.tasks;
-import org.apache.sling.installer.api.tasks.InstallTask;
import org.apache.sling.installer.api.tasks.InstallationContext;
import org.apache.sling.installer.api.tasks.ResourceState;
import org.apache.sling.installer.api.tasks.TaskResourceGroup;
+import org.apache.sling.installer.core.impl.AbstractInstallTask;
import org.osgi.framework.Bundle;
import org.osgi.framework.BundleException;
import org.osgi.framework.Constants;
@@ -30,7 +30,7 @@ import org.osgi.framework.Constants;
* Creates a SynchronousRefreshPackagesTask when
* executed.
*/
-public class BundleRemoveTask extends InstallTask {
+public class BundleRemoveTask extends AbstractInstallTask {
private static final String BUNDLE_REMOVE_ORDER = "30-";
Modified: sling/trunk/installer/core/src/main/java/org/apache/sling/installer/core/impl/tasks/BundleStartTask.java
URL: http://svn.apache.org/viewvc/sling/trunk/installer/core/src/main/java/org/apache/sling/installer/core/impl/tasks/BundleStartTask.java?rev=1060001&r1=1060000&r2=1060001&view=diff
==============================================================================
--- sling/trunk/installer/core/src/main/java/org/apache/sling/installer/core/impl/tasks/BundleStartTask.java (original)
+++ sling/trunk/installer/core/src/main/java/org/apache/sling/installer/core/impl/tasks/BundleStartTask.java Mon Jan 17 17:16:50 2011
@@ -20,11 +20,11 @@ package org.apache.sling.installer.core.
import java.text.DecimalFormat;
-import org.apache.sling.installer.api.tasks.InstallTask;
import org.apache.sling.installer.api.tasks.InstallationContext;
import org.apache.sling.installer.api.tasks.ResourceState;
import org.apache.sling.installer.api.tasks.TaskResource;
import org.apache.sling.installer.api.tasks.TaskResourceGroup;
+import org.apache.sling.installer.core.impl.AbstractInstallTask;
import org.apache.sling.installer.core.impl.OsgiInstallerImpl;
import org.osgi.framework.Bundle;
import org.osgi.framework.BundleException;
@@ -35,7 +35,7 @@ import org.osgi.framework.Constants;
* but only after receiving a bundle or framework event,
* indicating that it's worth retrying
*/
-public class BundleStartTask extends InstallTask {
+public class BundleStartTask extends AbstractInstallTask {
private static final String BUNDLE_START_ORDER = "70-";
Modified: sling/trunk/installer/core/src/main/java/org/apache/sling/installer/core/impl/tasks/BundleUpdateTask.java
URL: http://svn.apache.org/viewvc/sling/trunk/installer/core/src/main/java/org/apache/sling/installer/core/impl/tasks/BundleUpdateTask.java?rev=1060001&r1=1060000&r2=1060001&view=diff
==============================================================================
--- sling/trunk/installer/core/src/main/java/org/apache/sling/installer/core/impl/tasks/BundleUpdateTask.java (original)
+++ sling/trunk/installer/core/src/main/java/org/apache/sling/installer/core/impl/tasks/BundleUpdateTask.java Mon Jan 17 17:16:50 2011
@@ -18,10 +18,10 @@
*/
package org.apache.sling.installer.core.impl.tasks;
-import org.apache.sling.installer.api.tasks.InstallTask;
import org.apache.sling.installer.api.tasks.InstallationContext;
import org.apache.sling.installer.api.tasks.ResourceState;
import org.apache.sling.installer.api.tasks.TaskResourceGroup;
+import org.apache.sling.installer.core.impl.AbstractInstallTask;
import org.osgi.framework.Bundle;
import org.osgi.framework.Constants;
import org.osgi.framework.Version;
@@ -30,7 +30,7 @@ import org.osgi.framework.Version;
* a bundleStartTask to restart the bundle if it was
* active before the update.
*/
-public class BundleUpdateTask extends InstallTask {
+public class BundleUpdateTask extends AbstractInstallTask {
private static final String BUNDLE_UPDATE_ORDER = "40-";
Modified: sling/trunk/installer/core/src/main/java/org/apache/sling/installer/core/impl/tasks/SynchronousRefreshPackagesTask.java
URL: http://svn.apache.org/viewvc/sling/trunk/installer/core/src/main/java/org/apache/sling/installer/core/impl/tasks/SynchronousRefreshPackagesTask.java?rev=1060001&r1=1060000&r2=1060001&view=diff
==============================================================================
--- sling/trunk/installer/core/src/main/java/org/apache/sling/installer/core/impl/tasks/SynchronousRefreshPackagesTask.java (original)
+++ sling/trunk/installer/core/src/main/java/org/apache/sling/installer/core/impl/tasks/SynchronousRefreshPackagesTask.java Mon Jan 17 17:16:50 2011
@@ -18,15 +18,16 @@
*/
package org.apache.sling.installer.core.impl.tasks;
-import org.apache.sling.installer.api.tasks.InstallationContext;
import org.apache.sling.installer.api.tasks.InstallTask;
+import org.apache.sling.installer.api.tasks.InstallationContext;
+import org.apache.sling.installer.core.impl.AbstractInstallTask;
import org.osgi.framework.Bundle;
import org.osgi.framework.FrameworkEvent;
import org.osgi.framework.FrameworkListener;
import org.osgi.service.packageadmin.PackageAdmin;
/** Execute an OSGi "refresh packages" operation, synchronously */
-public class SynchronousRefreshPackagesTask extends InstallTask implements FrameworkListener {
+public class SynchronousRefreshPackagesTask extends AbstractInstallTask implements FrameworkListener {
/** Tracker for the package admin. */
private final BundleTaskCreator bundleTaskCreator;
Modified: sling/trunk/installer/core/src/main/java/org/apache/sling/installer/core/impl/tasks/SystemBundleUpdateTask.java
URL: http://svn.apache.org/viewvc/sling/trunk/installer/core/src/main/java/org/apache/sling/installer/core/impl/tasks/SystemBundleUpdateTask.java?rev=1060001&r1=1060000&r2=1060001&view=diff
==============================================================================
--- sling/trunk/installer/core/src/main/java/org/apache/sling/installer/core/impl/tasks/SystemBundleUpdateTask.java (original)
+++ sling/trunk/installer/core/src/main/java/org/apache/sling/installer/core/impl/tasks/SystemBundleUpdateTask.java Mon Jan 17 17:16:50 2011
@@ -21,9 +21,9 @@ package org.apache.sling.installer.core.
import java.io.IOException;
import java.io.InputStream;
-import org.apache.sling.installer.api.tasks.InstallTask;
import org.apache.sling.installer.api.tasks.InstallationContext;
import org.apache.sling.installer.api.tasks.TaskResourceGroup;
+import org.apache.sling.installer.core.impl.AbstractInstallTask;
import org.osgi.framework.Bundle;
import org.osgi.framework.BundleException;
import org.osgi.framework.Constants;
@@ -31,7 +31,7 @@ import org.osgi.framework.Constants;
/**
* Update the system bundle from a RegisteredResource.
*/
-public class SystemBundleUpdateTask extends InstallTask {
+public class SystemBundleUpdateTask extends AbstractInstallTask {
private static final String BUNDLE_UPDATE_ORDER = "99-";
Modified: sling/trunk/installer/core/src/test/java/org/apache/sling/installer/core/impl/MockBundleResource.java
URL: http://svn.apache.org/viewvc/sling/trunk/installer/core/src/test/java/org/apache/sling/installer/core/impl/MockBundleResource.java?rev=1060001&r1=1060000&r2=1060001&view=diff
==============================================================================
--- sling/trunk/installer/core/src/test/java/org/apache/sling/installer/core/impl/MockBundleResource.java (original)
+++ sling/trunk/installer/core/src/test/java/org/apache/sling/installer/core/impl/MockBundleResource.java Mon Jan 17 17:16:50 2011
@@ -148,7 +148,7 @@ public class MockBundleResource implemen
}
/**
- * @see org.apache.sling.installer.api.tasks.TaskResource#setState(org.apache.sling.installer.api.tasks.ResourceState)
+ * Set the state
*/
public void setState(ResourceState s) {
this.state = s;
Modified: sling/trunk/installer/core/src/test/java/org/apache/sling/installer/core/impl/tasks/BundleTaskCreatorTest.java
URL: http://svn.apache.org/viewvc/sling/trunk/installer/core/src/test/java/org/apache/sling/installer/core/impl/tasks/BundleTaskCreatorTest.java?rev=1060001&r1=1060000&r2=1060001&view=diff
==============================================================================
--- sling/trunk/installer/core/src/test/java/org/apache/sling/installer/core/impl/tasks/BundleTaskCreatorTest.java (original)
+++ sling/trunk/installer/core/src/test/java/org/apache/sling/installer/core/impl/tasks/BundleTaskCreatorTest.java Mon Jan 17 17:16:50 2011
@@ -155,7 +155,7 @@ public class BundleTaskCreatorTest {
@Test
public void testBundleRemoveSingle() throws IOException {
final String version = "1.0";
- final TaskResource [] r = {
+ final MockBundleResource [] r = {
new MockBundleResource(SN, version)
};
r[0].setState(ResourceState.UNINSTALL);
@@ -171,12 +171,12 @@ public class BundleTaskCreatorTest {
@Test
public void testBundleRemoveMultiple() throws IOException {
- final TaskResource [] r = {
+ final MockBundleResource [] r = {
new MockBundleResource(SN, "1.0"),
new MockBundleResource(SN, "1.1"),
new MockBundleResource(SN, "2.0")
};
- for(TaskResource x : r) {
+ for(MockBundleResource x : r) {
x.setState(ResourceState.UNINSTALL);
}
@@ -195,7 +195,7 @@ public class BundleTaskCreatorTest {
@Test
public void testDowngradeOfRemovedResource() throws IOException {
- final TaskResource [] r = {
+ final MockBundleResource [] r = {
new MockBundleResource(SN, "1.0.0"),
new MockBundleResource(SN, "1.1.0"),
};