get mongo running
This commit is contained in:
38
vault/src/database.ts
Normal file
38
vault/src/database.ts
Normal file
@@ -0,0 +1,38 @@
|
||||
import { MongoClient, Db, Collection } from 'mongodb'
|
||||
import { Character } from './proto/character'
|
||||
|
||||
export class DatabaseService {
|
||||
private readonly client: MongoClient
|
||||
private readonly db: Db
|
||||
private readonly characterCollection: Collection
|
||||
|
||||
constructor(databaseAddress: string, databaseName: string) {
|
||||
this.client = new MongoClient(databaseAddress)
|
||||
this.db = this.client.db(databaseName)
|
||||
this.characterCollection = this.db.collection('characters')
|
||||
}
|
||||
|
||||
insertCharacter(character: Character): Promise<Character> {
|
||||
return this.characterCollection
|
||||
.insertOne(character)
|
||||
.then((insertResult) => {
|
||||
console.log(insertResult)
|
||||
return this.characterCollection.findOne({ _id: insertResult.insertedId })
|
||||
})
|
||||
.then((inserted) => {
|
||||
return {
|
||||
playerName: inserted.playerName,
|
||||
characterName: inserted.characterName,
|
||||
characterAlias: inserted.characterAlias,
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
fetchCharactersForPlayer(playerName: string): Array<Character> {
|
||||
return []
|
||||
}
|
||||
|
||||
fetchCharactersForCharacterName(playerName: string): Array<Character> {
|
||||
return []
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user