Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/*
* (C) Copyright IBM Corp. 2025.
* (C) Copyright IBM Corp. 2026.
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with
* the License. You may obtain a copy of the License at
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/*
* (C) Copyright IBM Corp. 2025.
* (C) Copyright IBM Corp. 2026.
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with
* the License. You may obtain a copy of the License at
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/*
* (C) Copyright IBM Corp. 2025.
* (C) Copyright IBM Corp. 2026.
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with
* the License. You may obtain a copy of the License at
Expand Down Expand Up @@ -43,13 +43,15 @@ public interface NetworkType {
String REDUNDANT_GRE = "redundant_gre";
/** vpn_gateway. */
String VPN_GATEWAY = "vpn_gateway";
/** dynamic_route_server. */
String DYNAMIC_ROUTE_SERVER = "dynamic_route_server";
}

/**
* The type of network the Unbound GRE tunnel is targeting. This field is required for network type
* `unbound_gre_tunnel` and must be set to `classic`. For a `redundant_gre` network type, the value is required and
* can be either VPC or Classic. This field is required to be unspecified for network type `classic`, `directlink`,
* `vpc`, `power_virtual_server`, `vpn_gateway` and `gre_tunnel` connections.
* `vpc`, `power_virtual_server`, `vpn_gateway`, `dynamic_route_server` and `gre_tunnel` connections.
*/
public interface BaseNetworkType {
/** classic. */
Expand All @@ -61,8 +63,8 @@ public interface BaseNetworkType {
/**
* Default setting of permit or deny which applies to any routes that don't match a specified filter. This field is
* optional for network type `classic`, `vpc`, `directlink`, and `power_virtual_server` connections. This field is
* required to be unspecified for network type `gre_tunnel`, `unbound_gre_tunnel`, `vpn_gateway` and `redundant_gre`
* connections.
* required to be unspecified for network type `gre_tunnel`, `unbound_gre_tunnel`, `vpn_gateway`,
* `dynamic_route_server` and `redundant_gre` connections.
*/
public interface PrefixFiltersDefault {
/** permit. */
Expand Down Expand Up @@ -469,7 +471,7 @@ public String baseConnectionId() {
* The type of network the Unbound GRE tunnel is targeting. This field is required for network type
* `unbound_gre_tunnel` and must be set to `classic`. For a `redundant_gre` network type, the value is required and
* can be either VPC or Classic. This field is required to be unspecified for network type `classic`, `directlink`,
* `vpc`, `power_virtual_server`, `vpn_gateway` and `gre_tunnel` connections.
* `vpc`, `power_virtual_server`, `vpn_gateway`, `dynamic_route_server` and `gre_tunnel` connections.
*
* @return the baseNetworkType
*/
Expand All @@ -480,9 +482,11 @@ public String baseNetworkType() {
/**
* Gets the cidr.
*
* network_type 'vpn_gateway' connections use 'cidr' to specify the CIDR to use for the VPN GRE tunnels.
* network_type `vpn_gateway` and `dynamic_route_server`connections use `cidr` to specify the CIDR to use for the VPN
* gateway / Dynamic route server GRE tunnels.
*
* This field is required for network type `vpn_gateway` connections.
* This field is optional for network type `vpn_gateway` and `dynamic_route_server` connections. If unspecified, the
* default value is 198.19.174.0/23.
*
* This field is required to be unspecified for network type `classic`, `directlink`, `vpc`, `power_virtual_server`,
* `gre_tunnel`, `unbound_gre_tunnel`, and `redundant_gre` connections.
Expand All @@ -498,7 +502,7 @@ public String cidr() {
*
* Local gateway IP address. This field is required for network type `gre_tunnel` and `unbound_gre_tunnel`
* connections. This field is required to be unspecified for network type `classic`, `directlink`, `vpc`,
* `power_virtual_server`, `vpn_gateway` and `redundant_gre` connections.
* `power_virtual_server`, `vpn_gateway`, `dynamic_route_server` and `redundant_gre` connections.
*
* @return the localGatewayIp
*/
Expand All @@ -515,7 +519,7 @@ public String localGatewayIp() {
* This field is required for network type `gre_tunnel` and `unbound_gre_tunnel` connections.
*
* This field is required to be unspecified for network type `classic`, `directlink`, `vpc`, `power_virtual_server`,
* `vpn_gateway` and `redundant_gre` connections.
* `vpn_gateway`, `dynamic_route_server` and `redundant_gre` connections.
*
* @return the localTunnelIp
*/
Expand All @@ -530,7 +534,7 @@ public String localTunnelIp() {
* name of the VPC. Network type `classic` connections are named `classic`.
*
* This field is required for network type `power_virtual_server`, `directlink`, `gre_tunnel`, `unbound_gre_tunnel`,
* `vpn_gateway` and `redundant_gre` connections.
* `vpn_gateway`, `dynamic_route_server` and `redundant_gre` connections.
*
* This field is optional for network type `classic`, `vpc` connections.
*
Expand All @@ -557,11 +561,12 @@ public String networkAccountId() {
/**
* Gets the networkId.
*
* The ID of the network being connected via this connection. For network types `vpc`,`power_virtual_server`,
* `directlink` and `vpn_gateway` this is the CRN of the VPC / PowerVS / VDC / Direct Link / VPN gateway respectively.
* This field is required for network type `vpc`, `power_virtual_server`, `vpn_gateway`, and `directlink` connections.
* It is also required for `redundant_gre` connections when the base_network_type is set to VPC. This field is
* required to be unspecified for network type `classic`, `gre_tunnel` and `unbound_gre_tunnel` connections.
* The ID of the network being connected via this connection. For network types `vpc`, `vpn_gateway`,
* `dynamic_route_server`, `power_virtual_server` and `directlink` this is the CRN of the VPC / VPN / Dynamic Route
* Server / PowerVS / Direct Link gateway respectively. This field is required for network type `vpc`,
* `power_virtual_server`, `vpn_gateway`, `dynamic_route_server` and `directlink` connections. It is also required
* for `redundant_gre` connections when the base_network_type is set to VPC. This field is required to be unspecified
* for network type `classic`, `gre_tunnel` and `unbound_gre_tunnel` connections.
*
* @return the networkId
*/
Expand All @@ -577,7 +582,7 @@ public String networkId() {
* connections. This is order dependent with those first in the array being applied first, and those at the end of the
* array being applied last, or just before applying the default. This field is optional for network type `classic`,
* `vpc`, `directlink`, and `power_virtual_server` connections. This field is required to be unspecified for network
* type `gre_tunnel`, `unbound_gre_tunnel`, `vpn_gateway` and `redundant_gre` connections.
* type `gre_tunnel`, `unbound_gre_tunnel`, `vpn_gateway`, `dynamic_route_server` and `redundant_gre` connections.
*
* @return the prefixFilters
*/
Expand All @@ -590,8 +595,8 @@ public List<TransitGatewayConnectionPrefixFilter> prefixFilters() {
*
* Default setting of permit or deny which applies to any routes that don't match a specified filter. This field is
* optional for network type `classic`, `vpc`, `directlink`, and `power_virtual_server` connections. This field is
* required to be unspecified for network type `gre_tunnel`, `unbound_gre_tunnel`, `vpn_gateway` and `redundant_gre`
* connections.
* required to be unspecified for network type `gre_tunnel`, `unbound_gre_tunnel`, `vpn_gateway`,
* `dynamic_route_server` and `redundant_gre` connections.
*
* @return the prefixFiltersDefault
*/
Expand All @@ -609,7 +614,7 @@ public String prefixFiltersDefault() {
* This field is optional for network type `gre_tunnel` and `unbound_gre_tunnel` connections.
*
* This field is required to be unspecified for network type `classic`, `directlink`, `vpc`, `power_virtual_server`,
* `vpn_gateway` and `gre_tunnel` connections.
* `vpn_gateway`, `dynamic_route_server` and `gre_tunnel` connections.
*
* @return the remoteBgpAsn
*/
Expand All @@ -622,7 +627,7 @@ public Long remoteBgpAsn() {
*
* Remote gateway IP address. This field is required for network type `gre_tunnel` and `unbound_gre_tunnel`
* connections. This field is required to be unspecified for network type `classic`, `directlink`, `vpc`,
* `power_virtual_server`, `vpn_gateway` and `redundant_gre` connections.
* `power_virtual_server`, `vpn_gateway`, `dynamic_route_server` and `redundant_gre` connections.
*
* @return the remoteGatewayIp
*/
Expand All @@ -639,7 +644,7 @@ public String remoteGatewayIp() {
* This field is required for network type `gre_tunnel` and `unbound_gre_tunnel` connections.
*
* This field is required to be unspecified for network type `classic`, `directlink`, `vpc`, `power_virtual_server`,
* `vpn_gateway` and `redundant_gre` connections.
* `vpn_gateway`, `dynamic_route_server` and `redundant_gre` connections.
*
* @return the remoteTunnelIp
*/
Expand Down Expand Up @@ -669,8 +674,8 @@ public List<TransitGatewayTunnelTemplate> tunnels() {
*
* This field is optional for network type `vpn_gateway` connections.
*
* This field is required to be unspecified for network type `classic`, `directlink`, `vpc`, `power_virtual_server`
* and `redundant_gre` connections.
* This field is required to be unspecified for network type `classic`, `directlink`, `vpc`, `power_virtual_server`,
* `redundant_gre` and `dynamic_route_server` connections.
*
* @return the zone
*/
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/*
* (C) Copyright IBM Corp. 2025.
* (C) Copyright IBM Corp. 2026.
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with
* the License. You may obtain a copy of the License at
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/*
* (C) Copyright IBM Corp. 2025.
* (C) Copyright IBM Corp. 2026.
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with
* the License. You may obtain a copy of the License at
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/*
* (C) Copyright IBM Corp. 2025.
* (C) Copyright IBM Corp. 2026.
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with
* the License. You may obtain a copy of the License at
Expand All @@ -24,6 +24,7 @@ public class CreateTransitGatewayOptions extends GenericModel {
protected String name;
protected Boolean global;
protected Boolean greEnhancedRoutePropagation;
protected String redundancyGroup;
protected ResourceGroupIdentity resourceGroup;

/**
Expand All @@ -34,6 +35,7 @@ public static class Builder {
private String name;
private Boolean global;
private Boolean greEnhancedRoutePropagation;
private String redundancyGroup;
private ResourceGroupIdentity resourceGroup;

/**
Expand All @@ -46,6 +48,7 @@ private Builder(CreateTransitGatewayOptions createTransitGatewayOptions) {
this.name = createTransitGatewayOptions.name;
this.global = createTransitGatewayOptions.global;
this.greEnhancedRoutePropagation = createTransitGatewayOptions.greEnhancedRoutePropagation;
this.redundancyGroup = createTransitGatewayOptions.redundancyGroup;
this.resourceGroup = createTransitGatewayOptions.resourceGroup;
}

Expand Down Expand Up @@ -119,6 +122,17 @@ public Builder greEnhancedRoutePropagation(Boolean greEnhancedRoutePropagation)
return this;
}

/**
* Set the redundancyGroup.
*
* @param redundancyGroup the redundancyGroup
* @return the CreateTransitGatewayOptions builder
*/
public Builder redundancyGroup(String redundancyGroup) {
this.redundancyGroup = redundancyGroup;
return this;
}

/**
* Set the resourceGroup.
*
Expand All @@ -142,6 +156,7 @@ protected CreateTransitGatewayOptions(Builder builder) {
name = builder.name;
global = builder.global;
greEnhancedRoutePropagation = builder.greEnhancedRoutePropagation;
redundancyGroup = builder.redundancyGroup;
resourceGroup = builder.resourceGroup;
}

Expand Down Expand Up @@ -199,6 +214,20 @@ public Boolean greEnhancedRoutePropagation() {
return greEnhancedRoutePropagation;
}

/**
* Gets the redundancyGroup.
*
* Include the global transit gateway in this redundancy group. When set, this transit gateway will be redundant to
* other transit gateways in this redundancy group. If this redundancy group doesn't exist in the account, it will be
* created. This property can only be set for global transit gateways and the transit gateway cannot be in a location
* already used by a global transit gateway in this redundancy group.
*
* @return the redundancyGroup
*/
public String redundancyGroup() {
return redundancyGroup;
}

/**
* Gets the resourceGroup.
*
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/*
* (C) Copyright IBM Corp. 2025.
* (C) Copyright IBM Corp. 2026.
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with
* the License. You may obtain a copy of the License at
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/*
* (C) Copyright IBM Corp. 2025.
* (C) Copyright IBM Corp. 2026.
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with
* the License. You may obtain a copy of the License at
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/*
* (C) Copyright IBM Corp. 2025.
* (C) Copyright IBM Corp. 2026.
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with
* the License. You may obtain a copy of the License at
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/*
* (C) Copyright IBM Corp. 2025.
* (C) Copyright IBM Corp. 2026.
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with
* the License. You may obtain a copy of the License at
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/*
* (C) Copyright IBM Corp. 2025.
* (C) Copyright IBM Corp. 2026.
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with
* the License. You may obtain a copy of the License at
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/*
* (C) Copyright IBM Corp. 2025.
* (C) Copyright IBM Corp. 2026.
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with
* the License. You may obtain a copy of the License at
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
/*
* (C) Copyright IBM Corp. 2025.
* (C) Copyright IBM Corp. 2026.
*
* Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with
* the License. You may obtain a copy of the License at
Expand Down
Loading
Loading