/** * Filters the collection by device name use. * @param use Use to filter. * @return The filtered collection. */ public final DevicesInPortal filterByUse(DeviceNameUse use) { checkNotNull(use, "Device name use"); Predicate<DeviceInPortal> f = Predicates.compose(equalTo(use), DeviceInPortal.USE); if (Iterables.any(values(), f)) { return new Filter(this, f); } else { return EMPTY; } }
/** * @see com.isotrol.impe3.api.DeviceResolver#resolveDevice(com.isotrol.impe3.api.DeviceResolutionParams) */ public final ResolvedDevice resolveDevice(DeviceResolutionParams params) { DevicesInPortal dips = params.getPortal().getDevices(); if (!uses) { dips = dips.filterByUse(DeviceNameUse.NONE); } return resolve(params, Iterables.filter(dips.values(), filter)); }