- /**
- * Method validates input values and makes {@link MultipartRequestInput} from input values.
- *
- * @param xid
- * @param type
- * @param ofVersion
- * @param moreRequests
- * @param body
- * @return
- */
- public static MultipartRequestInput makeMultipartRequestInput(final long xid, final short ofVersion,
- @Nonnull final MultipartType type, final boolean moreRequests,
- @Nonnull final MultipartRequestBody body) {
- Preconditions.checkArgument(validationOfMultipartTypeAndRequestBody(type, body));
- return maker(xid, type, ofVersion, moreRequests, body);
- }
-
- /**
- * Method build {@link MultipartRequestInput} from input values. It is private because we would like
- * to validate only what is really need to be validate.
- *
- * @param xid
- * @param type
- * @param ofVersion
- * @param moreRequests
- * @param body
- * @return
- */
- private static MultipartRequestInput maker(final long xid, final MultipartType type,
- final short ofVersion, final boolean moreRequests, final MultipartRequestBody body) {
- final MultipartRequestInputBuilder builder = new MultipartRequestInputBuilder();
- builder.setFlags(new MultipartRequestFlags(moreRequests));
- builder.setMultipartRequestBody(body);
- builder.setVersion(ofVersion);
- builder.setType(type);
- builder.setXid(xid);
- return builder.build();
+ private static org.opendaylight.yang.gen.v1.urn.opendaylight.multipart.types.rev170112.multipart.request
+ .MultipartRequestBody makeDefaultSingleLayerBody(final MultipartType type) {
+ switch (type) {
+ case OFPMPDESC: return new MultipartRequestDescBuilder().build();
+ case OFPMPFLOW: return new MultipartRequestFlowStatsBuilder().setFlowStats(new FlowStatsBuilder()
+ .setMatch(new org.opendaylight.yang.gen.v1.urn.opendaylight.flow.types.rev131026.flow
+ .MatchBuilder().build()).build()).build();
+ case OFPMPAGGREGATE: return new MultipartRequestFlowAggregateStatsBuilder().build();
+ case OFPMPTABLE: return new MultipartRequestFlowTableStatsBuilder().build();
+ case OFPMPPORTSTATS: return new org.opendaylight.yang.gen.v1.urn.opendaylight.port.statistics
+ .rev131214.multipart.request.multipart.request.body.MultipartRequestPortStatsBuilder().build();
+ case OFPMPQUEUE: return new MultipartRequestQueueStatsBuilder().build();
+ case OFPMPGROUP: return new MultipartRequestGroupStatsBuilder().build();
+ case OFPMPGROUPDESC: return new MultipartRequestGroupDescBuilder().build();
+ case OFPMPGROUPFEATURES: return new MultipartRequestGroupFeaturesBuilder().build();
+ case OFPMPMETER: return new MultipartRequestMeterStatsBuilder().build();
+ case OFPMPMETERCONFIG: return new org.opendaylight.yang.gen.v1.urn.opendaylight.meter.statistics
+ .rev131111.multipart.request.multipart.request.body.MultipartRequestMeterConfigBuilder().build();
+ case OFPMPMETERFEATURES: return new MultipartRequestMeterFeaturesBuilder().build();
+ case OFPMPTABLEFEATURES: return new org.opendaylight.yang.gen.v1.urn.opendaylight.table.types
+ .rev131026.multipart.request.multipart.request.body.MultipartRequestTableFeaturesBuilder().build();
+ case OFPMPPORTDESC: return new MultipartRequestPortDescBuilder().build();
+ case OFPMPEXPERIMENTER: return new MultipartRequestExperimenterBuilder().build();
+ default:throw new IllegalArgumentException("Unknown MultipartType " + type);
+ }