/**
  * Returns service object(s) for IN interfaces.
  *
  * @see #IN_TESTS
  * @generated
  */
 @Override
 public Object getServiceObject(IMyxName interfaceName) {
   if (interfaceName.equals(IN_TESTS)) {
     if (tests == null) {
       throw new NullPointerException("Uninitialized service object: tests");
     }
     return tests;
   }
   throw new IllegalArgumentException("Unhandled interface: " + interfaceName.getName());
 }
  /**
   * Update service objects based on disconnecting OUT interfaces.
   *
   * @see #OUT_TEST_EVENTS
   * @generated
   */
  @Override
  public void interfaceDisconnecting(IMyxName interfaceName, Object serviceObject) {
    if (serviceObject == null) {
      throw new NullPointerException(interfaceName.getName());
    }

    if (interfaceName.equals(OUT_TEST_EVENTS)) {
      testEvents.remove(serviceObject);
      return;
    }

    throw new IllegalArgumentException("Unhandled interface: " + interfaceName.getName());
  }
  /**
   * Update service objects based on connected OUT interfaces.
   *
   * @see #OUT_TEST_EVENTS
   * @generated
   */
  @Override
  public void interfaceConnected(IMyxName interfaceName, Object serviceObject) {
    if (serviceObject == null) {
      throw new NullPointerException(interfaceName.getName());
    }

    if (interfaceName.equals(OUT_TEST_EVENTS)) {
      testEvents.add((org.archstudio.testadt.ArchlightTestADTListener) serviceObject);
      return;
    }

    throw new IllegalArgumentException("Unhandled interface: " + interfaceName.getName());
  }