// Copyright 2016 Google Inc. All Rights Reserved. // // Licensed under the Apache License, Version 2.0 (the "License"); // you may not use this file except in compliance with the License. // You may obtain a copy of the License at // // http://www.apache.org/licenses/LICENSE-2.0 // // Unless required by applicable law or agreed to in writing, software // distributed under the License is distributed on an "AS IS" BASIS, // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. // See the License for the specific language governing permissions and // limitations under the License. package com.google.api.ads.adwords.lib.selectorfields.v201607.cm; import com.google.api.ads.adwords.lib.selectorfields.EntityField; import com.google.api.ads.adwords.lib.selectorfields.Filterable; /** * A {@code Enum} to facilitate the selection of fields for {@code Media}. */ public enum MediaField implements EntityField { // Fields constants definitions /** * The Advertising Digital Identification code for this media, as defined by the American Association of Advertising Agencies, used mainly for television commercials. */ @Filterable AdvertisingId(true), /** * Media creation date in the format YYYY-MM-DD HH:MM:SS+TZ. * This is not updatable and not specifiable. */ @Filterable CreationTime(true), /** * Various dimension sizes for the media. * Only applies to image media (and video media for video thumbnails). */ Dimensions(false), /** * The duration of the associated audio, in milliseconds. */ @Filterable DurationMillis(true), /** * The size of the media file in bytes. */ @Filterable FileSize(true), /** * Height of the dimension */ @Filterable Height(true), /** * The Industry Standard Commercial Identifier code for this media, used mainly for television commercials. */ @Filterable IndustryStandardCommercialIdentifier(true), /** * ID of this media object. */ @Filterable MediaId(true), /** * The mime type of the media. */ @Filterable MimeType(true), /** * The name of the media. * The name can be used by clients to help identify previously uploaded media. */ @Filterable Name(true), /** * Indicates whether the audio is ready to play on the web. */ ReadyToPlayOnTheWeb(false), /** * Media reference ID key. */ @Filterable ReferenceId(true), /** * The URL of where the original media was downloaded from (or a file name). */ @Filterable SourceUrl(true), /** * The streaming URL of the audio. */ StreamingUrl(false), /** * Type of media object. * Required when using {@code MediaService#upload} to upload a new media file. */ @Filterable Type(true), /** * URLs pointing to the resized media for the given sizes. * Only applies to image media. */ Urls(false), /** * Width of the dimension */ @Filterable Width(true), /** * For YouTube-hosted videos, the YouTube video ID (as seen in YouTube URLs) may also be filled in. */ @Filterable YouTubeVideoIdString(true), ; private final boolean isFilterable; private MediaField(boolean isFilterable) { this.isFilterable = isFilterable; } @Override public boolean isFilterable() { return this.isFilterable; } }