Skip to content

Commit bfcf463

Browse files
committed
Refactored reference convenience object
1 parent 1c997f2 commit bfcf463

1 file changed

Lines changed: 17 additions & 13 deletions

File tree

lib/reference.js

Lines changed: 17 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,33 +1,37 @@
11
var git = require('../');
22

3-
var _Ref = function(obj) {
3+
var Reference = function(rawReference) {
44
var self = {};
55

6-
if(obj instanceof git.raw.Repo) {
7-
self.repo = obj;
8-
self.ref = new git.raw.Ref(obj);
9-
} else if(obj instanceof git.raw.Ref) {
10-
self.ref = obj;
6+
if(rawReference instanceof git.raw.Reference) {
7+
self.reference = rawReference;
8+
} else if(rawReference instanceof git.raw.Repo) {
9+
self.repo = rawReference;
10+
self.reference = new git.raw.Reference(rawReference);
1111
}
1212

1313
self.lookup = function(name, callback) {
14-
self.ref.lookup(self.repo, name, function(error) {
15-
console.log('1', arguments);
14+
self.reference.lookup(self.repo, name, function(error, reference) {
1615
if (error) {
1716
callback(git.error(error), self);
1817
return;
1918
}
19+
self.reference = reference;
2020
callback(null, self);
2121
});
2222
};
2323

24-
self.oid = function() {
25-
var oid = git.oid();
26-
self.ref.oid(oid.oid);
27-
return oid;
24+
self.oid = function(callback) {
25+
self.reference.oid(function(error, rawOid) {
26+
if (error) {
27+
callback(git.error(error, self));
28+
return;
29+
}
30+
callback(null, git.oid(rawOid));
31+
});
2832
};
2933

3034
return self;
3135
};
3236

33-
exports.ref = _Ref;
37+
exports.reference = Reference;

0 commit comments

Comments
 (0)