public RestletResource(
      Context context, Request request, Response response, PlexusResource delegate) {
    super(context, request, response);

    this.delegate = delegate;

    // set variants
    getVariants().clear();
    getVariants().addAll(delegate.getVariants());

    // mimic the constructor
    setAvailable(delegate.isAvailable());
    setReadable(delegate.isReadable());
    setModifiable(delegate.isModifiable());
    setNegotiateContent(delegate.isNegotiateContent());
  }