Class WorkspacesPlugin

    • Constructor Detail

      • WorkspacesPlugin

        public WorkspacesPlugin()
    • Method Detail

      • getWorkspace

        public Topic getWorkspace​(String uri)
        Description copied from interface: WorkspacesService
        Returns a workspace by URI. This is a privileged method: READ permission for the workspace is not required. ### TODO: why is this a privileged method?
        Specified by:
        getWorkspace in interface WorkspacesService
        Returns:
        The workspace (a topic of type "Workspace").
      • getAssignedWorkspace

        public Topic getAssignedWorkspace​(long objectId)
        Description copied from interface: WorkspacesService
        Returns the workspace the given topic/association is assigned to.
        Specified by:
        getAssignedWorkspace in interface WorkspacesService
        Parameters:
        objectId - a topic ID, or an association ID
        Returns:
        The assigned workspace (a topic of type "Workspace"), or null if no workspace is assigned.
      • assignToWorkspace

        public DirectivesResponse assignToWorkspace​(long objectId,
                                                    long workspaceId)
      • assignToWorkspace

        public void assignToWorkspace​(DMXObject object,
                                      long workspaceId)
        Description copied from interface: WorkspacesService
        Assigns an object to a workspace.
        Specified by:
        assignToWorkspace in interface WorkspacesService
        workspaceId - The ID of the workspace to assign the object to. If -1 is given an existing workspace assignment is removed.
      • assignTypeToWorkspace

        public void assignTypeToWorkspace​(DMXType type,
                                          long workspaceId)
        Description copied from interface: WorkspacesService
        Assigns a type as well as its "parts" to a workspace. In particular:
        • the type
        • the type's view config
        • the direct comp defs (not recursively)
        • the direct comp def's view configs
        Specified by:
        assignTypeToWorkspace in interface WorkspacesService
        workspaceId - The ID of the workspace to assign the type (and its parts) to. If -1 is given the existing workspace assignments are removed.
      • assignRoleTypeToWorkspace

        public void assignRoleTypeToWorkspace​(RoleType roleType,
                                              long workspaceId)
        Description copied from interface: WorkspacesService
        Assigns a role type as well as its "parts" to a workspace. In particular:
        • the role type
        • the role type's view config
        Specified by:
        assignRoleTypeToWorkspace in interface WorkspacesService
        workspaceId - The ID of the workspace to assign the role type (and its parts) to. If -1 is given the existing workspace assignments are removed.
      • introduceTopicType

        public void introduceTopicType​(TopicType topicType)
        Takes care the DMX standard types (and their parts) get an assignment to the DMX workspace. This is important in conjunction with access control. Note: type introduction is aborted if at least one of these conditions apply: - A workspace cookie is present. In this case the type gets its workspace assignment the regular way (this plugin's post-create listeners). This happens e.g. when a type is created interactively in the Webclient. - The type is not a DMX standard type. In this case the 3rd-party plugin developer is responsible for doing the workspace assignment (in case the type is created programmatically while a migration). DM can't know to which workspace a 3rd-party type belongs to. A type is regarded a DMX standard type if its URI begins with "dmx."
        Specified by:
        introduceTopicType in interface IntroduceTopicType
      • introduceAssocType

        public void introduceAssocType​(AssocType assocType)
        Takes care the DMX standard types (and their parts) get an assignment to the DMX workspace. This is important in conjunction with access control. Note: type introduction is aborted if at least one of these conditions apply: - A workspace cookie is present. In this case the type gets its workspace assignment the regular way (this plugin's post-create listeners). This happens e.g. when a type is created interactively in the Webclient. - The type is not a DMX standard type. In this case the 3rd-party plugin developer is responsible for doing the workspace assignment (in case the type is created programmatically while a migration). DM can't know to which workspace a 3rd-party type belongs to. A type is regarded a DMX standard type if its URI begins with "dmx."
        Specified by:
        introduceAssocType in interface IntroduceAssocType
      • introduceRoleType

        public void introduceRoleType​(RoleType roleType)
        Takes care the DMX standard types (and their parts) get an assignment to the DMX workspace. This is important in conjunction with access control. Note: type introduction is aborted if at least one of these conditions apply: - A workspace cookie is present. In this case the type gets its workspace assignment the regular way (this plugin's post-create listeners). This happens e.g. when a type is created interactively in the Webclient. - The type is not a DMX standard type. In this case the 3rd-party plugin developer is responsible for doing the workspace assignment (in case the type is created programmatically while a migration). DM can't know to which workspace a 3rd-party type belongs to. A type is regarded a DMX standard type if its URI begins with "dmx."
        Specified by:
        introduceRoleType in interface IntroduceRoleType