+ /**
+ * Compares two DhcpRelayCommands without checking operation status.
+ * @param compareTo DhcpRelayCommand to compare with.
+ * @return true if commands match, false otherwise.
+ */
+ @Override public boolean equals(Object compareTo) {
+ if (compareTo == null || !compareTo.getClass().equals(this.getClass())) {
+ return false;
+ }
+
+ DhcpRelayCommand command = (DhcpRelayCommand) compareTo;
+
+ if (!this.getVppNodeId().equals(command.getVppNodeId())) {
+ return false;
+ } else if (!this.getAddressType().equals(command.getAddressType())) {
+ return false;
+ } else if (!this.getGatewayIpAddress().equals(command.getGatewayIpAddress())) {
+ return false;
+ } else if (!this.getIid().equals(command.getIid())) {
+ return false;
+ } else if (!this.getRxVrfId().equals(command.getRxVrfId())) {
+ return false;
+ } else if (this.getServerIpAddresses() != null && !this.getServerIpAddresses()
+ .containsAll(command.getServerIpAddresses())) {
+ return false;
+ } else if (command.getServerIpAddresses() != null && !command.getServerIpAddresses()
+ .containsAll(this.getServerIpAddresses())) {
+ return false;
+ }
+
+ return true;
+ }
+