code: public void registerApiImplementor (ApiImplementor impl) {
  		if (implementors.get(impl.getPrefix()) != null) {
  			logger.error("Second attempt to register API implementor with prefix of " + impl.getPrefix());
  			return;
  		}
  		implementors.put(impl.getPrefix(), impl);
  		for (String shortcut : impl.getApiShortcuts()) {
  			logger.debug("Registering API shortcut: " + shortcut);
  			if (this.shortcuts.containsKey(shortcut)) {
  				logger.error("Duplicate API shortcut: " + shortcut);
  			}
  			this.shortcuts.put("/" + shortcut, impl);
  		}
  	}
docs: Registers the given {@code ApiImplementor} to the ZAP API.
  <p>
  The implementor is not registered if the {@link ApiImplementor#getPrefix() API implementor prefix} is already in use.
  <p>
  <strong>Note:</strong> The preferred method to add an {@code ApiImplementor} is through the method
  {@link org.parosproxy.paros.extension.ExtensionHook#addApiImplementor(ApiImplementor)
  ExtensionHook.addApiImplementor(ApiImplementor)} when the corresponding
  {@link org.parosproxy.paros.extension.Extension#hook(org.parosproxy.paros.extension.ExtensionHook) extension is hooked}.
  Only use this method if really necessary.
  
  @param impl the implementor that will be registered
  @see #removeApiImplementor(ApiImplementor)