@Override public Image getImage(Object obj, int columnIndex) { if (columnIndex == 0) { IRteDependencyItem item = getDependencyItem(obj); if (item != null) { if (item.isMaster()) { EEvaluationResult res = item.getEvaluationResult(); if (res == EEvaluationResult.FULFILLED && item.isDeny()) res = EEvaluationResult.INCOMPATIBLE; switch (res) { case IGNORED: case UNDEFINED: case FULFILLED: break; case CONFLICT: case ERROR: case FAILED: case INCOMPATIBLE: case INCOMPATIBLE_API: case INCOMPATIBLE_BUNDLE: case INCOMPATIBLE_VARIANT: case INCOMPATIBLE_VENDOR: case INCOMPATIBLE_VERSION: case MISSING: case MISSING_API: case MISSING_BUNDLE: case MISSING_VARIANT: case MISSING_VENDOR: case MISSING_VERSION: case UNAVAILABLE: case UNAVAILABLE_PACK: return CpPlugInUI.getImage(CpPlugInUI.ICON_ERROR); case INACTIVE: case INSTALLED: case SELECTABLE: return CpPlugInUI.getImage(CpPlugInUI.ICON_WARNING); default: break; } return null; } else if (item.getComponentItem() != null) { IRteComponent component = item.getComponentItem().getParentComponent(); if (component != null) { ICpComponentInfo ci = component.getActiveCpComponentInfo(); int instances = component.getMaxInstanceCount(); if (ci != null && ci.getComponent() == null) { if (instances > 1) return CpPlugInUI.getImage(CpPlugInUI.ICON_MULTICOMPONENT_ERROR); else return CpPlugInUI.getImage(CpPlugInUI.ICON_COMPONENT_ERROR); } else { if (instances > 1) return CpPlugInUI.getImage(CpPlugInUI.ICON_MULTICOMPONENT); else return CpPlugInUI.getImage(CpPlugInUI.ICON_COMPONENT); } } } } } return null; }
@Override public String getDescription() { EEvaluationResult res = getEvaluationResult(); if (!fDependencies.isEmpty()) { switch (res) { case INSTALLED: case MISSING: case SELECTABLE: case UNAVAILABLE: case UNAVAILABLE_PACK: return CpStrings.RteDependencyResult_AdditionalComponentRequired; case INCOMPATIBLE: case FAILED: return CpStrings.RteDependencyResult_ComponentConficts; default: break; } } String s = null; if (fComponentItem != null && !res.isFulfilled()) { ICpComponentInfo ci = fComponentItem.getActiveCpComponentInfo(); if (ci != null && ci.getComponent() == null) { s = EEvaluationResult.MISSING.getDescription(); s += ". "; // $NON-NLS-1$ s += res.getDescription(); if (res == EEvaluationResult.UNAVAILABLE_PACK) { s += ": "; // $NON-NLS-1$ ICpPackInfo pi = ci.getPackInfo(); String id = pi.isVersionFixed() ? pi.getId() : pi.getPackFamilyId(); s += id; } return s; } } s = res.getDescription(); if (s != null) return s; return super.getDescription(); }