test_class.file: server/src/test/java/com/abiquo/abiserver/networking/IPAddressTest.java
test_class.identifier: IPAddressTest
test_case.body: @Test
      public void testNextIPAddress() throws InvalidIPAddressException
      {
          assertTrue(IPAddress.newIPAddress("0.0.0.0").nextIPAddress().toString()
              .equalsIgnoreCase("0.0.0.1"));
          assertTrue(IPAddress.newIPAddress("0.0.1.0").nextIPAddress().toString()
              .equalsIgnoreCase("0.0.1.1"));
          assertTrue(IPAddress.newIPAddress("22.33.43.55").nextIPAddress().toString()
              .equalsIgnoreCase("22.33.43.56"));
          assertTrue(IPAddress.newIPAddress("0.0.1.255").nextIPAddress().toString()
              .equalsIgnoreCase("0.0.2.0"));
          assertTrue(IPAddress.newIPAddress("0.0.255.255").nextIPAddress().toString()
              .equalsIgnoreCase("0.1.0.0"));
          assertTrue(IPAddress.newIPAddress("0.255.255.255").nextIPAddress().toString()
              .equalsIgnoreCase("1.0.0.0"));
          assertTrue(IPAddress.newIPAddress("0.255.0.255").nextIPAddress().toString()
              .equalsIgnoreCase("0.255.1.0"));
          assertTrue(IPAddress.newIPAddress("255.255.255.255").nextIPAddress().toString()
              .equalsIgnoreCase("0.0.0.0"));
          assertTrue(IPAddress.newIPAddress("0.255.0.abc").nextIPAddress().toString()
              .equalsIgnoreCase(""));
      }
test_case.class_method_signature: IPAddressTest.testNextIPAddress()
test_case.full_signature: @Test public void testNextIPAddress()
test_case.identifier: testNextIPAddress
test_case.invocations: assertTrue equalsIgnoreCase toString nextIPAddress newIPAddress assertTrue equalsIgnoreCase toString nextIPAddress newIPAddress assertTrue equalsIgnoreCase toString nextIPAddress newIPAddress assertTrue equalsIgnoreCase toString nextIPAddress newIPAddress assertTrue equalsIgnoreCase toString nextIPAddress newIPAddress assertTrue equalsIgnoreCase toString nextIPAddress newIPAddress assertTrue equalsIgnoreCase toString nextIPAddress newIPAddress assertTrue equalsIgnoreCase toString nextIPAddress newIPAddress assertTrue equalsIgnoreCase toString nextIPAddress newIPAddress
test_case.modifiers: @Test public
test_case.parameters: ()
test_case.return: void
test_case.signature: void testNextIPAddress()
focal_class.declarator: IPADDRESS_PATTERN =
          "^([01]?\\d\\d?|2[0-4]\\d|25[0-5])\\.([01]?\\d\\d?|2[0-4]\\d|25[0-5])\\.([01]?\\d\\d?|2[0-4]\\d|25[0-5])\\.([01]?\\d\\d?|2[0-4]\\d|25[0-5])$"
focal_class.modifier: public static final
focal_class.original_string: public static final String IPADDRESS_PATTERN =
          "^([01]?\\d\\d?|2[0-4]\\d|25[0-5])\\.([01]?\\d\\d?|2[0-4]\\d|25[0-5])\\.([01]?\\d\\d?|2[0-4]\\d|25[0-5])\\.([01]?\\d\\d?|2[0-4]\\d|25[0-5])$";
focal_class.type: String
focal_class.var_name: IPADDRESS_PATTERN
focal_class.declarator: ip
focal_class.original_string: String ip;
focal_class.type: String
focal_class.var_name: ip
focal_class.file: server/src/main/java/com/abiquo/abiserver/networking/IPAddress.java
focal_class.identifier: IPAddress
focal_class.class_method_signature: IPAddress.newIPAddress(String ipAddress)
focal_class.full_signature: public static IPAddress newIPAddress(String ipAddress)
focal_class.identifier: newIPAddress
focal_class.modifiers: public static
focal_class.parameters: (String ipAddress)
focal_class.return: IPAddress
focal_class.signature: IPAddress newIPAddress(String ipAddress)
focal_class.class_method_signature: IPAddress.IPAddress()
focal_class.full_signature: public  IPAddress()
focal_class.identifier: IPAddress
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.signature:  IPAddress()
focal_class.class_method_signature: IPAddress.IPAddress(String ipAddress)
focal_class.full_signature: private  IPAddress(String ipAddress)
focal_class.identifier: IPAddress
focal_class.modifiers: private
focal_class.parameters: (String ipAddress)
focal_class.signature:  IPAddress(String ipAddress)
focal_class.class_method_signature: IPAddress.equals(Object o)
focal_class.full_signature: @Override public boolean equals(Object o)
focal_class.identifier: equals
focal_class.modifiers: @Override public
focal_class.parameters: (Object o)
focal_class.return: boolean
focal_class.signature: boolean equals(Object o)
focal_class.class_method_signature: IPAddress.getFirstOctet()
focal_class.full_signature: public String getFirstOctet()
focal_class.identifier: getFirstOctet
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: String
focal_class.signature: String getFirstOctet()
focal_class.class_method_signature: IPAddress.getSecondOctet()
focal_class.full_signature: public String getSecondOctet()
focal_class.identifier: getSecondOctet
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: String
focal_class.signature: String getSecondOctet()
focal_class.class_method_signature: IPAddress.getThirdOctet()
focal_class.full_signature: public String getThirdOctet()
focal_class.identifier: getThirdOctet
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: String
focal_class.signature: String getThirdOctet()
focal_class.class_method_signature: IPAddress.getFourthOctet()
focal_class.full_signature: public String getFourthOctet()
focal_class.identifier: getFourthOctet
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: String
focal_class.signature: String getFourthOctet()
focal_class.class_method_signature: IPAddress.getIp()
focal_class.full_signature: public String getIp()
focal_class.identifier: getIp
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: String
focal_class.signature: String getIp()
focal_class.class_method_signature: IPAddress.nextIPAddress()
focal_class.full_signature: public IPAddress nextIPAddress()
focal_class.identifier: nextIPAddress
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: IPAddress
focal_class.signature: IPAddress nextIPAddress()
focal_class.class_method_signature: IPAddress.previousIPAddress()
focal_class.full_signature: public IPAddress previousIPAddress()
focal_class.identifier: previousIPAddress
focal_class.modifiers: public
focal_class.parameters: ()
focal_class.return: IPAddress
focal_class.signature: IPAddress previousIPAddress()
focal_class.class_method_signature: IPAddress.setIp(String ip)
focal_class.full_signature: public void setIp(String ip)
focal_class.identifier: setIp
focal_class.modifiers: public
focal_class.parameters: (String ip)
focal_class.return: void
focal_class.signature: void setIp(String ip)
focal_class.class_method_signature: IPAddress.toString()
focal_class.full_signature: @Override public String toString()
focal_class.identifier: toString
focal_class.modifiers: @Override public
focal_class.parameters: ()
focal_class.return: String
focal_class.signature: String toString()
focal_class.class_method_signature: IPAddress.isBiggerThan(IPAddress ip)
focal_class.full_signature: public Boolean isBiggerThan(IPAddress ip)
focal_class.identifier: isBiggerThan
focal_class.modifiers: public
focal_class.parameters: (IPAddress ip)
focal_class.return: Boolean
focal_class.signature: Boolean isBiggerThan(IPAddress ip)
focal_method.body: public IPAddress nextIPAddress() throws InvalidIPAddressException
      {
          StringTokenizer tokenizer = new StringTokenizer(ip, ".");
  
          // Thanks to the static method we can be sure we have 4 tokens
          // and they live between 0 and 256
          int tokenOne = Integer.parseInt(tokenizer.nextToken());
          int tokenTwo = Integer.parseInt(tokenizer.nextToken());
          int tokenThree = Integer.parseInt(tokenizer.nextToken());
          int tokenFour = Integer.parseInt(tokenizer.nextToken());
  
          tokenFour = (tokenFour + 1) % 256;
          if (tokenFour == 0)
          {
              tokenThree = (tokenThree + 1) % 256;
              if (tokenThree == 0)
              {
                  tokenTwo = (tokenTwo + 1) % 256;
                  if (tokenTwo == 0)
                  {
                      tokenOne = (tokenOne + 1) % 256;
                  }
              }
          }
          return IPAddress.newIPAddress(tokenOne + "." + tokenTwo + "." + tokenThree + "."
              + tokenFour);
      }
focal_method.class_method_signature: IPAddress.nextIPAddress()
focal_method.full_signature: public IPAddress nextIPAddress()
focal_method.identifier: nextIPAddress
focal_method.invocations: parseInt nextToken parseInt nextToken parseInt nextToken parseInt nextToken newIPAddress
focal_method.modifiers: public
focal_method.parameters: ()
focal_method.return: IPAddress
focal_method.signature: IPAddress nextIPAddress()