package com.stacksync.syncservice.db; import java.util.List; import java.util.UUID; import com.stacksync.commons.models.User; import com.stacksync.commons.models.UserWorkspace; import com.stacksync.commons.models.Workspace; import com.stacksync.syncservice.exceptions.dao.DAOException; public interface WorkspaceDAO { public Workspace getById(UUID id) throws DAOException; public List<Workspace> getByUserId(UUID userId) throws DAOException; public Workspace getDefaultWorkspaceByUserId(UUID userId) throws DAOException; public Workspace getByItemId(Long itemId) throws DAOException; public void add(Workspace workspace) throws DAOException; public void update(User user, Workspace workspace) throws DAOException; public void addUser(User user, Workspace workspace) throws DAOException; public void deleteUser(User user, Workspace workspace) throws DAOException; public void delete(UUID id) throws DAOException; public List<UserWorkspace> getMembersById(UUID workspaceId) throws DAOException; }