apply checkstyle check during build for neutron-mapper
[groupbasedpolicy.git] / neutron-mapper / src / test / java / org / opendaylight / groupbasedpolicy / neutron / mapper / test / NeutronEntityFactory.java
1 /*
2  * Copyright (c) 2015 Cisco Systems, Inc. and others.  All rights reserved.
3  *
4  * This program and the accompanying materials are made available under the
5  * terms of the Eclipse Public License v1.0 which accompanies this distribution,
6  * and is available at http://www.eclipse.org/legal/epl-v10.html
7  */
8 package org.opendaylight.groupbasedpolicy.neutron.mapper.test;
9
10 import com.google.common.base.Strings;
11
12 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.yang.types.rev130715.Uuid;
13 import org.opendaylight.yang.gen.v1.urn.opendaylight.neutron.constants.rev150712.DirectionBase;
14 import org.opendaylight.yang.gen.v1.urn.opendaylight.neutron.constants.rev150712.EthertypeBase;
15 import org.opendaylight.yang.gen.v1.urn.opendaylight.neutron.constants.rev150712.ProtocolBase;
16 import org.opendaylight.yang.gen.v1.urn.opendaylight.neutron.secgroups.rev150712.SecurityRuleAttributes;
17 import org.opendaylight.yang.gen.v1.urn.opendaylight.neutron.secgroups.rev150712.security.groups.attributes.security.groups.SecurityGroup;
18 import org.opendaylight.yang.gen.v1.urn.opendaylight.neutron.secgroups.rev150712.security.groups.attributes.security.groups.SecurityGroupBuilder;
19 import org.opendaylight.yang.gen.v1.urn.opendaylight.neutron.secgroups.rev150712.security.rules.attributes.security.rules.SecurityRule;
20 import org.opendaylight.yang.gen.v1.urn.opendaylight.neutron.secgroups.rev150712.security.rules.attributes.security.rules.SecurityRuleBuilder;
21
22 public final class NeutronEntityFactory {
23
24     private NeutronEntityFactory() {
25         throw new UnsupportedOperationException("Cannot create an instance");
26     }
27
28     public static SecurityGroup securityGroup(String id, String tenantId) {
29         return new SecurityGroupBuilder().setUuid(new Uuid(id)).setTenantId(new Uuid(tenantId)).build();
30     }
31
32     public static SecurityGroup securityGroupWithName(String id, String tenantId, String name) {
33         return new SecurityGroupBuilder().setUuid(new Uuid(id)).setTenantId(new Uuid(tenantId)).setName(name).build();
34     }
35
36     public static SecurityRule securityRuleWithoutGroupIds(String id, String tenant,
37         Class<? extends EthertypeBase> etherType, Class<? extends DirectionBase> direction,
38         Class<? extends ProtocolBase> protocol, int portMin, int portMax) {
39
40         SecurityRuleAttributes.Protocol proto = new SecurityRuleAttributes.Protocol(protocol);
41         SecurityRuleBuilder secRule = new SecurityRuleBuilder();
42         secRule.setUuid(new Uuid(id));
43         secRule.setTenantId(new Uuid(tenant));
44         secRule.setEthertype(etherType);
45         secRule.setDirection(direction);
46         secRule.setProtocol(proto);
47         secRule.setPortRangeMin(portMin);
48         secRule.setPortRangeMax(portMax);
49         return secRule.build();
50     }
51
52     public static SecurityRule securityRuleWithEtherType(String id, String tenant,
53             Class<? extends EthertypeBase> etherType, Class<? extends DirectionBase> direction, String ownerGroupId,
54             String remoteGroupId) {
55         SecurityRuleBuilder securityRuleBuilder = new SecurityRuleBuilder().setUuid(new Uuid(id))
56             .setTenantId(new Uuid(tenant))
57             .setEthertype(etherType)
58             .setDirection(direction)
59             .setSecurityGroupId(new Uuid(ownerGroupId));
60         if (!Strings.isNullOrEmpty(remoteGroupId)) {
61             securityRuleBuilder.setRemoteGroupId(new Uuid(remoteGroupId));
62         }
63         return securityRuleBuilder.build();
64     }
65 }