Skip navigation links

Oracle® Fusion Middleware Java API Reference for Oracle Coherence
12c (12.1.3.0.0)

E47890-01


com.tangosol.net.partition
Class SimpleAssignmentStrategy.AnalysisContext.StrengthComparator

java.lang.Object
  extended by com.tangosol.net.partition.SimpleAssignmentStrategy.AnalysisContext.StrengthComparator

All Implemented Interfaces:
java.util.Comparator
Enclosing class:
SimpleAssignmentStrategy.AnalysisContext

public class SimpleAssignmentStrategy.AnalysisContext.StrengthComparator
extends java.lang.Object
implements java.util.Comparator

StrengthComparator is an Comparator that can be used to compare two Member objects based on their "distance" from a given set of members (as represented by an Ownership object). Member distances are expressed with the granularity of "machine", "rack", and "site".

A member is ordered "lower" than another member if it has a larger combined distance from the reference members (ownership) (i.e. it is "stronger"). Members with equivalent distances are ordered arbitrarily.

Note: This comparator does not define an ordering that is "consistent with equals". If used in a context requiring such a natural ordering, it should be chained with comparator that does provide a natural ordering.


Field Summary
protected  Ownership m_owners
          The ownership.

 

Constructor Summary
SimpleAssignmentStrategy.AnalysisContext.StrengthComparator(Ownership owners)
          Construct a StrengthComparator for the specified reference ownership.

 

Method Summary
 int compare(java.lang.Object o1, java.lang.Object o2)
          
protected  int getDistance(Member member)
          Return the "distance" of the specified member from the reference ownership.
protected  int getDistance(Member member1, Member member2)
          Return the "distance" between the specified members.
 Ownership getOwnership()
          Return the ownership to use in comparing member strength.

 

Methods inherited from interface java.util.Comparator
equals

 

Field Detail

m_owners

protected Ownership m_owners
The ownership.

Constructor Detail

SimpleAssignmentStrategy.AnalysisContext.StrengthComparator

public SimpleAssignmentStrategy.AnalysisContext.StrengthComparator(Ownership owners)
Construct a StrengthComparator for the specified reference ownership.
Parameters:
owners - the ownership, from which to determine member strength

Method Detail

getOwnership

public Ownership getOwnership()
Return the ownership to use in comparing member strength.
Returns:
the ownership

compare

public int compare(java.lang.Object o1,
                   java.lang.Object o2)
Specified by:
compare in interface java.util.Comparator

getDistance

protected int getDistance(Member member)
Return the "distance" of the specified member from the reference ownership. The distance reflects granularities of "machine", "rack" and "site", and in the case of multiple-backups, reflects combined distances to each backup.
Parameters:
member - the member to return the distance for
Returns:
the "distance"

getDistance

protected int getDistance(Member member1,
                          Member member2)
Return the "distance" between the specified members.
Parameters:
member1 - the first member
member2 - the second member
Returns:
the "distance" between the specified members

Skip navigation links

Oracle® Fusion Middleware Java API Reference for Oracle Coherence
12c (12.1.3.0.0)

E47890-01


Copyright © 2000, 2014, Oracle and/or its affiliates. All rights reserved.