Index: net/dns/record_rdata.h |
diff --git a/net/dns/record_rdata.h b/net/dns/record_rdata.h |
index 13a2b1e35ae284f5d256af895a7156a5f0fc4c68..83e9a36488dce25754cd26ed5f6ae73f35272c1c 100644 |
--- a/net/dns/record_rdata.h |
+++ b/net/dns/record_rdata.h |
@@ -29,6 +29,7 @@ class NET_EXPORT_PRIVATE RecordRdata { |
virtual bool IsEqual(const RecordRdata* other) const = 0; |
virtual uint16 Type() const = 0; |
+ virtual scoped_ptr<const RecordRdata> Clone() const = 0; |
protected: |
RecordRdata(); |
@@ -51,6 +52,7 @@ class NET_EXPORT_PRIVATE SrvRecordRdata : public RecordRdata { |
virtual bool IsEqual(const RecordRdata* other) const OVERRIDE; |
virtual uint16 Type() const OVERRIDE; |
+ virtual scoped_ptr<const RecordRdata> Clone() const OVERRIDE; |
uint16 priority() const { return priority_; } |
uint16 weight() const { return weight_; } |
@@ -81,6 +83,7 @@ class NET_EXPORT_PRIVATE ARecordRdata : public RecordRdata { |
const DnsRecordParser& parser); |
virtual bool IsEqual(const RecordRdata* other) const OVERRIDE; |
virtual uint16 Type() const OVERRIDE; |
+ virtual scoped_ptr<const RecordRdata> Clone() const OVERRIDE; |
const IPAddressNumber& address() const { return address_; } |
@@ -103,6 +106,7 @@ class NET_EXPORT_PRIVATE AAAARecordRdata : public RecordRdata { |
const DnsRecordParser& parser); |
virtual bool IsEqual(const RecordRdata* other) const OVERRIDE; |
virtual uint16 Type() const OVERRIDE; |
+ virtual scoped_ptr<const RecordRdata> Clone() const OVERRIDE; |
const IPAddressNumber& address() const { return address_; } |
@@ -125,6 +129,7 @@ class NET_EXPORT_PRIVATE CnameRecordRdata : public RecordRdata { |
const DnsRecordParser& parser); |
virtual bool IsEqual(const RecordRdata* other) const OVERRIDE; |
virtual uint16 Type() const OVERRIDE; |
+ virtual scoped_ptr<const RecordRdata> Clone() const OVERRIDE; |
std::string cname() const { return cname_; } |
@@ -147,6 +152,7 @@ class NET_EXPORT_PRIVATE PtrRecordRdata : public RecordRdata { |
const DnsRecordParser& parser); |
virtual bool IsEqual(const RecordRdata* other) const OVERRIDE; |
virtual uint16 Type() const OVERRIDE; |
+ virtual scoped_ptr<const RecordRdata> Clone() const OVERRIDE; |
std::string ptrdomain() const { return ptrdomain_; } |
@@ -170,6 +176,7 @@ class NET_EXPORT_PRIVATE TxtRecordRdata : public RecordRdata { |
const DnsRecordParser& parser); |
virtual bool IsEqual(const RecordRdata* other) const OVERRIDE; |
virtual uint16 Type() const OVERRIDE; |
+ virtual scoped_ptr<const RecordRdata> Clone() const OVERRIDE; |
const std::vector<std::string>& texts() const { return texts_; } |