Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(1266)

Unified Diff: net/dns/record_rdata.cc

Issue 15733008: Multicast DNS implementation (initial) (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@mdns_implementation2
Patch Set: Created 7 years, 7 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: net/dns/record_rdata.cc
diff --git a/net/dns/record_rdata.cc b/net/dns/record_rdata.cc
index 55967f91a9aef249a6973070280b2d20361afba3..86e8830c97936b23297d7cf58173725c556793d7 100644
--- a/net/dns/record_rdata.cc
+++ b/net/dns/record_rdata.cc
@@ -55,6 +55,17 @@ bool SrvRecordRdata::IsEqual(const RecordRdata* other) const {
target_ == srv_other->target_;
}
+scoped_ptr<const RecordRdata> SrvRecordRdata::Clone() const {
+ scoped_ptr<SrvRecordRdata> return_value(new SrvRecordRdata);
+
+ return_value->port_ = port_;
+ return_value->weight_ = weight_;
+ return_value->priority_ = priority_;
+ return_value->target_ = target_;
+
+ return scoped_ptr<const RecordRdata>(return_value.Pass());
+}
+
ARecordRdata::ARecordRdata() {
}
@@ -88,6 +99,14 @@ bool ARecordRdata::IsEqual(const RecordRdata* other) const {
return address_ == a_other->address_;
}
+scoped_ptr<const RecordRdata> ARecordRdata::Clone() const {
+ scoped_ptr<ARecordRdata> return_value(new ARecordRdata);
+
+ return_value->address_ = address_;
+
+ return return_value.PassAs<const RecordRdata>();
+}
+
AAAARecordRdata::AAAARecordRdata() {
}
@@ -121,6 +140,14 @@ bool AAAARecordRdata::IsEqual(const RecordRdata* other) const {
return address_ == a_other->address_;
}
+scoped_ptr<const RecordRdata> AAAARecordRdata::Clone() const {
+ scoped_ptr<AAAARecordRdata> return_value(new AAAARecordRdata);
+
+ return_value->address_ = address_;
+
+ return return_value.PassAs<const RecordRdata>();
+}
+
CnameRecordRdata::CnameRecordRdata() {
}
@@ -150,6 +177,14 @@ bool CnameRecordRdata::IsEqual(const RecordRdata* other) const {
return cname_ == cname_other->cname_;
}
+scoped_ptr<const RecordRdata> CnameRecordRdata::Clone() const {
+ scoped_ptr<CnameRecordRdata> return_value(new CnameRecordRdata);
+
+ return_value->cname_ = cname_;
+
+ return return_value.PassAs<const RecordRdata>();
+}
+
PtrRecordRdata::PtrRecordRdata() {
}
@@ -178,6 +213,14 @@ bool PtrRecordRdata::IsEqual(const RecordRdata* other) const {
return ptrdomain_ == ptr_other->ptrdomain_;
}
+scoped_ptr<const RecordRdata> PtrRecordRdata::Clone() const {
+ scoped_ptr<PtrRecordRdata> return_value(new PtrRecordRdata);
+
+ return_value->ptrdomain_ = ptrdomain_;
+
+ return return_value.PassAs<const RecordRdata>();
+}
+
TxtRecordRdata::TxtRecordRdata() {
}
@@ -212,7 +255,16 @@ uint16 TxtRecordRdata::Type() const {
bool TxtRecordRdata::IsEqual(const RecordRdata* other) const {
if (other->Type() != Type()) return false;
const TxtRecordRdata* txt_other = static_cast<const TxtRecordRdata*>(other);
+
return texts_ == txt_other->texts_;
}
+scoped_ptr<const RecordRdata> TxtRecordRdata::Clone() const {
+ scoped_ptr<TxtRecordRdata> return_value(new TxtRecordRdata);
+
+ return_value->texts_ = texts_;
+
+ return return_value.PassAs<const RecordRdata>();
+}
+
} // namespace net

Powered by Google App Engine
This is Rietveld 408576698