\hypertarget{doc_decisions_specification_md_autotoc_md1343}{}\doxysection{Problem}\label{doc_decisions_specification_md_autotoc_md1343}

\begin{DoxyItemize}
\item The commandline for mounting a backend can be very long
\item A specification is already used for code generation, but
\begin{DoxyItemize}
\item the data is not available in K\+DB
\item the specification cannot be used for mounting, even though the needed information is in the specification
\end{DoxyItemize}
\end{DoxyItemize}\hypertarget{doc_decisions_specification_md_autotoc_md1344}{}\doxysection{Constraints}\label{doc_decisions_specification_md_autotoc_md1344}

\begin{DoxyItemize}
\item the specification must be simple to use
\item there must be a clear mapping between keys and configuration file entries
\item there must be a 1\+:1 mapping of keys used within an application and the specification
\end{DoxyItemize}\hypertarget{doc_decisions_specification_md_autotoc_md1345}{}\doxysection{Assumptions}\label{doc_decisions_specification_md_autotoc_md1345}

\begin{DoxyItemize}
\item The user will have a variable for each configuration value (e.\+g. by using a binding) if she cares about access performance
\item memory footprint is expected to be low
\end{DoxyItemize}\hypertarget{doc_decisions_specification_md_autotoc_md1346}{}\doxysection{Considered Alternatives}\label{doc_decisions_specification_md_autotoc_md1346}

\begin{DoxyItemize}
\item modifying \mbox{\hyperlink{group__kdb_ga28e385fd9cb7ccfe0b2f1ed2f62453a1}{kdb\+Get()}} and \mbox{\hyperlink{group__keyset_gaa34fc43a081e6b01e4120daa6c112004}{ks\+Lookup()}} so that we get a logical hierarchy
\item having a duplicated in memory hierarchy with the cascaded key sets
\end{DoxyItemize}\hypertarget{doc_decisions_specification_md_autotoc_md1347}{}\doxysection{Decision}\label{doc_decisions_specification_md_autotoc_md1347}
\hypertarget{doc_decisions_specification_md_autotoc_md1348}{}\doxysection{Rationale}\label{doc_decisions_specification_md_autotoc_md1348}

\begin{DoxyItemize}
\item The user wants deterministic retrieval of configuration. It must be answerable (w/o study of source code and debugging) which value will be used in the current situation.
\end{DoxyItemize}\hypertarget{doc_decisions_specification_md_autotoc_md1349}{}\doxysection{Implications}\label{doc_decisions_specification_md_autotoc_md1349}

\begin{DoxyEnumerate}
\item Introduction of spec/ hierarchy
\item \mbox{\hyperlink{group__kdb_ga28e385fd9cb7ccfe0b2f1ed2f62453a1}{kdb\+Get()}} for cascading
\item \mbox{\hyperlink{group__kdb_ga11436b058408f83d303ca5e996832bcf}{kdb\+Set()}} for cascading
\item modify \mbox{\hyperlink{group__keyset_gaa34fc43a081e6b01e4120daa6c112004}{ks\+Lookup()}} for cascading
\item K\+D\+B\+\_\+\+O\+\_\+\+D\+E\+F\+A\+U\+LT in \mbox{\hyperlink{group__keyset_gaa34fc43a081e6b01e4120daa6c112004}{ks\+Lookup()}}
\item define necessary metadata
\item mounting spec files
\end{DoxyEnumerate}\hypertarget{doc_decisions_specification_md_autotoc_md1350}{}\doxysection{Related Decisions}\label{doc_decisions_specification_md_autotoc_md1350}
\hypertarget{doc_decisions_specification_md_autotoc_md1351}{}\doxysection{Notes}\label{doc_decisions_specification_md_autotoc_md1351}
