001// ***************************************************************************************************************************
002// * Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements.  See the NOTICE file *
003// * distributed with this work for additional information regarding copyright ownership.  The ASF licenses this file        *
004// * to you under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance            *
005// * with the License.  You may obtain a copy of the License at                                                              *
006// *                                                                                                                         *
007// *  http://www.apache.org/licenses/LICENSE-2.0                                                                             *
008// *                                                                                                                         *
009// * Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an  *
010// * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.  See the License for the        *
011// * specific language governing permissions and limitations under the License.                                              *
012// ***************************************************************************************************************************
013package org.apache.juneau.dto.html5;
014
015import java.net.*;
016
017import org.apache.juneau.*;
018import org.apache.juneau.annotation.*;
019import org.apache.juneau.internal.*;
020
021/**
022 * DTO for an HTML <a class="doclink" href="https://www.w3.org/TR/html5/embedded-content-0.html#the-video-element">&lt;video&gt;</a>
023 * element.
024 *
025 * <h5 class='section'>See Also:</h5><ul>
026 *    <li class='link'><a class="doclink" href="../../../../../index.html#jd.Html5">Overview &gt; juneau-dto &gt; HTML5</a>
027 * </ul>
028 */
029@Bean(typeName="video")
030@FluentSetters
031public class Video extends HtmlElementContainer {
032
033   /**
034    * Creates an empty {@link Video} element.
035    */
036   public Video() {}
037
038   /**
039    * Creates a {@link Video} element with the specified {@link Video#src(Object)} attribute.
040    *
041    * @param src The {@link Video#src(Object)} attribute.
042    */
043   public Video(Object src) {
044      src(src);
045   }
046
047   /**
048    * <a class="doclink" href="https://www.w3.org/TR/html5/embedded-content-0.html#attr-media-autoplay">autoplay</a>
049    * attribute.
050    *
051    * <p>
052    * Hint that the media resource can be started automatically when the page is loaded.
053    *
054    * @param autoplay
055    *    The new value for this attribute.
056    *    Typically a {@link Boolean} or {@link String}.
057    * @return This object.
058    */
059   public final Video autoplay(Object autoplay) {
060      attr("autoplay", deminimize(autoplay, "autoplay"));
061      return this;
062   }
063
064   /**
065    * <a class="doclink" href="https://www.w3.org/TR/html5/embedded-content-0.html#attr-media-controls">controls</a>
066    * attribute.
067    *
068    * <p>
069    * Show user agent controls.
070    *
071    * @param controls
072    *    The new value for this attribute.
073    *    Typically a {@link Boolean} or {@link String}.
074    * @return This object.
075    */
076   public final Video controls(Object controls) {
077      attr("controls", deminimize(controls, "controls"));
078      return this;
079   }
080
081   /**
082    * <a class="doclink" href="https://www.w3.org/TR/html5/embedded-content-0.html#attr-media-crossorigin">crossorigin</a>
083    * attribute.
084    *
085    * <p>
086    * How the element handles cross-origin requests.
087    *
088    * @param crossorigin The new value for this attribute.
089    * @return This object.
090    */
091   public final Video crossorigin(String crossorigin) {
092      attr("crossorigin", crossorigin);
093      return this;
094   }
095
096   /**
097    * <a class="doclink" href="https://www.w3.org/TR/html5/embedded-content-0.html#attr-dim-height">height</a>
098    * attribute.
099    *
100    * <p>
101    * Vertical dimension.
102    *
103    * @param height
104    *    The new value for this attribute.
105    *    Typically a {@link Number} or {@link String}.
106    * @return This object.
107    */
108   public final Video height(Object height) {
109      attr("height", height);
110      return this;
111   }
112
113   /**
114    * <a class="doclink" href="https://www.w3.org/TR/html5/embedded-content-0.html#attr-media-loop">loop</a> attribute.
115    *
116    * <p>
117    * Whether to loop the media resource.
118    *
119    * @param loop
120    *    The new value for this attribute.
121    *    Typically a {@link Boolean} or {@link String}.
122    * @return This object.
123    */
124   public final Video loop(Object loop) {
125      attr("loop", loop);
126      return this;
127   }
128
129   /**
130    * <a class="doclink" href="https://www.w3.org/TR/html5/embedded-content-0.html#attr-media-mediagroup">mediagroup</a>
131    * attribute.
132    *
133    * <p>
134    * Groups media elements together with an implicit MediaController.
135    *
136    * @param mediagroup The new value for this attribute.
137    * @return This object.
138    */
139   public final Video mediagroup(String mediagroup) {
140      attr("mediagroup", mediagroup);
141      return this;
142   }
143
144   /**
145    * <a class="doclink" href="https://www.w3.org/TR/html5/embedded-content-0.html#attr-media-muted">muted</a>
146    * attribute.
147    *
148    * <p>
149    * Whether to mute the media resource by default.
150    *
151    * @param muted
152    *    The new value for this attribute.
153    *    Typically a {@link Boolean} or {@link String}.
154    * @return This object.
155    */
156   public final Video muted(Object muted) {
157      attr("muted", muted);
158      return this;
159   }
160
161   /**
162    * <a class="doclink" href="https://www.w3.org/TR/html5/embedded-content-0.html#attr-video-poster">poster</a>
163    * attribute.
164    *
165    * <p>
166    * Poster frame to show prior to video playback.
167    *
168    * @param poster The new value for this attribute.
169    * @return This object.
170    */
171   public final Video poster(String poster) {
172      attr("poster", poster);
173      return this;
174   }
175
176   /**
177    * <a class="doclink" href="https://www.w3.org/TR/html5/embedded-content-0.html#attr-media-preload">preload</a>
178    * attribute.
179    *
180    * <p>
181    * Hints how much buffering the media resource will likely need.
182    *
183    * @param preload The new value for this attribute.
184    * @return This object.
185    */
186   public final Video preload(String preload) {
187      attr("preload", preload);
188      return this;
189   }
190
191   /**
192    * <a class="doclink" href="https://www.w3.org/TR/html5/embedded-content-0.html#attr-media-src">src</a> attribute.
193    *
194    * <p>
195    * Address of the resource.
196    *
197    * <p>
198    * The value can be of any of the following types: {@link URI}, {@link URL}, {@link String}.
199    * Strings must be valid URIs.
200    *
201    * <p>
202    * URIs defined by {@link UriResolver} can be used for values.
203    *
204    * @param src
205    *    The new value for this attribute.
206    *    Typically a {@link URL} or {@link String}.
207    * @return This object.
208    */
209   public final Video src(Object src) {
210      attrUri("src", src);
211      return this;
212   }
213
214   /**
215    * <a class="doclink" href="https://www.w3.org/TR/html5/embedded-content-0.html#attr-dim-width">width</a> attribute.
216    *
217    * <p>
218    * Horizontal dimension.
219    *
220    * @param width
221    *    The new value for this attribute.
222    *    Typically a {@link Number} or {@link String}.
223    * @return This object.
224    */
225   public final Video width(Object width) {
226      attr("width", width);
227      return this;
228   }
229
230
231   //-----------------------------------------------------------------------------------------------------------------
232   // Overridden methods
233   //-----------------------------------------------------------------------------------------------------------------
234
235   // <FluentSetters>
236
237   @Override /* GENERATED - org.apache.juneau.dto.html5.HtmlElement */
238   public Video _class(String _class) {
239      super._class(_class);
240      return this;
241   }
242
243   @Override /* GENERATED - org.apache.juneau.dto.html5.HtmlElement */
244   public Video accesskey(String accesskey) {
245      super.accesskey(accesskey);
246      return this;
247   }
248
249   @Override /* GENERATED - org.apache.juneau.dto.html5.HtmlElement */
250   public Video contenteditable(Object contenteditable) {
251      super.contenteditable(contenteditable);
252      return this;
253   }
254
255   @Override /* GENERATED - org.apache.juneau.dto.html5.HtmlElement */
256   public Video dir(String dir) {
257      super.dir(dir);
258      return this;
259   }
260
261   @Override /* GENERATED - org.apache.juneau.dto.html5.HtmlElement */
262   public Video hidden(Object hidden) {
263      super.hidden(hidden);
264      return this;
265   }
266
267   @Override /* GENERATED - org.apache.juneau.dto.html5.HtmlElement */
268   public Video id(String id) {
269      super.id(id);
270      return this;
271   }
272
273   @Override /* GENERATED - org.apache.juneau.dto.html5.HtmlElement */
274   public Video lang(String lang) {
275      super.lang(lang);
276      return this;
277   }
278
279   @Override /* GENERATED - org.apache.juneau.dto.html5.HtmlElement */
280   public Video onabort(String onabort) {
281      super.onabort(onabort);
282      return this;
283   }
284
285   @Override /* GENERATED - org.apache.juneau.dto.html5.HtmlElement */
286   public Video onblur(String onblur) {
287      super.onblur(onblur);
288      return this;
289   }
290
291   @Override /* GENERATED - org.apache.juneau.dto.html5.HtmlElement */
292   public Video oncancel(String oncancel) {
293      super.oncancel(oncancel);
294      return this;
295   }
296
297   @Override /* GENERATED - org.apache.juneau.dto.html5.HtmlElement */
298   public Video oncanplay(String oncanplay) {
299      super.oncanplay(oncanplay);
300      return this;
301   }
302
303   @Override /* GENERATED - org.apache.juneau.dto.html5.HtmlElement */
304   public Video oncanplaythrough(String oncanplaythrough) {
305      super.oncanplaythrough(oncanplaythrough);
306      return this;
307   }
308
309   @Override /* GENERATED - org.apache.juneau.dto.html5.HtmlElement */
310   public Video onchange(String onchange) {
311      super.onchange(onchange);
312      return this;
313   }
314
315   @Override /* GENERATED - org.apache.juneau.dto.html5.HtmlElement */
316   public Video onclick(String onclick) {
317      super.onclick(onclick);
318      return this;
319   }
320
321   @Override /* GENERATED - org.apache.juneau.dto.html5.HtmlElement */
322   public Video oncuechange(String oncuechange) {
323      super.oncuechange(oncuechange);
324      return this;
325   }
326
327   @Override /* GENERATED - org.apache.juneau.dto.html5.HtmlElement */
328   public Video ondblclick(String ondblclick) {
329      super.ondblclick(ondblclick);
330      return this;
331   }
332
333   @Override /* GENERATED - org.apache.juneau.dto.html5.HtmlElement */
334   public Video ondurationchange(String ondurationchange) {
335      super.ondurationchange(ondurationchange);
336      return this;
337   }
338
339   @Override /* GENERATED - org.apache.juneau.dto.html5.HtmlElement */
340   public Video onemptied(String onemptied) {
341      super.onemptied(onemptied);
342      return this;
343   }
344
345   @Override /* GENERATED - org.apache.juneau.dto.html5.HtmlElement */
346   public Video onended(String onended) {
347      super.onended(onended);
348      return this;
349   }
350
351   @Override /* GENERATED - org.apache.juneau.dto.html5.HtmlElement */
352   public Video onerror(String onerror) {
353      super.onerror(onerror);
354      return this;
355   }
356
357   @Override /* GENERATED - org.apache.juneau.dto.html5.HtmlElement */
358   public Video onfocus(String onfocus) {
359      super.onfocus(onfocus);
360      return this;
361   }
362
363   @Override /* GENERATED - org.apache.juneau.dto.html5.HtmlElement */
364   public Video oninput(String oninput) {
365      super.oninput(oninput);
366      return this;
367   }
368
369   @Override /* GENERATED - org.apache.juneau.dto.html5.HtmlElement */
370   public Video oninvalid(String oninvalid) {
371      super.oninvalid(oninvalid);
372      return this;
373   }
374
375   @Override /* GENERATED - org.apache.juneau.dto.html5.HtmlElement */
376   public Video onkeydown(String onkeydown) {
377      super.onkeydown(onkeydown);
378      return this;
379   }
380
381   @Override /* GENERATED - org.apache.juneau.dto.html5.HtmlElement */
382   public Video onkeypress(String onkeypress) {
383      super.onkeypress(onkeypress);
384      return this;
385   }
386
387   @Override /* GENERATED - org.apache.juneau.dto.html5.HtmlElement */
388   public Video onkeyup(String onkeyup) {
389      super.onkeyup(onkeyup);
390      return this;
391   }
392
393   @Override /* GENERATED - org.apache.juneau.dto.html5.HtmlElement */
394   public Video onload(String onload) {
395      super.onload(onload);
396      return this;
397   }
398
399   @Override /* GENERATED - org.apache.juneau.dto.html5.HtmlElement */
400   public Video onloadeddata(String onloadeddata) {
401      super.onloadeddata(onloadeddata);
402      return this;
403   }
404
405   @Override /* GENERATED - org.apache.juneau.dto.html5.HtmlElement */
406   public Video onloadedmetadata(String onloadedmetadata) {
407      super.onloadedmetadata(onloadedmetadata);
408      return this;
409   }
410
411   @Override /* GENERATED - org.apache.juneau.dto.html5.HtmlElement */
412   public Video onloadstart(String onloadstart) {
413      super.onloadstart(onloadstart);
414      return this;
415   }
416
417   @Override /* GENERATED - org.apache.juneau.dto.html5.HtmlElement */
418   public Video onmousedown(String onmousedown) {
419      super.onmousedown(onmousedown);
420      return this;
421   }
422
423   @Override /* GENERATED - org.apache.juneau.dto.html5.HtmlElement */
424   public Video onmouseenter(String onmouseenter) {
425      super.onmouseenter(onmouseenter);
426      return this;
427   }
428
429   @Override /* GENERATED - org.apache.juneau.dto.html5.HtmlElement */
430   public Video onmouseleave(String onmouseleave) {
431      super.onmouseleave(onmouseleave);
432      return this;
433   }
434
435   @Override /* GENERATED - org.apache.juneau.dto.html5.HtmlElement */
436   public Video onmousemove(String onmousemove) {
437      super.onmousemove(onmousemove);
438      return this;
439   }
440
441   @Override /* GENERATED - org.apache.juneau.dto.html5.HtmlElement */
442   public Video onmouseout(String onmouseout) {
443      super.onmouseout(onmouseout);
444      return this;
445   }
446
447   @Override /* GENERATED - org.apache.juneau.dto.html5.HtmlElement */
448   public Video onmouseover(String onmouseover) {
449      super.onmouseover(onmouseover);
450      return this;
451   }
452
453   @Override /* GENERATED - org.apache.juneau.dto.html5.HtmlElement */
454   public Video onmouseup(String onmouseup) {
455      super.onmouseup(onmouseup);
456      return this;
457   }
458
459   @Override /* GENERATED - org.apache.juneau.dto.html5.HtmlElement */
460   public Video onmousewheel(String onmousewheel) {
461      super.onmousewheel(onmousewheel);
462      return this;
463   }
464
465   @Override /* GENERATED - org.apache.juneau.dto.html5.HtmlElement */
466   public Video onpause(String onpause) {
467      super.onpause(onpause);
468      return this;
469   }
470
471   @Override /* GENERATED - org.apache.juneau.dto.html5.HtmlElement */
472   public Video onplay(String onplay) {
473      super.onplay(onplay);
474      return this;
475   }
476
477   @Override /* GENERATED - org.apache.juneau.dto.html5.HtmlElement */
478   public Video onplaying(String onplaying) {
479      super.onplaying(onplaying);
480      return this;
481   }
482
483   @Override /* GENERATED - org.apache.juneau.dto.html5.HtmlElement */
484   public Video onprogress(String onprogress) {
485      super.onprogress(onprogress);
486      return this;
487   }
488
489   @Override /* GENERATED - org.apache.juneau.dto.html5.HtmlElement */
490   public Video onratechange(String onratechange) {
491      super.onratechange(onratechange);
492      return this;
493   }
494
495   @Override /* GENERATED - org.apache.juneau.dto.html5.HtmlElement */
496   public Video onreset(String onreset) {
497      super.onreset(onreset);
498      return this;
499   }
500
501   @Override /* GENERATED - org.apache.juneau.dto.html5.HtmlElement */
502   public Video onresize(String onresize) {
503      super.onresize(onresize);
504      return this;
505   }
506
507   @Override /* GENERATED - org.apache.juneau.dto.html5.HtmlElement */
508   public Video onscroll(String onscroll) {
509      super.onscroll(onscroll);
510      return this;
511   }
512
513   @Override /* GENERATED - org.apache.juneau.dto.html5.HtmlElement */
514   public Video onseeked(String onseeked) {
515      super.onseeked(onseeked);
516      return this;
517   }
518
519   @Override /* GENERATED - org.apache.juneau.dto.html5.HtmlElement */
520   public Video onseeking(String onseeking) {
521      super.onseeking(onseeking);
522      return this;
523   }
524
525   @Override /* GENERATED - org.apache.juneau.dto.html5.HtmlElement */
526   public Video onselect(String onselect) {
527      super.onselect(onselect);
528      return this;
529   }
530
531   @Override /* GENERATED - org.apache.juneau.dto.html5.HtmlElement */
532   public Video onshow(String onshow) {
533      super.onshow(onshow);
534      return this;
535   }
536
537   @Override /* GENERATED - org.apache.juneau.dto.html5.HtmlElement */
538   public Video onstalled(String onstalled) {
539      super.onstalled(onstalled);
540      return this;
541   }
542
543   @Override /* GENERATED - org.apache.juneau.dto.html5.HtmlElement */
544   public Video onsubmit(String onsubmit) {
545      super.onsubmit(onsubmit);
546      return this;
547   }
548
549   @Override /* GENERATED - org.apache.juneau.dto.html5.HtmlElement */
550   public Video onsuspend(String onsuspend) {
551      super.onsuspend(onsuspend);
552      return this;
553   }
554
555   @Override /* GENERATED - org.apache.juneau.dto.html5.HtmlElement */
556   public Video ontimeupdate(String ontimeupdate) {
557      super.ontimeupdate(ontimeupdate);
558      return this;
559   }
560
561   @Override /* GENERATED - org.apache.juneau.dto.html5.HtmlElement */
562   public Video ontoggle(String ontoggle) {
563      super.ontoggle(ontoggle);
564      return this;
565   }
566
567   @Override /* GENERATED - org.apache.juneau.dto.html5.HtmlElement */
568   public Video onvolumechange(String onvolumechange) {
569      super.onvolumechange(onvolumechange);
570      return this;
571   }
572
573   @Override /* GENERATED - org.apache.juneau.dto.html5.HtmlElement */
574   public Video onwaiting(String onwaiting) {
575      super.onwaiting(onwaiting);
576      return this;
577   }
578
579   @Override /* GENERATED - org.apache.juneau.dto.html5.HtmlElement */
580   public Video spellcheck(Object spellcheck) {
581      super.spellcheck(spellcheck);
582      return this;
583   }
584
585   @Override /* GENERATED - org.apache.juneau.dto.html5.HtmlElement */
586   public Video style(String style) {
587      super.style(style);
588      return this;
589   }
590
591   @Override /* GENERATED - org.apache.juneau.dto.html5.HtmlElement */
592   public Video tabindex(Object tabindex) {
593      super.tabindex(tabindex);
594      return this;
595   }
596
597   @Override /* GENERATED - org.apache.juneau.dto.html5.HtmlElement */
598   public Video title(String title) {
599      super.title(title);
600      return this;
601   }
602
603   @Override /* GENERATED - org.apache.juneau.dto.html5.HtmlElement */
604   public Video translate(Object translate) {
605      super.translate(translate);
606      return this;
607   }
608
609   @Override /* GENERATED - org.apache.juneau.dto.html5.HtmlElementContainer */
610   public Video child(Object child) {
611      super.child(child);
612      return this;
613   }
614
615   @Override /* GENERATED - org.apache.juneau.dto.html5.HtmlElementContainer */
616   public Video children(Object...children) {
617      super.children(children);
618      return this;
619   }
620
621   // </FluentSetters>
622}