sbt.mavenint

PomExtraDependencyAttributes

object PomExtraDependencyAttributes

This class contains all the logic for dealing with the extra attributes in pom files relating to extra attributes on dependency declarations.

Specifically, if we have a dependency on an sbt plugin, there are two properties that need to propogate: - sbtVersion - scalaVersion

These need to exist on the *dependency declaration*. Maven/Aether has no way to inject these into the <dependency> section of pom files, so we use Ivy's Extra attribute hackery to inject a lookup table of extra attributes by dependency id into POM files and later we read these back.

Linear Supertypes
AnyRef, Any
Ordering
  1. Alphabetic
  2. By inheritance
Inherited
  1. PomExtraDependencyAttributes
  2. AnyRef
  3. Any
  1. Hide All
  2. Show all
Learn more about member selection
Visibility
  1. Public
  2. All

Value Members

  1. final def !=(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  2. final def !=(arg0: Any): Boolean

    Definition Classes
    Any
  3. final def ##(): Int

    Definition Classes
    AnyRef → Any
  4. final def ==(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  5. final def ==(arg0: Any): Boolean

    Definition Classes
    Any
  6. val ExtraAttributesKey: String

  7. val SbtVersionKey: String

  8. val ScalaVersionKey: String

  9. final def asInstanceOf[T0]: T0

    Definition Classes
    Any
  10. def clone(): AnyRef

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  11. final def eq(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  12. def equals(arg0: Any): Boolean

    Definition Classes
    AnyRef → Any
  13. def filterCustomExtra(item: ExtendableItem, include: Boolean): Map[String, String]

  14. def finalize(): Unit

    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  15. final def getClass(): Class[_]

    Definition Classes
    AnyRef → Any
  16. def getDependencyExtra(m: Map[String, String]): Map[ModuleRevisionId, Map[String, String]]

    Reads the extra dependency information out of Ivy's notion of POM properties and returns the map of ID -> Extra Properties.

  17. def hashCode(): Int

    Definition Classes
    AnyRef → Any
  18. final def isInstanceOf[T0]: Boolean

    Definition Classes
    Any
  19. final def ne(arg0: AnyRef): Boolean

    Definition Classes
    AnyRef
  20. final def notify(): Unit

    Definition Classes
    AnyRef
  21. final def notifyAll(): Unit

    Definition Classes
    AnyRef
  22. def qualifiedExtra(item: ExtendableItem): Map[String, String]

  23. def qualifiedIsExtra(k: String): Boolean

  24. def readDependencyExtra(s: String): Seq[ModuleRevisionId]

    parses the sequence of dependencies with extra attribute information, with one dependency per line

  25. def readFromAether(props: Map[String, AnyRef]): Map[ModuleRevisionId, Map[String, String]]

    Reads the extra dependency attributes out of a maven property.

    Reads the extra dependency attributes out of a maven property.

    props

    The properties from an Aether resolution.

    returns

    A map of module id to extra dependency attributes associated with dependencies on that module.

  26. def simplify(id: ModuleRevisionId): ModuleRevisionId

  27. final def synchronized[T0](arg0: ⇒ T0): T0

    Definition Classes
    AnyRef
  28. def toString(): String

    Definition Classes
    AnyRef → Any
  29. def transferDependencyExtraAttributes(from: Properties, to: Map[String, AnyRef]): Unit

    Mutates the to collection with the extra depdendency attributes from the incoming pom properties list.

    Mutates the to collection with the extra depdendency attributes from the incoming pom properties list.

    from

    The properties directly off a maven POM file

    to

    The aaether properties where we can write whatever we want.

    TODO - maybe we can just parse this directly here. Note the readFromAether method uses whatever we set here.

  30. final def wait(): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  31. final def wait(arg0: Long, arg1: Int): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  32. final def wait(arg0: Long): Unit

    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  33. def writeDependencyExtra(s: Seq[DependencyDescriptor]): Seq[String]

    Creates the "extra" property values for DependencyDescriptors that can be written into a maven pom so we don't loose the information.

    Creates the "extra" property values for DependencyDescriptors that can be written into a maven pom so we don't loose the information.

    s
    returns

Inherited from AnyRef

Inherited from Any

Ungrouped