Skip to content

Commit 2afebf9

Browse files
committed
Completely migrate SchemasRouter to new MongoCollection API.
1 parent c6406b9 commit 2afebf9

File tree

2 files changed

+12
-12
lines changed

2 files changed

+12
-12
lines changed

spec/schemas.spec.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -175,7 +175,7 @@ describe('schemas', () => {
175175
expect(response.statusCode).toEqual(400);
176176
expect(body).toEqual({
177177
code: 103,
178-
error: 'class HASALLPOD does not exist',
178+
error: 'Class HASALLPOD does not exist.',
179179
});
180180
done();
181181
});
@@ -733,7 +733,7 @@ describe('schemas', () => {
733733
//Expect _SCHEMA entry to be gone.
734734
expect(response.statusCode).toEqual(400);
735735
expect(body.code).toEqual(Parse.Error.INVALID_CLASS_NAME);
736-
expect(body.error).toEqual('class MyOtherClass does not exist');
736+
expect(body.error).toEqual('Class MyOtherClass does not exist.');
737737
done();
738738
});
739739
});

src/Routers/SchemasRouter.js

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -45,16 +45,16 @@ function getAllSchemas(req) {
4545
}
4646

4747
function getOneSchema(req) {
48-
return req.config.database.collection('_SCHEMA')
49-
.then(coll => coll.findOne({'_id': req.params.className}))
50-
.then(schema => ({response: mongoSchemaToSchemaAPIResponse(schema)}))
51-
.catch(() => ({
52-
status: 400,
53-
response: {
54-
code: 103,
55-
error: 'class ' + req.params.className + ' does not exist',
48+
const className = req.params.className;
49+
return req.config.database.adaptiveCollection('_SCHEMA')
50+
.then(collection => collection.find({ '_id': className }, { limit: 1 }))
51+
.then(results => {
52+
if (results.length != 1) {
53+
throw new Parse.Error(Parse.Error.INVALID_CLASS_NAME, `Class ${className} does not exist.`);
5654
}
57-
}));
55+
return results[0];
56+
})
57+
.then(schema => ({ response: mongoSchemaToSchemaAPIResponse(schema) }));
5858
}
5959

6060
function createSchema(req) {
@@ -70,7 +70,7 @@ function createSchema(req) {
7070
response: {
7171
code: 135,
7272
error: 'POST ' + req.path + ' needs class name',
73-
},
73+
}
7474
});
7575
}
7676
return req.config.database.loadSchema()

0 commit comments

Comments
 (0)