summaryrefslogtreecommitdiffstats
path: root/src/auth/types
diff options
context:
space:
mode:
Diffstat (limited to 'src/auth/types')
-rw-r--r--src/auth/types/property_map.rs61
1 files changed, 0 insertions, 61 deletions
diff --git a/src/auth/types/property_map.rs b/src/auth/types/property_map.rs
deleted file mode 100644
index ddfc9ce..0000000
--- a/src/auth/types/property_map.rs
+++ /dev/null
@@ -1,61 +0,0 @@
-use std::fmt::Formatter;
-use multimap::MultiMap;
-use serde::de::{SeqAccess, Visitor};
-use serde::{Deserializer, Serializer};
-use crate::auth::Property;
-
-pub type PropertyMap = MultiMap<String, Property>;
-
-pub mod legacy {
- use serde::Serializer;
- use super::PropertyMap;
-
- pub fn serialize<S>(value: &PropertyMap, serializer: S) -> Result<S::Ok, S::Error>
- where S: Serializer
- {
- serializer.collect_map(value.iter_all()
- .filter_map(|(k, v)| {
- if v.is_empty() {
- None
- } else {
- Some((k, v.iter().map(|p| &p.value).collect::<Vec<_>>()))
- }
- }))
- }
-}
-
-pub fn serialize<S>(value: &PropertyMap, serializer: S) -> Result<S::Ok, S::Error>
-where
- S: Serializer
-{
- serializer.collect_seq(value.flat_iter().map(|(_, v)| v))
-}
-
-pub fn deserialize<'de, D>(deserializer: D) -> Result<PropertyMap, D::Error>
-where
- D: Deserializer<'de>
-{
- struct PropertyMapVisitor;
-
- impl<'de> Visitor<'de> for PropertyMapVisitor {
- type Value = PropertyMap;
-
- fn expecting(&self, formatter: &mut Formatter) -> std::fmt::Result {
- formatter.write_str("a property map")
- }
-
- fn visit_seq<A>(self, mut seq: A) -> Result<Self::Value, A::Error>
- where
- A: SeqAccess<'de>,
- {
- let mut map = MultiMap::new() as PropertyMap;
- while let Some(prop) = seq.next_element::<Property>()? {
- map.insert(prop.name.clone(), prop);
- }
-
- Ok(map)
- }
- }
-
- deserializer.deserialize_seq(PropertyMapVisitor)
-}