module MediaWiktory::Wikipedia::Modules::Revisions

Get revision information.

The “submodule” (MediaWiki API term) is included in action after setting some param, providing additional tweaking for this param. Example (for {MediaWiktory::Wikipedia::Actions::Query} and its submodules):

“`ruby api.query # returns Actions::Query

.prop(:revisions)  # adds prop=revisions to action URL, and includes Modules::Revisions into action
.limit(10)         # method of Modules::Revisions, adds rvlimit=10 to URL

“`

All submodule's parameters are documented as its public methods, see below.

Public Instance Methods

_contentformat(value) click to toggle source

@private

Calls superclass method
# File lib/mediawiktory/wikipedia/modules/revisions.rb, line 103
def _contentformat(value)
  defined?(super) && super || ["application/json", "text/x-wiki", "text/javascript", "text/css", "text/plain"].include?(value.to_s) && merge(rvcontentformat: value.to_s)
end
_dir(value) click to toggle source

@private

Calls superclass method
# File lib/mediawiktory/wikipedia/modules/revisions.rb, line 148
def _dir(value)
  defined?(super) && super || ["newer", "older"].include?(value.to_s) && merge(rvdir: value.to_s)
end
_prop(value) click to toggle source

@private

Calls superclass method
# File lib/mediawiktory/wikipedia/modules/revisions.rb, line 30
def _prop(value)
  defined?(super) && super || ["ids", "flags", "timestamp", "user", "userid", "size", "sha1", "contentmodel", "comment", "parsedcomment", "content", "tags", "parsetree", "flagged"].include?(value.to_s) && merge(rvprop: value.to_s, replace: false)
end
_token(value) click to toggle source

@private

Calls superclass method
# File lib/mediawiktory/wikipedia/modules/revisions.rb, line 185
def _token(value)
  defined?(super) && super || ["rollback"].include?(value.to_s) && merge(rvtoken: value.to_s, replace: false)
end
contentformat(value) click to toggle source

Serialization format used for rvdifftotext and expected for output of content.

@param value [String] One of “application/json”, “text/x-wiki”, “text/javascript”, “text/css”, “text/plain”. @return [self]

# File lib/mediawiktory/wikipedia/modules/revisions.rb, line 98
def contentformat(value)
  _contentformat(value) or fail ArgumentError, "Unknown value for contentformat: #{value}"
end
continue(value) click to toggle source

When more results are available, use this to continue.

@param value [String] @return [self]

# File lib/mediawiktory/wikipedia/modules/revisions.rb, line 193
def continue(value)
  merge(rvcontinue: value.to_s)
end
diffto(value) click to toggle source

Revision ID to diff each revision to. Use prev, next and cur for the previous, next and current revision respectively.

@param value [String] @return [self]

# File lib/mediawiktory/wikipedia/modules/revisions.rb, line 75
def diffto(value)
  merge(rvdiffto: value.to_s)
end
difftotext(value) click to toggle source

Text to diff each revision to. Only diffs a limited number of revisions. Overrides rvdiffto. If rvsection is set, only that section will be diffed against this text.

@param value [String] @return [self]

# File lib/mediawiktory/wikipedia/modules/revisions.rb, line 83
def difftotext(value)
  merge(rvdifftotext: value.to_s)
end
difftotextpst() click to toggle source

Perform a pre-save transform on the text before diffing it. Only valid when used with rvdifftotext.

@return [self]

# File lib/mediawiktory/wikipedia/modules/revisions.rb, line 90
def difftotextpst()
  merge(rvdifftotextpst: 'true')
end
dir(value) click to toggle source

In which direction to enumerate:

@param value [String] One of “newer” (List oldest first. Note: rvstart has to be before rvend), “older” (List newest first (default). Note: rvstart has to be later than rvend). @return [self]

# File lib/mediawiktory/wikipedia/modules/revisions.rb, line 143
def dir(value)
  _dir(value) or fail ArgumentError, "Unknown value for dir: #{value}"
end
end(value) click to toggle source

Enumerate up to this timestamp.

@param value [Time] @return [self]

# File lib/mediawiktory/wikipedia/modules/revisions.rb, line 135
def end(value)
  merge(rvend: value.iso8601)
end
endid(value) click to toggle source

Stop revision enumeration on this revision ID.

@param value [Integer] @return [self]

# File lib/mediawiktory/wikipedia/modules/revisions.rb, line 119
def endid(value)
  merge(rvendid: value.to_s)
end
excludeuser(value) click to toggle source

Exclude revisions made by user.

@param value [String] @return [self]

# File lib/mediawiktory/wikipedia/modules/revisions.rb, line 164
def excludeuser(value)
  merge(rvexcludeuser: value.to_s)
end
expandtemplates() click to toggle source

Expand templates in revision content (requires rvprop=content).

@return [self]

# File lib/mediawiktory/wikipedia/modules/revisions.rb, line 45
def expandtemplates()
  merge(rvexpandtemplates: 'true')
end
generatexml() click to toggle source

Generate XML parse tree for revision content (requires rvprop=content; replaced by rvprop=parsetree).

@return [self]

# File lib/mediawiktory/wikipedia/modules/revisions.rb, line 52
def generatexml()
  merge(rvgeneratexml: 'true')
end
limit(value) click to toggle source

Limit how many revisions will be returned.

@param value [Integer, “max”] @return [self]

# File lib/mediawiktory/wikipedia/modules/revisions.rb, line 38
def limit(value)
  merge(rvlimit: value.to_s)
end
parse() click to toggle source

Parse revision content (requires rvprop=content). For performance reasons, if this option is used, rvlimit is enforced to 1.

@return [self]

# File lib/mediawiktory/wikipedia/modules/revisions.rb, line 59
def parse()
  merge(rvparse: 'true')
end
prop(*values) click to toggle source

Which properties to get for each revision:

@param values [Array<String>] Allowed values: “ids” (The ID of the revision), “flags” (Revision flags (minor)), “timestamp” (The timestamp of the revision), “user” (User that made the revision), “userid” (User ID of the revision creator), “size” (Length (bytes) of the revision), “sha1” (SHA-1 (base 16) of the revision), “contentmodel” (Content model ID of the revision), “comment” (Comment by the user for the revision), “parsedcomment” (Parsed comment by the user for the revision), “content” (Text of the revision), “tags” (Tags for the revision), “parsetree” (The XML parse tree of revision content (requires content model wikitext)), “flagged” (Flagged status of the revision). @return [self]

# File lib/mediawiktory/wikipedia/modules/revisions.rb, line 25
def prop(*values)
  values.inject(self) { |res, val| res._prop(val) or fail ArgumentError, "Unknown value for prop: #{val}" }
end
section(value) click to toggle source

Only retrieve the content of this section number.

@param value [String] @return [self]

# File lib/mediawiktory/wikipedia/modules/revisions.rb, line 67
def section(value)
  merge(rvsection: value.to_s)
end
start(value) click to toggle source

From which revision timestamp to start enumeration.

@param value [Time] @return [self]

# File lib/mediawiktory/wikipedia/modules/revisions.rb, line 127
def start(value)
  merge(rvstart: value.iso8601)
end
startid(value) click to toggle source

From which revision ID to start enumeration.

@param value [Integer] @return [self]

# File lib/mediawiktory/wikipedia/modules/revisions.rb, line 111
def startid(value)
  merge(rvstartid: value.to_s)
end
tag(value) click to toggle source

Only list revisions tagged with this tag.

@param value [String] @return [self]

# File lib/mediawiktory/wikipedia/modules/revisions.rb, line 172
def tag(value)
  merge(rvtag: value.to_s)
end
token(*values) click to toggle source

Which tokens to obtain for each revision.

@param values [Array<String>] Allowed values: “rollback”. @return [self]

# File lib/mediawiktory/wikipedia/modules/revisions.rb, line 180
def token(*values)
  values.inject(self) { |res, val| res._token(val) or fail ArgumentError, "Unknown value for token: #{val}" }
end
user(value) click to toggle source

Only include revisions made by user.

@param value [String] @return [self]

# File lib/mediawiktory/wikipedia/modules/revisions.rb, line 156
def user(value)
  merge(rvuser: value.to_s)
end