## org.apache.ivy.core.resolve
Class IvyNodeUsage

    java.lang.Object
      org.apache.ivy.core.resolve.IvyNodeUsage

    public class IvyNodeUsage

extends java.lang.Object

Class collecting usage data for an IvyNode.

Usage data contains the configurations required by callers for each root module configuration, the configurations required by caller node and caller configuration, dependency artifacts descriptors declared by callers, include rules declared by callers, and blacklisted data by root module conf.

Constructor Summary
`IvyNodeUsage(IvyNode node)`

Method Summary
`protected java.util.Set` `addAndGetConfigurations(java.lang.String rootModuleConf)`
`void` `addUsage(java.lang.String rootModuleConf, DependencyDescriptor dd, java.lang.String parentConf)`
`protected void` `blacklist(IvyNodeBlacklist bdata)`
`protected IvyNodeBlacklist` `getBlacklistData(java.lang.String rootModuleConf)` Returns the blacklist data of this node in the given root module conf, or `null` if this node is not blacklisted in this root module conf.
`protected java.util.Set` `getConfigurations(java.lang.String rootModuleConf)` Returns the configurations of the dependency required in a given root module configuration.
`protected java.util.Set` `getDependencyArtifactsSet(java.lang.String rootModuleConf)`
`protected java.util.Set` `getDependencyIncludesSet(java.lang.String rootModuleConf)`
`protected IvyNode` `getNode()`
`protected java.util.Collection` `getRequiredConfigurations(IvyNode in, java.lang.String inConf)`
`protected java.util.Set` `getRootModuleConfigurations()`
`boolean` `hasTransitiveDepender(java.lang.String rootModuleConf)` Indicates if at least one depender has a transitive dependency descriptor for the given root module conf.
`protected boolean` `isBlacklisted(java.lang.String rootModuleConf)` Indicates if this node has been blacklisted in the given root module conf.
`protected void` `removeRootModuleConf(java.lang.String rootModuleConf)`
`protected void` `setRequiredConfs(IvyNode parent, java.lang.String parentConf, java.util.Collection confs)`
`void` `updateDataFrom(java.util.Collection usages, java.lang.String rootModuleConf)`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### IvyNodeUsage

    public IvyNodeUsage(IvyNode node)

Method Detail

### getRequiredConfigurations

    protected java.util.Collection getRequiredConfigurations(IvyNode in,
                                                             java.lang.String inConf)

### setRequiredConfs

    protected void setRequiredConfs(IvyNode parent,
                                    java.lang.String parentConf,
                                    java.util.Collection confs)

### getConfigurations

    protected java.util.Set getConfigurations(java.lang.String rootModuleConf)

  Returns the configurations of the dependency required in a given root module configuration.

  Parameters:
    `rootModuleConf` -
  Returns:

### addAndGetConfigurations

    protected java.util.Set addAndGetConfigurations(java.lang.String rootModuleConf)

### getRootModuleConfigurations

    protected java.util.Set getRootModuleConfigurations()

### updateDataFrom

    public void updateDataFrom(java.util.Collection usages,
                               java.lang.String rootModuleConf)

### addUsage

    public void addUsage(java.lang.String rootModuleConf,
                         DependencyDescriptor dd,
                         java.lang.String parentConf)

### getDependencyArtifactsSet

    protected java.util.Set getDependencyArtifactsSet(java.lang.String rootModuleConf)

### getDependencyIncludesSet

    protected java.util.Set getDependencyIncludesSet(java.lang.String rootModuleConf)

### removeRootModuleConf

    protected void removeRootModuleConf(java.lang.String rootModuleConf)

### blacklist

    protected void blacklist(IvyNodeBlacklist bdata)

### isBlacklisted

    protected boolean isBlacklisted(java.lang.String rootModuleConf)

  Indicates if this node has been blacklisted in the given root module conf.

  A blacklisted node should be considered as if it doesn't even exist on the repository.

  Parameters:
    `rootModuleConf` - the root module conf for which we'd like to know if the node is blacklisted
  Returns:
    true if this node is blacklisted int he given root module conf, false otherwise
  See Also:
    `#blacklist(String)`

### getBlacklistData

    protected IvyNodeBlacklist getBlacklistData(java.lang.String rootModuleConf)

  Returns the blacklist data of this node in the given root module conf, or `null` if this node is not blacklisted in this root module conf.

  Parameters:
    `rootModuleConf` - the root module configuration to consider
  Returns:
    the blacklist data if any

### getNode

    protected IvyNode getNode()

### hasTransitiveDepender

    public boolean hasTransitiveDepender(java.lang.String rootModuleConf)

  Indicates if at least one depender has a transitive dependency descriptor for the given root module conf.

  Parameters:
    `rootModuleConf` - the root module conf to consider
  Returns:
    `true` if at least one depender has a transitive dependency descriptor for the given root module conf, `false` otherwise.