Code Review
/
controller.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
review
|
tree
raw
|
inline
| side by side
Improve Frontend{Client,History}Metadata
[controller.git]
/
opendaylight
/
md-sal
/
sal-distributed-datastore
/
src
/
main
/
java
/
org
/
opendaylight
/
controller
/
cluster
/
datastore
/
shardmanager
/
ShardPeerAddressResolver.java
diff --git
a/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/shardmanager/ShardPeerAddressResolver.java
b/opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/shardmanager/ShardPeerAddressResolver.java
index 62b8e93fb545de80ef4faa9ed765238c0f1bfe8f..6c33652bb1a6cde93cad77ec48adbe4068289060 100644
(file)
--- a/
opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/shardmanager/ShardPeerAddressResolver.java
+++ b/
opendaylight/md-sal/sal-distributed-datastore/src/main/java/org/opendaylight/controller/cluster/datastore/shardmanager/ShardPeerAddressResolver.java
@@
-7,11
+7,14
@@
*/
package org.opendaylight.controller.cluster.datastore.shardmanager;
*/
package org.opendaylight.controller.cluster.datastore.shardmanager;
+import static java.util.Objects.requireNonNull;
+
import akka.actor.Address;
import akka.actor.Address;
-import
com.google.common.base.Preconditions
;
+import
akka.actor.AddressFromURIString
;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Map;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Map;
+import java.util.Set;
import java.util.concurrent.ConcurrentHashMap;
import java.util.concurrent.ConcurrentMap;
import org.opendaylight.controller.cluster.access.concepts.MemberName;
import java.util.concurrent.ConcurrentHashMap;
import java.util.concurrent.ConcurrentMap;
import org.opendaylight.controller.cluster.access.concepts.MemberName;
@@
-33,28
+36,32
@@
class ShardPeerAddressResolver implements PeerAddressResolver {
private final String shardManagerType;
private final MemberName localMemberName;
private final String shardManagerType;
private final MemberName localMemberName;
-
public ShardPeerAddressResolver(String shardManagerType,
MemberName localMemberName) {
+
ShardPeerAddressResolver(final String shardManagerType, final
MemberName localMemberName) {
this.shardManagerIdentifier = ShardManagerIdentifier.builder().type(shardManagerType).build().toString();
this.shardManagerType = shardManagerType;
this.shardManagerIdentifier = ShardManagerIdentifier.builder().type(shardManagerType).build().toString();
this.shardManagerType = shardManagerType;
- this.localMemberName =
Preconditions.checkNot
Null(localMemberName);
+ this.localMemberName =
requireNon
Null(localMemberName);
}
}
- void addPeerAddress(
MemberName memberName,
Address address) {
+ void addPeerAddress(
final MemberName memberName, final
Address address) {
memberNameToAddress.put(memberName, address);
}
memberNameToAddress.put(memberName, address);
}
- void removePeerAddress(MemberName memberName) {
+ void removePeerAddress(
final
MemberName memberName) {
memberNameToAddress.remove(memberName);
}
memberNameToAddress.remove(memberName);
}
- Address getPeerAddress(MemberName memberName) {
+ Set<MemberName> getPeerMembers() {
+ return this.memberNameToAddress.keySet();
+ }
+
+ Address getPeerAddress(final MemberName memberName) {
return memberNameToAddress.get(memberName);
}
Collection<String> getShardManagerPeerActorAddresses() {
Collection<String> peerAddresses = new ArrayList<>();
return memberNameToAddress.get(memberName);
}
Collection<String> getShardManagerPeerActorAddresses() {
Collection<String> peerAddresses = new ArrayList<>();
- for(Map.Entry<MemberName, Address> entry: memberNameToAddress.entrySet()) {
- if(!localMemberName.equals(entry.getKey())) {
+ for
(Map.Entry<MemberName, Address> entry: memberNameToAddress.entrySet()) {
+ if
(!localMemberName.equals(entry.getKey())) {
peerAddresses.add(getShardManagerActorPathBuilder(entry.getValue()).toString());
}
}
peerAddresses.add(getShardManagerActorPathBuilder(entry.getValue()).toString());
}
}
@@
-62,13
+69,13
@@
class ShardPeerAddressResolver implements PeerAddressResolver {
return peerAddresses;
}
return peerAddresses;
}
- ShardIdentifier getShardIdentifier(
MemberName memberName,
String shardName) {
+ ShardIdentifier getShardIdentifier(
final MemberName memberName, final
String shardName) {
return ShardIdentifier.create(shardName, memberName, shardManagerType);
}
return ShardIdentifier.create(shardName, memberName, shardManagerType);
}
- String getShardActorAddress(
String shardName,
MemberName memberName) {
+ String getShardActorAddress(
final String shardName, final
MemberName memberName) {
Address memberAddress = memberNameToAddress.get(memberName);
Address memberAddress = memberNameToAddress.get(memberName);
- if(memberAddress != null) {
+ if
(memberAddress != null) {
return getShardManagerActorPathBuilder(memberAddress).append("/").append(
getShardIdentifier(memberName, shardName)).toString();
}
return getShardManagerActorPathBuilder(memberAddress).append("/").append(
getShardIdentifier(memberName, shardName)).toString();
}
@@
-76,12
+83,12
@@
class ShardPeerAddressResolver implements PeerAddressResolver {
return null;
}
return null;
}
- StringBuilder getShardManagerActorPathBuilder(Address address) {
+ StringBuilder getShardManagerActorPathBuilder(
final
Address address) {
return new StringBuilder().append(address.toString()).append("/user/").append(shardManagerIdentifier);
}
@Override
return new StringBuilder().append(address.toString()).append("/user/").append(shardManagerIdentifier);
}
@Override
- public String resolve(String peerId) {
+ public String resolve(
final
String peerId) {
if (peerId == null) {
return null;
}
if (peerId == null) {
return null;
}
@@
-89,4
+96,10
@@
class ShardPeerAddressResolver implements PeerAddressResolver {
ShardIdentifier shardId = ShardIdentifier.fromShardIdString(peerId);
return getShardActorAddress(shardId.getShardName(), shardId.getMemberName());
}
ShardIdentifier shardId = ShardIdentifier.fromShardIdString(peerId);
return getShardActorAddress(shardId.getShardName(), shardId.getMemberName());
}
+
+ @Override
+ public void setResolved(final String peerId, final String address) {
+ memberNameToAddress.put(ShardIdentifier.fromShardIdString(peerId).getMemberName(),
+ AddressFromURIString.parse(address));
+ }
}
}