Class OtController

java.lang.Object
com.arms.api.wiki.controller.OtController

@Controller public class OtController extends Object
  • Constructor Details

    • OtController

      public OtController(OtService otService, org.springframework.messaging.simp.SimpMessagingTemplate messagingTemplate, SessionRegistryService sessionRegistryService)
  • Method Details

    • handleOperation

      @MessageMapping("/operation") public void handleOperation(@Payload IncomingOperationPayload payload, org.springframework.messaging.simp.SimpMessageHeaderAccessor headerAccessor, Principal principal)
      Handle incoming operations from clients based on ot.js model. Expects a payload containing the client's revision and the operation.
      Parameters:
      payload - The incoming operation payload.
      headerAccessor - Accessor for STOMP headers (e.g., to get session ID).
      principal - Optional principal for user identification.
    • handleSelection

      @Deprecated public void handleSelection(@Payload IncomingSelectionPayload payload, org.springframework.messaging.simp.SimpMessageHeaderAccessor headerAccessor, Principal principal)
      Deprecated.
      DEPRECATED: Selection changes are now handled via the /operation endpoint. Keeping this method temporarily might be useful for debugging or if a fallback is needed.
      Parameters:
      payload - JSON representation of the selection (e.g., { ranges: [{ anchor: number, head: number }] })
      headerAccessor - Accessor for STOMP headers.
      principal - Optional principal.
    • getDocumentState

      @MessageMapping("/get-document-state") public void getDocumentState(@Payload Map<String,String> payload, Principal principal)
      Handle document state requests. Expects a payload containing the documentId. Returns the current document content, revision number, and active participants for that document.