@Override
  public AddDocumentRequestSummary addComponent(Component component, User user) throws TException {
    assertNotNull(component);
    assertIdUnset(component.getId());
    assertUser(user);

    return handler.addComponent(component, user.getEmail());
  }
  @Override
  public AddDocumentRequestSummary addRelease(Release release, User user) throws TException {
    assertNotNull(release);
    assertIdUnset(release.getId());
    assertUser(user);

    return handler.addRelease(release, user.getEmail());
  }
  @Override
  public List<Component> getMyComponents(User user) throws TException {
    assertUser(user);

    return handler.getMyComponents(user.getEmail());
  }
  @Override
  public List<Release> getSubscribedReleases(User user) throws TException {
    assertUser(user);

    return handler.getSubscribedReleases(user.getEmail());
  }