code: @BetaApi
    public final Operation insertRoute(ProjectName project, Route routeResource) {
  
      InsertRouteHttpRequest request =
          InsertRouteHttpRequest.newBuilder()
              .setProject(project == null ? null : project.toString())
              .setRouteResource(routeResource)
              .build();
      return insertRoute(request);
    }
docs: Creates a Route resource in the specified project using the data included in the request.
  
  <p>Sample code:
  
  <pre><code>
  try (RouteClient routeClient = RouteClient.create()) {
  ProjectName project = ProjectName.of("[PROJECT]");
  Route routeResource = Route.newBuilder().build();
  Operation response = routeClient.insertRoute(project, routeResource);
  }
  </code></pre>
  
  @param project Project ID for this request.
  @param routeResource Represents a Route resource. A route specifies how certain packets should
  be handled by the network. Routes are associated with instances by tags and the set of
  routes for a particular instance is called its routing table.
  <p>For each packet leaving an instance, the system searches that instance's routing table
  for a single best matching route. Routes match packets by destination IP address,
  preferring smaller or more specific ranges over larger ones. If there is a tie, the system
  selects the route with the smallest priority value. If there is still a tie, it uses the
  layer three and four packet headers to select just one of the remaining matching routes.
  The packet is then forwarded as specified by the nextHop field of the winning route -
  either to another instance destination, an instance gateway, or a Google Compute
  Engine-operated gateway.
  <p>Packets that do not match any route in the sending instance's routing table are dropped.
  (== resource_for beta.routes ==) (== resource_for v1.routes ==)
  @throws com.google.api.gax.rpc.ApiException if the remote call fails