Interface IMixinPlatformAgent

All Known Subinterfaces:
IMixinPlatformServiceAgent
All Known Implementing Classes:
MixinPlatformAgentAbstract, MixinPlatformAgentDefault

public interface IMixinPlatformAgent
Base interface for platform agents. Platform agents are environment-specific handlers which are used by the Mixin subsystem to perform platform-specific tasks required by different environments without having to litter other parts of the Mixin codebase with a bunch of environment-specific cruft.

Platform Agents handle mixin environment tasks on a per-container basis, with each container in the environment being assigned one of each available type of agent to handle those tasks on behalf of the container.

  • Method Details

    • accept

      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.
      Parameters:
      manager - platform manager instance
      handle - handle to container
      Returns:
      AcceptResult representing this agent's acceptance of the supplied container
    • getPhaseProvider

      String getPhaseProvider()
      Get the phase provider for this agent
    • prepare

      void prepare()
      Called during pre-initialisation, after all tweakers and tweak containers have been added to the environment.
    • initPrimaryContainer

      void initPrimaryContainer()
      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.
    • inject

      void inject()
      Called from inject in the parent tweaker