@Override public <T> List<T> getServices(Class<T> clazz) { List<T> list = new ArrayList<>(); synchronized (services) { for (Object service : services.values()) { if (service instanceof Factory) { if (clazz.isAssignableFrom(((Factory<?>) service).clazz)) { if (isVisible(service)) { try { list.add(clazz.cast(((Factory<?>) service).callable.call())); } catch (Exception e) { // TODO: log exception } } } } else if (clazz.isInstance(service)) { if (isVisible(service)) { list.add(clazz.cast(service)); } } } } if (parent != null) { list.addAll(parent.getServices(clazz)); } return list; }
@Override public <T> List<T> getServices(Class<T> clazz) { List<T> list = new ArrayList<>(); synchronized (services) { for (Object service : services.values()) { if (service instanceof Factory) { if (clazz.isAssignableFrom(((Factory<?>) service).clazz)) { if (isVisible(service)) { try { list.add(clazz.cast(((Factory<?>) service).callable.call())); } catch (Exception e) { // TODO: log exception } } } } else if (clazz.isInstance(service)) { if (isVisible(service)) { list.add(clazz.cast(service)); } } } } if (parent != null) { list.addAll(parent.getServices(clazz)); } return list; }
list.addAll(parent.getServices(clazz));
list.addAll(parent.getServices(clazz));
public String getHelp(final Session session, String path) { if (path == null) { path = "%root%"; } Map<String,String> props = new HashMap<>(); props.put("data", "${" + path + "}"); final List<HelpProvider> providers = session.getRegistry().getServices(HelpProvider.class); InterpolationHelper.performSubstitution(props, key -> { for (HelpProvider hp : providers) { String result = hp.getHelp(session, key); if (result != null) { return removeNewLine(result); } } return null; }); return props.get("data"); }
public String getHelp(final Session session, String path) { if (path == null) { path = "%root%"; } Map<String,String> props = new HashMap<>(); props.put("data", "${" + path + "}"); final List<HelpProvider> providers = session.getRegistry().getServices(HelpProvider.class); InterpolationHelper.performSubstitution(props, key -> { for (HelpProvider hp : providers) { String result = hp.getHelp(session, key); if (result != null) { return removeNewLine(result); } } return null; }); return props.get("data"); }
if (type.getRawClass() == List.class) { Set<Object> set = new HashSet<>(); set.addAll(registry.getServices(type.getActualTypeArgument(0).getRawClass())); if (registry != this.dependencies) { set.addAll(this.dependencies.getServices(type.getActualTypeArgument(0).getRawClass()));
if (type.getRawClass() == List.class) { Set<Object> set = new HashSet<>(); set.addAll(registry.getServices(type.getActualTypeArgument(0).getRawClass())); if (registry != this.dependencies) { set.addAll(this.dependencies.getServices(type.getActualTypeArgument(0).getRawClass()));