func NewPutPBRecordsResult()

in datahub/resultmodel.go [356:380]


func NewPutPBRecordsResult(data []byte, commonResp *CommonResponseResult) (*PutRecordsResult, error) {
	pr := &PutRecordsResult{
		CommonResponseResult: *commonResp,
	}
	data, err := util.UnwrapMessage(data)
	if err != nil {
		return nil, err
	}
	prr := &pbmodel.PutRecordsResponse{}
	if err := proto.Unmarshal(data, prr); err != nil {
		return nil, err
	}

	pr.FailedRecordCount = int(*prr.FailedCount)
	if pr.FailedRecordCount > 0 {
		records := make([]FailedRecord, pr.FailedRecordCount)
		for idx, v := range prr.FailedRecords {
			records[idx].ErrorCode = *v.ErrorCode
			records[idx].ErrorMessage = *v.ErrorMessage
			records[idx].Index = int(*v.Index)
		}
		pr.FailedRecords = records
	}
	return pr, nil
}