# Interface: com.pnfsoftware.jeb.core.units.code.java.IDynamicContentManager

A dynamic content manager is used by [AST output sinks](JavaOutputSink) to customize the generated output.

## Method: findTypesWithSuperMethods
- parameter: `methodIndex`, type: `int`
- return type: `java.util.List<java.lang.String>`

Description: Find types that define or inherit a super\-method matching a method.
parameter: methodIndex: method index
return: matching type signatures

## Method: generatePackageName
- parameter: `out`, type: `com.pnfsoftware.jeb.core.units.code.java.JavaOutputSink`
- parameter: `type`, type: `com.pnfsoftware.jeb.core.units.code.java.IJavaType`
- return type: `java.lang.String`

Description: Generate the package name for a type.
parameter: out: output sink
parameter: type: type whose package name should be generated
return: the generated package name, or null if none was generated

## Method: generateType
- parameter: `out`, type: `com.pnfsoftware.jeb.core.units.code.java.JavaOutputSink`
- parameter: `type`, type: `com.pnfsoftware.jeb.core.units.code.java.IJavaType`
- parameter: `isFullyQualified`, type: `boolean`
- parameter: `isDefinition`, type: `boolean`
- parameter: `constructorItemId`, type: `long`
- return type: `boolean`

Description: Generate a type name.
parameter: out: output sink
parameter: type: type to generate
parameter: isFullyQualified: true to generate a fully qualified type name
parameter: isDefinition: true if the generated type is a definition
parameter: constructorItemId: identifier to use for a constructor item, or 0
return: true if the type was generated

## Method: getBestVirtualMethodId
- parameter: `methodIndex`, type: `int`
- parameter: `actualObjecttype`, type: `com.pnfsoftware.jeb.core.units.code.java.IJavaType`
- parameter: `candidateMethodsIndices`, type: `java.util.List<java.lang.Integer>`
- return type: `long`

Description: Retrieve the best virtual method item identifier for a call target.
parameter: methodIndex: resolved method index
parameter: actualObjecttype: actual receiver type
parameter: candidateMethodsIndices: candidate method indices
return: the selected method item identifier, or 0 if unavailable

## Method: getComment
- parameter: `coordinates`, type: `com.pnfsoftware.jeb.core.output.code.coordinates.ICodeCoordinates`
- return type: `java.lang.String`

Description: Retrieve an inline comment for code coordinates.
parameter: coordinates: code coordinates
return: the comment text, or null if none is available

## Method: getDecryptorData
- parameter: `methodIndex`, type: `int`
- return type: `java.lang.String`

Description: Retrieve decryptor metadata for a method.
parameter: methodIndex: method index
return: decryptor metadata, or null if unavailable

## Method: getDexType
- parameter: `csig`, type: `java.lang.String`
- return type: `com.pnfsoftware.jeb.core.units.code.android.dex.IDexType`

Description: Retrieve a dex type by class signature.
parameter: csig: class signature
return: the dex type, or null if it is unavailable

## Method: getFieldId
- parameter: `index`, type: `int`
- return type: `long`

Description: Retrieve the item identifier for a field.
parameter: index: field index
return: the field item identifier, or 0 if unavailable

## Method: getFieldName
- parameter: `index`, type: `int`
- return type: `java.lang.String`

Description: Retrieve a field name by index.
parameter: index: field index
return: the field name, or null if unavailable

## Method: getFieldSignature
- parameter: `index`, type: `int`
- return type: `java.lang.String`

Description: Retrieve a field signature by index.
parameter: index: field index
return: the field signature, or null if unavailable

## Method: getIdentifierId
- parameter: `coordinates`, type: `com.pnfsoftware.jeb.core.output.code.coordinates.IdentifierCoordinates`
- return type: `long`

Description: Retrieve the item identifier for an identifier.
parameter: coordinates: identifier coordinates
return: the identifier item identifier, or 0 if unavailable

## Method: getIdentifierName
- parameter: `coordinates`, type: `com.pnfsoftware.jeb.core.output.code.coordinates.IdentifierCoordinates`
- return type: `java.lang.String`

Description: Retrieve the display name of an identifier.
parameter: coordinates: identifier coordinates
return: the identifier name, or null if unavailable

## Method: getImmediateId
- parameter: `rawvalue`, type: `long`
- return type: `long`

Description: Retrieve the item identifier for an immediate value.
parameter: rawvalue: immediate value
return: the immediate item identifier, or 0 if unavailable

## Method: getImmediatePreferredBase
- parameter: `rawvalue`, type: `long`
- return type: `int`

Description: Retrieve the preferred numeric base for an immediate value.
parameter: rawvalue: immediate value
return: the preferred base, or 0 if the default should be used

## Method: getImplFieldId
- parameter: `fieldIndex`, type: `int`
- return type: `long`

Description: Retrieve the implementation item identifier for a field.
parameter: fieldIndex: field index
return: the implementation field item identifier, or 0 if unavailable

## Method: getImplStaticMethodId
- parameter: `methodIndex`, type: `int`
- return type: `long`

Description: Retrieve the implementation item identifier for a static method.
parameter: methodIndex: method index
return: the implementation method item identifier, or 0 if unavailable

## Method: getLabelId
- parameter: `coordinates`, type: `com.pnfsoftware.jeb.core.output.code.coordinates.ICodeCoordinates`
- return type: `long`

Description: Retrieve the item identifier for a label.
parameter: coordinates: label coordinates
return: the label item identifier, or 0 if unavailable

## Method: getLabelName
- parameter: `coordinates`, type: `com.pnfsoftware.jeb.core.output.code.coordinates.ICodeCoordinates`
- return type: `java.lang.String`

Description: Retrieve the display name of a label.
parameter: coordinates: label coordinates
return: the label name, or null if unavailable

## Method: getMethodId
- parameter: `index`, type: `int`
- return type: `long`

Description: Retrieve the item identifier for a method.
parameter: index: method index
return: the method item identifier, or 0 if unavailable

## Method: getMethodName
- parameter: `index`, type: `int`
- return type: `java.lang.String`

Description: Retrieve a method name by index.
parameter: index: method index
return: the method name, or null if unavailable

## Method: getMethodSignature
- parameter: `index`, type: `int`
- return type: `java.lang.String`

Description: Retrieve a method signature by index.
parameter: index: method index
return: the method signature, or null if unavailable

## Method: getPreComment
- parameter: `coordinates`, type: `com.pnfsoftware.jeb.core.output.code.coordinates.ICodeCoordinates`
- return type: `java.lang.String`

Description: Retrieve a pre\-comment for code coordinates.
parameter: coordinates: code coordinates
return: the comment text, or null if none is available

## Method: getStringInfo
- parameter: `constant`, type: `java.lang.String`
- return type: `com.pnfsoftware.jeb.core.units.code.StringInfo`

Description: Retrieve rendering information for a string constant.
parameter: constant: string constant
return: string rendering information, or null if unavailable

## Method: isAnonymousClass
- parameter: `type`, type: `com.pnfsoftware.jeb.core.units.code.java.IJavaType`
- return type: `boolean`

Description: Determine whether a Java type represents an anonymous class.
parameter: type: Java type
return: true if the type is an anonymous class

## Method: isCollapsed
- parameter: `addr`, type: `java.lang.String`
- parameter: `areason`, type: `java.lang.String[]`
- return type: `boolean`

Description: Determine whether an address should be rendered collapsed.
parameter: addr: address
parameter: areason: optional single\-element output array receiving the collapse reason
return: true if the address should be collapsed

## Method: retrieveImmediateHint
- parameter: `rawValue`, type: `long`
- return type: `java.lang.String`

Description: Retrieve a display hint for an immediate value.
parameter: rawValue: immediate value
return: the display hint, or null if unavailable

## Method: wasFieldRenamed
- parameter: `index`, type: `int`
- return type: `boolean`

Description: Determine whether a field was renamed.
parameter: index: field index
return: true if the field was renamed

## Method: wasMethodRenamed
- parameter: `index`, type: `int`
- return type: `boolean`

Description: Determine whether a method was renamed.
parameter: index: method index
return: true if the method was renamed

