package com.taobao.loganalyzer.input.tanxclick.parser;
import com.taobao.loganalyzer.input.tanxclick.common.LogField;
import com.taobao.loganalyzer.input.tanxclick.common.LogParser;
import com.taobao.loganalyzer.input.tanxclick.common.LogRecord;
import com.taobao.loganalyzer.input.tanxclick.common.SectionParser;
/**
* Section 3: 广告Section解析类
* @see <a href="http://sps.corp.alimama.com/ad/ADExchange/DocLib/Tan(X)%E7%B3%BB%E7%BB%9F%E6%97%A5%E5%BF%97%E8%AE%BE%E8%AE%A1.pdf">点击日志格式</a>
* @author kangtian
*
*/
public class AdSectionParser implements SectionParser {
/**
* 对广告Section进行解析
* section3-广告section为空--------不允许
*/
public boolean parse(LogParser lp, LogRecord lr) {
if (lp.isCurCharCA()) {
//if (!lp.hasNextChar()) return false;
return false ;
}
else{
//广告分类ID
lr.addField("AdTypeID", new LogField(LogField.TYPE_STRING, lp.getNextCB()));
//广告来源
lr.addField("AdOrigin", new LogField(LogField.TYPE_STRING, lp.getNextCB()));
//第三方ID
lr.addField("ThridPartyID", new LogField(LogField.TYPE_STRING, lp.getNextCB()));
//客户购买的归一化之前的关键词
lr.addField("Keyword", new LogField(LogField.TYPE_STRING, lp.getNextCB()));
//最高出价
lr.addField("HighestPrice", new LogField(LogField.TYPE_STRING, lp.getNextCB()));
//结算价格
lr.addField("CostPrice", new LogField(LogField.TYPE_STRING, lp.getNextCB()));
//折扣率 小于1.0的小数
lr.addField("DiscountRate", new LogField(LogField.TYPE_STRING, lp.getNextCB()));
//广告位尺寸
lr.addField("AdzoneSize", new LogField(LogField.TYPE_STRING, lp.getNextCB()));
////保留
lr.addField("Undefine2", new LogField(LogField.TYPE_STRING, lp.getNextCB()));
//客户URL
lr.addField("CustomURL", new LogField(LogField.TYPE_STRING, lp.getNextCB()));
//定向类型
lr.addField("TargetType", new LogField(LogField.TYPE_STRING, lp.getNextCB()));
//定向属性
lr.addField("TargetAttribute", new LogField(LogField.TYPE_STRING, lp.getNextCA()));
}
if (lp.isError()) {
return false;
}
return true;
}
}