|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||
java.lang.Objectorg.jboss.mx.util.JBossNotificationBroadcasterSupport
org.jboss.system.ServiceMBeanSupport
org.mobicents.slee.management.rules.RulesScanner
public class RulesScanner
A URL-based scanner. Supports local directory scanning for file-based urls. This MBean searchs for rules file like .xls, .XLS, .csv, .CSV and .drl if found in the directory specified by user, this MBean will create RuleBase and will bind to JNDI with the name of file as jndi name under subcontext java:rulebase/ for example for MyRules.xls rule file, RuleBase will be bound at java:rulebase/MyRules.xls
| Nested Class Summary | |
|---|---|
protected class |
RulesScanner.BindURL
A container and help class for a bind URL. |
class |
RulesScanner.ScannerThread
Should use Timer/TimerTask instead? This has some issues with interaction with ScanEnabled attribute. |
| Field Summary | |
|---|---|
protected java.util.Set |
boundSet
A set of scanned urls which have been bounded to JNDI. |
protected boolean |
doRecursiveSearch
Whether to search inside directories whose names containing no dots |
protected org.jboss.net.protocol.URLLister.URLFilter |
filter
Allow a filter for scanned directories |
protected org.jboss.net.protocol.URLListerFactory |
listerFactory
Helper for listing local/remote directory URLs |
static java.lang.String |
RULES_BASE_JNDI_PREFIX
|
protected boolean |
scanEnabled
True if period based scanning is enabled. |
protected RulesScanner.ScannerThread |
scannerThread
|
protected long |
scanPeriod
The scan period in milliseconds |
protected java.net.URL |
serverHomeURL
|
protected long |
stopTimeOut
The stop timeout |
protected java.util.List |
urlList
The list of URLs to scan. |
| Fields inherited from class org.jboss.system.ServiceMBeanSupport |
|---|
log, server, SERVICE_CONTROLLER_SIG, serviceName |
| Fields inherited from interface org.jboss.system.ServiceMBean |
|---|
CREATE_EVENT, CREATED, DESTROY_EVENT, DESTROYED, FAILED, REGISTERED, START_EVENT, STARTED, STARTING, states, STOP_EVENT, STOPPED, STOPPING, UNREGISTERED |
| Constructor Summary | |
|---|---|
RulesScanner()
|
|
| Method Summary | |
|---|---|
void |
addURL(java.lang.String urlspec)
|
void |
addURL(java.net.URL url)
|
protected void |
bind(RulesScanner.BindURL du,
boolean rebind)
A helper to deploy the given URL with the deployer. |
protected void |
createService()
|
protected void |
destroyService()
|
java.lang.String |
getFilter()
|
boolean |
getRecursiveSearch()
|
java.util.List |
getURLList()
|
boolean |
hasURL(java.lang.String urlspec)
|
boolean |
hasURL(java.net.URL url)
|
boolean |
isScanEnabled()
Check if period based scanning is enabled. |
protected java.net.URL |
makeURL(java.lang.String urlspec)
A helper to make a URL from a full url, or a filespec. |
javax.management.ObjectName |
preRegister(javax.management.MBeanServer server,
javax.management.ObjectName name)
|
void |
removeURL(java.lang.String urlspec)
|
void |
removeURL(java.net.URL url)
|
void |
scan()
Scan for changes in Rules files .drl, .xls, .cvs. |
void |
setFilter(java.lang.String classname)
|
void |
setRecursiveSearch(boolean recurse)
|
void |
setScanEnabled(boolean flag)
Disable or enable the period based deployment scanning. |
void |
setScanPeriod(long period)
Set the scan period for the scanner. |
void |
setURLList(java.util.List list)
|
void |
setURLs(java.lang.String listspec)
|
protected void |
startService()
|
protected void |
stopService()
|
protected void |
unbind(RulesScanner.BindURL du)
|
| Methods inherited from class org.jboss.system.ServiceMBeanSupport |
|---|
create, destroy, getDeploymentInfo, getLog, getName, getNextNotificationSequenceNumber, getObjectName, getServer, getServiceName, getState, getStateString, jbossInternalCreate, jbossInternalDescription, jbossInternalDestroy, jbossInternalLifecycle, jbossInternalStart, jbossInternalStop, postDeregister, postRegister, preDeregister, start, stop |
| Methods inherited from class org.jboss.mx.util.JBossNotificationBroadcasterSupport |
|---|
addNotificationListener, getNotificationInfo, handleNotification, nextNotificationSequenceNumber, removeNotificationListener, removeNotificationListener, sendNotification |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
| Methods inherited from interface org.jboss.system.ServiceMBean |
|---|
getName, getState, getStateString, jbossInternalLifecycle |
| Methods inherited from interface org.jboss.system.Service |
|---|
create, destroy, start, stop |
| Field Detail |
|---|
public static final java.lang.String RULES_BASE_JNDI_PREFIX
protected long stopTimeOut
protected long scanPeriod
protected boolean scanEnabled
protected java.net.URL serverHomeURL
protected java.util.List urlList
protected java.util.Set boundSet
protected org.jboss.net.protocol.URLListerFactory listerFactory
protected boolean doRecursiveSearch
protected RulesScanner.ScannerThread scannerThread
protected org.jboss.net.protocol.URLLister.URLFilter filter
| Constructor Detail |
|---|
public RulesScanner()
| Method Detail |
|---|
public void setRecursiveSearch(boolean recurse)
setRecursiveSearch in interface RulesScannerMBeanpublic boolean getRecursiveSearch()
getRecursiveSearch in interface RulesScannerMBeanpublic void addURL(java.net.URL url)
addURL in interface RulesScannerMBean
public void addURL(java.lang.String urlspec)
throws java.net.MalformedURLException
addURL in interface RulesScannerMBeanjava.net.MalformedURLExceptionpublic java.util.List getURLList()
getURLList in interface RulesScannerMBeanpublic boolean hasURL(java.net.URL url)
hasURL in interface RulesScannerMBean
public boolean hasURL(java.lang.String urlspec)
throws java.net.MalformedURLException
hasURL in interface RulesScannerMBeanjava.net.MalformedURLExceptionpublic boolean isScanEnabled()
RulesScannerMBean
isScanEnabled in interface RulesScannerMBeanpublic void setScanEnabled(boolean flag)
RulesScannerMBean
Manual scanning can still be performed by calling RulesScannerMBean.scan().
setScanEnabled in interface RulesScannerMBeanflag - True to enable or false to disable period based scanning.public void removeURL(java.net.URL url)
removeURL in interface RulesScannerMBean
public void removeURL(java.lang.String urlspec)
throws java.net.MalformedURLException
removeURL in interface RulesScannerMBeanjava.net.MalformedURLException
public void setFilter(java.lang.String classname)
throws java.lang.ClassNotFoundException,
java.lang.IllegalAccessException,
java.lang.InstantiationException
setFilter in interface RulesScannerMBeanjava.lang.ClassNotFoundException
java.lang.IllegalAccessException
java.lang.InstantiationExceptionpublic java.lang.String getFilter()
getFilter in interface RulesScannerMBean
public void scan()
throws java.lang.Exception
RulesScannerMBean
scan in interface RulesScannerMBeanjava.lang.IllegalStateException - Not initialized.
java.lang.Exception - Scan failed.protected void unbind(RulesScanner.BindURL du)
protected void bind(RulesScanner.BindURL du,
boolean rebind)
public void setScanPeriod(long period)
RulesScannerMBean
setScanPeriod in interface RulesScannerMBeanperiod - This is the time in milliseconds between scans.public void setURLList(java.util.List list)
setURLList in interface RulesScannerMBean
public void setURLs(java.lang.String listspec)
throws java.net.MalformedURLException
setURLs in interface RulesScannerMBeanjava.net.MalformedURLException
protected java.net.URL makeURL(java.lang.String urlspec)
throws java.net.MalformedURLException
java.net.MalformedURLException
public javax.management.ObjectName preRegister(javax.management.MBeanServer server,
javax.management.ObjectName name)
throws java.lang.Exception
preRegister in interface javax.management.MBeanRegistrationpreRegister in class org.jboss.system.ServiceMBeanSupportjava.lang.Exception
protected void createService()
throws java.lang.Exception
createService in class org.jboss.system.ServiceMBeanSupportjava.lang.Exception
protected void startService()
throws java.lang.Exception
startService in class org.jboss.system.ServiceMBeanSupportjava.lang.Exception
protected void stopService()
throws java.lang.Exception
stopService in class org.jboss.system.ServiceMBeanSupportjava.lang.Exception
protected void destroyService()
throws java.lang.Exception
destroyService in class org.jboss.system.ServiceMBeanSupportjava.lang.Exception
|
|||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||||