/*
 * Copyright (c) 2003 by Hyperwave AG. All rights reserved.
 */

  /**
   * @author wputz
   */

// <JSClass>
  /**
   * Public constructor, creates an instance of the object value object.
   */
  SearchResultVO = function(aParam) {
    if ( aParam == "__proto__" )
      return;

    this.id_                 = null;
    this.objectPath_         = null;
    this.certificateNumber_  = null;
    this.certificateDate_    = null;
    this.validityExpiration_ = null;
    this.classification_     = null;
    this.manufacturer_       = null;
    this.deviceType_         = null;
    this.certificateType_    = null;
    this.announcementDate_   = null;
    this.announcementNumber_ = null;
  }
  //--------------------------------------------------------------------
  // Inheritance call for JavaScript.
  class$ = doInherit (SearchResultVO);

  //--------------------------------------------------------------------
  /**
   * Serializes the value object
   *
   * @return String: the serialization of the value object
   */
  class$.serialize = function ()
  {
    var ws = new WebSerializer();

    ws.addValue("id", this.id_);
    ws.addValue("op", this.objectPath_);
    ws.addValue("cn", this.certificateNumber_);
    ws.addValue("cd", this.certificateDate_);
    ws.addValue("ve", this.validityExpiration_);
    ws.addValue("cl", this.classification_);
    ws.addValue("mf", this.manufacturer_);
    ws.addValue("dt", this.deviceType_);
    ws.addValue("ct", this.certificateType_);
    ws.addValue("ad", this.announcementDate_);
    ws.addValue("an", this.announcementNumber_);
                          
    return ws.getString();
  }

  //--------------------------------------------------------------------
  /**
   * Serializes the value object to a javascript object
   *
   * @return object: object containing the data of the value object
   */
  class$.serializeToObject = function ()
  {
    var ret = {};

    WebSerializer.static_.setProperty(ret, "id", this.id_);
    WebSerializer.static_.setProperty(ret, "op", this.objectPath_);
    WebSerializer.static_.setProperty(ret, "cn", this.certificateNumber_);
    WebSerializer.static_.setProperty(ret, "cd", this.certificateDate_);
    WebSerializer.static_.setProperty(ret, "ve", this.validityExpiration_);
    WebSerializer.static_.setProperty(ret, "cl", this.classification_);
    WebSerializer.static_.setProperty(ret, "mf", this.manufacturer_);
    WebSerializer.static_.setProperty(ret, "dt", this.deviceType_);
    WebSerializer.static_.setProperty(ret, "ct", this.certificateType_);
    WebSerializer.static_.setProperty(ret, "ad", this.announcementDate_);
    WebSerializer.static_.setProperty(ret, "an", this.announcementNumber_);

    return ret;
  }

  //--------------------------------------------------------------------
  /**
   * Creates a new SearchResultVO from a given java script object. The object has to be generated
   * from method <code>serializeToObject()</code>
   *
   * @param theObject: object: the values for the new SearchResultVO
   * @return SearchResultVO: the new value object
   */
  class$.static_.createFromObject = function (theObject)
  {
    var vo = new SearchResultVO();

    if (typeof theObject.id != "undefined") vo.id_                 = theObject.id;
    if (typeof theObject.op != "undefined") vo.objectPath_         = theObject.objectpath;
    if (typeof theObject.cn != "undefined") vo.certificateNumber_  = theObject.cn;
    if (typeof theObject.cd != "undefined") vo.certificateDate_    = theObject.cd;
    if (typeof theObject.ve != "undefined") vo.validityExpiration_ = theObject.ve;
    if (typeof theObject.cl != "undefined") vo.classification_     = theObject.cl;
    if (typeof theObject.mf != "undefined") vo.manufacturer_       = theObject.mf;
    if (typeof theObject.dt != "undefined") vo.deviceType_         = theObject.dt;
    if (typeof theObject.ct != "undefined") vo.certificateType_    = theObject.ct;
    if (typeof theObject.ad != "undefined") vo.announcementDate_   = theObject.ad;
    if (typeof theObject.an != "undefined") vo.announcementNumber_ = theObject.an;

    return vo;
  }

  //--------------------------------------------------------------------
  /**
   * Deserializes the value object
   *
   * @return SearchResultVO: the deserialized value object
   */
  class$.static_.deserialize = function (theString)
  {
    // build a new instance of the value object
    var vo = new SearchResultVO();

    var ws = new WebSerializer(theString);

    vo.id_                 = ws.getValue("id", "string");
    vo.objectPath_         = ws.getValue("op", "string");
    vo.certificateNumber_  = ws.getValue("cn", "string");
    vo.certificateDate_    = ws.getValue("cd", "string");
    vo.validityExpiration_ = ws.getValue("ve", "string");
    vo.classification_     = ws.getValue("cl", "string");
    vo.manufacturer_       = ws.getValue("mf", "string");
    vo.deviceType_         = ws.getValue("dt", "string");
    vo.certificateType_    = ws.getValue("ct", "string");
    vo.announcementDate_   = ws.getValue("ad", "string");
    vo.announcementNumber_ = ws.getValue("an", "string");

    // return the newly created value object
    return vo;
  }

  //- <objectpath> -------------------------------------------------------------------
  /**
   * Sets the objectPath.
   *
   * @param anObjectPath: String
   */
  class$.setObjectPath = function (anObjectPath)
  {
    this.objectPath_ = anObjectPath;
  }

  /**
   * Gets the objectpath.
   *
   * @return String
   */
  class$.getObjectPath = function ()
  {
    return this.objectPath_;
  }
  //- <objectpath> -------------------------------------------------------------------

  //- <id> -------------------------------------------------------------------
  /**
   * Sets the id.
   *
   * @param anId: String
   */
  class$.setId = function (anId)
  {
    this.id_ = anId;
  }

  /**
   * Gets the id.
   *
   * @return String
   */
  class$.getId = function ()
  {
    return this.id_;
  }
  //- </id> -------------------------------------------------------------------

  //- <certificateNumber> -------------------------------------------------------------------
  /**
   * Sets the certificateNumber.
   *
   * @param aCertificateNumber: String
   */
  class$.setCertificateNumber = function (aCertificateNumber)
  {
    this.certificateNumber_ = aCertificateNumber;
  }

  /**
   * Gets the certificateNumber.
   *
   * @return String
   */
  class$.getCertificateNumber = function ()
  {
    return this.certificateNumber_;
  }
  //- </certificateNumber> -------------------------------------------------------------------

  //- <certificateDate> -------------------------------------------------------------------
  /**
   * Sets the certificateDate.
   *
   * @param aCertificateDate: String
   */
  class$.setCertificateDate = function (aCertificateDate)
  {
    this.certificateDate_ = aCertificateDate;
  }

  /**
   * Gets the certificateDate.
   *
   * @return String
   */
  class$.getCertificateDate = function ()
  {
    return this.certificateDate_;
  }
  //- </certificateDate> -------------------------------------------------------------------

  //- <validityExpiration> -------------------------------------------------------------------
  /**
   * Sets the validityExpiration.
   *
   * @param aValidityExpiration: String
   */
  class$.setValidityExpiration = function (aValidityExpiration)
  {
    this.validityExpiration_ = aValidityExpiration;
  }

  /**
   * Gets the validityExpiration.
   *
   * @return String
   */
  class$.getValidityExpiration = function ()
  {
    return this.validityExpiration_;
  }
  //- </validityexpiration> -------------------------------------------------------------------

  //- <classification> -------------------------------------------------------------------
  /**
   * Sets the classification.
   *
   * @param aClassification: String
   */
  class$.setClassification = function (aClassification)
  {
    this.classification_ = aClassification;
  }

  /**
   * Gets the classification.
   *
   * @return String
   */
  class$.getClassification = function ()
  {
    return this.classification_;
  }
  //- </classification> -------------------------------------------------------------------

  //- <manufacturer> -------------------------------------------------------------------
  /**
   * Sets the manufacturer.
   *
   * @param aManufacturer: String
   */
  class$.setManufacturer = function (aManufacturer)
  {
    this.manufacturer_ = aManufacturer;
  }

  /**
   * Gets the manufacturer.
   *
   * @return String
   */
  class$.getManufacturer = function ()
  {
    return this.manufacturer_;
  }
  //- </manufacturer> -------------------------------------------------------------------

  //- <deviceType> -------------------------------------------------------------------
  /**
   * Sets the deviceType.
   *
   * @param aDeviceType: String
   */
  class$.setDeviceType = function (aDeviceType)
  {
    this.deviceType_ = aDeviceType;
  }

  /**
   * Gets the deviceType.
   *
   * @return String
   */
  class$.getDeviceType = function ()
  {
    return this.deviceType_;
  }
  //- </deviceType> -------------------------------------------------------------------

  //- <certificateType> -------------------------------------------------------------------
  /**
   * Sets the certificateType.
   *
   * @param aCertificateType: String
   */
  class$.setCertificateType = function (aCertificateType)
  {
    this.certificateType_ = aCertificateType;
  }

  /**
   * Gets the certificateType.
   *
   * @return String
   */
  class$.getCertificateType = function ()
  {
    return this.certificateType_;
  }
  //- </certificateType> -------------------------------------------------------------------

  //- <announcementDate> -------------------------------------------------------------------
  /**
   * Sets the announcementDate.
   *
   * @param anAnnouncementDate: String
   */
  class$.setAnnouncementDate = function (anAnnouncementDate)
  {
    this.announcementDate_ = anAnnouncementDate;
  }

  /**
   * Gets the announcementDate.
   *
   * @return String
   */
  class$.getAnnouncementDate = function ()
  {
    return this.announcementDate_;
  }
  //- </announcementDate> -------------------------------------------------------------------

  //- <announcementNumber> -------------------------------------------------------------------
  /**
   * Sets the announcementNumber.
   *
   * @param anannouncementNumber: String
   */
  class$.setAnnouncementNumber = function (anAnnouncementNumber)
  {
    this.announcementNumber_ = anAnnouncementNumber;
  }

  /**
   * Gets the announcementNumber.
   *
   * @return String
   */
  class$.getAnnouncementNumber = function ()
  {
    return this.announcementNumber_;
  }
  //- </announcementNumber> -------------------------------------------------------------------



// </JSClass>

