public class McastService extends Object implements MembershipService, MembershipListener, MessageListener, McastServiceMBean
Modifier and Type | Field and Description |
---|---|
protected byte[] |
domain |
protected static Member[] |
EMPTY_MEMBERS
Return all the members
|
protected McastServiceImpl |
impl
A handle to the actual low level implementation
|
protected MembershipListener |
listener
A membership listener delegate (should be the cluster :)
|
protected MemberImpl |
localMember
The local member
|
protected MessageListener |
msglistener
A message listener delegate for broadcasts
|
protected byte[] |
payload |
protected Properties |
properties
The implementation specific properties
|
protected static StringManager |
sm
The string manager for this package.
|
MBR_RX, MBR_TX
Constructor and Description |
---|
McastService()
Create a membership service.
|
Modifier and Type | Method and Description |
---|---|
boolean |
accept(ChannelMessage msg) |
void |
broadcast(ChannelMessage message)
Broadcasts a message to all members.
|
Member |
findMemberByName(String name)
Return the member by name
|
String |
getAddress() |
String |
getBind() |
Channel |
getChannel()
Return the channel that is related to this MembershipService
|
byte[] |
getDomain() |
long |
getDropTime() |
long |
getFrequency() |
boolean |
getLocalLoopbackDisabled() |
Member |
getLocalMember(boolean alive)
Get the local member.
|
String |
getLocalMemberName() |
Member |
getMember(Member mbr)
Retrieve the specified member from the membership.
|
Member[] |
getMembers() |
String[] |
getMembersByName()
Return all the members by name
|
byte[] |
getPayload() |
int |
getPort() |
Properties |
getProperties() |
int |
getRecoveryCounter() |
boolean |
getRecoveryEnabled() |
long |
getRecoverySleepTime() |
int |
getSoTimeout() |
int |
getTtl() |
boolean |
hasMembers()
has members?
|
protected void |
hasProperty(Properties properties,
String name)
Check if a required property is available.
|
static void |
main(String[] args)
Simple test program
|
void |
memberAdded(Member member)
A member was added to the group
|
void |
memberDisappeared(Member member)
Callback from the impl when a new member has been received
|
void |
messageReceived(ChannelMessage msg)
Receive a message from the IO components in the Channel stack
|
void |
removeMembershipListener()
Remove the membership listener
|
void |
removeMessageListener() |
void |
setAddress(String addr) |
void |
setBind(String bindaddr) |
void |
setChannel(Channel channel)
Set the channel that is related to this MembershipService
|
protected void |
setDefaults(Properties properties) |
void |
setDomain(byte[] domain) |
void |
setDomain(String domain) |
void |
setDropTime(long time) |
void |
setFrequency(long time) |
void |
setLocalLoopbackDisabled(boolean localLoopbackDisabled) |
void |
setLocalMemberProperties(String listenHost,
int listenPort,
int securePort,
int udpPort)
Sets the local member properties for broadcasting.
|
void |
setMcastBindAddress(String bindaddr) |
void |
setMcastDropTime(long time) |
void |
setMembershipListener(MembershipListener listener)
Add a membership listener, this version only supports one listener per service,
so calling this method twice will result in only the second listener being active.
|
void |
setMessageListener(MessageListener listener) |
void |
setPayload(byte[] payload)
Set a payload to be broadcasted with each membership
broadcast.
|
void |
setPort(int port) |
void |
setProperties(Properties properties)
Sets the properties for the membership service.
|
void |
setRecoveryCounter(int recoveryCounter) |
void |
setRecoveryEnabled(boolean recoveryEnabled) |
void |
setRecoverySleepTime(long recoverySleepTime) |
void |
setSoTimeout(int mcastSoTimeout) |
void |
setTtl(int mcastTTL) |
void |
start()
Start broadcasting and listening to membership pings
|
void |
start(int level)
Starts the membership service.
|
void |
stop(int svc)
Stop broadcasting and listening to membership pings
|
protected static final StringManager sm
protected Properties properties
protected McastServiceImpl impl
protected volatile MembershipListener listener
protected MessageListener msglistener
protected MemberImpl localMember
protected byte[] payload
protected byte[] domain
protected static final Member[] EMPTY_MEMBERS
public void setProperties(Properties properties)
setProperties
in interface MembershipService
properties
- IllegalArgumentException
- if a property is missing.public Properties getProperties()
getProperties
in interface McastServiceMBean
getProperties
in interface MembershipService
public String getLocalMemberName()
getLocalMemberName
in interface McastServiceMBean
public Member getLocalMember(boolean alive)
getLocalMember
in interface MembershipService
alive
- true
to set the alive time
on the local memberpublic void setLocalMemberProperties(String listenHost, int listenPort, int securePort, int udpPort)
setLocalMemberProperties
in interface MembershipService
listenHost
- Listen to hostlistenPort
- Listen to portsecurePort
- Use a secure portudpPort
- Use UDPpublic void setAddress(String addr)
public String getAddress()
getAddress
in interface McastServiceMBean
public void setMcastBindAddress(String bindaddr)
public void setBind(String bindaddr)
public String getBind()
getBind
in interface McastServiceMBean
public void setPort(int port)
public void setRecoveryCounter(int recoveryCounter)
public int getRecoveryCounter()
getRecoveryCounter
in interface McastServiceMBean
public void setRecoveryEnabled(boolean recoveryEnabled)
public boolean getRecoveryEnabled()
getRecoveryEnabled
in interface McastServiceMBean
public void setRecoverySleepTime(long recoverySleepTime)
public long getRecoverySleepTime()
getRecoverySleepTime
in interface McastServiceMBean
public void setLocalLoopbackDisabled(boolean localLoopbackDisabled)
public boolean getLocalLoopbackDisabled()
getLocalLoopbackDisabled
in interface McastServiceMBean
public int getPort()
getPort
in interface McastServiceMBean
public void setFrequency(long time)
public long getFrequency()
getFrequency
in interface McastServiceMBean
public void setMcastDropTime(long time)
public void setDropTime(long time)
public long getDropTime()
getDropTime
in interface McastServiceMBean
protected void hasProperty(Properties properties, String name)
properties
- The set of propertiesname
- The property to check forpublic void start() throws Exception
start
in interface MembershipService
Exception
- if a IO error occurspublic void start(int level) throws Exception
MembershipService
start
in interface MembershipService
level
- - level MBR_RX starts listening for members, level MBR_TX
starts broad casting the serverException
- if the service fails to start.IllegalArgumentException
- if the level is incorrect.public void stop(int svc)
stop
in interface MembershipService
svc
- - level MBR_RX stops listening for members, level MBR_TX
stops broad casting the serverpublic String[] getMembersByName()
getMembersByName
in interface McastServiceMBean
getMembersByName
in interface MembershipService
public Member findMemberByName(String name)
findMemberByName
in interface McastServiceMBean
findMemberByName
in interface MembershipService
name
- The member namepublic boolean hasMembers()
hasMembers
in interface McastServiceMBean
hasMembers
in interface MembershipService
public Member getMember(Member mbr)
MembershipService
getMember
in interface MembershipService
mbr
- The member to retrievepublic Member[] getMembers()
getMembers
in interface MembershipService
public void setMembershipListener(MembershipListener listener)
setMembershipListener
in interface MembershipService
listener
- The listenerpublic void setMessageListener(MessageListener listener)
public void removeMessageListener()
public void removeMembershipListener()
removeMembershipListener
in interface MembershipService
public void memberAdded(Member member)
MembershipListener
memberAdded
in interface MembershipListener
member
- Member - the member that was addedpublic void memberDisappeared(Member member)
memberDisappeared
in interface MembershipListener
member
- The memberMember.SHUTDOWN_PAYLOAD
public void messageReceived(ChannelMessage msg)
MessageListener
messageReceived
in interface MessageListener
msg
- ChannelMessagepublic boolean accept(ChannelMessage msg)
accept
in interface MessageListener
public void broadcast(ChannelMessage message) throws ChannelException
MembershipService
broadcast
in interface MembershipService
message
- The message to broadcastChannelException
- Message broadcast failedpublic int getSoTimeout()
getSoTimeout
in interface McastServiceMBean
public void setSoTimeout(int mcastSoTimeout)
public int getTtl()
getTtl
in interface McastServiceMBean
public byte[] getPayload()
public byte[] getDomain()
getDomain
in interface McastServiceMBean
public void setTtl(int mcastTTL)
public void setPayload(byte[] payload)
MembershipService
setPayload
in interface MembershipService
payload
- byte[]public void setDomain(byte[] domain)
setDomain
in interface MembershipService
public void setDomain(String domain)
public Channel getChannel()
MembershipService
getChannel
in interface MembershipService
public void setChannel(Channel channel)
MembershipService
setChannel
in interface MembershipService
channel
- The channelprotected void setDefaults(Properties properties)
Copyright © 2000-2021 Apache Software Foundation. All Rights Reserved.