Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
J
jio-main
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Hardik Juneja
jio-main
Commits
d54f3480
Commit
d54f3480
authored
Mar 11, 2013
by
Tristan Cavelier
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'replicaterevisionstorage2'
parents
c048fd03
8e7efe86
Changes
6
Expand all
Show whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
2176 additions
and
1645 deletions
+2176
-1645
src/jio.storage/replicaterevisionstorage.js
src/jio.storage/replicaterevisionstorage.js
+477
-289
src/jio.storage/revisionstorage.js
src/jio.storage/revisionstorage.js
+708
-1072
src/jio/commands/command.js
src/jio/commands/command.js
+4
-1
src/jio/jio.core.js
src/jio/jio.core.js
+65
-5
src/jio/storages/storage.js
src/jio/storages/storage.js
+12
-0
test/jiotests.js
test/jiotests.js
+910
-278
No files found.
src/jio.storage/replicaterevisionstorage.js
View file @
d54f3480
This diff is collapsed.
Click to expand it.
src/jio.storage/revisionstorage.js
View file @
d54f3480
This diff is collapsed.
Click to expand it.
src/jio/commands/command.js
View file @
d54f3480
...
@@ -2,6 +2,7 @@
...
@@ -2,6 +2,7 @@
/*global postCommand: true, putCommand: true, getCommand: true,
/*global postCommand: true, putCommand: true, getCommand: true,
removeCommand: true, allDocsCommand: true,
removeCommand: true, allDocsCommand: true,
putAttachmentCommand: true, failStatus: true, doneStatus: true,
putAttachmentCommand: true, failStatus: true, doneStatus: true,
checkCommand: true, repairCommand: true,
hex_md5: true */
hex_md5: true */
var
command
=
function
(
spec
,
my
)
{
var
command
=
function
(
spec
,
my
)
{
var
that
=
{},
var
that
=
{},
...
@@ -16,7 +17,9 @@ var command = function (spec, my) {
...
@@ -16,7 +17,9 @@ var command = function (spec, my) {
'
get
'
:
getCommand
,
'
get
'
:
getCommand
,
'
remove
'
:
removeCommand
,
'
remove
'
:
removeCommand
,
'
allDocs
'
:
allDocsCommand
,
'
allDocs
'
:
allDocsCommand
,
'
putAttachment
'
:
putAttachmentCommand
'
putAttachment
'
:
putAttachmentCommand
,
'
check
'
:
checkCommand
,
'
repair
'
:
repairCommand
};
};
// creates the good command thanks to his label
// creates the good command thanks to his label
if
(
spec
.
label
&&
priv
.
commandlist
[
spec
.
label
])
{
if
(
spec
.
label
&&
priv
.
commandlist
[
spec
.
label
])
{
...
...
src/jio/jio.core.js
View file @
d54f3480
...
@@ -4,7 +4,7 @@
...
@@ -4,7 +4,7 @@
storage_type_object: true, invalidStorageType: true, jobRules: true,
storage_type_object: true, invalidStorageType: true, jobRules: true,
job: true, postCommand: true, putCommand: true, getCommand:true,
job: true, postCommand: true, putCommand: true, getCommand:true,
allDocsCommand: true, putAttachmentCommand: true,
allDocsCommand: true, putAttachmentCommand: true,
removeCommand: true */
removeCommand: true
, checkCommand: true, repairCommand: true
*/
// Class jio
// Class jio
var
that
=
{},
priv
=
{},
jio_id_array_name
=
'
jio/id_array
'
;
var
that
=
{},
priv
=
{},
jio_id_array_name
=
'
jio/id_array
'
;
spec
=
spec
||
{};
spec
=
spec
||
{};
...
@@ -377,10 +377,10 @@ Object.defineProperty(that, "allDocs", {
...
@@ -377,10 +377,10 @@ Object.defineProperty(that, "allDocs", {
* Put an attachment to a document.
* Put an attachment to a document.
* @method putAttachment
* @method putAttachment
* @param {object} doc The document object. Contains at least:
* @param {object} doc The document object. Contains at least:
* - {string} id The document id: "doc_id/attchment_id"
* - {string}
_
id The document id: "doc_id/attchment_id"
* - {string} data Base64 attachment data
* - {string}
_
data Base64 attachment data
* - {string} mimetype The attachment mimetype
* - {string}
_
mimetype The attachment mimetype
* - {string} rev The attachment revision
* - {string}
_
rev The attachment revision
* @param {object} options (optional) Contains some options:
* @param {object} options (optional) Contains some options:
* - {number} max_retry The number max of retries, 0 = infinity.
* - {number} max_retry The number max of retries, 0 = infinity.
* - {boolean} revs Include revision history of the document.
* - {boolean} revs Include revision history of the document.
...
@@ -408,3 +408,63 @@ Object.defineProperty(that, "putAttachment", {
...
@@ -408,3 +408,63 @@ Object.defineProperty(that, "putAttachment", {
});
});
}
}
});
});
/**
* Check a document.
* @method check
* @param {object} doc The document object. Contains at least:
* - {string} _id The document id
* @param {object} options (optional) Contains some options:
* - {number} max_retry The number max of retries, 0 = infinity.
* @param {function} callback (optional) The callback(err,response).
* @param {function} error (optional) The callback on error, if this
* callback is given in parameter, "callback" is changed as "success",
* called on success.
*/
Object
.
defineProperty
(
that
,
"
check
"
,
{
configurable
:
false
,
enumerable
:
false
,
writable
:
false
,
value
:
function
(
doc
,
options
,
success
,
callback
)
{
var
param
=
priv
.
parametersToObject
(
[
options
,
success
,
callback
],
{
max_retry
:
3
}
);
priv
.
addJob
(
checkCommand
,
{
doc
:
doc
,
options
:
param
.
options
,
callbacks
:
{
success
:
param
.
success
,
error
:
param
.
error
}
});
}
});
/**
* Repair a document.
* @method repair
* @param {object} doc The document object. Contains at least:
* - {string} _id The document id
* @param {object} options (optional) Contains some options:
* - {number} max_retry The number max of retries, 0 = infinity.
* @param {function} callback (optional) The callback(err,response).
* @param {function} error (optional) The callback on error, if this
* callback is given in parameter, "callback" is changed as "success",
* called on success.
*/
Object
.
defineProperty
(
that
,
"
repair
"
,
{
configurable
:
false
,
enumerable
:
false
,
writable
:
false
,
value
:
function
(
doc
,
options
,
success
,
callback
)
{
var
param
=
priv
.
parametersToObject
(
[
options
,
success
,
callback
],
{
max_retry
:
3
}
);
priv
.
addJob
(
repairCommand
,
{
doc
:
doc
,
options
:
param
.
options
,
callbacks
:
{
success
:
param
.
success
,
error
:
param
.
error
}
});
}
});
src/jio/storages/storage.js
View file @
d54f3480
...
@@ -159,6 +159,18 @@ var storage = function (spec, my) {
...
@@ -159,6 +159,18 @@ var storage = function (spec, my) {
});
});
};
};
that
.
check
=
function
(
command
)
{
setTimeout
(
function
()
{
that
.
success
({
"
ok
"
:
true
,
"
id
"
:
command
.
getDocId
()});
});
};
that
.
repair
=
function
(
command
)
{
setTimeout
(
function
()
{
that
.
success
({
"
ok
"
:
true
,
"
id
"
:
command
.
getDocId
()});
});
};
that
.
success
=
function
()
{};
that
.
success
=
function
()
{};
that
.
retry
=
function
()
{};
that
.
retry
=
function
()
{};
that
.
error
=
function
()
{};
that
.
error
=
function
()
{};
...
...
test/jiotests.js
View file @
d54f3480
This diff is collapsed.
Click to expand it.
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment