Class TrackerSoapUtil

java.lang.Object
com.collabnet.ce.soap60.webservices.tracker.TrackerSoapUtil

public class TrackerSoapUtil extends Object
Class used for aggregating convenience methods for tracker soap calls.
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    static String[]
    convUserIdToUserName(com.vasoftware.sf.server.types.UserSessionKey sessionKey, com.vasoftware.sf.server.types.UserKey[] userkeys)
    Convert an array of user keys to usernames.
    static com.vasoftware.sf.server.types.UserKey[]
    convUsernameToUserId(com.vasoftware.sf.server.types.UserSessionKey sessionKey, String[] usernames)
    Convert an array of usernames to user keys.
    static com.vasoftware.sf.server.services.field.UserValueDO[]
    convUserNameToUserValueDoArray(com.vasoftware.sf.server.types.UserSessionKey sessionKey, String[] usernames)
     
    static Date
    For some reason date/time objects unmarshalled from axis are sometimes being returned as java.util.Date objects and sometimes returned as java.util.Calendar objects.
    protected static com.vasoftware.sf.server.services.user.UserList
    getUserList(com.vasoftware.sf.server.types.UserSessionKey sessionKey, String[] usernames)
     
    static void
    isRoleList(String srcTrackerId, com.vasoftware.sf.server.types.ProjectPath destProjectPath, com.vasoftware.sf.server.types.UserSessionKey sessionKey)
    checks if the roles are mapped between the trackers.
    static Date
    Used to remove the time portion of the given date.
    static String
    Check for changes wrt CRLF in multi-line description field.
    static void
    replaceDescriptionForCRLFInUpdate(com.vasoftware.sf.server.services.tracker.ArtifactDO originalDO, com.vasoftware.sf.server.services.tracker.ArtifactDO updArtifactDO)
    Check for changes wrt CRLF in multi-line description field.
    static void
    Check for changes wrt CRLF in multi-line text flex field(s).
    static void
    replaceTxtFlexValueForCRLFInUpdate(com.vasoftware.sf.server.services.tracker.ArtifactDO originalDO, com.vasoftware.sf.server.services.tracker.ArtifactDO updArtifactDO)
    Check for changes wrt CRLF in multi-line text flex field(s).

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • TrackerSoapUtil

      public TrackerSoapUtil()
  • Method Details

    • convUsernameToUserId

      public static com.vasoftware.sf.server.types.UserKey[] convUsernameToUserId(com.vasoftware.sf.server.types.UserSessionKey sessionKey, String[] usernames) throws NoSuchObjectFault
      Convert an array of usernames to user keys.
      Parameters:
      usernames - an array of usernames to convert
      Returns:
      an array of userKeys.
      Throws:
      NoSuchObjectFault - thrown if one or more of the usernames specified is invalid
    • convUserNameToUserValueDoArray

      public static com.vasoftware.sf.server.services.field.UserValueDO[] convUserNameToUserValueDoArray(com.vasoftware.sf.server.types.UserSessionKey sessionKey, String[] usernames) throws NoSuchObjectFault
      Parameters:
      sessionKey -
      usernames - an array of usernames to convert
      Returns:
      an array of userValues
      Throws:
      NoSuchObjectFault
    • getUserList

      protected static com.vasoftware.sf.server.services.user.UserList getUserList(com.vasoftware.sf.server.types.UserSessionKey sessionKey, String[] usernames) throws NoSuchObjectFault
      Parameters:
      sessionKey -
      usernames - an array of usernames
      Returns:
      userList
      Throws:
      NoSuchObjectFault
    • convUserIdToUserName

      public static String[] convUserIdToUserName(com.vasoftware.sf.server.types.UserSessionKey sessionKey, com.vasoftware.sf.server.types.UserKey[] userkeys) throws NoSuchObjectFault
      Convert an array of user keys to usernames.
      Parameters:
      userkeys - an array of userkeys to convert
      Returns:
      an array of usernames.
      Throws:
      NoSuchObjectFault - thrown if one or more of the userkeys specified is invalid
    • getDateFromValue

      public static Date getDateFromValue(Object value)
      For some reason date/time objects unmarshalled from axis are sometimes being returned as java.util.Date objects and sometimes returned as java.util.Calendar objects. This method returns the proper Date object(without time portion) for whatever the value passed in happens to be.

      On null, it returns null. If value is an object other than java.util.Date or java.util.Calendar, it returns a null.

      Parameters:
      value - the value to convert to a Date
      Returns:
      the date value with just the date portion alone
    • isRoleList

      public static void isRoleList(String srcTrackerId, com.vasoftware.sf.server.types.ProjectPath destProjectPath, com.vasoftware.sf.server.types.UserSessionKey sessionKey) throws WorkflowViolationFault, NoSuchObjectFault
      checks if the roles are mapped between the trackers.
      Parameters:
      srcTrackerId - SourceTrackerId.
      destProjectPath - Destination projectpath.
      sessionKey - user session key.
      Throws:
      WorkflowViolationFault - If roles are not matching in source tracker and in destination project.
      NoSuchObjectFault - throws If object not found.
    • removeTime

      public static Date removeTime(Date date)
      Used to remove the time portion of the given date.
      Parameters:
      date - the date
      Returns:
      the date without the time portion
    • replaceTxtFlexValueForCRLFInUpdate

      public static void replaceTxtFlexValueForCRLFInUpdate(com.vasoftware.sf.server.services.tracker.ArtifactDO originalDO, com.vasoftware.sf.server.services.tracker.ArtifactDO updArtifactDO)
      Check for changes wrt CRLF in multi-line text flex field(s). (Axis / Xerces removes \r hence though the user does not change anything sees the flex field as changed during update of any other field. Hence reset to original if changes are only due to CRLF) Strip \r from original and updated flex value and make a comparison. If original equals updated then replace updated with original. If not equals then replace all occurrences of \n with \r\n. If user has not modified anything in the text flex then the equals is satisfied, but as axis removes \r replace updated with original. If the user has modified the flex value then the same needs to be preserved hence replace all \n with \r\n to maintain consistency with UI.
      Parameters:
      originalDO - the original artifact DO
      updArtifactDO - the updated artifact DO
    • replaceTxtFlexValueForCRLFInCreate

      public static void replaceTxtFlexValueForCRLFInCreate(SoapFieldValues flexFields)
      Check for changes wrt CRLF in multi-line text flex field(s). If the originalDO has \n then replace all occurences of \n with \r\n. Any multi-line UI update sends \r\n, where as in Axis its stored as \n to maintain consistency in db storing the value with \r\n.
      Parameters:
      flexFields - the flex fields for artifact
    • replaceDescriptionForCRLFInUpdate

      public static void replaceDescriptionForCRLFInUpdate(com.vasoftware.sf.server.services.tracker.ArtifactDO originalDO, com.vasoftware.sf.server.services.tracker.ArtifactDO updArtifactDO)
      Check for changes wrt CRLF in multi-line description field. To maintain consistency between CLI / Soap update for description and UI update this is used. This is similar to the update made in flex-fields in replaceTxtFlexValueForCRLFInUpdate(). Please refer the above method for the details.
      Parameters:
      originalDO - the original artifact DO
      updArtifactDO - the updated artifact DO
    • replaceDescriptionForCRLFInCreate

      public static String replaceDescriptionForCRLFInCreate(String description)
      Check for changes wrt CRLF in multi-line description field. If the originalDO has \n then replace all occurrences of \n with \r\n. Any multi-line UI update sends \r\n, where as in Axis its stored as \n to maintain consistency in db storing the value with \r\n.
      Parameters:
      description - the description text for artifact
      Returns:
      The description content where \n is replaced with \r\n