Class

DeveloperChallengeCollection

api/user~DeveloperChallengeCollection()

DeveloperChallengeCollection a collection of developer-challenge pairs.

Constructor

# new DeveloperChallengeCollection()

View Source api/user/DeveloperChallengeCollection.js, line 13

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, developer) → {String}

Creates a new pair.

Parameters:
Name Type Description
challenge String

the challenge slug or ID.

developer String

the developer slug or ID.

Overrides:

View Source api/user/DeveloperChallengeCollection.js, line 26

the ID of the pair.

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 pairs with the given challenge.

Parameters:
Name Type Description
challenge String

the challenge slug or ID.

View Source api/user/DeveloperChallengeCollection.js, line 64

if challenge is not defined.

Meteor.Error

# removeDeveloper(developer)

Removes all the pairs with the given developer.

Parameters:
Name Type Description
developer String

the developer slug or ID.

View Source api/user/DeveloperChallengeCollection.js, line 74

if developer is not defined.

Meteor.Error

# removeIt(docID)

Removes the given pair.

Parameters:
Name Type Description
docID String

the ID of the pair.

Overrides:

View Source api/user/DeveloperChallengeCollection.js, line 55

if docID is not defined.

Meteor.Error

# 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, developer)

Updates the give pair.

Parameters:
Name Type Description
docID String

the ID of the pair to update.

challenge String

the new challenge slug or ID (optional).

developer String

the new developer slug or ID (optional).

Overrides:

View Source api/user/DeveloperChallengeCollection.js, line 38