com.tradeshift.sdk.assignments.TradeshiftAssignments Maven / Gradle / Ivy
The newest version!
/*
* Copyright (c) 2018 Tradeshift Inc. and/or its affiliates. All rights reserved.
*/
package com.tradeshift.sdk.assignments;
import java.util.concurrent.CompletionStage;
import com.tradeshift.sdk.assignments.domain.AssignmentClosed;
import com.tradeshift.sdk.assignments.domain.AssignmentFlagUpdated;
import com.tradeshift.sdk.assignments.domain.AssignmentLocked;
import com.tradeshift.sdk.assignments.domain.AssignmentOpened;
import com.tradeshift.sdk.assignments.domain.AssignmentSaved;
import com.tradeshift.sdk.assignments.domain.AutoAssignmentDeleted;
import com.tradeshift.sdk.assignments.domain.CloseAssignment;
import com.tradeshift.sdk.assignments.domain.DeleteAutoAssignment;
import com.tradeshift.sdk.assignments.domain.LockAssignment;
import com.tradeshift.sdk.assignments.domain.OpenAssignment;
import com.tradeshift.sdk.assignments.domain.SaveAssignment;
import com.tradeshift.sdk.assignments.domain.SetHoldFlag;
import com.tradeshift.sdk.assignments.domain.SetImportantFlag;
public interface TradeshiftAssignments {
/**
* Save an assignment.
*
* @param cmd request for saving an assignment
* @return query command for requesting the assignment
*/
CompletionStage saveAssignment(SaveAssignment cmd);
/**
* Open an assignment.
*
* @param cmd request for opening an assignment
* @return query command for requesting the assignment
*/
CompletionStage openAssignment(OpenAssignment cmd);
/**
* Lock an assignment.
*
* @param cmd request for locking an assignment
* @return query command for requesting the assignment
*/
CompletionStage lockAssignment(LockAssignment cmd);
/**
* Close an assignment.
*
* @param cmd request for closing an assignment
* @return query command for requesting the assignment
*/
CompletionStage closeAssignment(CloseAssignment cmd);
/**
* Set the important flag for an assignment.
*
* @param cmd request for marking an assignment important
* @return query command for requesting the assignment with the important flag
*/
CompletionStage setImportantFlagForAssignment(SetImportantFlag cmd);
/**
* Set the hold flag for an assignment.
*
* @param cmd request for marking an assignment as hold
* @return query command for requesting the assignment with the hold flag
*/
CompletionStage setHoldFlagForAssignment(SetHoldFlag cmd);
/**
* Delete an auto assignment.
* @param cmd request for deleting an auto assignment
* @return command for requesting the assignee
*/
CompletionStage deleteAutoAssignment(DeleteAutoAssignment cmd);
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy