001package Torello.Browser.BrowserAPI; 002 003// *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** 004// Java-HTML Imports 005// *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** 006 007import Torello.Browser.*; 008import Torello.Browser.helper.*; 009import Torello.Browser.JavaScriptAPI.*; 010import Torello.JSON.*; 011 012import Torello.Java.ReadOnly.ReadOnlyList; 013import Torello.Java.ReadOnly.ReadOnlyArrayList; 014 015import Torello.JavaDoc.Annotations.StaticFunctional; 016import Torello.JavaDoc.Annotations.JDHeaderBackgroundImg; 017 018 019// *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** 020// JDK Imports 021// *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** *** 022 023import javax.json.JsonObject; 024import javax.json.JsonValue; 025 026/** 027 * <SPAN CLASS=COPIEDJDK><B>This domain allows detailed inspection of media elements</B></SPAN> 028 * <EMBED CLASS='external-html' DATA-FILE-ID=CDP.CODE_GEN_NOTE> 029 */ 030@StaticFunctional@JDHeaderBackgroundImg(EmbedTagFileID="CDP.WOOD_PLANK_NOTE") 031public class Media 032{ 033 // No Pubic Constructors 034 private Media() { } 035 036 037 // ******************************************************************************************** 038 // ******************************************************************************************** 039 // Eliminated Types 040 // ******************************************************************************************** 041 // ******************************************************************************************** 042 043 044 /** 045 * Players will get an ID that is unique within the agent context. 046 047 * <EMBED CLASS='external-html' DATA-CTAS='String' DATA-FILE-ID=CDP.EliminatedType 048 * DATA-NAME=PlayerId> 049 */ 050 public static final String PlayerId = 051 "PlayerId has been eliminated.\n" + 052 "It was replaced with the standard Java-Type: String"; 053 054 /** 055 * <CODE>[No Description Provided by Google]</CODE> 056 057 * <EMBED CLASS='external-html' DATA-CTAS='Number' DATA-FILE-ID=CDP.EliminatedType 058 * DATA-NAME=Timestamp> 059 */ 060 public static final String Timestamp = 061 "Timestamp has been eliminated.\n" + 062 "It was replaced with the standard Java-Type: Number"; 063 064 065 066 // ******************************************************************************************** 067 // ******************************************************************************************** 068 // Basic Types 069 // ******************************************************************************************** 070 // ******************************************************************************************** 071 072 073 /** 074 * Corresponds to kMediaError 075 * 076 * <EMBED CLASS=globalDefs DATA-DOMAIN=Media DATA-API=BrowserAPI> 077 */ 078 @JDHeaderBackgroundImg(EmbedTagFileID="CDP.NESTED_TYPE_JDHBI") 079 public static class PlayerError 080 extends BaseType<PlayerError> 081 implements java.io.Serializable 082 { 083 /** <EMBED CLASS='external-html' DATA-FILE-ID=SVUID> */ 084 protected static final long serialVersionUID = 1; 085 086 private static final NestedHelper<Media.PlayerError> singleton = 087 Torello.Browser.BrowserAPI.NestedHelpers.Types. 088 Media$$PlayerError$$.singleton; 089 090 /** <CODE>[No Description Provided by Google]</CODE> */ 091 public final String errorType; 092 093 /** 094 * Code is the numeric enum entry for a specific set of error codes, such 095 * as PipelineStatusCodes in media/base/pipeline_status.h 096 */ 097 public final int code; 098 099 /** A trace of where this error was caused / where it passed through. */ 100 public final Media.PlayerErrorSourceLocation[] stack; 101 102 /** 103 * Errors potentially have a root cause error, ie, a DecoderError might be 104 * caused by an WindowsError 105 */ 106 public final Media.PlayerError[] cause; 107 108 /** Extra data attached to an error, such as an HRESULT, Video Codec, etc. */ 109 public final JsonValue data; 110 111 /** Constructor. Please review this class' fields for documentation. */ 112 public PlayerError( 113 ReadOnlyList<Boolean> isPresent, String errorType, int code, 114 PlayerErrorSourceLocation[] stack, PlayerError[] cause, JsonValue data 115 ) 116 { 117 super(singleton, Domains.Media, "PlayerError", 5); 118 119 this.errorType = errorType; 120 this.code = code; 121 this.stack = stack; 122 this.cause = cause; 123 this.data = data; 124 125 this.isPresent = (isPresent == null) 126 ? singleton.generateIsPresentList(this) 127 : THROWS.check(isPresent, 5, "Media.PlayerError"); 128 } 129 130 /** Creates an instance of this class from a {@link JsonObject}.*/ 131 public static PlayerError fromJSON(JsonObject jo) 132 { return singleton.fromJSON(jo); } 133 134 /** Returns this class's {@link NestedDescriptor} singleton-instance. class / type.*/ 135 public static NestedDescriptor<PlayerError> descriptor() 136 { return singleton.descriptor(); } 137 } 138 139 /** 140 * Represents logged source line numbers reported in an error. 141 * NOTE: file and line are from chromium c++ implementation code, not js. 142 * 143 * <EMBED CLASS=globalDefs DATA-DOMAIN=Media DATA-API=BrowserAPI> 144 */ 145 @JDHeaderBackgroundImg(EmbedTagFileID="CDP.NESTED_TYPE_JDHBI") 146 public static class PlayerErrorSourceLocation 147 extends BaseType<PlayerErrorSourceLocation> 148 implements java.io.Serializable 149 { 150 /** <EMBED CLASS='external-html' DATA-FILE-ID=SVUID> */ 151 protected static final long serialVersionUID = 1; 152 153 private static final NestedHelper<Media.PlayerErrorSourceLocation> singleton = 154 Torello.Browser.BrowserAPI.NestedHelpers.Types. 155 Media$$PlayerErrorSourceLocation$$.singleton; 156 157 /** <CODE>[No Description Provided by Google]</CODE> */ 158 public final String file; 159 160 /** <CODE>[No Description Provided by Google]</CODE> */ 161 public final int line; 162 163 /** Constructor. Please review this class' fields for documentation. */ 164 public PlayerErrorSourceLocation(ReadOnlyList<Boolean> isPresent, String file, int line) 165 { 166 super(singleton, Domains.Media, "PlayerErrorSourceLocation", 2); 167 168 this.file = file; 169 this.line = line; 170 171 this.isPresent = (isPresent == null) 172 ? singleton.generateIsPresentList(this) 173 : THROWS.check(isPresent, 2, "Media.PlayerErrorSourceLocation"); 174 } 175 176 /** Creates an instance of this class from a {@link JsonObject}.*/ 177 public static PlayerErrorSourceLocation fromJSON(JsonObject jo) 178 { return singleton.fromJSON(jo); } 179 180 /** Returns this class's {@link NestedDescriptor} singleton-instance. class / type.*/ 181 public static NestedDescriptor<PlayerErrorSourceLocation> descriptor() 182 { return singleton.descriptor(); } 183 } 184 185 /** 186 * Corresponds to kMediaEventTriggered 187 * 188 * <EMBED CLASS=globalDefs DATA-DOMAIN=Media DATA-API=BrowserAPI> 189 */ 190 @JDHeaderBackgroundImg(EmbedTagFileID="CDP.NESTED_TYPE_JDHBI") 191 public static class PlayerEvent 192 extends BaseType<PlayerEvent> 193 implements java.io.Serializable 194 { 195 /** <EMBED CLASS='external-html' DATA-FILE-ID=SVUID> */ 196 protected static final long serialVersionUID = 1; 197 198 private static final NestedHelper<Media.PlayerEvent> singleton = 199 Torello.Browser.BrowserAPI.NestedHelpers.Types. 200 Media$$PlayerEvent$$.singleton; 201 202 /** <CODE>[No Description Provided by Google]</CODE> */ 203 public final Number timestamp; 204 205 /** <CODE>[No Description Provided by Google]</CODE> */ 206 public final String value; 207 208 /** Constructor. Please review this class' fields for documentation. */ 209 public PlayerEvent(ReadOnlyList<Boolean> isPresent, Number timestamp, String value) 210 { 211 super(singleton, Domains.Media, "PlayerEvent", 2); 212 213 this.timestamp = timestamp; 214 this.value = value; 215 216 this.isPresent = (isPresent == null) 217 ? singleton.generateIsPresentList(this) 218 : THROWS.check(isPresent, 2, "Media.PlayerEvent"); 219 } 220 221 /** Creates an instance of this class from a {@link JsonObject}.*/ 222 public static PlayerEvent fromJSON(JsonObject jo) 223 { return singleton.fromJSON(jo); } 224 225 /** Returns this class's {@link NestedDescriptor} singleton-instance. class / type.*/ 226 public static NestedDescriptor<PlayerEvent> descriptor() 227 { return singleton.descriptor(); } 228 } 229 230 /** 231 * Have one type per entry in MediaLogRecord::Type 232 * Corresponds to kMessage 233 * 234 * <EMBED CLASS=globalDefs DATA-DOMAIN=Media DATA-API=BrowserAPI> 235 */ 236 @JDHeaderBackgroundImg(EmbedTagFileID="CDP.NESTED_TYPE_JDHBI") 237 public static class PlayerMessage 238 extends BaseType<PlayerMessage> 239 implements java.io.Serializable 240 { 241 /** <EMBED CLASS='external-html' DATA-FILE-ID=SVUID> */ 242 protected static final long serialVersionUID = 1; 243 244 private static final NestedHelper<Media.PlayerMessage> singleton = 245 Torello.Browser.BrowserAPI.NestedHelpers.Types. 246 Media$$PlayerMessage$$.singleton; 247 248 /** 249 * Keep in sync with MediaLogMessageLevel 250 * We are currently keeping the message level 'error' separate from the 251 * PlayerError type because right now they represent different things, 252 * this one being a DVLOG(ERROR) style log message that gets printed 253 * based on what log level is selected in the UI, and the other is a 254 * representation of a media::PipelineStatus object. Soon however we're 255 * going to be moving away from using PipelineStatus for errors and 256 * introducing a new error type which should hopefully let us integrate 257 * the error log level into the PlayerError type. 258 * <EMBED CLASS='external-html' DATA-D=Media DATA-C=PlayerMessage DATA-F=level DATA-FILE-ID=CDP.EL1> 259 * @see BaseType#enumStrList(String) 260 */ 261 public final String level; 262 263 /** <CODE>[No Description Provided by Google]</CODE> */ 264 public final String message; 265 266 /** Constructor. Please review this class' fields for documentation. */ 267 public PlayerMessage(ReadOnlyList<Boolean> isPresent, String level, String message) 268 { 269 super(singleton, Domains.Media, "PlayerMessage", 2); 270 271 this.level = level; 272 this.message = message; 273 274 this.isPresent = (isPresent == null) 275 ? singleton.generateIsPresentList(this) 276 : THROWS.check(isPresent, 2, "Media.PlayerMessage"); 277 } 278 279 /** Creates an instance of this class from a {@link JsonObject}.*/ 280 public static PlayerMessage fromJSON(JsonObject jo) 281 { return singleton.fromJSON(jo); } 282 283 /** Returns this class's {@link NestedDescriptor} singleton-instance. class / type.*/ 284 public static NestedDescriptor<PlayerMessage> descriptor() 285 { return singleton.descriptor(); } 286 } 287 288 /** 289 * Corresponds to kMediaPropertyChange 290 * 291 * <EMBED CLASS=globalDefs DATA-DOMAIN=Media DATA-API=BrowserAPI> 292 */ 293 @JDHeaderBackgroundImg(EmbedTagFileID="CDP.NESTED_TYPE_JDHBI") 294 public static class PlayerProperty 295 extends BaseType<PlayerProperty> 296 implements java.io.Serializable 297 { 298 /** <EMBED CLASS='external-html' DATA-FILE-ID=SVUID> */ 299 protected static final long serialVersionUID = 1; 300 301 private static final NestedHelper<Media.PlayerProperty> singleton = 302 Torello.Browser.BrowserAPI.NestedHelpers.Types. 303 Media$$PlayerProperty$$.singleton; 304 305 /** <CODE>[No Description Provided by Google]</CODE> */ 306 public final String name; 307 308 /** <CODE>[No Description Provided by Google]</CODE> */ 309 public final String value; 310 311 /** Constructor. Please review this class' fields for documentation. */ 312 public PlayerProperty(ReadOnlyList<Boolean> isPresent, String name, String value) 313 { 314 super(singleton, Domains.Media, "PlayerProperty", 2); 315 316 this.name = name; 317 this.value = value; 318 319 this.isPresent = (isPresent == null) 320 ? singleton.generateIsPresentList(this) 321 : THROWS.check(isPresent, 2, "Media.PlayerProperty"); 322 } 323 324 /** Creates an instance of this class from a {@link JsonObject}.*/ 325 public static PlayerProperty fromJSON(JsonObject jo) 326 { return singleton.fromJSON(jo); } 327 328 /** Returns this class's {@link NestedDescriptor} singleton-instance. class / type.*/ 329 public static NestedDescriptor<PlayerProperty> descriptor() 330 { return singleton.descriptor(); } 331 } 332 333 334 // ******************************************************************************************** 335 // ******************************************************************************************** 336 // Event Types 337 // ******************************************************************************************** 338 // ******************************************************************************************** 339 340 341 /** 342 * Send a list of any errors that need to be delivered. 343 * 344 * <EMBED CLASS=globalDefs DATA-DOMAIN=Media DATA-API=BrowserAPI> 345 */ 346 @JDHeaderBackgroundImg(EmbedTagFileID="CDP.NESTED_EVENT_JDHBI") 347 public static class playerErrorsRaised 348 extends BrowserEvent<playerErrorsRaised> 349 implements java.io.Serializable 350 { 351 /** <EMBED CLASS='external-html' DATA-FILE-ID=SVUID> */ 352 protected static final long serialVersionUID = 1; 353 354 private static final NestedHelper<Media.playerErrorsRaised> singleton = 355 Torello.Browser.BrowserAPI.NestedHelpers.Events. 356 Media$$playerErrorsRaised$$.singleton; 357 358 /** <CODE>[No Description Provided by Google]</CODE> */ 359 public final String playerId; 360 361 /** <CODE>[No Description Provided by Google]</CODE> */ 362 public final Media.PlayerError[] errors; 363 364 /** Constructor. Please review this class' fields for documentation. */ 365 public playerErrorsRaised 366 (ReadOnlyList<Boolean> isPresent, String playerId, PlayerError[] errors) 367 { 368 super(singleton, Domains.Media, "playerErrorsRaised", 2); 369 370 this.playerId = playerId; 371 this.errors = errors; 372 373 this.isPresent = (isPresent == null) 374 ? singleton.generateIsPresentList(this) 375 : THROWS.check(isPresent, 2, "Media.playerErrorsRaised"); 376 } 377 378 /** Creates an instance of this class from a {@link JsonObject}.*/ 379 public static playerErrorsRaised fromJSON(JsonObject jo) 380 { return singleton.fromJSON(jo); } 381 382 /** Returns this class's {@link NestedDescriptor} singleton-instance. class / type.*/ 383 public static NestedDescriptor<playerErrorsRaised> descriptor() 384 { return singleton.descriptor(); } 385 } 386 387 /** 388 * Send events as a list, allowing them to be batched on the browser for less 389 * congestion. If batched, events must ALWAYS be in chronological order. 390 * 391 * <EMBED CLASS=globalDefs DATA-DOMAIN=Media DATA-API=BrowserAPI> 392 */ 393 @JDHeaderBackgroundImg(EmbedTagFileID="CDP.NESTED_EVENT_JDHBI") 394 public static class playerEventsAdded 395 extends BrowserEvent<playerEventsAdded> 396 implements java.io.Serializable 397 { 398 /** <EMBED CLASS='external-html' DATA-FILE-ID=SVUID> */ 399 protected static final long serialVersionUID = 1; 400 401 private static final NestedHelper<Media.playerEventsAdded> singleton = 402 Torello.Browser.BrowserAPI.NestedHelpers.Events. 403 Media$$playerEventsAdded$$.singleton; 404 405 /** <CODE>[No Description Provided by Google]</CODE> */ 406 public final String playerId; 407 408 /** <CODE>[No Description Provided by Google]</CODE> */ 409 public final Media.PlayerEvent[] events; 410 411 /** Constructor. Please review this class' fields for documentation. */ 412 public playerEventsAdded 413 (ReadOnlyList<Boolean> isPresent, String playerId, PlayerEvent[] events) 414 { 415 super(singleton, Domains.Media, "playerEventsAdded", 2); 416 417 this.playerId = playerId; 418 this.events = events; 419 420 this.isPresent = (isPresent == null) 421 ? singleton.generateIsPresentList(this) 422 : THROWS.check(isPresent, 2, "Media.playerEventsAdded"); 423 } 424 425 /** Creates an instance of this class from a {@link JsonObject}.*/ 426 public static playerEventsAdded fromJSON(JsonObject jo) 427 { return singleton.fromJSON(jo); } 428 429 /** Returns this class's {@link NestedDescriptor} singleton-instance. class / type.*/ 430 public static NestedDescriptor<playerEventsAdded> descriptor() 431 { return singleton.descriptor(); } 432 } 433 434 /** 435 * Send a list of any messages that need to be delivered. 436 * 437 * <EMBED CLASS=globalDefs DATA-DOMAIN=Media DATA-API=BrowserAPI> 438 */ 439 @JDHeaderBackgroundImg(EmbedTagFileID="CDP.NESTED_EVENT_JDHBI") 440 public static class playerMessagesLogged 441 extends BrowserEvent<playerMessagesLogged> 442 implements java.io.Serializable 443 { 444 /** <EMBED CLASS='external-html' DATA-FILE-ID=SVUID> */ 445 protected static final long serialVersionUID = 1; 446 447 private static final NestedHelper<Media.playerMessagesLogged> singleton = 448 Torello.Browser.BrowserAPI.NestedHelpers.Events. 449 Media$$playerMessagesLogged$$.singleton; 450 451 /** <CODE>[No Description Provided by Google]</CODE> */ 452 public final String playerId; 453 454 /** <CODE>[No Description Provided by Google]</CODE> */ 455 public final Media.PlayerMessage[] messages; 456 457 /** Constructor. Please review this class' fields for documentation. */ 458 public playerMessagesLogged 459 (ReadOnlyList<Boolean> isPresent, String playerId, PlayerMessage[] messages) 460 { 461 super(singleton, Domains.Media, "playerMessagesLogged", 2); 462 463 this.playerId = playerId; 464 this.messages = messages; 465 466 this.isPresent = (isPresent == null) 467 ? singleton.generateIsPresentList(this) 468 : THROWS.check(isPresent, 2, "Media.playerMessagesLogged"); 469 } 470 471 /** Creates an instance of this class from a {@link JsonObject}.*/ 472 public static playerMessagesLogged fromJSON(JsonObject jo) 473 { return singleton.fromJSON(jo); } 474 475 /** Returns this class's {@link NestedDescriptor} singleton-instance. class / type.*/ 476 public static NestedDescriptor<playerMessagesLogged> descriptor() 477 { return singleton.descriptor(); } 478 } 479 480 /** 481 * This can be called multiple times, and can be used to set / override / 482 * remove player properties. A null propValue indicates removal. 483 * 484 * <EMBED CLASS=globalDefs DATA-DOMAIN=Media DATA-API=BrowserAPI> 485 */ 486 @JDHeaderBackgroundImg(EmbedTagFileID="CDP.NESTED_EVENT_JDHBI") 487 public static class playerPropertiesChanged 488 extends BrowserEvent<playerPropertiesChanged> 489 implements java.io.Serializable 490 { 491 /** <EMBED CLASS='external-html' DATA-FILE-ID=SVUID> */ 492 protected static final long serialVersionUID = 1; 493 494 private static final NestedHelper<Media.playerPropertiesChanged> singleton = 495 Torello.Browser.BrowserAPI.NestedHelpers.Events. 496 Media$$playerPropertiesChanged$$.singleton; 497 498 /** <CODE>[No Description Provided by Google]</CODE> */ 499 public final String playerId; 500 501 /** <CODE>[No Description Provided by Google]</CODE> */ 502 public final Media.PlayerProperty[] properties; 503 504 /** Constructor. Please review this class' fields for documentation. */ 505 public playerPropertiesChanged 506 (ReadOnlyList<Boolean> isPresent, String playerId, PlayerProperty[] properties) 507 { 508 super(singleton, Domains.Media, "playerPropertiesChanged", 2); 509 510 this.playerId = playerId; 511 this.properties = properties; 512 513 this.isPresent = (isPresent == null) 514 ? singleton.generateIsPresentList(this) 515 : THROWS.check(isPresent, 2, "Media.playerPropertiesChanged"); 516 } 517 518 /** Creates an instance of this class from a {@link JsonObject}.*/ 519 public static playerPropertiesChanged fromJSON(JsonObject jo) 520 { return singleton.fromJSON(jo); } 521 522 /** Returns this class's {@link NestedDescriptor} singleton-instance. class / type.*/ 523 public static NestedDescriptor<playerPropertiesChanged> descriptor() 524 { return singleton.descriptor(); } 525 } 526 527 /** 528 * Called whenever a player is created, or when a new agent joins and receives 529 * a list of active players. If an agent is restored, it will receive the full 530 * list of player ids and all events again. 531 * 532 * <EMBED CLASS=globalDefs DATA-DOMAIN=Media DATA-API=BrowserAPI> 533 */ 534 @JDHeaderBackgroundImg(EmbedTagFileID="CDP.NESTED_EVENT_JDHBI") 535 public static class playersCreated 536 extends BrowserEvent<playersCreated> 537 implements java.io.Serializable 538 { 539 /** <EMBED CLASS='external-html' DATA-FILE-ID=SVUID> */ 540 protected static final long serialVersionUID = 1; 541 542 private static final NestedHelper<Media.playersCreated> singleton = 543 Torello.Browser.BrowserAPI.NestedHelpers.Events. 544 Media$$playersCreated$$.singleton; 545 546 /** <CODE>[No Description Provided by Google]</CODE> */ 547 public final String[] players; 548 549 /** Constructor. Please review this class' fields for documentation. */ 550 public playersCreated(ReadOnlyList<Boolean> isPresent, String[] players) 551 { 552 super(singleton, Domains.Media, "playersCreated", 1); 553 554 this.players = players; 555 556 this.isPresent = (isPresent == null) 557 ? singleton.generateIsPresentList(this) 558 : THROWS.check(isPresent, 1, "Media.playersCreated"); 559 } 560 561 /** Creates an instance of this class from a {@link JsonObject}.*/ 562 public static playersCreated fromJSON(JsonObject jo) 563 { return singleton.fromJSON(jo); } 564 565 /** Returns this class's {@link NestedDescriptor} singleton-instance. class / type.*/ 566 public static NestedDescriptor<playersCreated> descriptor() 567 { return singleton.descriptor(); } 568 } 569 570 571 572 573 // ******************************************************************************************** 574 // ******************************************************************************************** 575 // Commands 576 // ******************************************************************************************** 577 // ******************************************************************************************** 578 579 580 /** 581 * Disables the Media domain. 582 * 583 * @return An instance of <CODE>{@link Script}<Void></CODE> 584 * 585 * <BR /><BR />This {@code Script} instance must be <B STYLE='color:red'>executed</B> before the 586 * browser receives the invocation-request. 587 * 588 * <BR /><BR /><DIV CLASS=JDHint> 589 * This Browser-Function <I>does not have</I> a return-value. You may choose to 590 * <B STYLE='color: red'>await</B> the {@link Promise}{@code <Void>} to ensure that 591 * the Browser Function has run to completion. 592 * </DIV> 593 */ 594 public static Script<Void> disable() 595 { 596 // Ultra-Simple Request JSON - Because this method has no parameters 597 final String requestJSON = "{\"method\":\"Media.disable\"}"; 598 599 return Script.NO_RET(Domains.Media, "disable", requestJSON); 600 } 601 602 /** 603 * Enables the Media domain 604 * 605 * @return An instance of <CODE>{@link Script}<Void></CODE> 606 * 607 * <BR /><BR />This {@code Script} instance must be <B STYLE='color:red'>executed</B> before the 608 * browser receives the invocation-request. 609 * 610 * <BR /><BR /><DIV CLASS=JDHint> 611 * This Browser-Function <I>does not have</I> a return-value. You may choose to 612 * <B STYLE='color: red'>await</B> the {@link Promise}{@code <Void>} to ensure that 613 * the Browser Function has run to completion. 614 * </DIV> 615 */ 616 public static Script<Void> enable() 617 { 618 // Ultra-Simple Request JSON - Because this method has no parameters 619 final String requestJSON = "{\"method\":\"Media.enable\"}"; 620 621 return Script.NO_RET(Domains.Media, "enable", requestJSON); 622 } 623 624 625}