private QueryOutputImpl(QueryOutputBuilder base) { this._response = base.getResponse(); this._type = base.getType(); switch (base.augmentation.size()) { case 0: this.augmentation = Collections.emptyMap(); break; case 1: final Map.Entry<java.lang.Class<? extends Augmentation<org.opendaylight.yang.gen.v1.urn.opendaylight.alto.service.model.networkmap.rev151021.QueryOutput>>, Augmentation<org.opendaylight.yang.gen.v1.urn.opendaylight.alto.service.model.networkmap.rev151021.QueryOutput>> e = base.augmentation.entrySet().iterator().next(); this.augmentation = Collections.<java.lang.Class<? extends Augmentation<org.opendaylight.yang.gen.v1.urn.opendaylight.alto.service.model.networkmap.rev151021.QueryOutput>>, Augmentation<org.opendaylight.yang.gen.v1.urn.opendaylight.alto.service.model.networkmap.rev151021.QueryOutput>>singletonMap(e.getKey(), e.getValue()); break; default : this.augmentation = new HashMap<>(base.augmentation); } }
public QueryOutputBuilder addAugmentation(java.lang.Class<? extends Augmentation<org.opendaylight.yang.gen.v1.urn.opendaylight.alto.service.model.networkmap.rev151021.QueryOutput>> augmentationType, Augmentation<org.opendaylight.yang.gen.v1.urn.opendaylight.alto.service.model.networkmap.rev151021.QueryOutput> augmentation) { if (augmentation == null) { return removeAugmentation(augmentationType); } if (!(this.augmentation instanceof HashMap)) { this.augmentation = new HashMap<>(); } this.augmentation.put(augmentationType, augmentation); return this; }
@Override public Future<RpcResult<QueryOutput>> query(QueryInput input) { if (!input.getType().equals(ResourceTypeNetworkmap.class)) { return RpcResultBuilder.<QueryOutput>failed().buildFuture(); } NetworkmapRequest request = (NetworkmapRequest)input.getRequest(); NetworkmapFilter filter = request.getNetworkmapFilter(); InstanceIdentifier<ContextTag> ctagIID = (InstanceIdentifier<ContextTag>)input.getServiceReference(); ResourceId resourceId = ctagIID.firstIdentifierOf(ContextTag.class) .firstKeyOf(Resource.class) .getResourceId(); String tag = ctagIID.firstKeyOf(ContextTag.class).getTag().getValue(); ReadOnlyTransaction rx = this.dataBroker.newReadOnlyTransaction(); List<Partition> partitionList = getFilteredNetworkmap(resourceId, tag, filter, rx); NetworkMapBuilder networkMapBuilder = new NetworkMapBuilder(); networkMapBuilder.setPartition(partitionList); NetworkmapResponseBuilder nmrBuilder = new NetworkmapResponseBuilder(); nmrBuilder.setNetworkMap(networkMapBuilder.build()); QueryOutputBuilder builder = new QueryOutputBuilder(); builder.setType(ResourceTypeNetworkmap.class).setResponse(nmrBuilder.build()); return RpcResultBuilder.success(builder.build()).buildFuture(); }