Klasse PropfindPrincipalDispatcher

java.lang.Object
de.svws_nrw.davapi.api.PropfindPrincipalDispatcher

public final class PropfindPrincipalDispatcher extends Object
Dispatcher-Klasse für die Verarbeitung von Requests auf das DAV-API mittels der HTTP-Methode PROPFIND auf die Ressource Benutzer (Principal).
  • Konstruktordetails

    • PropfindPrincipalDispatcher

      public PropfindPrincipalDispatcher(DavUriParameter uriParameter)
      Erstellt einen Dispatcher mit den gegebenen URI-Parametern
      Parameter:
      uriParameter - die URI-Parameter für diesen Dispatcher
  • Methodendetails

    • dispatch

      public Object dispatch(InputStream inputStream, String ressourceId) throws IOException
      Verarbeitet die XML-Anfrage aus einem InputStream für eine gegebene Principal-Ressource
      Parameter:
      inputStream - der InputStream, welcher das XML-Request enthält
      ressourceId - die RessourceID des Principals
      Gibt zurück:
      die entsprechend des Requests verarbeitete Datenstruktur, welche das Antwort-XML repräsentiert,
      Löst aus:
      IOException - bei der Verarbeitung des InputStreams/XML-Unmarshalling
    • createResourceNotFoundError

      protected Error createResourceNotFoundError(String message)
      Erzeugt ein Error-Rückgabeobjekt mit der angegebenen Message. Dieses Objekt wird von den Dispatchern zurückgegeben, wenn die angefragten Ressource nicht gefunden wurde.
      Parameter:
      message - Fehlermeldung
      Gibt zurück:
      Error-Objekt
    • createResponse

      protected static final Response createResponse(@NotNull @NotNull Prop propRequested, @NotNull @NotNull Prop propResponded)
      Erzeugt ein Response-Rückgabeobjekt. Diese wird dynamisch aufgebaut auf der Basis der im Request angefragten Properties zu einer Ressource und den tatsächlich gefundenen/ermittelten Properties. Nicht-gefundene Properties oder Ressourcen werden in einem speziellen Block (404) im Response aufgelistet.
      Parameter:
      propRequested - Angeforderte Properties zu einer Ressource
      propResponded - Gefundene/Ermittelte Properties zu einer Ressource
      Gibt zurück:
      Response-Objekt
    • getReadOnlyPrivilegeSet

      protected static final CurrentUserPrivilegeSet getReadOnlyPrivilegeSet()
      Erzeugt ein DAV-Objekt vom Typ CurrentUserPrivilegeSet, das alle erforderlichen Rechte (Privileges) für einen lesenden Zugriff auf DAV-Ressourcen enthält.
      Gibt zurück:
      CurrentUserPrivilegeSet mit Privileges für einen lesenden Zugriff.
    • getPrivilegeSet

      protected static final CurrentUserPrivilegeSet getPrivilegeSet(boolean darfLesen, boolean darfSchreiben)
      Erzeugt ein DAV-Objekt vom Typ CurrentUserPrivilegeSet, das alle erforderlichen Rechte (Privileges) für einen lesenden Zugriff auf DAV-Ressourcen enthält.
      Parameter:
      darfLesen - ob der angemeldete Nutzer den Kalender Lesen darf
      darfSchreiben - ob der angemeldete Nutzer auf dem Kalender schreiben darf
      Gibt zurück:
      CurrentUserPrivilegeSet mit Privileges für einen lesenden Zugriff.
    • adjustETags

      protected String adjustETags(String value)
      Homogenisiert eTag-Werte von unterschiedlichen Quellsystemen. In Abhängigkeit der Quellsysteme (z.B. Thunderbird, Outlook) werden teilweise Anführungszeichen als Bestandteil der Werte von eTags oder ifMatch-Headers mitgesendet oder nicht. Die DAV-Dispatcher benötigen diese Methode, um eine einheitliche Auswertung dieser Werte sicherzustellen.
      Parameter:
      value - String, kann Anführungszeichen enthalten
      Gibt zurück:
      String, enthält keine Anführungszeichen mehr