com.independentsoft.exchange

## Class Task

- java.lang.Object
- - com.independentsoft.exchange.Item
  - - com.independentsoft.exchange.Task

-     public class Task
      extends Item

  Represents a task in the Exchange store.

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `Task()` Initializes a new instance of the Task class.
    `Task(MimeContent mimeContent)` Initializes a new instance of the Task class.
    `Task(java.lang.String subject)` Initializes a new instance of the Task class.

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `int` | `getActualWork()` Gets the actual amount of time that is spent on a task.
    `java.util.Date` | `getAssignedTime()` Gets the time when a task is assigned to a contact.
    `java.lang.String` | `getBillingInformation()` Sets the time when a task is assigned to a contact.
    `int` | `getChangeCount()` Gets the version of the task.
    `java.util.Date` | `getCommonEndDate()` Gets the common end date.
    `java.util.Date` | `getCommonStartDate()` Gets the common start date.
    `java.util.List<java.lang.String>` | `getCompanies()` Gets the collection of companies that are associated with a contact or task.
    `java.util.Date` | `getCompleteDate()` Gets the date on which a task is completed.
    `java.util.List<java.lang.String>` | `getContacts()` Gets a list of contacts that are associated with a task.
    `TaskDelegateState` | `getDelegationState()` Gets the status of a delegated task.
    `java.lang.String` | `getDelegator()` Gets the name of the delegator who assigned the task.
    `java.util.Date` | `getDueDate()` Gets the date when a task item is due.
    `java.lang.String` | `getMileage()` Gets the mileage.
    `java.lang.String` | `getOwner()` Gets the owner of a task.
    `double` | `getPercentComplete()` Gets the completion status of a task.
    `Priority` | `getPriority()` Gets the task's priority status.
    `TaskRecurrence` | `getRecurrence()` Gets recurrence information for recurring tasks.
    `boolean` | `getReminderOverrideDefault()` Gets true if the reminder overrides the default reminder behavior for the task.
    `boolean` | `getReminderPlaySound()` Gets true if the reminder should play a sound when it occurs for this task.
    `java.lang.String` | `getReminderSoundFile()` Gets a String indicating the path and file name of the sound file to play when the reminder occurs for the task.
    `java.util.Date` | `getReminderTime()` Gets a Date indicating the date and time at which the reminder should occur for the specified item.
    `java.util.Date` | `getStartDate()` Gets the start date of a task item.
    `TaskStatus` | `getStatus()` Gets the status of a task item.
    `java.lang.String` | `getStatusDescription()` Gets an explanation of the task status.
    `int` | `getTotalWork()` Gets a description of how much work is associated with an item.
    `boolean` | `isAssignmentEditable()` Gets whether the task is editable or not.
    `boolean` | `isComplete()` Gets whether the task has been completed or not.
    `boolean` | `isPrivate()` Gets whether the task item is private.
    `boolean` | `isRecurring()` Gets whether a task is part of a recurring item.
    `boolean` | `isTeamTask()` Gets whether the task is owned by a team or not.
    `void` | `setActualWork(int actualWork)` Sets the actual amount of time that is spent on a task.
    `void` | `setBillingInformation(java.lang.String billingInformation)` Sets billing information for a task.
    `void` | `setCommonEndDate(java.util.Date commonEndDate)` Sets the common end date.
    `void` | `setCommonStartDate(java.util.Date commonStartDate)` Sets the common start date.
    `void` | `setCompanies(java.util.List<java.lang.String> companies)` Sets the collection of companies that are associated with a contact or task.
    `void` | `setComplete(boolean isComplete)` Sets whether the task has been completed or not.
    `void` | `setCompleteDate(java.util.Date completeDate)` Sets the date on which a task is completed.
    `void` | `setContacts(java.util.List<java.lang.String> contacts)` Sets a list of contacts that are associated with a task.
    `void` | `setDueDate(java.util.Date dueDate)` Sets the date when a task item is due.
    `void` | `setMileage(java.lang.String mileage)` Gets mileage for a task item.
    `void` | `setOwner(java.lang.String owner)` Sets the owner of a task.
    `void` | `setPercentComplete(double percentComplete)` Sets the completion status of a task.
    `void` | `setPriority(Priority priority)` Sets the task's priority status.
    `void` | `setPrivate(boolean isPrivate)` Sets whether the task item is private.
    `void` | `setRecurrence(TaskRecurrence recurrence)` Sets recurrence information for recurring tasks.
    `void` | `setRecurring(boolean isRecurring)` Sets whether a task is part of a recurring item.
    `void` | `setReminderOverrideDefault(boolean reminderOverrideDefault)` Sets true if the reminder overrides the default reminder behavior for the task.
    `void` | `setReminderPlaySound(boolean reminderPlaySound)` Sets true if the reminder should play a sound when it occurs for this task.
    `void` | `setReminderSoundFile(java.lang.String reminderSoundFile)` Sets a String indicating the path and file name of the sound file to play when the reminder occurs for the task.
    `void` | `setReminderTime(java.util.Date reminderTime)` Sets a Date indicating the date and time at which the reminder should occur for the specified item.
    `void` | `setStartDate(java.util.Date startDate)` Sets the start date of a task item.
    `void` | `setStatus(TaskStatus status)` Sets the status of a task item.
    `void` | `setTeamTask(boolean isTeamTask)` Sets whether the task is owned by a team or not.
    `void` | `setTotalWork(int totalWork)` Sets a description of how much work is associated with an item.
    `java.lang.String` | `toString()` Converts the value of the current Task object to its equivalent string representation.

    - ### Methods inherited from class com.independentsoft.exchange.Item

      `getArchiveTag, getAttachments, getBody, getBodyHtmlText, getBodyPlainText, getBodyRtf, getCategories, getComment, getConversationId, getCreatedTime, getCulture, getDisplayName, getEffectiveRights, getEntityExtractionResult, getEntryId, getExtendedProperties, getExtendedProperty, getFlag, getGroupingAction, getIconIndex, getImportance, getInstanceKey, getItemClass, getItemId, getLastModifiedTime, getLastModifierName, getMimeContent, getNextPredictedAction, getParentId, getPreview, getReminderDueBy, getReminderIsSet, getReminderMinutesBeforeStart, getRetentionDate, getRetentionTag, getRtfCompressed, getSearchKey, getSensitivity, getSize, getStoreEntryId, getSubject, getTextBody, getUniqueBody, getWebClientEditFormQueryString, getWebClientReadFormQueryString, hasAttachments, hasBlockedImages, isAssociated, isBlockStatus, isHidden, setArchiveTag, setBody, setBodyRtf, setCategories, setComment, setDisplayName, setEffectiveRights, setFlag, setHidden, setImportance, setItemClass, setMimeContent, setReminderDueBy, setReminderIsSet, setReminderMinutesBeforeStart, setRetentionDate, setRetentionTag, setRtfCompressed, setSensitivity, setSubject`

    - ### Methods inherited from class java.lang.Object

      `equals, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- - ### Constructor Detail

    - #### Task

          public Task()

      Initializes a new instance of the Task class.

    - #### Task

          public Task(java.lang.String subject)

      Initializes a new instance of the Task class.
      Parameters:
        `subject` - the subject

    - #### Task

          public Task(MimeContent mimeContent)

      Initializes a new instance of the Task class.
      Parameters:
        `mimeContent` - the mime content

  - ### Method Detail

    - #### toString

          public java.lang.String toString()

      Converts the value of the current Task object to its equivalent string representation.
      Overrides:
        `toString` in class `Item`
      Returns:
        the string

    - #### getActualWork

          public int getActualWork()

      Gets the actual amount of time that is spent on a task.
      Returns:
        the actual work

    - #### setActualWork

          public void setActualWork(int actualWork)

      Sets the actual amount of time that is spent on a task.
      Parameters:
        `actualWork` - the new actual work

    - #### getAssignedTime

          public java.util.Date getAssignedTime()

      Gets the time when a task is assigned to a contact.
      Returns:
        the assigned time

    - #### getBillingInformation

          public java.lang.String getBillingInformation()

      Sets the time when a task is assigned to a contact.
      Returns:
        the billing information

    - #### setBillingInformation

          public void setBillingInformation(java.lang.String billingInformation)

      Sets billing information for a task.
      Parameters:
        `billingInformation` - the new billing information

    - #### getChangeCount

          public int getChangeCount()

      Gets the version of the task.
      Returns:
        the change count

    - #### getCompanies

          public java.util.List<java.lang.String> getCompanies()

      Gets the collection of companies that are associated with a contact or task.
      Returns:
        the companies

    - #### setCompanies

          public void setCompanies(java.util.List<java.lang.String> companies)

      Sets the collection of companies that are associated with a contact or task.
      Parameters:
        `companies` - the new companies

    - #### getCompleteDate

          public java.util.Date getCompleteDate()

      Gets the date on which a task is completed.
      Returns:
        the complete date

    - #### setCompleteDate

          public void setCompleteDate(java.util.Date completeDate)

      Sets the date on which a task is completed.
      Parameters:
        `completeDate` - the new complete date

    - #### getContacts

          public java.util.List<java.lang.String> getContacts()

      Gets a list of contacts that are associated with a task.
      Returns:
        the contacts

    - #### setContacts

          public void setContacts(java.util.List<java.lang.String> contacts)

      Sets a list of contacts that are associated with a task.
      Parameters:
        `contacts` - the new contacts

    - #### getDelegationState

          public TaskDelegateState getDelegationState()

      Gets the status of a delegated task.
      Returns:
        the delegation state

    - #### getDelegator

          public java.lang.String getDelegator()

      Gets the name of the delegator who assigned the task.
      Returns:
        the delegator

    - #### getDueDate

          public java.util.Date getDueDate()

      Gets the date when a task item is due.
      Returns:
        the due date

    - #### setDueDate

          public void setDueDate(java.util.Date dueDate)

      Sets the date when a task item is due.
      Parameters:
        `dueDate` - the new due date

    - #### isAssignmentEditable

          public boolean isAssignmentEditable()

      Gets whether the task is editable or not.
      Returns:
        true, if is assignment editable

    - #### isComplete

          public boolean isComplete()

      Gets whether the task has been completed or not.
      Returns:
        true, if is complete

    - #### setComplete

          public void setComplete(boolean isComplete)

      Sets whether the task has been completed or not.
      Parameters:
        `isComplete` - the new complete

    - #### isRecurring

          public boolean isRecurring()

      Gets whether a task is part of a recurring item.
      Returns:
        true, if is recurring

    - #### setRecurring

          public void setRecurring(boolean isRecurring)

      Sets whether a task is part of a recurring item.
      Parameters:
        `isRecurring` - the new recurring

    - #### isTeamTask

          public boolean isTeamTask()

      Gets whether the task is owned by a team or not.
      Returns:
        true, if is team task

    - #### setTeamTask

          public void setTeamTask(boolean isTeamTask)

      Sets whether the task is owned by a team or not.
      Parameters:
        `isTeamTask` - the new team task

    - #### getMileage

          public java.lang.String getMileage()

      Gets the mileage.
      Returns:
        the mileage

    - #### setMileage

          public void setMileage(java.lang.String mileage)

      Gets mileage for a task item.
      Parameters:
        `mileage` - the new mileage

    - #### getOwner

          public java.lang.String getOwner()

      Gets the owner of a task.
      Returns:
        the owner

    - #### setOwner

          public void setOwner(java.lang.String owner)

      Sets the owner of a task.
      Parameters:
        `owner` - the new owner

    - #### getPercentComplete

          public double getPercentComplete()

      Gets the completion status of a task.
      Returns:
        the percent complete

    - #### setPercentComplete

          public void setPercentComplete(double percentComplete)

      Sets the completion status of a task.
      Parameters:
        `percentComplete` - the new percent complete

    - #### getRecurrence

          public TaskRecurrence getRecurrence()

      Gets recurrence information for recurring tasks.
      Returns:
        the recurrence

    - #### setRecurrence

          public void setRecurrence(TaskRecurrence recurrence)

      Sets recurrence information for recurring tasks.
      Parameters:
        `recurrence` - the new recurrence

    - #### getStartDate

          public java.util.Date getStartDate()

      Gets the start date of a task item.
      Returns:
        the start date

    - #### setStartDate

          public void setStartDate(java.util.Date startDate)

      Sets the start date of a task item.
      Parameters:
        `startDate` - the new start date

    - #### getStatus

          public TaskStatus getStatus()

      Gets the status of a task item.
      Returns:
        the status

    - #### setStatus

          public void setStatus(TaskStatus status)

      Sets the status of a task item.
      Parameters:
        `status` - the new status

    - #### getStatusDescription

          public java.lang.String getStatusDescription()

      Gets an explanation of the task status.
      Returns:
        the status description

    - #### getTotalWork

          public int getTotalWork()

      Gets a description of how much work is associated with an item.
      Returns:
        the total work

    - #### setTotalWork

          public void setTotalWork(int totalWork)

      Sets a description of how much work is associated with an item.
      Parameters:
        `totalWork` - the new total work

    - #### isPrivate

          public boolean isPrivate()

      Gets whether the task item is private.
      Returns:
        true, if is private

    - #### setPrivate

          public void setPrivate(boolean isPrivate)

      Sets whether the task item is private.
      Parameters:
        `isPrivate` - the new private

    - #### getCommonStartDate

          public java.util.Date getCommonStartDate()

      Gets the common start date.
      Returns:
        the common start date

    - #### setCommonStartDate

          public void setCommonStartDate(java.util.Date commonStartDate)

      Sets the common start date.
      Parameters:
        `commonStartDate` - the new common start date

    - #### getCommonEndDate

          public java.util.Date getCommonEndDate()

      Gets the common end date.
      Returns:
        the common end date

    - #### setCommonEndDate

          public void setCommonEndDate(java.util.Date commonEndDate)

      Sets the common end date.
      Parameters:
        `commonEndDate` - the new common end date

    - #### getReminderOverrideDefault

          public boolean getReminderOverrideDefault()

      Gets true if the reminder overrides the default reminder behavior for the task.
      Returns:
        the reminder override default

    - #### setReminderOverrideDefault

          public void setReminderOverrideDefault(boolean reminderOverrideDefault)

      Sets true if the reminder overrides the default reminder behavior for the task.
      Parameters:
        `reminderOverrideDefault` - the new reminder override default

    - #### getReminderPlaySound

          public boolean getReminderPlaySound()

      Gets true if the reminder should play a sound when it occurs for this task.
      Returns:
        the reminder play sound

    - #### setReminderPlaySound

          public void setReminderPlaySound(boolean reminderPlaySound)

      Sets true if the reminder should play a sound when it occurs for this task.
      Parameters:
        `reminderPlaySound` - the new reminder play sound

    - #### getReminderSoundFile

          public java.lang.String getReminderSoundFile()

      Gets a String indicating the path and file name of the sound file to play when the reminder occurs for the task.
      Returns:
        the reminder sound file

    - #### setReminderSoundFile

          public void setReminderSoundFile(java.lang.String reminderSoundFile)

      Sets a String indicating the path and file name of the sound file to play when the reminder occurs for the task.
      Parameters:
        `reminderSoundFile` - the new reminder sound file

    - #### getReminderTime

          public java.util.Date getReminderTime()

      Gets a Date indicating the date and time at which the reminder should occur for the specified item.
      Returns:
        the reminder time

    - #### setReminderTime

          public void setReminderTime(java.util.Date reminderTime)

      Sets a Date indicating the date and time at which the reminder should occur for the specified item.
      Parameters:
        `reminderTime` - the new reminder time

    - #### getPriority

          public Priority getPriority()

      Gets the task's priority status.
      Returns:
        the priority

    - #### setPriority

          public void setPriority(Priority priority)

      Sets the task's priority status.
      Parameters:
        `priority` - the new priority