public ResolverError[] getResolverErrors(BundleDescription bundle) { return target.getResolverErrors(bundle); }
public ResolverError[] getResolverErrors(BundleDescription bundle) { return target.getResolverErrors(bundle); }
public ResolverError[] getResolverErrors(BundleDescription bundle) { return platformAdmin.getSystemState().getResolverErrors(bundle); }
public ResolverError[] getResolverErrors(BundleDescription bundle) { return platformAdmin.getSystemState().getResolverErrors(bundle); }
public Map getResolverErrors() { Map map = new HashMap(); BundleDescription[] bundles = fState.getBundles(); for (int i = 0; i < bundles.length; i++) { if (!bundles[i].isResolved()) { map.put(bundles[i], fState.getResolverErrors(bundles[i])); } } return map; }
public String toDebugString(State state) { StringBuilder sb = new StringBuilder("Resolved OSGi state\n"); for (BundleDescription otherBundle : state.getBundles()) { if (!otherBundle.isResolved()) { sb.append("NOT "); } sb.append("RESOLVED "); sb.append(otherBundle.toString()).append(" : ").append(otherBundle.getLocation()); sb.append('\n'); for (ResolverError error : state.getResolverErrors(otherBundle)) { sb.append('\t').append(error.toString()).append('\n'); } } return sb.toString(); }
private BundleException getResolverError(BundleDescription bundleDesc) { ResolverError[] errors = framework.adaptor.getState().getResolverErrors(bundleDesc); if (errors == null || errors.length == 0) return new BundleException(NLS.bind(Msg.BUNDLE_UNRESOLVED_EXCEPTION, this.toString()), BundleException.RESOLVE_ERROR); StringBuffer message = new StringBuffer(); int errorType = BundleException.RESOLVE_ERROR; for (int i = 0; i < errors.length; i++) { if ((errors[i].getType() & ResolverError.INVALID_NATIVECODE_PATHS) != 0) errorType = BundleException.NATIVECODE_ERROR; message.append(errors[i].toString()); if (i < errors.length - 1) message.append(", "); //$NON-NLS-1$ } return new BundleException(NLS.bind(Msg.BUNDLE_UNRESOLVED_UNSATISFIED_CONSTRAINT_EXCEPTION, this.toString(), message.toString()), errorType); }
private BundleException getResolverError(BundleDescription bundleDesc) { ResolverError[] errors = framework.adaptor.getState().getResolverErrors(bundleDesc); if (errors == null || errors.length == 0) return new BundleException(NLS.bind(Msg.BUNDLE_UNRESOLVED_EXCEPTION, this.toString()), BundleException.RESOLVE_ERROR); StringBuffer message = new StringBuffer(); int errorType = BundleException.RESOLVE_ERROR; for (int i = 0; i < errors.length; i++) { if ((errors[i].getType() & ResolverError.INVALID_NATIVECODE_PATHS) != 0) errorType = BundleException.NATIVECODE_ERROR; message.append(errors[i].toString()); if (i < errors.length - 1) message.append(", "); //$NON-NLS-1$ } return new BundleException(NLS.bind(Msg.BUNDLE_UNRESOLVED_UNSATISFIED_CONSTRAINT_EXCEPTION, this.toString(), message.toString()), errorType); }
private static void getRelevantErrors(State state, Set<ResolverError> errors, BundleDescription bundle) { ResolverError[] bundleErrors = state.getResolverErrors(bundle); for (int j = 0; j < bundleErrors.length; j++) { ResolverError error = bundleErrors[j]; errors.add(error); VersionConstraint constraint = error.getUnsatisfiedConstraint(); if (constraint instanceof BundleSpecification || constraint instanceof HostSpecification) { BundleDescription[] requiredBundles = state.getBundles(constraint.getName()); for (int i = 0; i < requiredBundles.length; i++) { getRelevantErrors(state, errors, requiredBundles[i]); } } } }
private void getRelevantErrors(State state, Set<ResolverError> errors, BundleDescription bundle) { ResolverError[] bundleErrors = state.getResolverErrors(bundle); for (int j = 0; j < bundleErrors.length; j++) { ResolverError error = bundleErrors[j]; errors.add(error); VersionConstraint constraint = error.getUnsatisfiedConstraint(); if (constraint instanceof BundleSpecification || constraint instanceof HostSpecification) { BundleDescription[] requiredBundles = state.getBundles(constraint.getName()); for (int i = 0; i < requiredBundles.length; i++) { // if one of the constraints is the bundle itself (recursive dependency) // do not handle that bundle (again). See bug 442594. if (bundle.equals(requiredBundles[i])) { continue; } getRelevantErrors(state, errors, requiredBundles[i]); } } } }
private void getRelevantErrors( Set<ResolverError> errors, BundleDescription bundle ) { ResolverError[] bundleErrors = state.getResolverErrors( bundle ); for ( int j = 0; j < bundleErrors.length; j++ ) { ResolverError error = bundleErrors[j]; errors.add( error ); VersionConstraint constraint = error.getUnsatisfiedConstraint(); if ( constraint instanceof BundleSpecification || constraint instanceof HostSpecification ) { BundleDescription[] requiredBundles = state.getBundles( constraint.getName() ); for ( int i = 0; i < requiredBundles.length; i++ ) { getRelevantErrors( errors, requiredBundles[i] ); } } } }
@Override public synchronized ResolverError[] getErrors() throws CoreException { init(); ApiBaseline baseline = (ApiBaseline) getBaseline(); if (fBundleDescription == null) { baselineDisposed(baseline); } if (baseline != null) { ResolverError[] resolverErrors = baseline.getState().getResolverErrors(fBundleDescription); if (resolverErrors.length == 0) { return null; } return resolverErrors; } return null; }
@Override public Object[] getChildren(Object parentElement) { if (parentElement instanceof BundleDescription) { BundleDescription desc = (BundleDescription) parentElement; if (desc.isResolved()) { Object[] required = getResolvedDependencies(desc.getRequiredBundles()); Object[] imported = getResolvedDependencies(desc.getImportPackages()); ArrayList<DependencyGroup> list = new ArrayList<>(2); if (required.length > 0) list.add(new DependencyGroup(required)); if (imported.length > 0) list.add(new DependencyGroup(imported)); return list.toArray(); } return desc.getContainingState().getResolverErrors(desc); } else if (parentElement instanceof DependencyGroup) { return ((DependencyGroup) parentElement).getChildren(); } return new Object[0]; }
private void resolveFragment(ResolverBundle fragment) { if (!fragment.isFragment()) return; if (fragment.getHost().getNumPossibleSuppliers() > 0) if (!developmentMode || state.getResolverErrors(fragment.getBundleDescription()).length == 0) setBundleResolved(fragment); }
private void resolveFragment(ResolverBundle fragment) { if (!fragment.isFragment()) return; if (fragment.getHost().getNumPossibleSuppliers() > 0) if (!developmentMode || state.getResolverErrors(fragment.getBundleDescription()).length == 0) setBundleResolved(fragment); }
private void resolveFragment(ResolverBundle fragment) { if (!fragment.isFragment()) return; if (fragment.getHost().getNumPossibleSuppliers() > 0) if (!developmentMode || state.getResolverErrors(fragment.getBundleDescription()).length == 0) setBundleResolved(fragment); }
private void resolveFragment(ResolverBundle fragment) { if (!fragment.isFragment()) return; if (fragment.getHost().getNumPossibleSuppliers() > 0) if (!developmentMode || state.getResolverErrors(fragment.getBundleDescription()).length == 0) setBundleResolved(fragment); }
@Override public MultiStatus diagnose(long id) { PlatformAdmin plaformAdmin = PDERuntimePlugin.getDefault().getPlatformAdmin(); State state = plaformAdmin.getState(false); BundleDescription desc = state.getBundle(id); PlatformAdmin platformAdmin = PDERuntimePlugin.getDefault().getPlatformAdmin(); VersionConstraint[] unsatisfied = platformAdmin.getStateHelper().getUnsatisfiedConstraints(desc); ResolverError[] resolverErrors = platformAdmin.getState(false).getResolverErrors(desc); MultiStatus problems = new MultiStatus(PDERuntimePlugin.ID, IStatus.INFO, PDERuntimeMessages.RegistryView_found_problems, null); for (ResolverError error : resolverErrors) { if ((error.getType() & (ResolverError.MISSING_FRAGMENT_HOST | ResolverError.MISSING_GENERIC_CAPABILITY | ResolverError.MISSING_IMPORT_PACKAGE | ResolverError.MISSING_REQUIRE_BUNDLE)) != 0){ continue; } IStatus status = new Status(IStatus.WARNING, PDERuntimePlugin.ID, error.toString()); problems.add(status); } for (VersionConstraint constraint : unsatisfied) { IStatus status = new Status(IStatus.WARNING, PDERuntimePlugin.ID, MessageHelper.getResolutionFailureMessage(constraint)); problems.add(status); } return problems; }
private void validateEclipsePlatformFilter() { IHeader header = getHeader(ICoreConstants.PLATFORM_FILTER); if (header == null) return; try { PDECore.getDefault().getBundleContext().createFilter(header.getValue()); int severity = CompilerFlags.getFlag(fProject, CompilerFlags.P_INCOMPATIBLE_ENV); if (severity == CompilerFlags.IGNORE) return; BundleDescription desc = fModel.getBundleDescription(); if (desc != null && !desc.isResolved()) { ResolverError[] errors = desc.getContainingState().getResolverErrors(desc); for (int i = 0; i < errors.length; i++) { if (errors[i].getType() == ResolverError.PLATFORM_FILTER) { report(PDECoreMessages.BundleErrorReporter_badFilter, header.getLineNumber() + 1, severity, PDEMarkerFactory.CAT_OTHER); } } } } catch (InvalidSyntaxException ise) { report(PDECoreMessages.BundleErrorReporter_invalidFilterSyntax, header.getLineNumber() + 1, CompilerFlags.ERROR, PDEMarkerFactory.CAT_FATAL); } }
private void validateEclipsePlatformFilter() { IHeader header = getHeader(ICoreConstants.PLATFORM_FILTER); if (header == null) return; try { PDECore.getDefault().getBundleContext().createFilter(header.getValue()); int severity = CompilerFlags.getFlag(fProject, CompilerFlags.P_INCOMPATIBLE_ENV); if (severity == CompilerFlags.IGNORE) return; BundleDescription desc = fModel.getBundleDescription(); if (desc != null && !desc.isResolved()) { ResolverError[] errors = desc.getContainingState().getResolverErrors(desc); for (int i = 0; i < errors.length; i++) { if (errors[i].getType() == ResolverError.PLATFORM_FILTER) { report(PDECoreMessages.BundleErrorReporter_badFilter, header.getLineNumber() + 1, severity, PDEMarkerFactory.CAT_OTHER); } } } } catch (InvalidSyntaxException ise) { report(PDECoreMessages.BundleErrorReporter_invalidFilterSyntax, header.getLineNumber() + 1, CompilerFlags.ERROR, PDEMarkerFactory.CAT_FATAL); } }