/** * Gets all component names with types that extend or implement specific * component type. * * @param componentType * the component type to match * @return a list of component names that match with supplied type. * @throws UnifyException * if container is not started. */ public List<String> getComponentNames(Class<? extends UnifyComponent> componentType) throws UnifyException { // checkStarted(); List<String> names = new ArrayList<String>(); for (InternalUnifyComponentInfo iuc : internalUnifyComponentInfos.values()) { if (componentType.isAssignableFrom(iuc.getType())) { names.add(iuc.getName()); } } return names; }
componentInfoList.add(new UnifyComponentInfo(uici.getName(), uici.getOriginalType(), uici.getFirstPassTime(), uici.getFirstFailTime(), uici.getLastPassTime(), uici.getLastFailTime(), uici.getPassCount(), uici.getFailCount(), settingInfoList));
} else { throw new UnifyException(UnifyCoreErrorConstants.COMPONENT_INVALID_PERIOD_METHOD, iuci.getName(), method.getName()); && method.getParameterTypes().length == 1 && method.getParameterTypes()[0].equals(String[].class)) { String name = NameUtils.getComponentMethodName(iuci.getName(), method.getName()); broadcastInfoMap.put(name, new BroadcastInfo(iuci.getName(), method.getName())); } else { throw new UnifyException(UnifyCoreErrorConstants.COMPONENT_INVALID_BROADCAST_METHOD, iuci.getName(), method.getName()); logDebug("Periodic methods detected for component '" + iuci.getName() + "'."); componentPeriodMethodMap.put(iuci.getName(), periodicMethodMap); logDebug("Plug-in sockets detected for component '" + iuci.getName() + "'."); componentPluginSocketsMap.put(iuci.getName(), pluginSockets); logDebug("Business component '" + iuci.getName() + "' detected."); managedBusinessServiceConfigList.add(iuci.getUnifyComponentConfig()); if (busServInfo == null) { throw new UnifyException(UnifyCoreErrorConstants.BUSINESSLOGIC_PLUGIN_TARGET_UNKNOWN, iuci.getName(), pla.target()); iuci.getName(), pla.target()); } catch (Exception e) { throw new UnifyException(UnifyCoreErrorConstants.BUSINESSLOGIC_PLUGIN_TARGET_NON_SOCKET,