@SuppressWarnings("unchecked")
  private <T extends BaseAddress> T buildAddress() {
    switch (addressType) {
      case Group:
        GroupAddress groupAddr = new GroupAddress();
        groupAddr.setAddressId(addressId);
        groupAddr.setName(name);
        return (T) groupAddr;

      case Party:
        PartyAddress partyAddr = new PartyAddress();
        partyAddr.setAddressId(addressId);
        partyAddr.setName(name);
        return (T) partyAddr;

      case Physical:
        PhysicalAddress physicalAddr = new PhysicalAddress();
        physicalAddr.setAddressId(addressId);
        physicalAddr.setAddress(address);
        physicalAddr.setServiceId(serviceId);
        return (T) physicalAddr;

      default:
        return null;
    }
  }
Exemplo n.º 2
0
  protected void write(List<PingData> list, OutputStream out) throws Exception {
    try {
      for (PingData data : list) {
        String logical_name = data.getLogicalName();
        Address addr = data.getAddress();
        PhysicalAddress phys_addr = data.getPhysicalAddr();
        if (logical_name == null || addr == null || phys_addr == null) continue;
        out.write(logical_name.getBytes());
        out.write(WHITESPACE);

        out.write(addressAsString(addr).getBytes());
        out.write(WHITESPACE);

        out.write(phys_addr.toString().getBytes());
        out.write(WHITESPACE);

        out.write(
            data.isCoord() ? String.format("T%n").getBytes() : String.format("F%n").getBytes());
      }
    } finally {
      Util.close(out);
    }
  }