sketchup-api-stubs 0.7.9 → 0.7.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (160) hide show
  1. checksums.yaml +4 -4
  2. data/lib/sketchup-api-stubs/sketchup.rb +157 -151
  3. data/lib/sketchup-api-stubs/stubs/Array.rb +741 -741
  4. data/lib/sketchup-api-stubs/stubs/Geom/BoundingBox.rb +322 -322
  5. data/lib/sketchup-api-stubs/stubs/Geom/Bounds2d.rb +182 -172
  6. data/lib/sketchup-api-stubs/stubs/Geom/LatLong.rb +111 -126
  7. data/lib/sketchup-api-stubs/stubs/Geom/OrientedBounds2d.rb +102 -102
  8. data/lib/sketchup-api-stubs/stubs/Geom/Point2d.rb +423 -400
  9. data/lib/sketchup-api-stubs/stubs/Geom/Point3d.rb +693 -661
  10. data/lib/sketchup-api-stubs/stubs/Geom/PolygonMesh.rb +535 -509
  11. data/lib/sketchup-api-stubs/stubs/Geom/Transformation.rb +500 -476
  12. data/lib/sketchup-api-stubs/stubs/Geom/Transformation2d.rb +267 -263
  13. data/lib/sketchup-api-stubs/stubs/Geom/UTM.rb +133 -141
  14. data/lib/sketchup-api-stubs/stubs/Geom/Vector2d.rb +547 -522
  15. data/lib/sketchup-api-stubs/stubs/Geom/Vector3d.rb +678 -693
  16. data/lib/sketchup-api-stubs/stubs/Geom.rb +351 -351
  17. data/lib/sketchup-api-stubs/stubs/LanguageHandler.rb +93 -93
  18. data/lib/sketchup-api-stubs/stubs/Layout/AngularDimension.rb +595 -595
  19. data/lib/sketchup-api-stubs/stubs/Layout/AutoTextDefinition.rb +751 -747
  20. data/lib/sketchup-api-stubs/stubs/Layout/AutoTextDefinitions.rb +183 -183
  21. data/lib/sketchup-api-stubs/stubs/Layout/ConnectionPoint.rb +70 -70
  22. data/lib/sketchup-api-stubs/stubs/Layout/Dictionary.rb +234 -0
  23. data/lib/sketchup-api-stubs/stubs/Layout/Document.rb +683 -517
  24. data/lib/sketchup-api-stubs/stubs/Layout/Ellipse.rb +29 -29
  25. data/lib/sketchup-api-stubs/stubs/Layout/Entities.rb +148 -148
  26. data/lib/sketchup-api-stubs/stubs/Layout/Entity.rb +464 -353
  27. data/lib/sketchup-api-stubs/stubs/Layout/FormattedText.rb +354 -354
  28. data/lib/sketchup-api-stubs/stubs/Layout/Grid.rb +311 -311
  29. data/lib/sketchup-api-stubs/stubs/Layout/Group.rb +261 -261
  30. data/lib/sketchup-api-stubs/stubs/Layout/Image.rb +91 -91
  31. data/lib/sketchup-api-stubs/stubs/Layout/Label.rb +370 -370
  32. data/lib/sketchup-api-stubs/stubs/Layout/Layer.rb +218 -218
  33. data/lib/sketchup-api-stubs/stubs/Layout/LayerInstance.rb +128 -128
  34. data/lib/sketchup-api-stubs/stubs/Layout/Layers.rb +225 -225
  35. data/lib/sketchup-api-stubs/stubs/Layout/LinearDimension.rb +614 -567
  36. data/lib/sketchup-api-stubs/stubs/Layout/LockedEntityError.rb +10 -10
  37. data/lib/sketchup-api-stubs/stubs/Layout/LockedLayerError.rb +11 -11
  38. data/lib/sketchup-api-stubs/stubs/Layout/Page.rb +282 -183
  39. data/lib/sketchup-api-stubs/stubs/Layout/PageInfo.rb +458 -387
  40. data/lib/sketchup-api-stubs/stubs/Layout/Pages.rb +209 -209
  41. data/lib/sketchup-api-stubs/stubs/Layout/Path.rb +346 -344
  42. data/lib/sketchup-api-stubs/stubs/Layout/Rectangle.rb +174 -174
  43. data/lib/sketchup-api-stubs/stubs/Layout/ReferenceEntity.rb +82 -82
  44. data/lib/sketchup-api-stubs/stubs/Layout/SketchUpModel.rb +714 -692
  45. data/lib/sketchup-api-stubs/stubs/Layout/Style.rb +1565 -1519
  46. data/lib/sketchup-api-stubs/stubs/Layout/Table.rb +290 -290
  47. data/lib/sketchup-api-stubs/stubs/Layout/TableCell.rb +149 -149
  48. data/lib/sketchup-api-stubs/stubs/Layout/TableColumn.rb +139 -139
  49. data/lib/sketchup-api-stubs/stubs/Layout/TableRow.rb +135 -135
  50. data/lib/sketchup-api-stubs/stubs/Layout.rb +25 -25
  51. data/lib/sketchup-api-stubs/stubs/Length.rb +286 -278
  52. data/lib/sketchup-api-stubs/stubs/Numeric.rb +249 -249
  53. data/lib/sketchup-api-stubs/stubs/Sketchup/Animation.rb +196 -144
  54. data/lib/sketchup-api-stubs/stubs/Sketchup/AppObserver.rb +169 -169
  55. data/lib/sketchup-api-stubs/stubs/Sketchup/ArcCurve.rb +226 -209
  56. data/lib/sketchup-api-stubs/stubs/Sketchup/AttributeDictionaries.rb +145 -150
  57. data/lib/sketchup-api-stubs/stubs/Sketchup/AttributeDictionary.rb +294 -281
  58. data/lib/sketchup-api-stubs/stubs/Sketchup/Axes.rb +149 -149
  59. data/lib/sketchup-api-stubs/stubs/Sketchup/Behavior.rb +296 -302
  60. data/lib/sketchup-api-stubs/stubs/Sketchup/Camera.rb +473 -478
  61. data/lib/sketchup-api-stubs/stubs/Sketchup/ClassificationSchema.rb +63 -63
  62. data/lib/sketchup-api-stubs/stubs/Sketchup/Classifications.rb +121 -121
  63. data/lib/sketchup-api-stubs/stubs/Sketchup/Color.rb +294 -294
  64. data/lib/sketchup-api-stubs/stubs/Sketchup/ComponentDefinition.rb +673 -659
  65. data/lib/sketchup-api-stubs/stubs/Sketchup/ComponentInstance.rb +600 -593
  66. data/lib/sketchup-api-stubs/stubs/Sketchup/Console.rb +76 -76
  67. data/lib/sketchup-api-stubs/stubs/Sketchup/ConstructionLine.rb +252 -257
  68. data/lib/sketchup-api-stubs/stubs/Sketchup/ConstructionPoint.rb +32 -32
  69. data/lib/sketchup-api-stubs/stubs/Sketchup/Curve.rb +201 -201
  70. data/lib/sketchup-api-stubs/stubs/Sketchup/DefinitionList.rb +443 -449
  71. data/lib/sketchup-api-stubs/stubs/Sketchup/DefinitionObserver.rb +74 -74
  72. data/lib/sketchup-api-stubs/stubs/Sketchup/DefinitionsObserver.rb +104 -104
  73. data/lib/sketchup-api-stubs/stubs/Sketchup/Dimension.rb +167 -165
  74. data/lib/sketchup-api-stubs/stubs/Sketchup/DimensionLinear.rb +306 -306
  75. data/lib/sketchup-api-stubs/stubs/Sketchup/DimensionObserver.rb +42 -42
  76. data/lib/sketchup-api-stubs/stubs/Sketchup/DimensionRadial.rb +87 -87
  77. data/lib/sketchup-api-stubs/stubs/Sketchup/Drawingelement.rb +403 -406
  78. data/lib/sketchup-api-stubs/stubs/Sketchup/Edge.rb +397 -397
  79. data/lib/sketchup-api-stubs/stubs/Sketchup/EdgeUse.rb +211 -211
  80. data/lib/sketchup-api-stubs/stubs/Sketchup/Entities.rb +1282 -1239
  81. data/lib/sketchup-api-stubs/stubs/Sketchup/EntitiesBuilder.rb +261 -261
  82. data/lib/sketchup-api-stubs/stubs/Sketchup/EntitiesObserver.rb +127 -127
  83. data/lib/sketchup-api-stubs/stubs/Sketchup/Entity.rb +519 -545
  84. data/lib/sketchup-api-stubs/stubs/Sketchup/EntityObserver.rb +60 -60
  85. data/lib/sketchup-api-stubs/stubs/Sketchup/Environment.rb +406 -0
  86. data/lib/sketchup-api-stubs/stubs/Sketchup/Environments.rb +185 -0
  87. data/lib/sketchup-api-stubs/stubs/Sketchup/EnvironmentsObserver.rb +113 -0
  88. data/lib/sketchup-api-stubs/stubs/Sketchup/ExtensionsManager.rb +122 -125
  89. data/lib/sketchup-api-stubs/stubs/Sketchup/Face.rb +1006 -937
  90. data/lib/sketchup-api-stubs/stubs/Sketchup/FrameChangeObserver.rb +102 -102
  91. data/lib/sketchup-api-stubs/stubs/Sketchup/Group.rb +740 -750
  92. data/lib/sketchup-api-stubs/stubs/Sketchup/Http/Request.rb +289 -282
  93. data/lib/sketchup-api-stubs/stubs/Sketchup/Http/Response.rb +64 -62
  94. data/lib/sketchup-api-stubs/stubs/Sketchup/Http.rb +27 -27
  95. data/lib/sketchup-api-stubs/stubs/Sketchup/Image.rb +405 -468
  96. data/lib/sketchup-api-stubs/stubs/Sketchup/ImageRep.rb +266 -266
  97. data/lib/sketchup-api-stubs/stubs/Sketchup/Importer.rb +189 -189
  98. data/lib/sketchup-api-stubs/stubs/Sketchup/InputPoint.rb +432 -406
  99. data/lib/sketchup-api-stubs/stubs/Sketchup/InstanceObserver.rb +84 -84
  100. data/lib/sketchup-api-stubs/stubs/Sketchup/InstancePath.rb +307 -306
  101. data/lib/sketchup-api-stubs/stubs/Sketchup/Layer.rb +332 -326
  102. data/lib/sketchup-api-stubs/stubs/Sketchup/LayerFolder.rb +380 -422
  103. data/lib/sketchup-api-stubs/stubs/Sketchup/Layers.rb +409 -427
  104. data/lib/sketchup-api-stubs/stubs/Sketchup/LayersObserver.rb +241 -249
  105. data/lib/sketchup-api-stubs/stubs/Sketchup/Licensing/ExtensionLicense.rb +86 -86
  106. data/lib/sketchup-api-stubs/stubs/Sketchup/Licensing.rb +55 -48
  107. data/lib/sketchup-api-stubs/stubs/Sketchup/LineStyle.rb +24 -24
  108. data/lib/sketchup-api-stubs/stubs/Sketchup/LineStyles.rb +114 -114
  109. data/lib/sketchup-api-stubs/stubs/Sketchup/LoadHandler.rb +70 -0
  110. data/lib/sketchup-api-stubs/stubs/Sketchup/Loop.rb +137 -137
  111. data/lib/sketchup-api-stubs/stubs/Sketchup/Material.rb +1115 -414
  112. data/lib/sketchup-api-stubs/stubs/Sketchup/Materials.rb +330 -317
  113. data/lib/sketchup-api-stubs/stubs/Sketchup/MaterialsObserver.rb +142 -142
  114. data/lib/sketchup-api-stubs/stubs/Sketchup/Menu.rb +93 -93
  115. data/lib/sketchup-api-stubs/stubs/Sketchup/Model.rb +1714 -1652
  116. data/lib/sketchup-api-stubs/stubs/Sketchup/ModelObserver.rb +372 -357
  117. data/lib/sketchup-api-stubs/stubs/Sketchup/OptionsManager.rb +133 -130
  118. data/lib/sketchup-api-stubs/stubs/Sketchup/OptionsProvider.rb +271 -271
  119. data/lib/sketchup-api-stubs/stubs/Sketchup/OptionsProviderObserver.rb +58 -58
  120. data/lib/sketchup-api-stubs/stubs/Sketchup/Overlay.rb +463 -490
  121. data/lib/sketchup-api-stubs/stubs/Sketchup/OverlaysManager.rb +104 -116
  122. data/lib/sketchup-api-stubs/stubs/Sketchup/Page.rb +939 -797
  123. data/lib/sketchup-api-stubs/stubs/Sketchup/Pages.rb +388 -361
  124. data/lib/sketchup-api-stubs/stubs/Sketchup/PagesObserver.rb +77 -77
  125. data/lib/sketchup-api-stubs/stubs/Sketchup/PickHelper.rb +501 -478
  126. data/lib/sketchup-api-stubs/stubs/Sketchup/RegionalSettings.rb +43 -43
  127. data/lib/sketchup-api-stubs/stubs/Sketchup/RenderingOptions.rb +385 -361
  128. data/lib/sketchup-api-stubs/stubs/Sketchup/RenderingOptionsObserver.rb +45 -45
  129. data/lib/sketchup-api-stubs/stubs/Sketchup/SectionPlane.rb +150 -150
  130. data/lib/sketchup-api-stubs/stubs/Sketchup/Selection.rb +451 -458
  131. data/lib/sketchup-api-stubs/stubs/Sketchup/SelectionObserver.rb +115 -115
  132. data/lib/sketchup-api-stubs/stubs/Sketchup/Set.rb +211 -212
  133. data/lib/sketchup-api-stubs/stubs/Sketchup/ShadowInfo.rb +259 -255
  134. data/lib/sketchup-api-stubs/stubs/Sketchup/ShadowInfoObserver.rb +59 -59
  135. data/lib/sketchup-api-stubs/stubs/Sketchup/Skp.rb +40 -40
  136. data/lib/sketchup-api-stubs/stubs/Sketchup/Snap.rb +125 -0
  137. data/lib/sketchup-api-stubs/stubs/Sketchup/Style.rb +88 -69
  138. data/lib/sketchup-api-stubs/stubs/Sketchup/Styles.rb +263 -217
  139. data/lib/sketchup-api-stubs/stubs/Sketchup/Text.rb +283 -262
  140. data/lib/sketchup-api-stubs/stubs/Sketchup/Texture.rb +199 -217
  141. data/lib/sketchup-api-stubs/stubs/Sketchup/TextureWriter.rb +237 -237
  142. data/lib/sketchup-api-stubs/stubs/Sketchup/Tool.rb +924 -834
  143. data/lib/sketchup-api-stubs/stubs/Sketchup/Tools.rb +132 -132
  144. data/lib/sketchup-api-stubs/stubs/Sketchup/ToolsObserver.rb +156 -156
  145. data/lib/sketchup-api-stubs/stubs/Sketchup/UVHelper.rb +75 -75
  146. data/lib/sketchup-api-stubs/stubs/Sketchup/Vertex.rb +143 -142
  147. data/lib/sketchup-api-stubs/stubs/Sketchup/View.rb +1566 -1311
  148. data/lib/sketchup-api-stubs/stubs/Sketchup/ViewObserver.rb +71 -45
  149. data/lib/sketchup-api-stubs/stubs/Sketchup.rb +1429 -1377
  150. data/lib/sketchup-api-stubs/stubs/SketchupExtension.rb +353 -353
  151. data/lib/sketchup-api-stubs/stubs/String.rb +24 -24
  152. data/lib/sketchup-api-stubs/stubs/UI/Command.rb +399 -389
  153. data/lib/sketchup-api-stubs/stubs/UI/HtmlDialog.rb +580 -494
  154. data/lib/sketchup-api-stubs/stubs/UI/Notification.rb +280 -269
  155. data/lib/sketchup-api-stubs/stubs/UI/Toolbar.rb +258 -241
  156. data/lib/sketchup-api-stubs/stubs/UI/WebDialog.rb +636 -635
  157. data/lib/sketchup-api-stubs/stubs/UI.rb +791 -683
  158. data/lib/sketchup-api-stubs/stubs/_top_level.rb +303 -303
  159. data/lib/sketchup-api-stubs.rb +1 -1
  160. metadata +10 -24
@@ -1,282 +1,289 @@
1
- # Copyright:: Copyright 2023 Trimble Inc.
2
- # License:: The MIT License (MIT)
3
-
4
- # Http::Request objects allows you to send HTTP request to HTTP servers.
5
- #
6
- # @version SketchUp 2017
7
- class Sketchup::Http::Request
8
-
9
- # Instance Methods
10
-
11
- # Gets the HTTP body that is going to be used when sending the request.
12
- #
13
- # @example
14
- # @request = Sketchup::Http::Request.new("http://localhost:8080")
15
- #
16
- # @request.start do |request, response|
17
- # puts "body: #{request.body}"
18
- # end
19
- #
20
- # @return [String]
21
- #
22
- # @version SketchUp 2017
23
- def body
24
- end
25
-
26
- # Sets the HTTP body that is going to be used when sending the request.
27
- #
28
- # @example
29
- # @request = Sketchup::Http::Request.new("http://localhost:8080")
30
- # @request.body = "Hello World"
31
- #
32
- # @request.start do |request, response|
33
- # puts "body: #{request.body}"
34
- # end
35
- #
36
- # @param [String] body
37
- # A String containing the body.
38
- #
39
- # @return [String]
40
- #
41
- # @version SketchUp 2017
42
- def body=(body)
43
- end
44
-
45
- # Cancels the request.
46
- #
47
- # @example
48
- # @request = Sketchup::Http::Request.new("http://localhost:8080")
49
- # @request.start do |request, response|
50
- # puts "body: #{response.body}"
51
- # end
52
- #
53
- # @request.cancel
54
- #
55
- # @return [true]
56
- #
57
- # @version SketchUp 2017
58
- def cancel
59
- end
60
-
61
- # Returns the HTTP headers that are going to be used when sending the request.
62
- #
63
- # @example
64
- # @request = Sketchup::Http::Request.new("http://localhost:8080")
65
- # @request.headers = { :key1 => "value1", :key2 => "value2" }
66
- #
67
- # @request.headers.each do |key, value|
68
- # puts "#{key}: #{value}"
69
- # end
70
- #
71
- # @return [Hash]
72
- #
73
- # @version SketchUp 2017
74
- def headers
75
- end
76
-
77
- # Sets the HTTP headers that are going to be used when sending the request.
78
- #
79
- # @example
80
- # @request = Sketchup::Http::Request.new("http://localhost:8080")
81
- # @request.headers = { :key1 => "value1", :key2 => "value2" }
82
- #
83
- # @request.headers.each do |key, value|
84
- # puts "#{key}: #{value}"
85
- # end
86
- #
87
- # @param [Hash] headers
88
- # A key/value pair hash.
89
- #
90
- # @return [Boolean]
91
- #
92
- # @version SketchUp 2017
93
- def headers=(headers)
94
- end
95
-
96
- # The default port is 80, to use a different port define it in the URL when
97
- # creating a new {Sketchup::Http::Request}.
98
- #
99
- # The +method+ parameter accepts any custom HTTP method or one of the
100
- # following:
101
- # * +Sketchup::Http::GET+
102
- # * +Sketchup::Http::POST+
103
- # * +Sketchup::Http::PUT+
104
- # * +Sketchup::Http::DELETE+
105
- # * +Sketchup::Http::HEAD+
106
- # * +Sketchup::Http::OPTIONS+
107
- #
108
- # @example
109
- # @request = Sketchup::Http::Request.new("http://localhost:8080", Sketchup::Http::GET)
110
- #
111
- # @request.start do |request, response|
112
- # puts "body: #{response.body}"
113
- # end
114
- #
115
- # @note If no reference is kept to the {Sketchup::Http::Request}, it can be garbage collected,
116
- # making the download silently fail. This is especially noticeable for larger downloads that
117
- # takes longer time.
118
- #
119
- # @param [String] url
120
- #
121
- # @param [String] method
122
- #
123
- # @return [Sketchup::Http::Request]
124
- #
125
- # @version SketchUp 2017
126
- def initialize(url, method = Sketchup::Http::GET)
127
- end
128
-
129
- # Returns the HTTP method that is going to be used when sending the request.
130
- #
131
- # @example
132
- # @request = Sketchup::Http::Request.new("http://localhost:8080")
133
- #
134
- # @request.start do |request, response|
135
- # puts "request.method: #{request.method}"
136
- # end
137
- #
138
- # @return [String]
139
- #
140
- # @version SketchUp 2017
141
- def method
142
- end
143
-
144
- # Sets the HTTP method that is going to be used when sending the request.
145
- # The value can be any custom HTTP method or one of the following:
146
- # * +Sketchup::Http::GET+
147
- # * +Sketchup::Http::POST+
148
- # * +Sketchup::Http::PUT+
149
- # * +Sketchup::Http::DELETE+
150
- # * +Sketchup::Http::HEAD+
151
- # * +Sketchup::Http::OPTIONS+
152
- #
153
- # @example
154
- # @request = Sketchup::Http::Request.new("http://localhost:8080")
155
- # @request.method = Sketchup::Http::POST
156
- #
157
- # @request.start do |request, response|
158
- # puts "request.method: #{request.method}"
159
- # end
160
- #
161
- # @param [String] method
162
- # A string containing the HTTP method name.
163
- #
164
- # @return [Boolean]
165
- #
166
- # @version SketchUp 2017
167
- def method=(method)
168
- end
169
-
170
- # Adds a download progress callback block that will get called everytime we
171
- # have received data from the server until the download finishes.
172
- #
173
- # @example
174
- # @request = Sketchup::Http::Request.new("http://localhost:8080")
175
- #
176
- # @request.set_download_progress_callback do |current, total|
177
- # if total == -1
178
- # puts "#{current}B"
179
- # else
180
- # percentage = (current.to_f / total * 100).round
181
- # puts "#{current}B / #{total}B (#{percentage}%)"
182
- # end
183
- # end
184
- #
185
- # @request.start
186
- #
187
- # @note +total+ is -1 if the server doesn't specify a file size in the response header.
188
- #
189
- # @return [Boolean]
190
- #
191
- # @version SketchUp 2017
192
- #
193
- # @yield A block to be invoked everytime data is downloaded from the server.
194
- #
195
- # @yieldparam [Integer] current
196
- # Current bytes transferred.
197
- #
198
- # @yieldparam [Integer] total
199
- # Total bytes to transfer.
200
- def set_download_progress_callback
201
- end
202
-
203
- # Adds a upload progress callback block that will get called everytime we have
204
- # uploaded data to the server until the upload finishes.
205
- #
206
- # @example
207
- # @request = Sketchup::Http::Request.new("http://localhost:8080")
208
- #
209
- # @request.set_upload_progress_callback do |current, total|
210
- # puts "upload current: #{current}"
211
- # puts "upload total: #{total}"
212
- # end
213
- #
214
- # request.start
215
- #
216
- # @return [Boolean]
217
- #
218
- # @version SketchUp 2017
219
- #
220
- # @yield A block to be invoked everytime data is sent to the server.
221
- #
222
- # @yieldparam [Integer] current
223
- # Current bytes transferred.
224
- #
225
- # @yieldparam [Integer] total
226
- # Total bytes to transfer.
227
- def set_upload_progress_callback
228
- end
229
-
230
- # Starts the request with optionally a response callback block.
231
- #
232
- # @example
233
- # @request = Sketchup::Http::Request.new("http://localhost:8080")
234
- #
235
- # @request.start do |request, response|
236
- # puts "body: #{response.body}"
237
- # end
238
- #
239
- # @return [Boolean]
240
- #
241
- # @version SketchUp 2017
242
- #
243
- # @yieldparam [Sketchup::Http::Request] request
244
- #
245
- # @yieldparam [Sketchup::Http::Response] response
246
- def start
247
- end
248
-
249
- # Returns the internal status code. It can be one of the following:
250
- # * +Sketchup::Http::STATUS_UNKNOWN+
251
- # * +Sketchup::Http::STATUS_SUCCESS+
252
- # * +Sketchup::Http::STATUS_PENDING+
253
- # * +Sketchup::Http::STATUS_CANCELED+
254
- # * +Sketchup::Http::STATUS_FAILED+
255
- #
256
- # @example
257
- # @request = Sketchup::Http::Request.new("http://localhost:8080")
258
- # @request.start
259
- # puts "response.status: #{@request.status}"
260
- #
261
- # @return [Integer]
262
- #
263
- # @version SketchUp 2017
264
- def status
265
- end
266
-
267
- # Returns a copy of the Request's URL.
268
- #
269
- # @example
270
- # @request = Sketchup::Http::Request.new("http://localhost:8080")
271
- #
272
- # @request.start do |request, response|
273
- # puts "url: #{request.url}"
274
- # end
275
- #
276
- # @return [String]
277
- #
278
- # @version SketchUp 2017
279
- def url
280
- end
281
-
282
- end
1
+ # Copyright:: Copyright 2026 Trimble Inc.
2
+ # License:: The MIT License (MIT)
3
+
4
+ # {Sketchup::Http::Request} objects allows you to send HTTP request to HTTP servers.
5
+ #
6
+ # @version SketchUp 2017
7
+ class Sketchup::Http::Request
8
+
9
+ # Instance Methods
10
+
11
+ # Gets the HTTP body that is going to be used when sending the request.
12
+ #
13
+ # @example
14
+ # @request = Sketchup::Http::Request.new("http://localhost:8080")
15
+ #
16
+ # @request.start do |request, response|
17
+ # puts "body: #{request.body}"
18
+ # end
19
+ #
20
+ # @return [String]
21
+ #
22
+ # @version SketchUp 2017
23
+ def body
24
+ end
25
+
26
+ # Sets the HTTP body that is going to be used when sending the request.
27
+ #
28
+ # @example
29
+ # @request = Sketchup::Http::Request.new("http://localhost:8080")
30
+ # @request.body = "Hello World"
31
+ #
32
+ # @request.start do |request, response|
33
+ # puts "body: #{request.body}"
34
+ # end
35
+ #
36
+ # @param [String] body
37
+ # A String containing the body.
38
+ #
39
+ # @return [String]
40
+ #
41
+ # @version SketchUp 2017
42
+ def body=(body)
43
+ end
44
+
45
+ # Cancels the request.
46
+ #
47
+ # @example
48
+ # @request = Sketchup::Http::Request.new("http://localhost:8080")
49
+ # @request.start do |request, response|
50
+ # puts "body: #{response.body}"
51
+ # end
52
+ #
53
+ # @request.cancel
54
+ #
55
+ # @note Do not {#cancel} the request in the response callback.
56
+ #
57
+ # @return [true]
58
+ #
59
+ # @version SketchUp 2017
60
+ def cancel
61
+ end
62
+
63
+ # Returns the HTTP headers that are going to be used when sending the request.
64
+ #
65
+ # @example
66
+ # @request = Sketchup::Http::Request.new("http://localhost:8080")
67
+ # @request.headers = { :key1 => "value1", :key2 => "value2" }
68
+ #
69
+ # @request.headers.each do |key, value|
70
+ # puts "#{key}: #{value}"
71
+ # end
72
+ #
73
+ # @return [Hash]
74
+ #
75
+ # @version SketchUp 2017
76
+ def headers
77
+ end
78
+
79
+ # Sets the HTTP headers that are going to be used when sending the request.
80
+ #
81
+ # @example
82
+ # @request = Sketchup::Http::Request.new("http://localhost:8080")
83
+ # @request.headers = { :key1 => "value1", :key2 => "value2" }
84
+ #
85
+ # @request.headers.each do |key, value|
86
+ # puts "#{key}: #{value}"
87
+ # end
88
+ #
89
+ # @param [Hash] headers
90
+ # A key/value pair hash.
91
+ #
92
+ # @return [Boolean]
93
+ #
94
+ # @version SketchUp 2017
95
+ def headers=(headers)
96
+ end
97
+
98
+ # The default port is +80+, to use a different port define it in the URL when
99
+ # creating a new {Sketchup::Http::Request}.
100
+ #
101
+ # The {#method} parameter accepts any custom HTTP method or one of the
102
+ # following:
103
+ # - {Sketchup::Http::GET}
104
+ # - {Sketchup::Http::POST}
105
+ # - {Sketchup::Http::PUT}
106
+ # - {Sketchup::Http::DELETE}
107
+ # - {Sketchup::Http::HEAD}
108
+ # - {Sketchup::Http::OPTIONS}
109
+ #
110
+ # @example
111
+ # @request = Sketchup::Http::Request.new("http://localhost:8080", Sketchup::Http::GET)
112
+ #
113
+ # @request.start do |request, response|
114
+ # puts "body: #{response.body}"
115
+ # end
116
+ #
117
+ # @note If no reference is kept to the {Sketchup::Http::Request}, it can be garbage collected,
118
+ # making the download silently fail. This is especially noticeable for larger downloads that
119
+ # takes longer time.
120
+ #
121
+ # @note Do not {#cancel} the request in the response callback.
122
+ #
123
+ # @param [String] url
124
+ #
125
+ # @param [String] method
126
+ #
127
+ # @return [Sketchup::Http::Request]
128
+ #
129
+ # @version SketchUp 2017
130
+ def initialize(url, method = Sketchup::Http::GET)
131
+ end
132
+
133
+ # Returns the HTTP method that is going to be used when sending the request.
134
+ #
135
+ # @example
136
+ # @request = Sketchup::Http::Request.new("http://localhost:8080")
137
+ #
138
+ # @request.start do |request, response|
139
+ # puts "request.method: #{request.method}"
140
+ # end
141
+ #
142
+ # @return [String]
143
+ #
144
+ # @version SketchUp 2017
145
+ def method
146
+ end
147
+
148
+ # Sets the HTTP method that is going to be used when sending the request.
149
+ #
150
+ # The value can be any custom HTTP method or one of the following:
151
+ # - {Sketchup::Http::GET}
152
+ # - {Sketchup::Http::POST}
153
+ # - {Sketchup::Http::PUT}
154
+ # - {Sketchup::Http::DELETE}
155
+ # - {Sketchup::Http::HEAD}
156
+ # - {Sketchup::Http::OPTIONS}
157
+ #
158
+ # @example
159
+ # @request = Sketchup::Http::Request.new("http://localhost:8080")
160
+ # @request.method = Sketchup::Http::POST
161
+ #
162
+ # @request.start do |request, response|
163
+ # puts "request.method: #{request.method}"
164
+ # end
165
+ #
166
+ # @param [String] method
167
+ # A string containing the HTTP method name.
168
+ #
169
+ # @return [Boolean]
170
+ #
171
+ # @version SketchUp 2017
172
+ def method=(method)
173
+ end
174
+
175
+ # Adds a download progress callback block that will get called everytime we
176
+ # have received data from the server until the download finishes.
177
+ #
178
+ # @example
179
+ # @request = Sketchup::Http::Request.new("http://localhost:8080")
180
+ #
181
+ # @request.set_download_progress_callback do |current, total|
182
+ # if total == -1
183
+ # puts "#{current}B"
184
+ # else
185
+ # percentage = (current.to_f / total * 100).round
186
+ # puts "#{current}B / #{total}B (#{percentage}%)"
187
+ # end
188
+ # end
189
+ #
190
+ # @request.start
191
+ #
192
+ # @note +total+ is +-1+ if the server doesn't specify a file size in the response header.
193
+ #
194
+ # @return [Boolean]
195
+ #
196
+ # @version SketchUp 2017
197
+ #
198
+ # @yield A block to be invoked everytime data is downloaded from the server.
199
+ #
200
+ # @yieldparam [Integer] current
201
+ # Current bytes transferred.
202
+ #
203
+ # @yieldparam [Integer] total
204
+ # Total bytes to transfer.
205
+ def set_download_progress_callback
206
+ end
207
+
208
+ # Adds a upload progress callback block that will get called everytime we have
209
+ # uploaded data to the server until the upload finishes.
210
+ #
211
+ # @example
212
+ # @request = Sketchup::Http::Request.new("http://localhost:8080")
213
+ #
214
+ # @request.set_upload_progress_callback do |current, total|
215
+ # puts "upload current: #{current}"
216
+ # puts "upload total: #{total}"
217
+ # end
218
+ #
219
+ # request.start
220
+ #
221
+ # @return [Boolean]
222
+ #
223
+ # @version SketchUp 2017
224
+ #
225
+ # @yield A block to be invoked everytime data is sent to the server.
226
+ #
227
+ # @yieldparam [Integer] current
228
+ # Current bytes transferred.
229
+ #
230
+ # @yieldparam [Integer] total
231
+ # Total bytes to transfer.
232
+ def set_upload_progress_callback
233
+ end
234
+
235
+ # Starts the request with optionally a response callback block.
236
+ #
237
+ # @example
238
+ # @request = Sketchup::Http::Request.new("http://localhost:8080")
239
+ #
240
+ # @request.start do |request, response|
241
+ # puts "body: #{response.body}"
242
+ # end
243
+ #
244
+ # @note Do not {#cancel} the request in the response callback.
245
+ #
246
+ # @return [Boolean]
247
+ #
248
+ # @version SketchUp 2017
249
+ #
250
+ # @yieldparam [Sketchup::Http::Request] request
251
+ #
252
+ # @yieldparam [Sketchup::Http::Response] response
253
+ def start
254
+ end
255
+
256
+ # Returns the internal status code. It can be one of the following:
257
+ # * +Sketchup::Http::STATUS_UNKNOWN+
258
+ # * +Sketchup::Http::STATUS_SUCCESS+
259
+ # * +Sketchup::Http::STATUS_PENDING+
260
+ # * +Sketchup::Http::STATUS_CANCELED+
261
+ # * +Sketchup::Http::STATUS_FAILED+
262
+ #
263
+ # @example
264
+ # @request = Sketchup::Http::Request.new("http://localhost:8080")
265
+ # @request.start
266
+ # puts "response.status: #{@request.status}"
267
+ #
268
+ # @return [Integer]
269
+ #
270
+ # @version SketchUp 2017
271
+ def status
272
+ end
273
+
274
+ # Returns a copy of the Request's URL.
275
+ #
276
+ # @example
277
+ # @request = Sketchup::Http::Request.new("http://localhost:8080")
278
+ #
279
+ # @request.start do |request, response|
280
+ # puts "url: #{request.url}"
281
+ # end
282
+ #
283
+ # @return [String]
284
+ #
285
+ # @version SketchUp 2017
286
+ def url
287
+ end
288
+
289
+ end