public class NetBIOSNameServer extends NetworkServer implements Runnable, ConfigurationListener
Modifier and Type | Field and Description |
---|---|
static int |
AddNameSize |
static int |
DefaultTTL |
static int |
DeleteNameSize |
static int |
GroupName |
static long |
NameRefreshWakeupInterval |
static int |
RefreshNameRetries |
static int |
RefreshNameSize |
SHUTDOWN_TIMEOUT
StsAccepted, StsIgnored, StsNewSessionsOnly, StsRestartRequired
Constructor and Description |
---|
NetBIOSNameServer(ServerConfiguration config)
Default constructor
|
Modifier and Type | Method and Description |
---|---|
void |
addAddNameListener(AddNameListener l)
Add a local add name listener to the NetBIOS name server.
|
void |
AddName(NetBIOSName name)
Add a NetBIOS name.
|
void |
addQueryListener(QueryNameListener l)
Add a query name listener to the NetBIOS name server.
|
void |
addRemoteListener(RemoteNameListener l)
Add a remote name listener to the NetBIOS name server.
|
int |
configurationChanged(int id,
ServerConfiguration config,
Object newVal)
Validate configuration changes that are relevant to the NetBIOS name server
|
void |
DeleteName(NetBIOSName name)
Delete a NetBIOS name.
|
protected void |
fireAddNameEvent(NetBIOSName name,
int sts)
Trigger an add name event to all registered listeners.
|
protected void |
fireNameRegisterEvent(NetBIOSName name,
InetAddress addr)
Trigger a name register event to all registered listeners.
|
protected void |
fireNameReleaseEvent(NetBIOSName name,
InetAddress addr)
Trigger a name release event to all registered listeners.
|
protected void |
fireQueryNameEvent(NetBIOSName name,
InetAddress addr)
Trigger an query name event to all registered listeners.
|
InetAddress |
getBindAddress()
Return the local address the server binds to, or null if all local addresses
are used.
|
InetAddress |
getBroadcastAddress()
Return the broadcast address, if WINS is disabled
|
Hashtable |
getNameTable()
Return the remote name table
|
protected int |
getNextTransactionId()
Return the next available transaction id for outgoing NetBIOS packets.
|
int |
getPort()
Return the port/socket that the server is bound to.
|
InetAddress |
getPrimaryWINSServer()
Return the primary WINS server address
|
InetAddress |
getSecondaryWINSServer()
Return the secondary WINS server address
|
boolean |
hasBindAddress()
Determine if the server binds to a particulat local address, or all addresses
|
boolean |
hasPrimaryWINSServer()
Determine if the primary WINS server address has been set
|
boolean |
hasSecondaryWINSServer()
Determine if the secondary WINS server address has been set
|
protected void |
processAdapterStatus(NetBIOSPacket pkt,
InetAddress fromAddr,
int fromPort)
Process an adapter status request
|
protected void |
processNameQuery(NetBIOSPacket pkt,
InetAddress fromAddr,
int fromPort)
Process a NetBIOS name query.
|
protected void |
processNameRegister(NetBIOSPacket pkt,
InetAddress fromAddr,
int fromPort)
Process a NetBIOS name register request.
|
protected void |
processNameRelease(NetBIOSPacket pkt,
InetAddress fromAddr,
int fromPort)
Process a NetBIOS name release.
|
protected void |
processQueryResponse(NetBIOSPacket pkt,
InetAddress fromAddr,
int fromPort)
Process a NetBIOS query response.
|
protected void |
processRegisterResponse(NetBIOSPacket pkt,
InetAddress fromAddr,
int fromPort)
Process a NetBIOS name register response.
|
protected void |
processReleaseResponse(NetBIOSPacket pkt,
InetAddress fromAddr,
int fromPort)
Process a NetBIOS name release response.
|
protected void |
processWack(NetBIOSPacket pkt,
InetAddress fromAddr,
int fromPort)
Process a NetBIOS WACK.
|
void |
removeAddNameListener(AddNameListener l)
Remove a local add name listener from the NetBIOS name server.
|
void |
removeQueryNameListener(QueryNameListener l)
Remove a query name listner from the NetBIOS name server.
|
void |
removeRemoteListener(RemoteNameListener l)
Remove a remote name listener from the NetBIOS name server.
|
void |
run()
Run the NetBIOS name server.
|
protected void |
sendPacket(NetBIOSPacket nbpkt,
int len)
Send a packet via the NetBIOS naming datagram socket.
|
protected void |
sendPacket(NetBIOSPacket nbpkt,
int len,
InetAddress replyAddr,
int replyPort)
Send a packet via the NetBIOS naming datagram socket.
|
void |
setBindAddress(InetAddress addr)
Set the local address that the server should bind to
|
void |
setPrimaryWINSServer(InetAddress addr)
Set the primary WINS server address
|
void |
setSecondaryWINSServer(InetAddress addr)
Set the secondary WINS server address
|
void |
setServerPort(int port)
Set the server port
|
void |
shutdownServer(boolean immediate)
Shutdown the NetBIOS name server
|
void |
startServer()
Start the NetBIOS name server is a seperate thread
|
addServerListener, addSessionListener, clearException, findShare, fireServerEvent, fireSessionClosedEvent, fireSessionLoggedOnEvent, fireSessionOpenEvent, getAccessControlManager, getConfiguration, getException, getFullShareList, getGlobalConfiguration, getProtocolName, getSecurityConfiguration, getServerAddresses, getShareList, getShareMapper, hasAccessControlManager, hasDebug, hasDebugFlag, hasException, hasShutdown, isActive, isEnabled, isVersion, removeServerListener, removeSessionListener, setActive, setDebug, setDebugFlags, setEnabled, setException, setServerAddresses, setShutdown, setVersion
public static final int AddNameSize
public static final int DeleteNameSize
public static final int RefreshNameSize
public static final int RefreshNameRetries
public static final int GroupName
public static final int DefaultTTL
public static final long NameRefreshWakeupInterval
public NetBIOSNameServer(ServerConfiguration config) throws SocketException
config
- ServerConfigurationSocketException
- If a network setup error occurspublic final InetAddress getBindAddress()
protected final int getNextTransactionId()
public final int getPort()
public final boolean hasBindAddress()
public final Hashtable getNameTable()
public final InetAddress getBroadcastAddress()
public final boolean hasPrimaryWINSServer()
public final InetAddress getPrimaryWINSServer()
public final boolean hasSecondaryWINSServer()
public final InetAddress getSecondaryWINSServer()
public final void AddName(NetBIOSName name) throws IOException
name
- NetBIOS name to be addedIOException
- I/O error occurred.public final void DeleteName(NetBIOSName name) throws IOException
name
- NetBIOS name to be deletedIOException
- I/O error occurred.public final void addAddNameListener(AddNameListener l)
l
- AddNameListenerpublic final void addQueryListener(QueryNameListener l)
l
- QueryNameListenerpublic final void addRemoteListener(RemoteNameListener l)
l
- RemoteNameListenerprotected final void fireAddNameEvent(NetBIOSName name, int sts)
name
- NetBIOSNamests
- intprotected final void fireQueryNameEvent(NetBIOSName name, InetAddress addr)
name
- NetBIOSNameaddr
- InetAddressprotected final void fireNameRegisterEvent(NetBIOSName name, InetAddress addr)
name
- NetBIOSNameaddr
- InetAddressprotected final void fireNameReleaseEvent(NetBIOSName name, InetAddress addr)
name
- NetBIOSNameaddr
- InetAddressprotected final void processNameQuery(NetBIOSPacket pkt, InetAddress fromAddr, int fromPort)
pkt
- NetBIOSPacketfromAddr
- InetAddressfromPort
- intprotected final void processNameRegister(NetBIOSPacket pkt, InetAddress fromAddr, int fromPort)
pkt
- NetBIOSPacketfromAddr
- InetAddressfromPort
- intprotected final void processNameRelease(NetBIOSPacket pkt, InetAddress fromAddr, int fromPort)
pkt
- NetBIOSPacketfromAddr
- InetAddressfromPort
- intprotected final void processQueryResponse(NetBIOSPacket pkt, InetAddress fromAddr, int fromPort)
pkt
- NetBIOSPacketfromAddr
- InetAddressfromPort
- intprotected final void processRegisterResponse(NetBIOSPacket pkt, InetAddress fromAddr, int fromPort)
pkt
- NetBIOSPacketfromAddr
- InetAddressfromPort
- intprotected final void processReleaseResponse(NetBIOSPacket pkt, InetAddress fromAddr, int fromPort)
pkt
- NetBIOSPacketfromAddr
- InetAddressfromPort
- intprotected final void processWack(NetBIOSPacket pkt, InetAddress fromAddr, int fromPort)
pkt
- NetBIOSPacketfromAddr
- InetAddressfromPort
- intprotected final void processAdapterStatus(NetBIOSPacket pkt, InetAddress fromAddr, int fromPort)
pkt
- NetBIOSPacketfromAddr
- InetAddressfromPort
- intpublic final void removeAddNameListener(AddNameListener l)
l
- AddNameListenerpublic final void removeQueryNameListener(QueryNameListener l)
l
- QueryNameListenerpublic final void removeRemoteListener(RemoteNameListener l)
l
- RemoteNameListenerprotected final void sendPacket(NetBIOSPacket nbpkt, int len) throws IOException
nbpkt
- NetBIOSPacketlen
- intIOException
- The exception description.protected final void sendPacket(NetBIOSPacket nbpkt, int len, InetAddress replyAddr, int replyPort) throws IOException
nbpkt
- NetBIOSPacketlen
- intreplyAddr
- InetAddressreplyPort
- intIOException
- The exception description.public final void setBindAddress(InetAddress addr)
addr
- java.net.InetAddresspublic final void setServerPort(int port)
port
- intpublic final void setPrimaryWINSServer(InetAddress addr)
addr
- InetAddresspublic final void setSecondaryWINSServer(InetAddress addr)
addr
- InetAddresspublic void shutdownServer(boolean immediate)
shutdownServer
in class NetworkServer
immediate
- booleanpublic void startServer()
startServer
in class NetworkServer
public int configurationChanged(int id, ServerConfiguration config, Object newVal) throws InvalidConfigurationException
configurationChanged
in interface ConfigurationListener
id
- intconfig
- ServerConfigurationnewVal
- ObjectInvalidConfigurationException
Copyright © 2005–2017 Alfresco Software. All rights reserved.