@Override public Set<IServiceId<?>> getAvailableServices() { final Set<IServiceId<?>> result = new HashSet<IServiceId<?>>(); for (final IServiceId<?> id : original.getAvailableServices()) { if (get(id) != null) { result.add(id); } } return result; }
@SuppressWarnings("unchecked") @Override public <SERVICE_TYPE> SERVICE_TYPE get(final IServiceId<SERVICE_TYPE> id) { final SERVICE_TYPE originalService = original.get(id); if (originalService instanceof IEntityService && filterUnreadableLinkDescriptors) { return getDecoratedService( id, (SERVICE_TYPE) new DecoratedEntityService((IEntityService) originalService)); } else if (originalService != null) { return getDecoratedService(id, originalService); } else { return null; } }