Module: MediaWiktory::Wikipedia::Modules::Allrevisions

Defined in:
lib/mediawiktory/wikipedia/modules/allrevisions.rb

Overview

List all revisions.

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

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.

Instance Method Summary collapse

Instance Method Details

#contentformat(value) ⇒ self

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

Parameters:

  • value (String)

    One of "application/json", "text/x-wiki", "text/javascript", "text/css", "text/plain".

Returns:

  • (self)


98
99
100
# File 'lib/mediawiktory/wikipedia/modules/allrevisions.rb', line 98

def contentformat(value)
  _contentformat(value) or fail ArgumentError, "Unknown value for contentformat: #{value}"
end

#continue(value) ⇒ self

When more results are available, use this to continue.

Parameters:

  • value (String)

Returns:

  • (self)


169
170
171
# File 'lib/mediawiktory/wikipedia/modules/allrevisions.rb', line 169

def continue(value)
  merge(arvcontinue: value.to_s)
end

#diffto(value) ⇒ self

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

Parameters:

  • value (String)

Returns:

  • (self)


75
76
77
# File 'lib/mediawiktory/wikipedia/modules/allrevisions.rb', line 75

def diffto(value)
  merge(arvdiffto: value.to_s)
end

#difftotext(value) ⇒ self

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

Parameters:

  • value (String)

Returns:

  • (self)


83
84
85
# File 'lib/mediawiktory/wikipedia/modules/allrevisions.rb', line 83

def difftotext(value)
  merge(arvdifftotext: value.to_s)
end

#difftotextpstself

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

Returns:

  • (self)


90
91
92
# File 'lib/mediawiktory/wikipedia/modules/allrevisions.rb', line 90

def difftotextpst()
  merge(arvdifftotextpst: 'true')
end

#dir(value) ⇒ self

In which direction to enumerate:

Parameters:

  • value (String)

    One of "newer" (List oldest first. Note: arvstart has to be before arvend), "older" (List newest first (default). Note: arvstart has to be later than arvend).

Returns:

  • (self)


148
149
150
# File 'lib/mediawiktory/wikipedia/modules/allrevisions.rb', line 148

def dir(value)
  _dir(value) or fail ArgumentError, "Unknown value for dir: #{value}"
end

#end(value) ⇒ self

The timestamp to stop enumerating at.

Parameters:

  • value (Time)

Returns:

  • (self)


140
141
142
# File 'lib/mediawiktory/wikipedia/modules/allrevisions.rb', line 140

def end(value)
  merge(arvend: value.iso8601)
end

#excludeuser(value) ⇒ self

Don't list revisions by this user.

Parameters:

  • value (String)

Returns:

  • (self)


161
162
163
# File 'lib/mediawiktory/wikipedia/modules/allrevisions.rb', line 161

def excludeuser(value)
  merge(arvexcludeuser: value.to_s)
end

#expandtemplatesself

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

Returns:

  • (self)


45
46
47
# File 'lib/mediawiktory/wikipedia/modules/allrevisions.rb', line 45

def expandtemplates()
  merge(arvexpandtemplates: 'true')
end

#generatetitlesself

When being used as a generator, generate titles rather than revision IDs.

Returns:

  • (self)


176
177
178
# File 'lib/mediawiktory/wikipedia/modules/allrevisions.rb', line 176

def generatetitles()
  merge(arvgeneratetitles: 'true')
end

#generatexmlself

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

Returns:

  • (self)


52
53
54
# File 'lib/mediawiktory/wikipedia/modules/allrevisions.rb', line 52

def generatexml()
  merge(arvgeneratexml: 'true')
end

#limit(value) ⇒ self

Limit how many revisions will be returned.

Parameters:

  • value (Integer, "max")

Returns:

  • (self)


38
39
40
# File 'lib/mediawiktory/wikipedia/modules/allrevisions.rb', line 38

def limit(value)
  merge(arvlimit: value.to_s)
end

#namespace(*values) ⇒ self

Only list pages in this namespace.

Parameters:

  • values (Array<String>)

    Allowed values: "0", "1", "2", "3", "4", "5", "6", "7", "8", "9", "10", "11", "12", "13", "14", "15", "100", "101", "108", "109", "118", "119", "446", "447", "710", "711", "828", "829", "2300", "2301", "2302", "2303".

Returns:

  • (self)


119
120
121
# File 'lib/mediawiktory/wikipedia/modules/allrevisions.rb', line 119

def namespace(*values)
  values.inject(self) { |res, val| res._namespace(val) or fail ArgumentError, "Unknown value for namespace: #{val}" }
end

#parseself

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

Returns:

  • (self)


59
60
61
# File 'lib/mediawiktory/wikipedia/modules/allrevisions.rb', line 59

def parse()
  merge(arvparse: 'true')
end

#prop(*values) ⇒ self

Which properties to get for each revision:

Parameters:

  • 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)).

Returns:

  • (self)


25
26
27
# File 'lib/mediawiktory/wikipedia/modules/allrevisions.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) ⇒ self

Only retrieve the content of this section number.

Parameters:

  • value (String)

Returns:

  • (self)


67
68
69
# File 'lib/mediawiktory/wikipedia/modules/allrevisions.rb', line 67

def section(value)
  merge(arvsection: value.to_s)
end

#start(value) ⇒ self

The timestamp to start enumerating from.

Parameters:

  • value (Time)

Returns:

  • (self)


132
133
134
# File 'lib/mediawiktory/wikipedia/modules/allrevisions.rb', line 132

def start(value)
  merge(arvstart: value.iso8601)
end

#user(value) ⇒ self

Only list revisions by this user.

Parameters:

  • value (String)

Returns:

  • (self)


111
112
113
# File 'lib/mediawiktory/wikipedia/modules/allrevisions.rb', line 111

def user(value)
  merge(arvuser: value.to_s)
end