# Class SetNextNamingRule

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

public class SetNextNamingRule extends Rule
Rule implementation that calls a method on the (top-1) (parent) object, passing the top object (child) as an argument. It is commonly used to establish parent-child relationships.

This rule now supports more flexible method matching by default. It is possible that this may break (some) code written against release 1.1.1 or earlier.

## Field Summary

Fields
Modifier and Type
Field
Description
`protected final String`
`methodName`
The method name to call on the parent object.
`protected final String`
`paramType`
The Java class name of the parameter type expected by the method.

### Fields inherited from class Rule

`digester, namespaceURI, sm`

## Constructor Summary

Constructors
Constructor
Description
`SetNextNamingRule(String methodName, String paramType)`
Construct a "set next" rule with the specified method name.

## Method Summary

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

### Methods inherited from class Rule

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

### Methods inherited from class Object

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

## Field Details

### methodName

protected final String methodName
The method name to call on the parent object.

### paramType

protected final String paramType
The Java class name of the parameter type expected by the method.

## Constructor Details

### SetNextNamingRule

public SetNextNamingRule(String methodName, String paramType)
Construct a "set next" rule with the specified method name.

Parameters:
  `methodName` - Method name of the parent method to call
  `paramType` - Java class of the parent method's argument (if you wish to use a primitive type, specify the corresponding Java wrapper class instead, such as `java.lang.Boolean` for a `boolean` parameter)

## Method Details

### end

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

Overrides:
  `end` 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
Throws:
  `Exception` - if an error occurs while processing the event

### toString

public String toString()

Overrides:
  `toString` in class `Object`