smaato的vast解析处理,有点长.
<?xml version="1.0" encoding="utf-8"?>
<VAST version="2.0">
<Ad id="223626102">
<AdSystem version="2.0">Smaato</AdSystem>
// 标题
<AdTitle>Smaato Mobile Video</AdTitle>
// 描述
<Description>Press Play on Mobile Video Advertising</Description>
<Survey />
<InLine>
<Impression><![CDATA[http://ets-eu-west-1.smaato.net/v1/view?sessionId=5124d8ff-eda5-4da0-81ac-0987886b0d8d&adSourceId=85979a9c-7aee-48c2-8cfb-9eb4e25a6fca&originalRequestTime=1523542253549&expires=1523543153549&winurl=lR01FIl5HBPqUGcVDsFK1V8COQwE30Wo7CYapFW6sDycVCRT4jZ-CIsQijfuors1wvCEsqAKp7V1J2_oqWBzU0S5DtP1vvh0sxudsDoT4melTtBi8Po66GA4FZcUYn5IojsAapnNcFZS0-Bj_RdzFLL9wwIxGwlZAGR2qoAVj9Kjv4fBQAdRMKrItcEad96WWwHNpYOm_Nr9Y6asqNh1-vMYD4e9wA6aew1Fx-BsI-Xl9BuWpwvhDS22Eu-Hqz_MmStVI_gYE8emjfe6lIhRmw%3D%3D%7C8CV4DG05IMa2TbSAPnH9rQ%3D%3D]]></Impression>
<Creatives>
<Creative AdID="" sequence="1">
<Linear>
// 播放时间
<Duration>00:00:15</Duration>
// 触发意图
<TrackingEvents>
<Tracking event="start">
<![CDATA[ https://soma.smaato.net/videoStart ]]></Tracking>
<Tracking event="midpoint">
<![CDATA[ https://soma.smaato.net/midPoint ]]></Tracking>
<Tracking event="midpoint">
<![CDATA[ https://soma.smaato.net/midPoint2 ]]></Tracking>
<Tracking event="firstQuartile">
<![CDATA[ https://soma.smaato.net/firstQuartile ]]></Tracking>
<Tracking event="firstQuartile">
<![CDATA[ https://soma.smaato.net/firstQuartile2 ]]></Tracking>
<Tracking event="thirdQuartile">
<![CDATA[ https://soma.smaato.net/thirdQuartile ]]></Tracking>
<Tracking event="thirdQuartile">
<![CDATA[ https://soma.smaato.net/thirdQuartile ]]></Tracking>
<Tracking event="complete">
<![CDATA[ https://soma.smaato.net/complete ]]></Tracking>
<Tracking event="complete">
<![CDATA[ https://soma.smaato.net/complete2 ]]></Tracking>
<Tracking event="mute">
<![CDATA[ https://soma.smaato.net/mute ]]></Tracking>
<Tracking event="pause">
<![CDATA[ https://soma.smaato.net/pause ]]></Tracking>
<Tracking event="fullscreen">
<![CDATA[ https://soma.smaato.net/fullscreen ]]></Tracking>
<Tracking event="fullscreen">
<![CDATA[ https://soma.smaato.net/fullscreen2 ]]></Tracking>
</TrackingEvents>
<AdParameters />
// 视频点击事件触发链接
<VideoClicks>
<ClickThrough><![CDATA[ https://www.smaato.com ]]></ClickThrough>
<ClickTracking id="DART">
<![CDATA[ https://soma.smaato.net/clickTracking ]]></ClickTracking>
<ClickTracking id="ThirdParty">
<![CDATA[ https://soma.smaato.net/clickTracking2 ]]></ClickTracking>
<ClickTracking><![CDATA[
http://ets-eu-west-1.smaato.net/v1/click?sessionId=5124d8ff-eda5-4da0-81ac-0987886b0d8d&adSourceId=85979a9c-7aee-48c2-8cfb-9eb4e25a6fca&originalRequestTime=1523542253549
]]></ClickTracking>
</VideoClicks>
// 视频地址
<MediaFiles>
<MediaFile bitrate="457" delivery="progressive" height="720" id="1"
type="video/mp4" width="1280"><![CDATA[
https://demofiles.smaato.com/creatives/assets/video/Outstream%20Demo%20Asset%20Mockup.mp4?test=true
]]></MediaFile>
</MediaFiles>
</Linear>
</Creative>
<Creative AdID="" sequence="1">
// 完成后触发
<CompanionAds>
<Companion height="250" width="300">
<HTMLResource><![CDATA[
<a href="https://www.smaato.com/resources/adformats/#section1" target="_blank"><img src="https://smt-demofiles.s3.amazonaws.com/creatives/assets/images/600x500.png" alt="" /></a>
]]></HTMLResource>
<TrackingEvents>
<Tracking event="creativeView">
https://myTrackingURL/secondCompanion
</Tracking>
</TrackingEvents>
<CompanionClickTracking><![CDATA[
http://vet.smaatolabs.net/companionClickTracking?sessionId=5124d8ff-eda5-4da0-81ac-0987886b0d8d&adSourceId=85979a9c-7aee-48c2-8cfb-9eb4e25a6fca&originalRequestTime=1523542253549
]]></CompanionClickTracking>
</Companion>
</CompanionAds>
</Creative>
</Creatives>
</InLine>
</Ad>
</VAST>
这一段...特别长,我解析都花了2小时.写了一个解析工具类,一直想去优化,这段代码,目前没有什么好的方案.只能先放出来了
public class VASTHelper {
private static VASTHelper sVastHelper;
private VAST mVAST;
private VASTHelper() {
}
public static VASTHelper getInstance() {
if (sVastHelper == null) {
sVastHelper = new VASTHelper();
}
return sVastHelper;
}
public VAST getVAST() {
return mVAST;
}
public void parseVAST(final InputStream open) {
new Thread(new Runnable() {
@Override
public void run() {
try {
XmlPullParser xmlPullParser = Xml.newPullParser();
xmlPullParser.setInput(open, "utf-8");
VAST vast = null;
List<VAST.AdBean.InLine.Creatives.Creative> creativeList = null;
int count = 0;
int type = xmlPullParser.getEventType();
while (type != XmlPullParser.END_DOCUMENT) {
switch (type) {
case XmlPullParser.START_DOCUMENT:
vast = new VAST();
count = 0;
creativeList = new ArrayList<>();
break;
case XmlPullParser.START_TAG:
//获取开始标签的名字
String starttgname = xmlPullParser.getName();
creativeList = parseVAST(xmlPullParser, vast, creativeList, count, starttgname);
break;
case XmlPullParser.END_TAG:
if ("vast".equalsIgnoreCase(xmlPullParser.getName())) {
mVAST = vast;
} else if (equalsName("TrackingEvents", xmlPullParser.getName())) {
count++;
}
break;
}//细节:
type = xmlPullParser.next();
}
} catch (XmlPullParserException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
}).start();
}
private List<VAST.AdBean.InLine.Creatives.Creative> parseVAST(XmlPullParser xmlPullParser, VAST vast, List<VAST.AdBean.InLine.Creatives.Creative> creativeList, int count, String starttgname) throws IOException, XmlPullParserException {
if (equalsName(starttgname, "vast")) {
vast.setVASTVersion(xmlPullParser.getAttributeValue(0));
} else if (equalsName(starttgname, "ad")) {
VAST.AdBean adBean = new VAST.AdBean();
adBean.setId(xmlPullParser.getAttributeValue(0));
vast.setAd(adBean);
} else if (equalsName(starttgname, "AdSystem")) {
VAST.AdBean ad = getAdBean(vast);
VAST.AdBean.AdSystem adSystem = new VAST.AdBean.AdSystem();
adSystem.setVersion(xmlPullParser.getAttributeValue(0));
adSystem.setAdTitle(xmlPullParser.nextText());
ad.setAdSystem(adSystem);
} else if (equalsName(starttgname, "AdTitle")) {
VAST.AdBean ad = getAdBean(vast);
ad.setAdTilte(xmlPullParser.nextText());
} else if (equalsName(starttgname, "InLine")) {
VAST.AdBean ad = getAdBean(vast);
ad.setInLine(new VAST.AdBean.InLine());
} else if (equalsName(starttgname, "Impression")) {
VAST.AdBean.InLine inLine = getInLine(vast);
inLine.setImpression(xmlPullParser.nextText());
} else if (equalsName(starttgname, "Creatives")) {
VAST.AdBean.InLine inLine = getInLine(vast);
inLine.setCreatives(new VAST.AdBean.InLine.Creatives());
} else if (equalsName(starttgname, "Creative")) {
VAST.AdBean.InLine.Creatives creatives = getCreatives(vast);
VAST.AdBean.InLine.Creatives.Creative creative = new VAST.AdBean.InLine.Creatives.Creative();
creative.setAdID(xmlPullParser.getAttributeValue(0));
creative.setSequence(xmlPullParser.getAttributeValue(1));
creativeList.add(creative);
creatives.setCreativeList(creativeList);
} else if (equalsName(starttgname, "Linear")) {
VAST.AdBean.InLine.Creatives.Creative creative = getFristCreative(vast);
VAST.AdBean.InLine.Creatives.Creative.Linear linear = new VAST.AdBean.InLine.Creatives.Creative.Linear();
creative.setLinear(linear);
} else if (equalsName(starttgname, "Duration")) {
VAST.AdBean.InLine.Creatives.Creative.Linear linear = getLinear(vast);
linear.setDuration(xmlPullParser.nextText());
} else if (equalsName(starttgname, "TrackingEvents")) {
if (count == 0) {
VAST.AdBean.InLine.Creatives.Creative.Linear linear = getLinear(vast);
VAST.AdBean.InLine.Creatives.Creative.Linear.TrackingEvents trackingEvents = new VAST.AdBean.InLine.Creatives.Creative.Linear.TrackingEvents();
trackingEvents.setTrackingList(new ArrayList<VAST.AdBean.InLine.Creatives.Creative.Linear.TrackingEvents.Tracking>());
linear.setTrackingEvents(trackingEvents);
} else {
VAST.AdBean.InLine.Creatives creatives = getCreatives(vast);
VAST.AdBean.InLine.Creatives.Creative.CompanionAds.Companion.TrackingEvents trackingEvents = new VAST.AdBean.InLine.Creatives.Creative.CompanionAds.Companion.TrackingEvents();
creativeList = creatives.getCreativeList();
VAST.AdBean.InLine.Creatives.Creative creative = creativeList.get(count);
VAST.AdBean.InLine.Creatives.Creative.CompanionAds companionAds = creative.getCompanionAds();
VAST.AdBean.InLine.Creatives.Creative.CompanionAds.Companion companion = companionAds.getCompanion();
trackingEvents.setTrackingList(new ArrayList<VAST.AdBean.InLine.Creatives.Creative.CompanionAds.Companion.TrackingEvents.Tracking>());
companion.setTrackingEvents(trackingEvents);
}
} else if (equalsName(starttgname, "Tracking")) {
if (count == 0) {
VAST.AdBean.InLine.Creatives.Creative.Linear linear = getLinear(vast);
VAST.AdBean.InLine.Creatives.Creative.Linear.TrackingEvents trackingEvents = linear.getTrackingEvents();
List<VAST.AdBean.InLine.Creatives.Creative.Linear.TrackingEvents.Tracking> trackingList = trackingEvents.getTrackingList();
VAST.AdBean.InLine.Creatives.Creative.Linear.TrackingEvents.Tracking tracking = new VAST.AdBean.InLine.Creatives.Creative.Linear.TrackingEvents.Tracking();
tracking.setEvent(xmlPullParser.getAttributeValue(0));
tracking.setUrl(xmlPullParser.nextText());
trackingList.add(tracking);
} else {
VAST.AdBean.InLine.Creatives creatives = getCreatives(vast);
creativeList = creatives.getCreativeList();
VAST.AdBean.InLine.Creatives.Creative creative = creativeList.get(count);
VAST.AdBean.InLine.Creatives.Creative.CompanionAds.Companion.TrackingEvents trackingEvents = creative.getCompanionAds().getCompanion().getTrackingEvents();
List<VAST.AdBean.InLine.Creatives.Creative.CompanionAds.Companion.TrackingEvents.Tracking> trackingList = trackingEvents.getTrackingList();
VAST.AdBean.InLine.Creatives.Creative.CompanionAds.Companion.TrackingEvents.Tracking tracking = new VAST.AdBean.InLine.Creatives.Creative.CompanionAds.Companion.TrackingEvents.Tracking();
tracking.setEvent(xmlPullParser.getAttributeValue(0));
tracking.setUrl(xmlPullParser.nextText());
trackingList.add(tracking);
}
} else if (equalsName(starttgname, "VideoClicks")) {
VAST.AdBean.InLine.Creatives.Creative.Linear linear = getLinear(vast);
VAST.AdBean.InLine.Creatives.Creative.Linear.VideoClicks videoClicks = new VAST.AdBean.InLine.Creatives.Creative.Linear.VideoClicks();
videoClicks.setClickTrackings(new ArrayList<VAST.AdBean.InLine.Creatives.Creative.Linear.VideoClicks.ClickTracking>());
linear.setVideoClicks(videoClicks);
} else if (equalsName(starttgname, "ClickThrough")) {
VAST.AdBean.InLine.Creatives.Creative.Linear.VideoClicks videoClicks = getVideoClicks(vast);
videoClicks.setClickThrough(xmlPullParser.nextText());
} else if (equalsName(starttgname, "ClickTracking")) {
VAST.AdBean.InLine.Creatives.Creative.Linear.VideoClicks videoClicks = getVideoClicks(vast);
List<VAST.AdBean.InLine.Creatives.Creative.Linear.VideoClicks.ClickTracking> clickTrackings = videoClicks.getClickTrackings();
VAST.AdBean.InLine.Creatives.Creative.Linear.VideoClicks.ClickTracking clickTracking = new VAST.AdBean.InLine.Creatives.Creative.Linear.VideoClicks.ClickTracking();
try {
clickTracking.setId(xmlPullParser.getAttributeValue(0));
} catch (Exception e) {
e.printStackTrace();
}
clickTracking.setUrl(xmlPullParser.nextText());
clickTrackings.add(clickTracking);
} else if (equalsName(starttgname, "MediaFiles")) {
VAST.AdBean.InLine.Creatives.Creative.Linear linear = getLinear(vast);
VAST.AdBean.InLine.Creatives.Creative.Linear.MediaFiles mediaFiles = new VAST.AdBean.InLine.Creatives.Creative.Linear.MediaFiles();
List<VAST.AdBean.InLine.Creatives.Creative.Linear.MediaFiles.MediaFile> mediaFilesList = new ArrayList<>();
mediaFilesList.add(new VAST.AdBean.InLine.Creatives.Creative.Linear.MediaFiles.MediaFile());
mediaFiles.setMediaFiles(mediaFilesList);
linear.setMediaFiles(mediaFiles);
} else if (equalsName(starttgname, "MediaFile")) {
VAST.AdBean.InLine.Creatives.Creative.Linear linear = getLinear(vast);
VAST.AdBean.InLine.Creatives.Creative.Linear.MediaFiles mediaFiles = linear.getMediaFiles();
List<VAST.AdBean.InLine.Creatives.Creative.Linear.MediaFiles.MediaFile> mediaFileList = mediaFiles.getMediaFiles();
VAST.AdBean.InLine.Creatives.Creative.Linear.MediaFiles.MediaFile mediaFile = mediaFileList.get(0);
mediaFile.setBitrate(xmlPullParser.getAttributeValue(0));
mediaFile.setDelivery(xmlPullParser.getAttributeValue(1));
mediaFile.setHeight(xmlPullParser.getAttributeValue(2));
mediaFile.setId(xmlPullParser.getAttributeValue(3));
mediaFile.setType(xmlPullParser.getAttributeValue(4));
mediaFile.setWidth(xmlPullParser.getAttributeValue(5));
mediaFile.setVideoUrl(xmlPullParser.nextText());
} else if (equalsName(starttgname, "CompanionAds")) {
VAST.AdBean.InLine.Creatives creatives = getCreatives(vast);
creativeList = creatives.getCreativeList();
VAST.AdBean.InLine.Creatives.Creative creative = creativeList.get(1);
VAST.AdBean.InLine.Creatives.Creative.CompanionAds companionAds = new VAST.AdBean.InLine.Creatives.Creative.CompanionAds();
creative.setCompanionAds(companionAds);
} else if (equalsName(starttgname, "Companion")) {
VAST.AdBean.InLine.Creatives creatives = getCreatives(vast);
creativeList = creatives.getCreativeList();
VAST.AdBean.InLine.Creatives.Creative creative = creativeList.get(1);
VAST.AdBean.InLine.Creatives.Creative.CompanionAds companionAds = creative.getCompanionAds();
VAST.AdBean.InLine.Creatives.Creative.CompanionAds.Companion companion = new VAST.AdBean.InLine.Creatives.Creative.CompanionAds.Companion();
companion.setHeight(xmlPullParser.getAttributeValue(0));
companion.setWidth(xmlPullParser.getAttributeValue(1));
companionAds.setCompanion(companion);
} else if (equalsName(starttgname, "HTMLResource")) {
VAST.AdBean.InLine.Creatives creatives = getCreatives(vast);
creativeList = creatives.getCreativeList();
VAST.AdBean.InLine.Creatives.Creative creative = creativeList.get(1);
VAST.AdBean.InLine.Creatives.Creative.CompanionAds companionAds = creative.getCompanionAds();
VAST.AdBean.InLine.Creatives.Creative.CompanionAds.Companion companion = companionAds.getCompanion();
companion.setHTMLResource(xmlPullParser.nextText());
} else if (equalsName(starttgname, "CompanionClickTracking")) {
VAST.AdBean.InLine.Creatives creatives = getCreatives(vast);
creativeList = creatives.getCreativeList();
VAST.AdBean.InLine.Creatives.Creative creative = creativeList.get(1);
VAST.AdBean.InLine.Creatives.Creative.CompanionAds companionAds = creative.getCompanionAds();
VAST.AdBean.InLine.Creatives.Creative.CompanionAds.Companion companion = companionAds.getCompanion();
companion.setCompanionClickTracking(xmlPullParser.nextText());
}
return creativeList;
}
private VAST.AdBean.InLine.Creatives.Creative.Linear.VideoClicks getVideoClicks(VAST vast) {
VAST.AdBean.InLine.Creatives.Creative.Linear linear = getLinear(vast);
return linear.getVideoClicks();
}
private VAST.AdBean.InLine.Creatives.Creative.Linear getLinear(VAST vast) {
VAST.AdBean.InLine.Creatives.Creative fristCreative = getFristCreative(vast);
return fristCreative.getLinear();
}
private VAST.AdBean.InLine.Creatives.Creative getFristCreative(VAST vast) {
VAST.AdBean.InLine.Creatives creatives = getCreatives(vast);
return creatives.getCreativeList().get(0);
}
private VAST.AdBean.InLine.Creatives getCreatives(VAST vast) {
VAST.AdBean.InLine inLine = getInLine(vast);
return inLine.getCreatives();
}
private VAST.AdBean.InLine getInLine(VAST vast) {
VAST.AdBean ad = getAdBean(vast);
return ad.getInLine();
}
private VAST.AdBean getAdBean(VAST vast) {
return vast.getAd();
}
private boolean equalsName(String starttgname, String name) {
return starttgname.equalsIgnoreCase(name);
}
}
附上VAST的数据存储类的domain地址
public class VAST {
private String VASTVersion;
private AdBean ad;
@Override
public String toString() {
return "VAST{" +
"VASTVersion='" + VASTVersion + '\'' +
", ad=" + ad +
'}';
}
public String getVASTVersion() {
return VASTVersion;
}
public void setVASTVersion(String VASTVersion) {
this.VASTVersion = VASTVersion;
}
public AdBean getAd() {
return ad;
}
public void setAd(AdBean ad) {
this.ad = ad;
}
static class AdBean {
private String id;
private AdSystem adSystem;
private String description;
private InLine inLine;
private String adTilte;
public AdSystem getAdSystem() {
return adSystem;
}
public void setAdSystem(AdSystem adSystem) {
this.adSystem = adSystem;
}
public InLine getInLine() {
return inLine;
}
public void setInLine(InLine inLine) {
this.inLine = inLine;
}
public String getDescription() {
return description;
}
public void setDescription(String description) {
this.description = description;
}
public void setId(String id) {
this.id = id;
}
@Override
public String toString() {
return "AdBean{" +
"id='" + id + '\'' +
", adSystem=" + adSystem +
", description='" + description + '\'' +
", inLine=" + inLine +
'}';
}
public String getId() {
return id;
}
public String getAdTilte() {
return adTilte;
}
public void setAdTilte(String adTilte) {
this.adTilte = adTilte;
}
static class AdSystem {
private String version;
private String adTitle;
public String getVersion() {
return version;
}
public void setVersion(String version) {
this.version = version;
}
public String getAdTitle() {
return adTitle;
}
public void setAdTitle(String adTitle) {
this.adTitle = adTitle;
}
@Override
public String toString() {
return "AdSystem{" +
"version='" + version + '\'' +
", adTitle='" + adTitle + '\'' +
'}';
}
}
static class InLine {
private String impression;
private Creatives creatives;
public String getImpression() {
return impression;
}
public void setImpression(String impression) {
this.impression = impression;
}
public Creatives getCreatives() {
return creatives;
}
public void setCreatives(Creatives creatives) {
this.creatives = creatives;
}
@Override
public String toString() {
return "InLine{" +
"impression='" + impression + '\'' +
", creatives=" + creatives +
'}';
}
static class Creatives {
private List<Creative> creativeList;
public List<Creative> getCreativeList() {
return creativeList;
}
public void setCreativeList(List<Creative> creativeList) {
this.creativeList = creativeList;
}
@Override
public String toString() {
return "Creatives{" +
"creativeList=" + creativeList +
'}';
}
static class Creative {
private Linear linear;
private String AdID;
private String sequence;
private CompanionAds mCompanionAds;
public Linear getLinear() {
return linear;
}
public void setLinear(Linear linear) {
this.linear = linear;
}
public String getAdID() {
return AdID;
}
public void setAdID(String adID) {
AdID = adID;
}
public String getSequence() {
return sequence;
}
public void setSequence(String sequence) {
this.sequence = sequence;
}
public CompanionAds getCompanionAds() {
return mCompanionAds;
}
public void setCompanionAds(CompanionAds companionAds) {
mCompanionAds = companionAds;
}
@Override
public String toString() {
return "Creative{" +
"linear=" + linear +
", AdID='" + AdID + '\'' +
", sequence='" + sequence + '\'' +
", mCompanionAds=" + mCompanionAds +
'}';
}
static class Linear {
private String Duration;
private TrackingEvents mTrackingEvents;
private VideoClicks mVideoClicks;
private MediaFiles mMediaFiles;
public String getDuration() {
return Duration;
}
public void setDuration(String duration) {
Duration = duration;
}
public TrackingEvents getTrackingEvents() {
return mTrackingEvents;
}
public void setTrackingEvents(TrackingEvents trackingEvents) {
mTrackingEvents = trackingEvents;
}
public VideoClicks getVideoClicks() {
return mVideoClicks;
}
public void setVideoClicks(VideoClicks videoClicks) {
mVideoClicks = videoClicks;
}
public MediaFiles getMediaFiles() {
return mMediaFiles;
}
public void setMediaFiles(MediaFiles mediaFiles) {
mMediaFiles = mediaFiles;
}
@Override
public String toString() {
return "Linear{" +
"Duration=" + Duration +
", mTrackingEvents=" + mTrackingEvents +
", mVideoClicks=" + mVideoClicks +
", mMediaFiles=" + mMediaFiles +
'}';
}
static class TrackingEvents {
private List<Tracking> mTrackingList;
public List<Tracking> getTrackingList() {
return mTrackingList;
}
public void setTrackingList(List<Tracking> trackingList) {
mTrackingList = trackingList;
}
@Override
public String toString() {
return "TrackingEvents{" +
"mTrackingList=" + mTrackingList +
'}';
}
static class Tracking {
private String event;
private String url;
public String getEvent() {
return event;
}
public void setEvent(String event) {
this.event = event;
}
public String getUrl() {
return url;
}
public void setUrl(String url) {
this.url = url;
}
@Override
public String toString() {
return "Tracking{" +
"event='" + event + '\'' +
", url='" + url + '\'' +
'}';
}
}
}
static class VideoClicks {
private String ClickThrough;
private List<ClickTracking> mClickTrackings;
public String getClickThrough() {
return ClickThrough;
}
public void setClickThrough(String clickThrough) {
ClickThrough = clickThrough;
}
public List<ClickTracking> getClickTrackings() {
return mClickTrackings;
}
public void setClickTrackings(List<ClickTracking> clickTrackings) {
mClickTrackings = clickTrackings;
}
@Override
public String toString() {
return "VideoClicks{" +
"ClickThrough='" + ClickThrough + '\'' +
", mClickTrackings=" + mClickTrackings +
'}';
}
static class ClickTracking {
private String id;
private String url;
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getUrl() {
return url;
}
public void setUrl(String url) {
this.url = url;
}
@Override
public String toString() {
return "ClickTracking{" +
"id='" + id + '\'' +
", url='" + url + '\'' +
'}';
}
}
}
static class MediaFiles {
private List<MediaFile> mMediaFiles;
public List<MediaFile> getMediaFiles() {
return mMediaFiles;
}
public void setMediaFiles(List<MediaFile> mediaFiles) {
mMediaFiles = mediaFiles;
}
@Override
public String toString() {
return "MediaFiles{" +
"mMediaFiles=" + mMediaFiles +
'}';
}
static class MediaFile {
private String bitrate;
private String delivery;
private String height;
private String width;
private String id;
private String type;
private String videoUrl;
public String getBitrate() {
return bitrate;
}
public void setBitrate(String bitrate) {
this.bitrate = bitrate;
}
public String getDelivery() {
return delivery;
}
public void setDelivery(String delivery) {
this.delivery = delivery;
}
public String getHeight() {
return height;
}
public void setHeight(String height) {
this.height = height;
}
public String getWidth() {
return width;
}
public void setWidth(String width) {
this.width = width;
}
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getType() {
return type;
}
public void setType(String type) {
this.type = type;
}
public String getVideoUrl() {
return videoUrl;
}
public void setVideoUrl(String videoUrl) {
this.videoUrl = videoUrl;
}
@Override
public String toString() {
return "MediaFile{" +
"bitrate='" + bitrate + '\'' +
", delivery='" + delivery + '\'' +
", height='" + height + '\'' +
", width='" + width + '\'' +
", id='" + id + '\'' +
", type='" + type + '\'' +
", videoUrl='" + videoUrl + '\'' +
'}';
}
}
}
}
static class CompanionAds {
private Companion companion;
public Companion getCompanion() {
return companion;
}
public void setCompanion(Companion companion) {
this.companion = companion;
}
@Override
public String toString() {
return "CompanionAds{" +
"companion=" + companion +
'}';
}
static class Companion {
private String width;
private String height;
private String HTMLResource;
private TrackingEvents mTrackingEvents;
private String CompanionClickTracking;
public String getWidth() {
return width;
}
public void setWidth(String width) {
this.width = width;
}
public String getHeight() {
return height;
}
public void setHeight(String height) {
this.height = height;
}
public String getHTMLResource() {
return HTMLResource;
}
public void setHTMLResource(String HTMLResource) {
this.HTMLResource = HTMLResource;
}
public TrackingEvents getTrackingEvents() {
return mTrackingEvents;
}
public void setTrackingEvents(TrackingEvents trackingEvents) {
mTrackingEvents = trackingEvents;
}
public String getCompanionClickTracking() {
return CompanionClickTracking;
}
public void setCompanionClickTracking(String companionClickTracking) {
CompanionClickTracking = companionClickTracking;
}
@Override
public String toString() {
return "Companion{" +
"width='" + width + '\'' +
", height='" + height + '\'' +
", HTMLResource='" + HTMLResource + '\'' +
", mTrackingEvents=" + mTrackingEvents +
", CompanionClickTracking='" + CompanionClickTracking + '\'' +
'}';
}
static class TrackingEvents {
private List<Tracking> mTrackingList;
public List<Tracking> getTrackingList() {
return mTrackingList;
}
public void setTrackingList(List<Tracking> trackingList) {
mTrackingList = trackingList;
}
@Override
public String toString() {
return "TrackingEvents{" +
"mTrackingList=" + mTrackingList +
'}';
}
static class Tracking {
private String event;
private String url;
public void setEvent(String event) {
this.event = event;
}
public void setUrl(String url) {
this.url = url;
}
@Override
public String toString() {
return "Tracking{" +
"event='" + event + '\'' +
", url='" + url + '\'' +
'}';
}
}
}
}
}
}
}
}
}
}