/*
 * Copyright (c) 2016 Cisco Systems, Inc. and others.  All rights reserved.
 *
 * This program and the accompanying materials are made available under the
 * terms of the Eclipse Public License v1.0 which accompanies this distribution,
 * and is available at http://www.eclipse.org/legal/epl-v10.html
 */

package org.opendaylight.protocol.bgp.flowspec;

import com.google.common.collect.Lists;
import java.util.List;
import org.opendaylight.protocol.bgp.openconfig.spi.AbstractBGPTableTypeRegistryProviderActivator;
import org.opendaylight.protocol.bgp.openconfig.spi.BGPTableTypeRegistryProvider;
import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.bgp.flowspec.rev180329.FlowspecL3vpnSubsequentAddressFamily;
import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.bgp.flowspec.rev180329.FlowspecSubsequentAddressFamily;
import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.bgp.openconfig.extensions.rev180329.IPV4FLOW;
import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.bgp.openconfig.extensions.rev180329.IPV4L3VPNFLOW;
import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.bgp.openconfig.extensions.rev180329.IPV6FLOW;
import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.bgp.openconfig.extensions.rev180329.IPV6L3VPNFLOW;
import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.bgp.types.rev180329.Ipv4AddressFamily;
import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.bgp.types.rev180329.Ipv6AddressFamily;
import org.opendaylight.yangtools.concepts.AbstractRegistration;

public final class TableTypeActivator extends AbstractBGPTableTypeRegistryProviderActivator {

    @Override
    protected List<AbstractRegistration> startBGPTableTypeRegistryProviderImpl(final BGPTableTypeRegistryProvider provider) {
        return Lists.newArrayList(
                provider.registerBGPTableType(Ipv4AddressFamily.class, FlowspecSubsequentAddressFamily.class, IPV4FLOW.class),
                provider.registerBGPTableType(Ipv6AddressFamily.class, FlowspecSubsequentAddressFamily.class, IPV6FLOW.class),
                provider.registerBGPTableType(Ipv4AddressFamily.class, FlowspecL3vpnSubsequentAddressFamily.class, IPV4L3VPNFLOW.class),
                provider.registerBGPTableType(Ipv6AddressFamily.class, FlowspecL3vpnSubsequentAddressFamily.class, IPV6L3VPNFLOW.class));
    }

}

@@ -301,17 +301,16 @@
 tml%0A */%0A
-%0A
 package 
@@ -361,38 +361,23 @@
 ort 
-com.google.common.collect.List
+java.util.Array
 s;%0Ai
@@ -1704,17 +1704,16 @@
 vator %7B%0A
-%0A
     @Ove
@@ -1797,16 +1797,29 @@
 derImpl(
+%0A            
 final BG
@@ -1876,22 +1876,17 @@
 urn 
-Lists.new
 Array
+s.as
 List
@@ -1891,36 +1891,32 @@
 st(%0A            
- 
-   
 provider.registe
@@ -1988,24 +1988,40 @@
 amily.class,
+%0A               
  IPV4FLOW.cl
@@ -2018,36 +2018,32 @@
 PV4FLOW.class),%0A
-    
             prov
@@ -2127,24 +2127,40 @@
 amily.class,
+%0A               
  IPV6FLOW.cl
@@ -2157,36 +2157,32 @@
 PV6FLOW.class),%0A
-    
             prov
@@ -2271,24 +2271,40 @@
 amily.class,
+%0A               
  IPV4L3VPNFL
@@ -2306,36 +2306,32 @@
 VPNFLOW.class),%0A
-    
             prov
@@ -2424,16 +2424,32 @@
 y.class,
+%0A               
  IPV6L3V
@@ -2470,11 +2470,10 @@
 ;%0A    %7D%0A
-%0A
 %7D%0A

Fix checkstyle in TableTypeActivator