@Override public List<? extends Host> findHosts(long accountId, long instanceId) { return create() .select(HOST.fields()) .from(INSTANCE) .join(INSTANCE_HOST_MAP) .on(INSTANCE.ID.eq(INSTANCE_HOST_MAP.INSTANCE_ID)) .join(HOST) .on(HOST.ID.eq(INSTANCE_HOST_MAP.HOST_ID)) .where( HOST.REMOVED .isNull() .and(INSTANCE_HOST_MAP.REMOVED.isNull()) .and(INSTANCE.ID.eq(instanceId))) .fetchInto(HostRecord.class); }
@Override public List<? extends InstanceHostMap> findBadInstanceHostMaps(int count) { return create() .select(INSTANCE_HOST_MAP.fields()) .from(INSTANCE_HOST_MAP) .join(INSTANCE) .on(INSTANCE_HOST_MAP.INSTANCE_ID.eq(INSTANCE.ID)) .where( INSTANCE_HOST_MAP .REMOVED .isNull() .and(INSTANCE.STATE.eq(CommonStatesConstants.PURGED)) .and( INSTANCE_HOST_MAP.STATE.notIn( CommonStatesConstants.DEACTIVATING, CommonStatesConstants.REMOVING))) .limit(count) .fetchInto(InstanceHostMapRecord.class); }