commit | ecb7898803df55bfa080ed23b720ecd9a333c455 | [log] [tgz] |
---|---|---|
author | Sho SHIMIZU <sshimizu@us.fujitsu.com> | Tue Jun 07 16:10:46 2016 -0700 |
committer | Sho SHIMIZU <sshimizu@us.fujitsu.com> | Tue Jun 14 14:19:26 2016 -0700 |
tree | 721e376599b99682efc82b6270ad6a89617c4f86 | |
parent | ae40b575e4f85256c43f4a6faf145b1d16497149 [diff] [blame] |
Add short-cut path taking when the paremter type is equal to own type Change-Id: I0edceb6630e0312ce5139d3e453a183a0cf06fd5
diff --git a/core/store/dist/src/main/java/org/onosproject/store/resource/impl/EncodableDiscreteResources.java b/core/store/dist/src/main/java/org/onosproject/store/resource/impl/EncodableDiscreteResources.java index 512b233..9edfb5f 100644 --- a/core/store/dist/src/main/java/org/onosproject/store/resource/impl/EncodableDiscreteResources.java +++ b/core/store/dist/src/main/java/org/onosproject/store/resource/impl/EncodableDiscreteResources.java
@@ -87,7 +87,13 @@ @Override public DiscreteResources difference(DiscreteResources other) { - return of(parent, Sets.difference(values(), other.values())); + if (other instanceof EncodableDiscreteResources) { + return of(parent, Sets.difference(this.values(), other.values())); + } else if (other instanceof EmptyDiscreteResources) { + return this; + } + + return DiscreteResources.of(Sets.difference(values(), other.values())); } @Override