# Class LifecycleListenerRule

java.lang.Object
org.apache.tomcat.util.digester.Rule
org.apache.catalina.startup.LifecycleListenerRule

public class LifecycleListenerRule extends Rule
Rule that creates a new `LifecycleListener` and associates it with the top object on the stack which must implement `Container`. The implementation class to be used is determined by:

1. Does the top element on the stack specify an implementation class using the attribute specified when this rule was created?
2. Does the parent `Container` of the `Container` on the top of the stack specify an implementation class using the attribute specified when this rule was created?
3. Use the default implementation class specified when this rule was created.

## Field Summary

### Fields inherited from class Rule

`digester, namespaceURI, sm`

## Constructor Summary

Constructors
Constructor
Description
`LifecycleListenerRule(String listenerClass, String attributeName)`
Construct a new instance of this Rule.

## Method Summary

Modifier and Type
Method
Description
`void`
`begin(String namespace, String name, Attributes attributes)`
This method is called when the beginning of a matching XML element is encountered.

### Methods inherited from class Rule

`body, end, finish, getDigester, getNamespaceURI, setDigester, setNamespaceURI`

### Methods inherited from class Object

`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

## Constructor Details

### LifecycleListenerRule

public LifecycleListenerRule(String listenerClass, String attributeName)
Construct a new instance of this Rule.

Parameters:
  `listenerClass` - Default name of the LifecycleListener implementation class to be created
  `attributeName` - Name of the attribute that optionally includes an override name of the LifecycleListener class

## Method Details

### begin

public void begin(String namespace, String name, Attributes attributes) throws Exception
Description copied from class: `Rule`
This method is called when the beginning of a matching XML element is encountered. The default implementation is a NO-OP.

Overrides:
  `begin` in class `Rule`
Parameters:
  `namespace` - the namespace URI of the matching element, or an empty string if the parser is not namespace aware or the element has no namespace
  `name` - the local name if the parser is namespace aware, or just the element name otherwise
  `attributes` - The attribute list of this element
Throws:
  `Exception` - if an error occurs while processing the event