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 org.apache.juneau.annotation.*; 016 017/** 018 * DTO for an HTML {@doc ExtHTML5.embedded-content-0#the-object-element <object>} 019 * element. 020 * 021 * <ul class='seealso'> 022 * <li class='link'>{@doc DtoHtml5} 023 * </ul> 024 */ 025@Bean(typeName="object") 026public class Object_ extends HtmlElementMixed { 027 028 /** 029 * Creates an empty {@link Object_} element. 030 */ 031 public Object_() {} 032 033 /** 034 * Creates an {@link Object_} element with the specified child nodes. 035 * 036 * @param children The child nodes. 037 */ 038 public Object_(Object...children) { 039 children(children); 040 } 041 042 /** 043 * {@doc ExtHTML5.embedded-content-0#attr-object-data data} attribute. 044 * 045 * <p> 046 * Address of the resource. 047 * 048 * @param data The new value for this attribute. 049 * @return This object (for method chaining). 050 */ 051 public final Object_ data(String data) { 052 attr("data", data); 053 return this; 054 } 055 056 /** 057 * {@doc ExtHTML5.forms#attr-fae-form form} attribute. 058 * 059 * <p> 060 * Associates the control with a form element. 061 * 062 * @param form The new value for this attribute. 063 * @return This object (for method chaining). 064 */ 065 public final Object_ form(String form) { 066 attr("form", form); 067 return this; 068 } 069 070 /** 071 * {@doc ExtHTML5.embedded-content-0#attr-dim-height height} 072 * attribute. 073 * 074 * <p> 075 * Vertical dimension. 076 * 077 * @param height 078 * The new value for this attribute. 079 * Typically a {@link Number} or {@link String}. 080 * @return This object (for method chaining). 081 */ 082 public final Object_ height(Object height) { 083 attr("height", height); 084 return this; 085 } 086 087 /** 088 * {@doc ExtHTML5.embedded-content-0#attr-object-name name} attribute. 089 * 090 * <p> 091 * Name of nested browsing context. 092 * 093 * @param name The new value for this attribute. 094 * @return This object (for method chaining). 095 */ 096 public final Object_ name(String name) { 097 attr("name", name); 098 return this; 099 } 100 101 /** 102 * {@doc ExtHTML5.embedded-content-0#attr-object-type type} attribute. 103 * 104 * <p> 105 * Type of embedded resource. 106 * 107 * @param type The new value for this attribute. 108 * @return This object (for method chaining). 109 */ 110 public final Object_ type(String type) { 111 attr("type", type); 112 return this; 113 } 114 115 /** 116 * {@doc ExtHTML5.embedded-content-0#attr-object-typemustmatch typemustmatch} 117 * attribute. 118 * 119 * <p> 120 * Whether the type attribute and the Content-Type value need to match for the resource to be used. 121 * 122 * @param typemustmatch 123 * The new value for this attribute. 124 * Typically a {@link Boolean} or {@link String}. 125 * @return This object (for method chaining). 126 */ 127 public final Object_ typemustmatch(Object typemustmatch) { 128 attr("typemustmatch", typemustmatch); 129 return this; 130 } 131 132 /** 133 * {@doc ExtHTML5.embedded-content-0#attr-hyperlink-usemap usemap} 134 * attribute. 135 * 136 * <p> 137 * Name of image map to use. 138 * 139 * @param usemap The new value for this attribute. 140 * @return This object (for method chaining). 141 */ 142 public final Object_ usemap(String usemap) { 143 attr("usemap", usemap); 144 return this; 145 } 146 147 /** 148 * {@doc ExtHTML5.embedded-content-0#attr-dim-width width} attribute. 149 * 150 * <p> 151 * Horizontal dimension. 152 * 153 * @param width 154 * The new value for this attribute. 155 * Typically a {@link Number} or {@link String}. 156 * @return This object (for method chaining). 157 */ 158 public final Object_ width(Object width) { 159 attr("width", width); 160 return this; 161 } 162 163 164 //----------------------------------------------------------------------------------------------------------------- 165 // Overridden methods 166 //----------------------------------------------------------------------------------------------------------------- 167 168 @Override /* HtmlElement */ 169 public final Object_ _class(String _class) { 170 super._class(_class); 171 return this; 172 } 173 174 @Override /* HtmlElement */ 175 public final Object_ id(String id) { 176 super.id(id); 177 return this; 178 } 179 180 @Override /* HtmlElement */ 181 public final Object_ style(String style) { 182 super.style(style); 183 return this; 184 } 185 186 @Override /* HtmlElementMixed */ 187 public Object_ children(Object...children) { 188 super.children(children); 189 return this; 190 } 191 192 @Override /* HtmlElementMixed */ 193 public Object_ child(Object child) { 194 super.child(child); 195 return this; 196 } 197}