/* ***** BEGIN LICENSE BLOCK *****
 * Version: MPL 1.1
 *
 * The contents of this file are subject to the Mozilla Public License Version
 * 1.1 (the "License"); you may not use this file except in compliance with
 * the License. You may obtain a copy of the License at
 * http://www.mozilla.org/MPL/
 *
 * Software distributed under the License is distributed on an "AS IS" basis,
 * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
 * for the specific language governing rights and limitations under the
 * License.
 *
 * The Original Code is Boogie.
 *
 * The Initial Developer of the Original Code is
 * Ondrej Donek.
 * Portions created by the Initial Developer are Copyright (C) 2008
 * the Initial Developer. All Rights Reserved.
 *
 * Contributor(s):
 *
 * ***** END LICENSE BLOCK ***** */


/**
 * Returns new object of a single Boogie's bug.
 * 
 * @param aId {integer}
 * @param aTypeId {integer}
 * @param aStatusId {integer}
 * @param aResolutionId {integer}
 * @param aSeverityId {integer}
 * @param aPriorityId {integer}
 * @param aDeveloperId {integer}
 * @param aProjectId {integer}
 * @param aProjectComponentId {integer}
 * @param aProjectVersionFromId {integer}
 * @param aProjectVersionToId {integer}
 * @param aSince {string}
 */
function BoogieBugPrototype(aId, 
                            aTypeId,
                            aProjectId,
                            aProjectComponentId,
                            aDeveloperId,
                            aStatusId,
                            aResolutionId,
                            aSeverityId,
                            aPriorityId,
                            aProjectVersionFromId,
                            aProjectVersionToId,
                            aSince)
{
  this.mId = aId;
  this.mTypeId = aTypeId;
  this.mProjectId = aProjectId;
  this.mProjectComponentId = aProjectComponentId;
  this.mDeveloperId = aDeveloperId;
  this.mStatusId = aStatusId;
  this.mResolutionId = aResolutionId;
  this.mSeverityId = aSeverityId;
  this.mPriorityId = aPriorityId;
  this.mProjectVersionFromId = aProjectVersionFromId;
  this.mProjectVersionToId = aProjectVersionToId;
  this.mSince = aSince;
} // End of BoogieBugPrototype(...)



/**
 * Returns new object of a single type of Boogie's bug.
 * 
 * @param aId {integer}
 * @param aName {string}
 * @param aKey {string}
 */
function BoogieBugTypePrototype(aId, 
                                aName, 
                                aKey)
{
  this.mId = aId;
  this.mName = aName;
  this.mKey = aKey;
} // End of BoogieBugTypePrototype(...)



/**
 * Returns new object of a single status of Boogie's bug.
 * 
 * @param aId {integer}
 * @param aName {string}
 */
function BoogieBugStatusPrototype(aId, 
                                  aName)
{
  this.mId = aId;
  this.mName = aName;
} // End of BoogieBugStatusPrototype(...)



/**
 * Returns new object of a single resolution of Boogie's bug.
 * 
 * @param aId {integer}
 * @param aName {string}
 */
function BoogieBugResolutionPrototype(aId, 
                                      aName)
{
  this.mId = aId;
  this.mName = aName;
} // End of BoogieBugResolutionPrototype(...)



/**
 * Returns new object of a single severity of Boogie's bug.
 * 
 * @param aId {integer}
 * @param aName {string}
 */
function BoogieBugSeverityPrototype(aId, 
                                    aName)
{
  this.mId = aId;
  this.mName = aName;
} // End of BoogieBugSeverityPrototype(...)



/**
 * Returns new object of a single priority of Boogie's bug.
 * 
 * @param aId {integer}
 * @param aName {string}
 */
function BoogieBugPriorityPrototype(aId, 
                                    aName)
{
  this.mId = aId;
  this.mName = aName;
} // End of BoogieBugPriorityPrototype(...)



/**
 * Returns new object of a single post of Boogie's bug.
 *
 * @param aId {integer}
 * @param aBugId {integer}
 * @param aParentPostId {integer}
 * @param aSummary {string}
 * @param aText {string}
 * @param aSince {string}
 */
function BoogieBugPostPrototype(aId,
                                aBugId,
                                aParentPostId,
                                aSummary,
                                aText,
                                aSince)
{
  this.mId = aId;
  this.mBugId = aId;
  this.mParentPostId = aParentPostId;
  this.mSummary = aSummary;
  this.mText = aText;
  this.mSince = aSince;
} // End of BoogieBugPostPrototype(...)



/**
 * Returns new object of a single attachement of post of Boogie's bug.
 *
 * @param aId {integer}
 * @param aPostId {integer}
 * @param aName {string}
 * @param aMimeType {string}
 * @param aData {string}
 */
function BoogieBugPostAttachementPrototype(aId,
                                           aPostId,
                                           aName,
                                           aMimeType,
                                           aData)
{
  this.mId = aId;
  this.mPostId = aPostId;
  this.mName = aName;
  this.mMimeType = aMimeType;
  this.mData = aData;
} // End of BoogieBugPostAttachementPrototype(...)



/**
 * Returns new object of a single Boogie's developer.
 * 
 * @param aId {integer}
 * @param aFirstname {string}
 * @param aSurname {string}
 * @param aEmail {string}
 * @param aIm {string}
 * @param aSummary {string}
 */
function BoogieDeveloperPrototype(aId, 
                                  aFirstname, 
                                  aSurname, 
                                  aEmail, 
                                  aIm, 
                                  aSummary)
{
  this.mId = aId;
  this.mFirstname = aFirstname;
  this.mSurname = aSurname;
  this.mEmail = aEmail;
  this.mIm = "";
  this.mSummary = aSummary;
} // End of BoogieDeveloperPrototype(...)



/**
 * Returns new object of a single Boogie's project
 *
 * @param aId {integer}
 * @param aDeveloperId {integer}
 * @param aName {string}
 * @param aDescription {string}
 */
function BoogieProjectPrototype(aId,
                                aDeveloperId,
                                aName,
                                aDescription)
{
  this.mId = aId;
  this.mDeveloperId = aDeveloperId;
  this.mName = aName;
  this.mDescription = aDescription;
} // End of BoogieProjectPrototype(...)



/** 
 * Returns new object of a single component of Boogie's project
 * 
 * @param aId {integer}
 * @param aProjectId {integer}
 * @param aName {string}
 * @param aDescription {string}
 * @param aHomepageUri {string}
 * @param aRepositoryUri {string}
 */
function BoogieProjectComponentPrototype(aId,
                                         aProjectId,
                                         aName,
                                         aDescription,
                                         aHomepageUri,
                                         aRepositoryUri)
{
  this.mId = aId;
  this.mProjectId = aProjectId;
  this.mName = aName;
  this.mDescription = aDescription;
  this.mHomepageUri = aHomepageUri;
  this.mRepositoryUri = aRepositoryUri;
} // End of BoogieProjectComponentPrototype(...)



/** 
 * Returns new object of a single version of Boogie's project
 * 
 * @param aId {integer}
 * @param aProjectId {integer}
 * @param aName {string}
 * @param aDescription {string}
 */
function BoogieProjectVersionPrototype(aId,
                                       aProjectId,
                                       aName,
                                       aDescription)
{
  this.mId = aId;
  this.mProjectId = aProjectId;
  this.mName = aName;
  this.mDescription = aDescription;
} // End of BoogieProjectVersionPrototype(...)



/**
 * Returns new object of a single Boogie's note.
 * 
 * @param aId {integer}
 * @param aDeveloperId {integer}
 * @param aProjectId {integer}
 * @param aSummary {string}
 * @param aText {string}
 * @param aSince {string}
 */
function BoogieNotePrototype(aId, 
                             aDeveloperId, 
                             aProjectId, 
                             aSummary, 
                             aText, 
                             aSince)
{
  this.mId = aId;
  this.mDeveloperId = aDeveloperId;
  this.mProjectId = aProjectId;
  this.mSummary = aSummary;
  this.mText = aText;
  this.mSince = aSince;
} // End of BoogieNotePrototype(...)

