aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--pkg/datalocality/mapping.go31
1 files changed, 31 insertions, 0 deletions
diff --git a/pkg/datalocality/mapping.go b/pkg/datalocality/mapping.go
new file mode 100644
index 0000000..51484b0
--- /dev/null
+++ b/pkg/datalocality/mapping.go
@@ -0,0 +1,31 @@
+package datalocality
+
+import (
+ "strings"
+)
+
+type DataLocality uint
+
+const (
+ None DataLocality = iota
+ Write_preferLocalDc
+)
+
+// DataLocality -> String
+var dataLocalityStringMap = []string {
+ "none",
+ "write_preferlocaldc",
+}
+func (d DataLocality) String() string {
+ return dataLocalityStringMap[d]
+}
+
+// String -> DataLocality
+var stringDataLocalityMap = map[string]DataLocality {
+ "none": None,
+ "write_preferlocaldc": Write_preferLocalDc,
+}
+func FromString(s string) (DataLocality, bool) {
+ value, ok := stringDataLocalityMap[strings.ToLower(s)]
+ return value, ok
+}