diff options
Diffstat (limited to 'java/src/com')
| -rw-r--r-- | java/src/com/zerotier/sdk/MulticastGroup.java | 4 | ||||
| -rw-r--r-- | java/src/com/zerotier/sdk/VirtualNetworkConfig.java | 38 | 
2 files changed, 42 insertions, 0 deletions
diff --git a/java/src/com/zerotier/sdk/MulticastGroup.java b/java/src/com/zerotier/sdk/MulticastGroup.java index 5c4df87a..68114424 100644 --- a/java/src/com/zerotier/sdk/MulticastGroup.java +++ b/java/src/com/zerotier/sdk/MulticastGroup.java @@ -33,6 +33,10 @@ public final class MulticastGroup {      private long mac;      private long adi; +    public boolean equals(MulticastGroup other) { +        return mac == other.mac && adi == other.adi; +    } +      /**       * MAC address (least significant 48 bits)       */ diff --git a/java/src/com/zerotier/sdk/VirtualNetworkConfig.java b/java/src/com/zerotier/sdk/VirtualNetworkConfig.java index 2be03acb..35453ddc 100644 --- a/java/src/com/zerotier/sdk/VirtualNetworkConfig.java +++ b/java/src/com/zerotier/sdk/VirtualNetworkConfig.java @@ -54,6 +54,44 @@ public final class VirtualNetworkConfig {      } +    public boolean equals(VirtualNetworkConfig cfg) { +        boolean mcgEqual = true; +        if(multicastSubscriptions.length == cfg.multicastSubscriptions.length) { +            for(int i = 0; i < multicastSubscriptions.length; ++i) { +                if(!multicastSubscriptions[i].equals(cfg.multicastSubscriptions[i])) +                { +                    return false; +                } +            } +        } else { +            mcgEqual = false; +        } + +        boolean aaEqual = true; +        if(assignedAddresses.length == cfg.assignedAddresses.length) { +            for(int i = 0; i < assignedAddresses.length; ++i) { +                if(!assignedAddresses[i].equals(cfg.assignedAddresses[i])) { +                    return false; +                } +            } +        } else { +            aaEqual = false; +        } + +        return nwid == cfg.nwid && +               mac == cfg.mac && +               name.equals(cfg.name) && +               status.equals(cfg.status) && +               type.equals(cfg.type) && +               mtu == cfg.mtu && +               dhcp == cfg.dhcp && +               bridge == cfg.bridge && +               broadcastEnabled == cfg.broadcastEnabled && +               portError == cfg.portError && +               enabled == cfg.enabled && +               mcgEqual && aaEqual; +    } +      /**       * 64-bit ZeroTier network ID       */  | 
