You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@aries.apache.org by hu...@apache.org on 2015/03/16 11:25:32 UTC
svn commit: r1666948 -
/aries/trunk/subsystem/subsystem-core/src/main/java/org/apache/aries/subsystem/core/internal/StartAction.java
Author: hughesj
Date: Mon Mar 16 10:25:31 2015
New Revision: 1666948
URL: http://svn.apache.org/r1666948
Log:
ARIES-1245 adding additional logging info
Modified:
aries/trunk/subsystem/subsystem-core/src/main/java/org/apache/aries/subsystem/core/internal/StartAction.java
Modified: aries/trunk/subsystem/subsystem-core/src/main/java/org/apache/aries/subsystem/core/internal/StartAction.java
URL: http://svn.apache.org/viewvc/aries/trunk/subsystem/subsystem-core/src/main/java/org/apache/aries/subsystem/core/internal/StartAction.java?rev=1666948&r1=1666947&r2=1666948&view=diff
==============================================================================
--- aries/trunk/subsystem/subsystem-core/src/main/java/org/apache/aries/subsystem/core/internal/StartAction.java (original)
+++ aries/trunk/subsystem/subsystem-core/src/main/java/org/apache/aries/subsystem/core/internal/StartAction.java Mon Mar 16 10:25:31 2015
@@ -170,15 +170,45 @@ public class StartAction extends Abstrac
if (!frameworkWiring.resolveBundles(bundles)) {
//work out which bundles could not be resolved
Collection<Bundle> unresolved = new ArrayList<Bundle>();
+ StringBuilder diagnostics = new StringBuilder();
+ diagnostics.append(String.format("Unable to resolve bundles for subsystem/version/id %s/%s/%s:\n",
+ subsystem.getSymbolicName(), subsystem.getVersion(), subsystem.getSubsystemId()));
+ String fmt = "%d : STATE %s : %s : %s : %s";
for(Bundle bundle:bundles){
- if((bundle.getState() & Bundle.RESOLVED) != Bundle.RESOLVED){
+ if((bundle.getState() & Bundle.RESOLVED) != Bundle.RESOLVED) {
unresolved.add(bundle);
}
+ String state = null;
+ switch(bundle.getState()) {
+ case Bundle.ACTIVE :
+ state = "ACTIVE";
+ break;
+ case Bundle.INSTALLED :
+ state = "INSTALLED";
+ break;
+ case Bundle.RESOLVED :
+ state = "RESOLVED";
+ break;
+ case Bundle.STARTING :
+ state = "STARTING";
+ break;
+ case Bundle.STOPPING :
+ state = "STOPPING";
+ break;
+ case Bundle.UNINSTALLED :
+ state = "UNINSTALLED";
+ break;
+ default :
+ //convert common states to text otherwise default to just showing the ID
+ state = "[" + Integer.toString(bundle.getState()) + "]";
+ break;
+ }
+ diagnostics.append(String.format(fmt, bundle.getBundleId(), state,
+ bundle.getSymbolicName(), bundle.getVersion().toString(),
+ bundle.getLocation()));
+ diagnostics.append("\n");
}
- logger.error(
- "Unable to resolve bundles for subsystem/version/id {}/{}/{}: {}",
- new Object[] { subsystem.getSymbolicName(), subsystem.getVersion(),
- subsystem.getSubsystemId(), unresolved });
+ logger.error(diagnostics.toString());
throw new SubsystemException("Framework could not resolve the bundles: " + unresolved);
}
setExportIsolationPolicy(subsystem);