Class

ChallengeInterestCollection

api/challenge~ChallengeInterestCollection()

ChallengeInterestsCollections maps the Interests to the Challenges.

Constructor

# new ChallengeInterestCollection()

Creates the ChallengeInterest collection.

View Source api/challenge/ChallengeInterestCollection.js, line 15

Extends

Methods

# assertDefined(name)

Verifies that the passed object is one of this collection's instances.

Parameters:
Name Type Description
name String | List

Should be a defined ID or doc in this collection.

Overrides:

View Source api/base/BaseCollection.js, line 168

If not defined.

Meteor.Error

# count() → {Number}

Returns the number of documents in this collection.

Overrides:

View Source api/base/BaseCollection.js, line 35

The number of elements in this collection.

Number

# define(challenge, interest) → {string}

Defines a link between the challenge and the interest.

Parameters:
Name Type Description
challenge string

the challenge slug or id.

interest string

the interest slug or id.

Overrides:

View Source api/challenge/ChallengeInterestCollection.js, line 28

The id of the record.

string

# dumpAll() → {Object}

Returns an object with two fields: name and contents. Name is the name of this collection. Contents is an array of objects suitable for passing to the restore() method.

Overrides:

View Source api/base/BaseCollection.js, line 201

An object representing the contents of this collection.

Object

# dumpOne(docID) → {Object}

Returns an object representing the definition of docID in a format appropriate to the restoreOne function. Must be overridden by each collection.

Parameters:
Name Type Description
docID String

A docID from this collection.

Overrides:

View Source api/base/BaseCollection.js, line 222

An object representing this document.

Object

# find(selector, options) → {Mongo.Cursor}

Runs find on this collection.

Parameters:
Name Type Description
selector Object

A MongoDB selector.

options Object

MongoDB options.

Overrides:
See:

View Source api/base/BaseCollection.js, line 75

Mongo.Cursor

# findDoc(name) → {Object}

A stricter form of findOne, in that it throws an exception if the entity isn't found in the collection.

Parameters:
Name Type Description
name String | Object

Either the docID, or an object selector, or the 'name' field value.

Overrides:

View Source api/base/BaseCollection.js, line 86

If the document cannot be found.

Meteor.Error

The document associated with name.

Object

# findOne(selector, options) → {Mongo.Cursor}

Runs findOne on this collection.

Parameters:
Name Type Description
selector Object

A MongoDB selector.

options Object

MongoDB options.

Overrides:
See:

View Source api/base/BaseCollection.js, line 111

Mongo.Cursor

# getCollectionName() → {string}

Returns the collection name.

Overrides:

View Source api/base/BaseCollection.js, line 136

The collection name as a string.

string

# getPublicationName() → {String}

Return the publication name.

Overrides:

View Source api/base/BaseCollection.js, line 128

The publication name, as a string.

String

# getSchema() → {SimpleSchema}

Returns the schema attached to this collection.

Overrides:

View Source api/base/BaseCollection.js, line 144

SimpleSchema

# getType() → {String}

Return the type of this collection.

Overrides:

View Source api/base/BaseCollection.js, line 120

The type, as a string.

String

# isDefined(name) → {boolean}

Returns true if the passed entity is in this collection.

Parameters:
Name Type Description
name String | Object

The docID, or an object specifying a documennt.

Overrides:

View Source api/base/BaseCollection.js, line 153

True if name exists in this collection.

boolean

# publish()

Default publication method for entities. It publishes the entire collection. This should be overridden in subclasses.

Overrides:

View Source api/base/BaseCollection.js, line 178

# removeChallenge(challenge)

Removes all the Challenge-Interest pairs for the given challenge.

Parameters:
Name Type Description
challenge string

the challenge slug or ID.

View Source api/challenge/ChallengeInterestCollection.js, line 66

# removeInterest(interest)

Removes all the Challenge-Interest pairs for the given interest.

Parameters:
Name Type Description
interest string

the interest slug or ID.

View Source api/challenge/ChallengeInterestCollection.js, line 75

# removeIt(docID)

Removes the Challenge-Interest pair.

Parameters:
Name Type Description
docID string

the id of the pair.

Overrides:

View Source api/challenge/ChallengeInterestCollection.js, line 58

if the docID is not defined.

Meteor.Exception

# restoreAll(dumpObjects)

Defines all the entities in the passed array of objects.

Parameters:
Name Type Description
dumpObjects

The array of objects representing the definition of a document in this collection.

Overrides:

View Source api/base/BaseCollection.js, line 243

# restoreOne(dumpObject) → {String}

Defines the entity represented by dumpObject. Defaults to calling the define() method if it exists.

Parameters:
Name Type Description
dumpObject

An object representing one document in this collection.

Overrides:

View Source api/base/BaseCollection.js, line 232

The docID of the newly created document.

String

# subscribe()

Default subscription method for entities. It subscribes to the entire collection. Should be overridden in subclass

Overrides:

View Source api/base/BaseCollection.js, line 188

# update(docID, challenge, interest)

Updates the Challenge-Interest pair.

Parameters:
Name Type Description
docID string

the id of the record.

challenge string

the challenge slug or ID, optional.

interest string

the interest slug or ID, optional.

Overrides:

View Source api/challenge/ChallengeInterestCollection.js, line 41