Package org.spongepowered.asm.launch.platform

## Class MixinPlatformAgentAbstract

- java.lang.Object
- - org.spongepowered.asm.launch.platform.MixinPlatformAgentAbstract

- All Implemented Interfaces:
    `IMixinPlatformAgent`
  Direct Known Subclasses:
    `MixinPlatformAgentDefault`

      public abstract class MixinPlatformAgentAbstract
      extends java.lang.Object
      implements IMixinPlatformAgent

  Platform agent base class

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from interface org.spongepowered.asm.launch.platform.IMixinPlatformAgent

      `IMixinPlatformAgent.AcceptResult`

  - ### Field Summary

    Fields
    Modifier and Type | Field | Description
    --- | --- | ---
    `protected IContainerHandle` | `handle` | URI to the container
    `protected static ILogger` | `logger` | Logger
    `protected MixinPlatformManager` | `manager` |

  - ### Constructor Summary

    Constructors
    Modifier | Constructor | Description
    --- | --- | ---
    `protected` | `MixinPlatformAgentAbstract()` | Ctor

  - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods Deprecated Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `IMixinPlatformAgent.AcceptResult` | `accept​(MixinPlatformManager manager, IContainerHandle handle)` | Accept and bind to a container handle.
    `java.lang.String` | `getPhaseProvider()` | Get the phase provider for this agent
    `void` | `initPrimaryContainer()` | Called from `inject` in the parent tweaker but only called on the primary tweak container.
    `void` | `inject()` | Called from `inject` in the parent tweaker
    `protected static java.lang.String` | `invokeStringMethod​(java.lang.ClassLoader classLoader, java.lang.String className, java.lang.String methodName)` |
    `void` | `prepare()` | Called during pre-initialisation, after all tweakers and tweak containers have been added to the environment.
    `java.lang.String` | `toString()` |
    `void` | `unwire()` | Deprecated. temporary
    `void` | `wire​(MixinEnvironment.Phase phase, IConsumer<MixinEnvironment.Phase> phaseConsumer)` | Deprecated. temporary

    - ### Methods inherited from class java.lang.Object

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

- - ### Field Detail

    - #### logger

          protected static final ILogger logger

      Logger

    - #### manager

          protected MixinPlatformManager manager

    - #### handle

          protected IContainerHandle handle

      URI to the container

  - ### Constructor Detail

    - #### MixinPlatformAgentAbstract

          protected MixinPlatformAgentAbstract()

      Ctor

  - ### Method Detail

    - #### accept

          public IMixinPlatformAgent.AcceptResult accept​(MixinPlatformManager manager,
                                                         IContainerHandle handle)

      Description copied from interface: `IMixinPlatformAgent`
      Accept and bind to a container handle. This method is called for agents hosted by `MixinContainer` and the agent should react accordingly. If the agent is not able to delegate for container handles of the supplied type, this method should return `false` to indicate that the agent should not be added for this container.
      Specified by:
        `accept` in interface `IMixinPlatformAgent`
      Parameters:
        `manager` - platform manager instance
        `handle` - handle to container
      Returns:
        AcceptResult representing this agent's acceptance of the supplied container

    - #### getPhaseProvider

          public java.lang.String getPhaseProvider()

      Description copied from interface: `IMixinPlatformAgent`
      Get the phase provider for this agent
      Specified by:
        `getPhaseProvider` in interface `IMixinPlatformAgent`

    - #### prepare

          public void prepare()

      Description copied from interface: `IMixinPlatformAgent`
      Called during pre-initialisation, after all tweakers and tweak containers have been added to the environment.
      Specified by:
        `prepare` in interface `IMixinPlatformAgent`

    - #### initPrimaryContainer

          public void initPrimaryContainer()

      Description copied from interface: `IMixinPlatformAgent`
      Called from `inject` in the parent tweaker but only called on the primary tweak container. This is useful if the agent needs to perform some environment-specific setup just once.
      Specified by:
        `initPrimaryContainer` in interface `IMixinPlatformAgent`

    - #### inject

          public void inject()

      Description copied from interface: `IMixinPlatformAgent`
      Called from `inject` in the parent tweaker
      Specified by:
        `inject` in interface `IMixinPlatformAgent`

    - #### toString

          public java.lang.String toString()

      Overrides:
        `toString` in class `java.lang.Object`

    - #### invokeStringMethod

          protected static java.lang.String invokeStringMethod​(java.lang.ClassLoader classLoader,
                                                               java.lang.String className,
                                                               java.lang.String methodName)

    - #### wire

          @Deprecated
          public void wire​(MixinEnvironment.Phase phase,
                           IConsumer<MixinEnvironment.Phase> phaseConsumer)

      Deprecated.
      temporary
      Temp wiring. Called when the initial phase is spun up in the environment.
      Parameters:
        `phase` - Initial phase
        `phaseConsumer` - Delegate for the service (or agents) to trigger later phases

    - #### unwire

          @Deprecated
          public void unwire()

      Deprecated.
      temporary
      Called when the DEFAULT phase is started