Bertrand Delacretaz created SLING-2612:
------------------------------------------

             Summary: Installer needs "install rules" to make certain 
operations optional
                 Key: SLING-2612
                 URL: https://issues.apache.org/jira/browse/SLING-2612
             Project: Sling
          Issue Type: Improvement
          Components: Installer
    Affects Versions: Installer Core 3.3.8
            Reporter: Bertrand Delacretaz



The installer currently executes all its operations without checking if they 
make sense in the current environment, we need more granularity for a few use 
cases like the ones below.

1) SLING-2569: do not install some bundles depending on their headers and the 
current environment.

2) Depending on the current state of the world, a ResourceTransformer needs to 
behave differently. For example, do not activate a RegisteredResource that 
contains demo content, but just upload it to the content repository.

Note that just ignoring resources would not cover case 2), where the "upload" 
operation happens but not the "activate" operation.

We might use a new InstallRule interface for that, something like:

// Service that provides a specific rule
public interface InstallRule {
  public boolean shouldExecute(String operation, RegisteredResource r);
}

The installer can then have a master InstallRule that queries all InstallRule 
services in sequence (ordered by service ranking) and ANDs the results.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to