Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
  /*
   * Licensed to the Apache Software Foundation (ASF) under one or more
   * contributor license agreements.  See the NOTICE file distributed with
   * this work for additional information regarding copyright ownership.
   * The ASF licenses this file to You 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
   *
   *     http://www.apache.org/licenses/LICENSE-2.0
  *
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS,
  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
 package org.jclouds.cloudstack.domain;
 
 import static com.google.common.base.Preconditions.checkNotNull;
 
 import java.util.Set;
 
 
Class LoadBalancerRule

Author(s):
Adrian Cole
 
 public class LoadBalancerRule {

   
 
    public static enum State {
       ADD, ACTIVE, UNRECOGNIZED;
 
       @Override
       public String toString() {
          return ..to(.name());
       }
 
       public static State fromValue(String state) {
          try {
             return valueOf(..to(.checkNotNull(state"state")));
          } catch (IllegalArgumentException e) {
             return ;
          }
       }
 
    }
 
    public static enum Algorithm {
       SOURCE, ROUNDROBIN, LEASTCONN, UNRECOGNIZED;
 
       @Override
       public String toString() {
          return name().toLowerCase();
       }
 
       public static Algorithm fromValue(String algorithm) {
          try {
             return Algorithm.valueOf(checkNotNull(algorithm"algorithm").toUpperCase());
          } catch (IllegalArgumentException e) {
             return ;
          }
       }
 
    }
 
    public static Builder<?> builder() {
       return new ConcreteBuilder();
    }
 
    public Builder<?> toBuilder() {
       return new ConcreteBuilder().fromLoadBalancerRule(this);
    }
 
    public abstract static class Builder<T extends Builder<T>> {
       protected abstract T self();
 
       protected String id;
       protected String account;
       protected LoadBalancerRule.Algorithm algorithm;
       protected String description;
       protected String domain;
       protected String domainId;
       protected String name;
       protected int privatePort;
       protected String publicIP;
       protected String publicIPId;
       protected int publicPort;
       protected LoadBalancerRule.State state;
       protected Set<StringCIDRs = ImmutableSet.of();
      protected String zoneId;

      
      public T id(String id) {
         this. = id;
         return self();
      }

      
      public T account(String account) {
         this. = account;
         return self();
      }

      
      public T algorithm(LoadBalancerRule.Algorithm algorithm) {
         this. = algorithm;
         return self();
      }

      
      public T description(String description) {
         this. = description;
         return self();
      }

      
      public T domain(String domain) {
         this. = domain;
         return self();
      }

      
      public T domainId(String domainId) {
         this. = domainId;
         return self();
      }

      
      public T name(String name) {
         this. = name;
         return self();
      }

      
      public T privatePort(int privatePort) {
         this. = privatePort;
         return self();
      }

      
      public T publicIP(String publicIP) {
         this. = publicIP;
         return self();
      }

      
      public T publicIPId(String publicIPId) {
         this. = publicIPId;
         return self();
      }

      
      public T publicPort(int publicPort) {
         this. = publicPort;
         return self();
      }

      
      public T state(LoadBalancerRule.State state) {
         this. = state;
         return self();
      }

      
      public T CIDRs(Set<StringCIDRs) {
         this. = ImmutableSet.copyOf(checkNotNull(CIDRs"CIDRs"));
         return self();
      }
      public T CIDRs(String... in) {
         return CIDRs(ImmutableSet.copyOf(in));
      }

      
      public T zoneId(String zoneId) {
         this. = zoneId;
         return self();
      }
      public LoadBalancerRule build() {
      }
      public T fromLoadBalancerRule(LoadBalancerRule in) {
         return this
               .id(in.getId())
               .account(in.getAccount())
               .algorithm(in.getAlgorithm())
               .description(in.getDescription())
               .domain(in.getDomain())
               .domainId(in.getDomainId())
               .name(in.getName())
               .privatePort(in.getPrivatePort())
               .publicIP(in.getPublicIP())
               .publicIPId(in.getPublicIPId())
               .publicPort(in.getPublicPort())
               .state(in.getState())
               .CIDRs(in.getCIDRs())
               .zoneId(in.getZoneId());
      }
   }
   private static class ConcreteBuilder extends Builder<ConcreteBuilder> {
      @Override
      protected ConcreteBuilder self() {
         return this;
      }
   }
   private final String id;
   private final String account;
   private final LoadBalancerRule.Algorithm algorithm;
   private final String description;
   private final String domain;
   private final String domainId;
   private final String name;
   private final int privatePort;
   private final String publicIP;
   private final String publicIPId;
   private final int publicPort;
   private final LoadBalancerRule.State state;
   private final Set<StringCIDRs;
   private final String zoneId;
         "id""account""algorithm""description""domain""domainid""name""privateport""publicip",
         "publicipid""publicport""state""cidrlist""zoneId"
   })
   private LoadBalancerRule(String id, @Nullable String account, @Nullable Algorithm algorithm,
                            @Nullable String description, @Nullable String domain, @Nullable String domainId,
                            @Nullable String nameint privatePort, @Nullable String publicIP,
                            @Nullable String publicIPIdint publicPort, @Nullable State state,
                            @Nullable String CIDRs, @Nullable String zoneId) {
      this(idaccountalgorithmdescriptiondomaindomainIdnameprivatePortpublicIPpublicIPIdpublicPortstate,
            splitStringOnCommas(CIDRs), zoneId);
   }
   private static Set<StringsplitStringOnCommas(String in) {
      return in == null ? ImmutableSet.<String>of() : ImmutableSet.copyOf(in.split(","));
   }
   protected LoadBalancerRule(String id, @Nullable String account, @Nullable LoadBalancerRule.Algorithm algorithm,
                              @Nullable String description, @Nullable String domain, @Nullable String domainId, @Nullable String name,
                              int privatePort, @Nullable String publicIP, @Nullable String publicIPIdint publicPort,
                              @Nullable LoadBalancerRule.State state, @Nullable Iterable<StringCIDRs, @Nullable String zoneId) {
      this. = checkNotNull(id"id");
      this. = account;
      this. = algorithm;
      this. = description;
      this. = domain;
      this. = domainId;
      this. = name;
      this. = privatePort;
      this. = publicIP;
      this. = publicIPId;
      this. = publicPort;
      this. = state;
      this. = CIDRs == null ? ImmutableSet.<String>of() : ImmutableSet.copyOf(CIDRs);
      this. = zoneId;
   }

   

Returns:
the load balancer rule ID
   public String getId() {
      return this.;
   }

   

Returns:
the account of the load balancer rule
   public String getAccount() {
      return this.;
   }

   

Returns:
the load balancer algorithm (source, roundrobin, leastconn)
      return this.;
   }

   

Returns:
the description of the load balancer
   public String getDescription() {
      return this.;
   }

   

Returns:
the domain of the load balancer rule
   public String getDomain() {
      return this.;
   }

   

Returns:
the domain ID of the load balancer rule
   public String getDomainId() {
      return this.;
   }

   

Returns:
the name of the load balancer
   public String getName() {
      return this.;
   }

   

Returns:
the private port
   public int getPrivatePort() {
      return this.;
   }

   

Returns:
the public ip address
   public String getPublicIP() {
      return this.;
   }

   

Returns:
the public ip address id
   public String getPublicIPId() {
      return this.;
   }

   

Returns:
the public port
   public int getPublicPort() {
      return this.;
   }

   

Returns:
the state of the rule
   public LoadBalancerRule.State getState() {
      return this.;
   }

   

Returns:
the cidr list to forward traffic from
   public Set<StringgetCIDRs() {
      return this.;
   }

   

Returns:
the id of the zone the rule beStrings to
   public String getZoneId() {
      return this.;
   }
   public int hashCode() {
   }
   public boolean equals(Object obj) {
      if (this == objreturn true;
      if (obj == null || getClass() != obj.getClass()) return false;
      LoadBalancerRule that = LoadBalancerRule.class.cast(obj);
      return Objects.equal(this.that.id)
            && Objects.equal(this.that.account)
            && Objects.equal(this.that.algorithm)
            && Objects.equal(this.that.description)
            && Objects.equal(this.that.domain)
            && Objects.equal(this.that.domainId)
            && Objects.equal(this.that.name)
            && Objects.equal(this.that.privatePort)
            && Objects.equal(this.that.publicIP)
            && Objects.equal(this.that.publicIPId)
            && Objects.equal(this.that.publicPort)
            && Objects.equal(this.that.state)
            && Objects.equal(this.that.CIDRs)
            && Objects.equal(this.that.zoneId);
   }
   protected ToStringHelper string() {
      return Objects.toStringHelper(this)
            .add("id").add("account").add("algorithm").add("description").add("domain").add("domainId").add("name").add("privatePort").add("publicIP").add("publicIPId").add("publicPort").add("state").add("CIDRs").add("zoneId");
   }
   public String toString() {
      return string().toString();
   }
New to GrepCode? Check out our FAQ X