Repair Doxygen build infrastructure
[vpp.git] / plugins / acl-plugin / acl / jvpp / io / fd / vpp / jvpp / acl / test / AclTestRequests.java
1 /*
2  * Copyright (c) 2016 Cisco and/or its affiliates.
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at:
7  *
8  *     http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16
17 package io.fd.vpp.jvpp.acl.test;
18
19 import static io.fd.vpp.jvpp.acl.test.AclTestData.createAclRules;
20 import static io.fd.vpp.jvpp.acl.test.AclTestData.createMacipRules;
21
22 import io.fd.vpp.jvpp.VppInvocationException;
23 import io.fd.vpp.jvpp.acl.dto.AclAddReplace;
24 import io.fd.vpp.jvpp.acl.dto.AclAddReplaceReply;
25 import io.fd.vpp.jvpp.acl.dto.AclDel;
26 import io.fd.vpp.jvpp.acl.dto.AclDelReply;
27 import io.fd.vpp.jvpp.acl.dto.AclDetailsReplyDump;
28 import io.fd.vpp.jvpp.acl.dto.AclDump;
29 import io.fd.vpp.jvpp.acl.dto.AclInterfaceListDetailsReplyDump;
30 import io.fd.vpp.jvpp.acl.dto.AclInterfaceListDump;
31 import io.fd.vpp.jvpp.acl.dto.AclInterfaceSetAclList;
32 import io.fd.vpp.jvpp.acl.dto.AclInterfaceSetAclListReply;
33 import io.fd.vpp.jvpp.acl.dto.MacipAclAdd;
34 import io.fd.vpp.jvpp.acl.dto.MacipAclAddReply;
35 import io.fd.vpp.jvpp.acl.dto.MacipAclDel;
36 import io.fd.vpp.jvpp.acl.dto.MacipAclDelReply;
37 import io.fd.vpp.jvpp.acl.dto.MacipAclDetailsReplyDump;
38 import io.fd.vpp.jvpp.acl.dto.MacipAclDump;
39 import io.fd.vpp.jvpp.acl.future.FutureJVppAclFacade;
40 import java.util.concurrent.ExecutionException;
41
42 class AclTestRequests {
43
44     static MacipAclDetailsReplyDump sendMacIpDumpRequest(final FutureJVppAclFacade jvpp)
45             throws ExecutionException, InterruptedException {
46         System.out.println("Sending MacipAclDump request...");
47         MacipAclDetailsReplyDump dump = jvpp.macipAclDump(new MacipAclDump()).toCompletableFuture().get();
48         System.out.println("MacipAclDump returned");
49         return dump;
50     }
51
52     static void sendMacIpAddRequest(final FutureJVppAclFacade jvpp) throws InterruptedException, ExecutionException {
53         final MacipAclAdd request = createMacIpAddRequest();
54         System.out.printf("Sending MacipAclAdd request %s%n", request.toString());
55         final MacipAclAddReply reply = jvpp.macipAclAdd(createMacIpAddRequest()).toCompletableFuture().get();
56         System.out.printf("MacipAclAdd send result = %s%n", reply);
57     }
58
59     static void sendMacIpDelRequest(final FutureJVppAclFacade jvpp) throws InterruptedException, ExecutionException {
60         final MacipAclDel request = new MacipAclDel();
61         request.aclIndex = 0;
62         System.out.printf("Sending MacipAclDel request %s%n", request.toString());
63         final MacipAclDelReply reply = jvpp.macipAclDel(request).toCompletableFuture().get();
64         System.out.printf("MacipAclDel send result = %s%n", reply);
65     }
66
67     static void sendAclAddRequest(final FutureJVppAclFacade jvpp) throws InterruptedException, ExecutionException {
68         final AclAddReplace request = createAclAddRequest();
69         System.out.printf("Sending AclAddReplace request %s%n", request.toString());
70         final AclAddReplaceReply reply = jvpp.aclAddReplace(request).toCompletableFuture().get();
71         System.out.printf("AclAddReplace send result = %s%n", reply);
72     }
73
74     static AclDetailsReplyDump sendAclDumpRequest(final FutureJVppAclFacade jvpp)
75             throws InterruptedException, VppInvocationException, ExecutionException {
76         System.out.println("Sending AclDump request...");
77         final AclDetailsReplyDump dump = jvpp.aclDump(new AclDump()).toCompletableFuture().get();
78         System.out.printf("AclDump send result = %s%n", dump);
79         return dump;
80     }
81
82     static void sendAclDelRequest(final FutureJVppAclFacade jvpp) throws InterruptedException, ExecutionException {
83         final AclDel request = new AclDel();
84         request.aclIndex = 0;
85         System.out.printf("Sending AclDel request %s%n", request.toString());
86         final AclDelReply reply = jvpp.aclDel(request).toCompletableFuture().get();
87         System.out.printf("AclDel send result = %s%n", reply);
88     }
89
90     static AclInterfaceListDetailsReplyDump sendAclInterfaceListDumpRequest(final FutureJVppAclFacade jvpp)
91             throws InterruptedException, ExecutionException {
92         final AclInterfaceListDump request = new AclInterfaceListDump();
93         request.swIfIndex = 0;
94         System.out.printf("Sending AclInterfaceListDump request %s%n", request.toString());
95         final AclInterfaceListDetailsReplyDump dump = jvpp.aclInterfaceListDump(request).toCompletableFuture().get();
96         System.out.printf("AclInterfaceListDump send result = %s%n", dump);
97         return dump;
98     }
99
100     static void sendAclInterfaceSetAclList(final FutureJVppAclFacade jvpp)
101             throws InterruptedException, ExecutionException {
102         final AclInterfaceSetAclList request = new AclInterfaceSetAclList();
103         request.count = 1;
104         request.acls = new int[]{1};
105         request.swIfIndex = 0;
106         request.nInput = 0;
107         System.out.printf("Sending AclInterfaceSetAclList request %s%n", request.toString());
108         final AclInterfaceSetAclListReply reply = jvpp.aclInterfaceSetAclList(request).toCompletableFuture().get();
109         System.out.printf("AclInterfaceSetAclList send result = %s%n", reply);
110     }
111
112     static void sendAclInterfaceDeleteList(final FutureJVppAclFacade jvpp)
113             throws InterruptedException, ExecutionException {
114         // uses same api but sets list to empty
115         final AclInterfaceSetAclList request = new AclInterfaceSetAclList();
116         request.count = 0;
117         request.acls = new int[]{};
118         request.swIfIndex = 0;
119         request.nInput = 0;
120         System.out.printf("Sending AclInterfaceSetAclList(Delete) request %s%n", request.toString());
121         final AclInterfaceSetAclListReply reply = jvpp.aclInterfaceSetAclList(request).toCompletableFuture().get();
122         System.out.printf("AclInterfaceSetAclList(Delete) send result = %s%n", reply);
123     }
124
125     private static MacipAclAdd createMacIpAddRequest() {
126         MacipAclAdd request = new MacipAclAdd();
127
128         request.count = 2;
129         request.r = createMacipRules();
130         return request;
131     }
132
133     private static AclAddReplace createAclAddRequest() {
134         AclAddReplace request = new AclAddReplace();
135
136         request.aclIndex = -1;// to define new one
137         request.count = 2;
138         request.r = createAclRules();
139         return request;
140     }
141 }