@Test public void testComputeRoutingPolicySources() { String bgpExportPolicyName = "bgpExportPolicy"; String bgpImportPolicyName = "bgpImportPolicy"; String bgpMissingExportPolicyName = "bgpMissingExportPolicy"; String generatedRouteAttributePolicyName = "generatedRouteAttributePolicy"; String generatedRouteGenerationPolicyName = "generatedRouteGenerationPolicy"; String ospfExportPolicyName = "ospfExportPolicy"; String ospfExportSubPolicyName = "ospfExportSubPolicy"; Prefix generatedRoutePrefix = Ip.ZERO.toPrefix(); Configuration c = new Configuration("test", ConfigurationFormat.CISCO_IOS); Vrf vrf = c.getVrfs().computeIfAbsent(Configuration.DEFAULT_VRF_NAME, Vrf::new); BgpProcess bgpProcess = new BgpProcess(Ip.parse("1.1.1.1"), ConfigurationFormat.CISCO_IOS); vrf.setBgpProcess(bgpProcess); BgpPeerConfig neighbor = _factory .bgpNeighborBuilder() .setPeerAddress(Ip.ZERO) .setBgpProcess(bgpProcess) .setIpv4UnicastAddressFamily( Ipv4UnicastAddressFamily.builder() .setExportPolicy( c.getRoutingPolicies() .computeIfAbsent(bgpExportPolicyName, n -> new RoutingPolicy(n, c)) .getName()) .setImportPolicy( c.getRoutingPolicies() .computeIfAbsent(bgpImportPolicyName, n -> new RoutingPolicy(n, c)) .getName()) .build()) .build(); BgpPeerConfig neighborWithMissingPolicies = _factory .bgpNeighborBuilder() .setPeerAddress(Ip.MAX) .setBgpProcess(bgpProcess) .setIpv4UnicastAddressFamily( Ipv4UnicastAddressFamily.builder() .setExportPolicy(bgpMissingExportPolicyName) .build()) .build(); GeneratedRoute gr = GeneratedRoute.builder() .setNetwork(generatedRoutePrefix) .setAttributePolicy( c.getRoutingPolicies() .computeIfAbsent( generatedRouteAttributePolicyName, n -> new RoutingPolicy(n, c)) .getName()) .setGenerationPolicy( c.getRoutingPolicies() .computeIfAbsent( generatedRouteGenerationPolicyName, n -> new RoutingPolicy(n, c)) .getName()) .build(); vrf.getGeneratedRoutes().add(gr); OspfProcess ospfProcess = _factory.ospfProcessBuilder().setRouterId(Ip.ZERO).build(); vrf.setOspfProcesses(Stream.of(ospfProcess)); RoutingPolicy ospfExportPolicy = c.getRoutingPolicies().computeIfAbsent(ospfExportPolicyName, n -> new RoutingPolicy(n, c)); ospfProcess.setExportPolicy(ospfExportPolicyName); ospfExportPolicy .getStatements() .add( new CallStatement( c.getRoutingPolicies() .computeIfAbsent(ospfExportSubPolicyName, n -> new RoutingPolicy(n, c)) .getName())); Warnings w = new Warnings(); c.computeRoutingPolicySources(w); assertThat( neighbor.getIpv4UnicastAddressFamily().getExportPolicySources(), equalTo(Collections.singleton(bgpExportPolicyName))); assertThat( neighbor.getIpv4UnicastAddressFamily().getImportPolicySources(), equalTo(Collections.singleton(bgpImportPolicyName))); assertThat( neighborWithMissingPolicies.getIpv4UnicastAddressFamily().getExportPolicySources(), equalTo(Collections.emptySet())); assertThat( neighborWithMissingPolicies.getIpv4UnicastAddressFamily().getImportPolicySources(), equalTo(Collections.emptySet())); assertThat( gr.getAttributePolicySources(), equalTo(Collections.singleton(generatedRouteAttributePolicyName))); assertThat( gr.getGenerationPolicySources(), equalTo(Collections.singleton(generatedRouteGenerationPolicyName))); assertThat( ospfProcess.getExportPolicySources(), containsInAnyOrder(ospfExportPolicyName, ospfExportSubPolicyName)); }
private void computeRoutingPolicySources(String routingPolicyName, Warnings w) { if (routingPolicyName == null) { return; } RoutingPolicy routingPolicy = _routingPolicies.get(routingPolicyName); if (routingPolicy == null) { return; } routingPolicy.computeSources(Collections.emptySet(), _routingPolicies, w); }
Configuration implements Serializable { private void computeRoutingPolicySources(String routingPolicyName, Warnings w) { if (routingPolicyName == null) { return; } RoutingPolicy routingPolicy = _routingPolicies.get(routingPolicyName); if (routingPolicy == null) { return; } routingPolicy.computeSources(Collections.emptySet(), _routingPolicies, w); } }
Configuration implements Serializable { private void computeRoutingPolicySources(String routingPolicyName, Warnings w) { if (routingPolicyName == null) { return; } RoutingPolicy routingPolicy = _routingPolicies.get(routingPolicyName); if (routingPolicy == null) { return; } routingPolicy.computeSources(Collections.emptySet(), _routingPolicies, w); } Configuration(@Nonnull String hostname, @Nonnull ConfigurationFormat configurationFormat); }
Configuration implements Serializable { private void computeRoutingPolicySources(String routingPolicyName, Warnings w) { if (routingPolicyName == null) { return; } RoutingPolicy routingPolicy = _routingPolicies.get(routingPolicyName); if (routingPolicy == null) { return; } routingPolicy.computeSources(Collections.emptySet(), _routingPolicies, w); } Configuration(@Nonnull String hostname, @Nonnull ConfigurationFormat configurationFormat); static Builder builder(); static Builder builder(@Nonnull Supplier<String> hostnameGenerator); void computeRoutingPolicySources(Warnings w); @JsonProperty(PROP_AS_PATH_ACCESS_LISTS) Map<String, AsPathAccessList> getAsPathAccessLists(); @JsonProperty(PROP_AUTHENTICATION_KEY_CHAINS) Map<String, AuthenticationKeyChain> getAuthenticationKeyChains(); Set<String> activeInterfaceNames(); @Nonnull Stream<Interface> activeInterfaces(); @JsonProperty(PROP_COMMUNITY_LISTS) Map<String, CommunityList> getCommunityLists(); @JsonIgnore @Nonnull Map<String, CommunityMatchExpr> getCommunityMatchExprs(); @JsonIgnore @Nonnull Map<String, CommunitySetExpr> getCommunitySetExprs(); @JsonIgnore @Nonnull Map<String, CommunitySetMatchExpr> getCommunitySetMatchExprs(); @JsonIgnore @Nonnull Map<String, CommunitySet> getCommunitySets(); @JsonProperty(PROP_CONFIGURATION_FORMAT) ConfigurationFormat getConfigurationFormat(); @JsonProperty(PROP_DEFAULT_CROSS_ZONE_ACTION) LineAction getDefaultCrossZoneAction(); @JsonProperty(PROP_DEFAULT_INBOUND_ACTION) LineAction getDefaultInboundAction(); @JsonIgnore Vrf getDefaultVrf(); @JsonProperty(PROP_DEVICE_MODEL) DeviceModel getDeviceModel(); @JsonProperty(PROP_DEVICE_TYPE) DeviceType getDeviceType(); Set<String> getDnsServers(); @JsonProperty(PROP_DNS_SOURCE_INTERFACE) String getDnsSourceInterface(); @JsonProperty(PROP_DOMAIN_NAME) String getDomainName(); @JsonProperty(PROP_GENERATED_REFERENCE_BOOKS) Map<String, ReferenceBook> getGeneratedReferenceBooks(); @JsonProperty(PROP_GENERATED_REFERENCE_BOOKS) void setGeneratedReferenceBooks(Map<String, ReferenceBook> generatedReferenceBooks); @JsonProperty(PROP_NAME) String getHostname(); @JsonProperty(PROP_HUMAN_NAME) @Nullable String getHumanName(); @JsonProperty(PROP_IKE_PHASE1_KEYS) Map<String, IkePhase1Key> getIkePhase1Keys(); @JsonProperty(PROP_IKE_PHASE1_POLICIES) Map<String, IkePhase1Policy> getIkePhase1Policies(); @JsonProperty(PROP_IKE_PHASE1_PROPOSALS) Map<String, IkePhase1Proposal> getIkePhase1Proposals(); @JsonProperty(PROP_INTERFACES) Map<String, Interface> getAllInterfaces(); @JsonIgnore Map<String, Interface> getAllInterfaces(@Nonnull String vrf); @JsonIgnore Map<String, Interface> getActiveInterfaces(@Nonnull String vrf); @JsonIgnore Map<String, Interface> getActiveInterfaces(); @JsonProperty(PROP_IP6_ACCESS_LISTS) Map<String, Ip6AccessList> getIp6AccessLists(); @JsonProperty(PROP_IP_ACCESS_LISTS) Map<String, IpAccessList> getIpAccessLists(); @JsonProperty(PROP_IPSEC_PEER_CONFIGS) Map<String, IpsecPeerConfig> getIpsecPeerConfigs(); Map<String, IpSpace> getIpSpaces(); @JsonProperty(PROP_IP_SPACE_METADATA) Map<String, IpSpaceMetadata> getIpSpaceMetadata(); @JsonProperty(PROP_IPSEC_PHASE2_POLICIES) Map<String, IpsecPhase2Policy> getIpsecPhase2Policies(); @JsonProperty(PROP_IPSEC_PHASE2_PROPOSALS) Map<String, IpsecPhase2Proposal> getIpsecPhase2Proposals(); @JsonIgnore @Nullable Map<Location, LocationInfo> getLocationInfo(); Set<String> getLoggingServers(); @JsonProperty(PROP_LOGGING_SOURCE_INTERFACE) String getLoggingSourceInterface(); @JsonProperty(PROP_MLAGS) @Nonnull Map<String, Mlag> getMlags(); @JsonIgnore SubRange getNormalVlanRange(); Set<String> getNtpServers(); @JsonProperty(PROP_NTP_SOURCE_INTERFACE) String getNtpSourceInterface(); @JsonProperty(PROP_PACKET_POLICIES) Map<String, PacketPolicy> getPacketPolicies(); @JsonProperty(PROP_ROUTE6_FILTER_LISTS) Map<String, Route6FilterList> getRoute6FilterLists(); @JsonProperty(PROP_ROUTE_FILTER_LISTS) Map<String, RouteFilterList> getRouteFilterLists(); @JsonProperty(PROP_ROUTING_POLICIES) Map<String, RoutingPolicy> getRoutingPolicies(); @JsonProperty(PROP_SNMP_SOURCE_INTERFACE) String getSnmpSourceInterface(); Set<String> getSnmpTrapServers(); Set<String> getTacacsServers(); @JsonProperty(PROP_TACACS_SOURCE_INTERFACE) String getTacacsSourceInterface(); @JsonProperty(PROP_TRACKING_GROUPS) @Nonnull Map<String, TrackMethod> getTrackingGroups(); @JsonProperty(PROP_VENDOR_FAMILY) VendorFamily getVendorFamily(); @JsonProperty(PROP_VRFS) Map<String, Vrf> getVrfs(); @JsonProperty(PROP_ZONES) Map<String, Zone> getZones(); @JsonProperty(PROP_AS_PATH_ACCESS_LISTS) void setAsPathAccessLists(Map<String, AsPathAccessList> asPathAccessLists); @JsonProperty(PROP_AUTHENTICATION_KEY_CHAINS) void setAuthenticationKeyChains(
      Map<String, AuthenticationKeyChain> authenticationKeyChains); @JsonProperty(PROP_COMMUNITY_LISTS) void setCommunityLists(Map<String, CommunityList> communityLists); @JsonProperty(PROP_COMMUNITY_MATCH_EXPRS) void setCommunityMatchExprs(@Nonnull Map<String, CommunityMatchExpr> communityMatchExprs); @JsonProperty(PROP_COMMUNITY_SET_EXPRS) void setCommunitySetExprs(@Nonnull Map<String, CommunitySetExpr> communitySetExprs); @JsonProperty(PROP_COMMUNITY_SET_MATCH_EXPRS) void setCommunitySetMatchExprs(
      @Nonnull Map<String, CommunitySetMatchExpr> communitySetMatchExprs); @JsonProperty(PROP_COMMUNITY_SETS) void setCommunitySets(@Nonnull Map<String, CommunitySet> communitySets); void setDefaultCrossZoneAction(LineAction defaultCrossZoneAction); void setDefaultInboundAction(LineAction defaultInboundAction); @JsonProperty(PROP_DEVICE_MODEL) void setDeviceModel(DeviceModel deviceModel); @JsonProperty(PROP_DEVICE_TYPE) void setDeviceType(DeviceType deviceType); @JsonProperty(PROP_DNS_SERVERS) void setDnsServers(Set<String> dnsServers); @JsonProperty(PROP_DNS_SOURCE_INTERFACE) void setDnsSourceInterface(String dnsSourceInterface); @JsonProperty(PROP_DOMAIN_NAME) void setDomainName(String domainName); @JsonProperty(PROP_HUMAN_NAME) void setHumanName(@Nullable String humanName); @JsonProperty(PROP_IKE_PHASE1_KEYS) void setIkePhase1Keys(@Nullable Map<String, IkePhase1Key> ikePhase1Keys); @JsonProperty(PROP_IKE_PHASE1_POLICIES) void setIkePhase1Policies(Map<String, IkePhase1Policy> ikePhase1Policies); @JsonProperty(PROP_IKE_PHASE1_PROPOSALS) void setIkePhase1Proposals(Map<String, IkePhase1Proposal> ikePhase1Proposals); @JsonProperty(PROP_INTERFACES) void setInterfaces(Map<String, Interface> interfaces); @JsonProperty(PROP_IP6_ACCESS_LISTS) void setIp6AccessLists(Map<String, Ip6AccessList> ip6AccessLists); @JsonProperty(PROP_IP_ACCESS_LISTS) void setIpAccessLists(Map<String, IpAccessList> ipAccessLists); @JsonProperty(PROP_IPSEC_PEER_CONFIGS) void setIpsecPeerConfigs(@Nullable Map<String, IpsecPeerConfig> ipsecPeerConfigs); @JsonProperty(PROP_IPSEC_PHASE2_POLICIES) void setIpsecPhase2Policies(@Nullable Map<String, IpsecPhase2Policy> ipsecPhase2Policies); @JsonProperty(PROP_IPSEC_PHASE2_PROPOSALS) void setIpsecPhase2Proposals(
      @Nullable Map<String, IpsecPhase2Proposal> ipsecPhase2Proposals); @JsonProperty(PROP_IP_SPACES) void setIpSpaces(Map<String, IpSpace> ipSpaces); @JsonProperty(PROP_IP_SPACE_METADATA) void setIpSpaceMetadata(Map<String, IpSpaceMetadata> ipSpaceMetadata); @JsonIgnore void setLocationInfo(Map<Location, LocationInfo> locationInfo); @JsonProperty(PROP_LOGGING_SERVERS) void setLoggingServers(Set<String> loggingServers); @JsonProperty(PROP_LOGGING_SOURCE_INTERFACE) void setLoggingSourceInterface(String loggingSourceInterface); @JsonProperty(PROP_MLAGS) void setMlags(Map<String, Mlag> mlags); @JsonIgnore void setNormalVlanRange(SubRange normalVlanRange); @JsonProperty(PROP_NTP_SERVERS) void setNtpServers(Set<String> ntpServers); @JsonProperty(PROP_NTP_SOURCE_INTERFACE) void setNtpSourceInterface(String ntpSourceInterface); @JsonProperty(PROP_ROUTE6_FILTER_LISTS) void setRoute6FilterLists(Map<String, Route6FilterList> route6FilterLists); @JsonProperty(PROP_ROUTE_FILTER_LISTS) void setRouteFilterLists(Map<String, RouteFilterList> routeFilterLists); @JsonProperty(PROP_ROUTING_POLICIES) void setRoutingPolicies(Map<String, RoutingPolicy> routingPolicies); @JsonProperty(PROP_PACKET_POLICIES) void setPacketPolicies(Map<String, PacketPolicy> packetPolicies); @JsonProperty(PROP_SNMP_SOURCE_INTERFACE) void setSnmpSourceInterface(String snmpSourceInterface); @JsonProperty(PROP_SNMP_TRAP_SERVERS) void setSnmpTrapServers(Set<String> snmpTrapServers); @JsonProperty(PROP_TACACS_SERVERS) void setTacacsServers(Set<String> tacacsServers); @JsonProperty(PROP_TACACS_SOURCE_INTERFACE) void setTacacsSourceInterface(String tacacsSourceInterface); @JsonProperty(PROP_TRACKING_GROUPS) void setTrackingGroups(@Nonnull Map<String, TrackMethod> trackingGroups); @JsonProperty(PROP_VENDOR_FAMILY) void setVendorFamily(VendorFamily vendorFamily); @JsonProperty(PROP_VRFS) void setVrfs(Map<String, Vrf> vrfs); @JsonProperty(PROP_ZONES) void setZones(Map<String, Zone> zones); void simplifyRoutingPolicies(); @Override String toString(); }
Configuration implements Serializable { private void computeRoutingPolicySources(String routingPolicyName, Warnings w) { if (routingPolicyName == null) { return; } RoutingPolicy routingPolicy = _routingPolicies.get(routingPolicyName); if (routingPolicy == null) { return; } routingPolicy.computeSources(Collections.emptySet(), _routingPolicies, w); } Configuration(@Nonnull String hostname, @Nonnull ConfigurationFormat configurationFormat); static Builder builder(); static Builder builder(@Nonnull Supplier<String> hostnameGenerator); void computeRoutingPolicySources(Warnings w); @JsonProperty(PROP_AS_PATH_ACCESS_LISTS) Map<String, AsPathAccessList> getAsPathAccessLists(); @JsonProperty(PROP_AUTHENTICATION_KEY_CHAINS) Map<String, AuthenticationKeyChain> getAuthenticationKeyChains(); Set<String> activeInterfaceNames(); @Nonnull Stream<Interface> activeInterfaces(); @JsonProperty(PROP_COMMUNITY_LISTS) Map<String, CommunityList> getCommunityLists(); @JsonIgnore @Nonnull Map<String, CommunityMatchExpr> getCommunityMatchExprs(); @JsonIgnore @Nonnull Map<String, CommunitySetExpr> getCommunitySetExprs(); @JsonIgnore @Nonnull Map<String, CommunitySetMatchExpr> getCommunitySetMatchExprs(); @JsonIgnore @Nonnull Map<String, CommunitySet> getCommunitySets(); @JsonProperty(PROP_CONFIGURATION_FORMAT) ConfigurationFormat getConfigurationFormat(); @JsonProperty(PROP_DEFAULT_CROSS_ZONE_ACTION) LineAction getDefaultCrossZoneAction(); @JsonProperty(PROP_DEFAULT_INBOUND_ACTION) LineAction getDefaultInboundAction(); @JsonIgnore Vrf getDefaultVrf(); @JsonProperty(PROP_DEVICE_MODEL) DeviceModel getDeviceModel(); @JsonProperty(PROP_DEVICE_TYPE) DeviceType getDeviceType(); Set<String> getDnsServers(); @JsonProperty(PROP_DNS_SOURCE_INTERFACE) String getDnsSourceInterface(); @JsonProperty(PROP_DOMAIN_NAME) String getDomainName(); @JsonProperty(PROP_GENERATED_REFERENCE_BOOKS) Map<String, ReferenceBook> getGeneratedReferenceBooks(); @JsonProperty(PROP_GENERATED_REFERENCE_BOOKS) void setGeneratedReferenceBooks(Map<String, ReferenceBook> generatedReferenceBooks); @JsonProperty(PROP_NAME) String getHostname(); @JsonProperty(PROP_HUMAN_NAME) @Nullable String getHumanName(); @JsonProperty(PROP_IKE_PHASE1_KEYS) Map<String, IkePhase1Key> getIkePhase1Keys(); @JsonProperty(PROP_IKE_PHASE1_POLICIES) Map<String, IkePhase1Policy> getIkePhase1Policies(); @JsonProperty(PROP_IKE_PHASE1_PROPOSALS) Map<String, IkePhase1Proposal> getIkePhase1Proposals(); @JsonProperty(PROP_INTERFACES) Map<String, Interface> getAllInterfaces(); @JsonIgnore Map<String, Interface> getAllInterfaces(@Nonnull String vrf); @JsonIgnore Map<String, Interface> getActiveInterfaces(@Nonnull String vrf); @JsonIgnore Map<String, Interface> getActiveInterfaces(); @JsonProperty(PROP_IP6_ACCESS_LISTS) Map<String, Ip6AccessList> getIp6AccessLists(); @JsonProperty(PROP_IP_ACCESS_LISTS) Map<String, IpAccessList> getIpAccessLists(); @JsonProperty(PROP_IPSEC_PEER_CONFIGS) Map<String, IpsecPeerConfig> getIpsecPeerConfigs(); Map<String, IpSpace> getIpSpaces(); @JsonProperty(PROP_IP_SPACE_METADATA) Map<String, IpSpaceMetadata> getIpSpaceMetadata(); @JsonProperty(PROP_IPSEC_PHASE2_POLICIES) Map<String, IpsecPhase2Policy> getIpsecPhase2Policies(); @JsonProperty(PROP_IPSEC_PHASE2_PROPOSALS) Map<String, IpsecPhase2Proposal> getIpsecPhase2Proposals(); @JsonIgnore @Nullable Map<Location, LocationInfo> getLocationInfo(); Set<String> getLoggingServers(); @JsonProperty(PROP_LOGGING_SOURCE_INTERFACE) String getLoggingSourceInterface(); @JsonProperty(PROP_MLAGS) @Nonnull Map<String, Mlag> getMlags(); @JsonIgnore SubRange getNormalVlanRange(); Set<String> getNtpServers(); @JsonProperty(PROP_NTP_SOURCE_INTERFACE) String getNtpSourceInterface(); @JsonProperty(PROP_PACKET_POLICIES) Map<String, PacketPolicy> getPacketPolicies(); @JsonProperty(PROP_ROUTE6_FILTER_LISTS) Map<String, Route6FilterList> getRoute6FilterLists(); @JsonProperty(PROP_ROUTE_FILTER_LISTS) Map<String, RouteFilterList> getRouteFilterLists(); @JsonProperty(PROP_ROUTING_POLICIES) Map<String, RoutingPolicy> getRoutingPolicies(); @JsonProperty(PROP_SNMP_SOURCE_INTERFACE) String getSnmpSourceInterface(); Set<String> getSnmpTrapServers(); Set<String> getTacacsServers(); @JsonProperty(PROP_TACACS_SOURCE_INTERFACE) String getTacacsSourceInterface(); @JsonProperty(PROP_TRACKING_GROUPS) @Nonnull Map<String, TrackMethod> getTrackingGroups(); @JsonProperty(PROP_VENDOR_FAMILY) VendorFamily getVendorFamily(); @JsonProperty(PROP_VRFS) Map<String, Vrf> getVrfs(); @JsonProperty(PROP_ZONES) Map<String, Zone> getZones(); @JsonProperty(PROP_AS_PATH_ACCESS_LISTS) void setAsPathAccessLists(Map<String, AsPathAccessList> asPathAccessLists); @JsonProperty(PROP_AUTHENTICATION_KEY_CHAINS) void setAuthenticationKeyChains(
      Map<String, AuthenticationKeyChain> authenticationKeyChains); @JsonProperty(PROP_COMMUNITY_LISTS) void setCommunityLists(Map<String, CommunityList> communityLists); @JsonProperty(PROP_COMMUNITY_MATCH_EXPRS) void setCommunityMatchExprs(@Nonnull Map<String, CommunityMatchExpr> communityMatchExprs); @JsonProperty(PROP_COMMUNITY_SET_EXPRS) void setCommunitySetExprs(@Nonnull Map<String, CommunitySetExpr> communitySetExprs); @JsonProperty(PROP_COMMUNITY_SET_MATCH_EXPRS) void setCommunitySetMatchExprs(
      @Nonnull Map<String, CommunitySetMatchExpr> communitySetMatchExprs); @JsonProperty(PROP_COMMUNITY_SETS) void setCommunitySets(@Nonnull Map<String, CommunitySet> communitySets); void setDefaultCrossZoneAction(LineAction defaultCrossZoneAction); void setDefaultInboundAction(LineAction defaultInboundAction); @JsonProperty(PROP_DEVICE_MODEL) void setDeviceModel(DeviceModel deviceModel); @JsonProperty(PROP_DEVICE_TYPE) void setDeviceType(DeviceType deviceType); @JsonProperty(PROP_DNS_SERVERS) void setDnsServers(Set<String> dnsServers); @JsonProperty(PROP_DNS_SOURCE_INTERFACE) void setDnsSourceInterface(String dnsSourceInterface); @JsonProperty(PROP_DOMAIN_NAME) void setDomainName(String domainName); @JsonProperty(PROP_HUMAN_NAME) void setHumanName(@Nullable String humanName); @JsonProperty(PROP_IKE_PHASE1_KEYS) void setIkePhase1Keys(@Nullable Map<String, IkePhase1Key> ikePhase1Keys); @JsonProperty(PROP_IKE_PHASE1_POLICIES) void setIkePhase1Policies(Map<String, IkePhase1Policy> ikePhase1Policies); @JsonProperty(PROP_IKE_PHASE1_PROPOSALS) void setIkePhase1Proposals(Map<String, IkePhase1Proposal> ikePhase1Proposals); @JsonProperty(PROP_INTERFACES) void setInterfaces(Map<String, Interface> interfaces); @JsonProperty(PROP_IP6_ACCESS_LISTS) void setIp6AccessLists(Map<String, Ip6AccessList> ip6AccessLists); @JsonProperty(PROP_IP_ACCESS_LISTS) void setIpAccessLists(Map<String, IpAccessList> ipAccessLists); @JsonProperty(PROP_IPSEC_PEER_CONFIGS) void setIpsecPeerConfigs(@Nullable Map<String, IpsecPeerConfig> ipsecPeerConfigs); @JsonProperty(PROP_IPSEC_PHASE2_POLICIES) void setIpsecPhase2Policies(@Nullable Map<String, IpsecPhase2Policy> ipsecPhase2Policies); @JsonProperty(PROP_IPSEC_PHASE2_PROPOSALS) void setIpsecPhase2Proposals(
      @Nullable Map<String, IpsecPhase2Proposal> ipsecPhase2Proposals); @JsonProperty(PROP_IP_SPACES) void setIpSpaces(Map<String, IpSpace> ipSpaces); @JsonProperty(PROP_IP_SPACE_METADATA) void setIpSpaceMetadata(Map<String, IpSpaceMetadata> ipSpaceMetadata); @JsonIgnore void setLocationInfo(Map<Location, LocationInfo> locationInfo); @JsonProperty(PROP_LOGGING_SERVERS) void setLoggingServers(Set<String> loggingServers); @JsonProperty(PROP_LOGGING_SOURCE_INTERFACE) void setLoggingSourceInterface(String loggingSourceInterface); @JsonProperty(PROP_MLAGS) void setMlags(Map<String, Mlag> mlags); @JsonIgnore void setNormalVlanRange(SubRange normalVlanRange); @JsonProperty(PROP_NTP_SERVERS) void setNtpServers(Set<String> ntpServers); @JsonProperty(PROP_NTP_SOURCE_INTERFACE) void setNtpSourceInterface(String ntpSourceInterface); @JsonProperty(PROP_ROUTE6_FILTER_LISTS) void setRoute6FilterLists(Map<String, Route6FilterList> route6FilterLists); @JsonProperty(PROP_ROUTE_FILTER_LISTS) void setRouteFilterLists(Map<String, RouteFilterList> routeFilterLists); @JsonProperty(PROP_ROUTING_POLICIES) void setRoutingPolicies(Map<String, RoutingPolicy> routingPolicies); @JsonProperty(PROP_PACKET_POLICIES) void setPacketPolicies(Map<String, PacketPolicy> packetPolicies); @JsonProperty(PROP_SNMP_SOURCE_INTERFACE) void setSnmpSourceInterface(String snmpSourceInterface); @JsonProperty(PROP_SNMP_TRAP_SERVERS) void setSnmpTrapServers(Set<String> snmpTrapServers); @JsonProperty(PROP_TACACS_SERVERS) void setTacacsServers(Set<String> tacacsServers); @JsonProperty(PROP_TACACS_SOURCE_INTERFACE) void setTacacsSourceInterface(String tacacsSourceInterface); @JsonProperty(PROP_TRACKING_GROUPS) void setTrackingGroups(@Nonnull Map<String, TrackMethod> trackingGroups); @JsonProperty(PROP_VENDOR_FAMILY) void setVendorFamily(VendorFamily vendorFamily); @JsonProperty(PROP_VRFS) void setVrfs(Map<String, Vrf> vrfs); @JsonProperty(PROP_ZONES) void setZones(Map<String, Zone> zones); void simplifyRoutingPolicies(); @Override String toString(); static final String DEFAULT_VRF_NAME; }