summaryrefslogtreecommitdiff
path: root/apt-pkg
diff options
context:
space:
mode:
Diffstat (limited to 'apt-pkg')
-rw-r--r--apt-pkg/acquire-item.cc10
-rw-r--r--apt-pkg/acquire-item.h25
2 files changed, 20 insertions, 15 deletions
diff --git a/apt-pkg/acquire-item.cc b/apt-pkg/acquire-item.cc
index aa77824f8..df83d1481 100644
--- a/apt-pkg/acquire-item.cc
+++ b/apt-pkg/acquire-item.cc
@@ -2071,13 +2071,3 @@ string pkgAcqFile::Custom600Headers()
return "";
}
/*}}}*/
-bool IndexTarget::IsOptional() const {
- if (strncmp(ShortDesc.c_str(), "Translation", 11) != 0)
- return false;
- return true;
-}
-bool IndexTarget::IsSubIndex() const {
- if (ShortDesc != "TranslationIndex")
- return false;
- return true;
-}
diff --git a/apt-pkg/acquire-item.h b/apt-pkg/acquire-item.h
index e6916a834..f39a90c0b 100644
--- a/apt-pkg/acquire-item.h
+++ b/apt-pkg/acquire-item.h
@@ -646,8 +646,9 @@ class pkgAcqIndexTrans : public pkgAcqIndex
};
/*}}}*/
/** \brief Information about an index file. */ /*{{{*/
-struct IndexTarget
+class IndexTarget
{
+ public:
/** \brief A URI from which the index file can be downloaded. */
string URI;
@@ -662,14 +663,28 @@ struct IndexTarget
*/
string MetaKey;
- //FIXME: We should use virtual methods here instead…
- bool IsOptional() const;
- bool IsSubIndex() const;
+ virtual bool IsOptional() const {
+ return false;
+ }
+ virtual bool IsSubIndex() const {
+ return false;
+ }
};
/*}}}*/
/** \brief Information about an optional index file. */ /*{{{*/
-struct OptionalIndexTarget : public IndexTarget
+class OptionalIndexTarget : public IndexTarget
+{
+ virtual bool IsOptional() const {
+ return true;
+ }
+};
+ /*}}}*/
+/** \brief Information about an subindex index file. */ /*{{{*/
+class SubIndexTarget : public IndexTarget
{
+ virtual bool IsSubIndex() const {
+ return true;
+ }
};
/*}}}*/