com.github.shyiko.mysql.binlog
Class GtidSet

java.lang.Object
  extended by com.github.shyiko.mysql.binlog.GtidSet

public class GtidSet
extends Object

GTID set as described in GTID Concepts of MySQL 5.6 Reference Manual.

 gtid_set: uuid_set[,uuid_set]...
 uuid_set: uuid:interval[:interval]...
 uuid: hhhhhhhh-hhhh-hhhh-hhhh-hhhhhhhhhhhh, h: [0-9|A-F]
 interval: n[-n], (n >= 1)
 

Author:
Stanley Shyiko

Nested Class Summary
static class GtidSet.Interval
          An interval of contiguous transaction identifiers.
static class GtidSet.UUIDSet
          A range of GTIDs for a single server with a specific UUID.
 
Constructor Summary
GtidSet(String gtidSet)
           
 
Method Summary
 boolean add(String gtid)
           
 boolean equals(Object obj)
           
 GtidSet.UUIDSet getUUIDSet(String uuid)
          Find the GtidSet.UUIDSet for the server with the specified UUID.
 Collection<GtidSet.UUIDSet> getUUIDSets()
          Get an immutable collection of the range of GTIDs for a single server.
 int hashCode()
           
 boolean isContainedWithin(GtidSet other)
          Determine if the GTIDs represented by this object are contained completely within the supplied set of GTIDs.
 String toString()
           
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Constructor Detail

GtidSet

public GtidSet(String gtidSet)
Parameters:
gtidSet - gtid set comprised of closed intervals (like MySQL's executed_gtid_set).
Method Detail

getUUIDSets

public Collection<GtidSet.UUIDSet> getUUIDSets()
Get an immutable collection of the range of GTIDs for a single server.

Returns:
the GTID ranges for each server; never null

getUUIDSet

public GtidSet.UUIDSet getUUIDSet(String uuid)
Find the GtidSet.UUIDSet for the server with the specified UUID.

Parameters:
uuid - the UUID of the server
Returns:
the GtidSet.UUIDSet for the identified server, or null if there are no GTIDs from that server.

add

public boolean add(String gtid)
Parameters:
gtid - GTID ("source_id:transaction_id")
Returns:
whether or not gtid was added to the set (false if it was already there)

isContainedWithin

public boolean isContainedWithin(GtidSet other)
Determine if the GTIDs represented by this object are contained completely within the supplied set of GTIDs. Note that if two GtidSets are equal, then they both are subsets of the other.

Parameters:
other - the other set of GTIDs; may be null
Returns:
true if all of the GTIDs in this set are equal to or completely contained within the supplied set of GTIDs, or false otherwise

hashCode

public int hashCode()
Overrides:
hashCode in class Object

equals

public boolean equals(Object obj)
Overrides:
equals in class Object

toString

public String toString()
Overrides:
toString in class Object


Copyright © 2016. All Rights Reserved.