public void init(Helper helper) {
    this.helper = helper;

    if (!helper.getEventContext().isCurrentUserAdmin()) {
      throw helper.cancel(new ERR(), new omero.SecurityViolation(), "not-admin");
    }

    log.debug("Looking repo " + repoUuid);
    try {
      String proposedName = "InternalRepository-" + repoUuid;
      InternalRepositoryPrx[] proxies = reg.lookupRepositories();
      for (InternalRepositoryPrx prx : proxies) {
        Ice.Identity id = prx.ice_getIdentity();
        if (proposedName.equals(id.name)) {
          repo = prx;
          log.debug("Found repo " + repoUuid);
          break;
        }
      }
    } catch (Exception e) {
      throw helper.cancel(new ERR(), e, "registry-lookup", "repoUuid", repoUuid);
    }

    if (repo == null) {
      throw helper.cancel(new Unknown(), null, "unknown-repo", "repoUuid", repoUuid);
    }
    this.helper.setSteps(1);
  }