\hypertarget{classorg_1_1libelektra_1_1NativePlugin}{}\doxysection{org.\+libelektra.\+Native\+Plugin Class Reference}
\label{classorg_1_1libelektra_1_1NativePlugin}\index{org.libelektra.NativePlugin@{org.libelektra.NativePlugin}}


This class can be used to load native \mbox{\hyperlink{interfaceorg_1_1libelektra_1_1Elektra}{Elektra}} plugins to be used by Java directly.  




Inheritance diagram for org.\+libelektra.\+Native\+Plugin\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=227pt]{classorg_1_1libelektra_1_1NativePlugin__inherit__graph}
\end{center}
\end{figure}


Collaboration diagram for org.\+libelektra.\+Native\+Plugin\+:
\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=227pt]{classorg_1_1libelektra_1_1NativePlugin__coll__graph}
\end{center}
\end{figure}
\doxysubsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\mbox{\hyperlink{classorg_1_1libelektra_1_1NativePlugin_a5350854110f7864e01af9161002aadbd}{Native\+Plugin}} (String plugin\+Name, \mbox{\hyperlink{classorg_1_1libelektra_1_1Key}{Key}} error\+Key, \mbox{\hyperlink{classorg_1_1libelektra_1_1KeySet}{Key\+Set}} modules)  throws Installation\+Exception  
\begin{DoxyCompactList}\small\item\em Constructor for loading an \mbox{\hyperlink{interfaceorg_1_1libelektra_1_1Elektra}{Elektra}} plugin. \end{DoxyCompactList}\item 
\mbox{\hyperlink{classorg_1_1libelektra_1_1NativePlugin_a0bec1bb798e1901536f9a4f09b65cee3}{Native\+Plugin}} (String plugin\+Name, \mbox{\hyperlink{classorg_1_1libelektra_1_1KeySet}{Key\+Set}} modules, \mbox{\hyperlink{classorg_1_1libelektra_1_1KeySet}{Key\+Set}} config, \mbox{\hyperlink{classorg_1_1libelektra_1_1Key}{Key}} error\+Key)
\begin{DoxyCompactList}\small\item\em Constructor for loading an \mbox{\hyperlink{interfaceorg_1_1libelektra_1_1Elektra}{Elektra}} plugin. \end{DoxyCompactList}\item 
\mbox{\hyperlink{classorg_1_1libelektra_1_1KeySet}{Key\+Set}} \mbox{\hyperlink{classorg_1_1libelektra_1_1NativePlugin_a6d050d1527b902baae8e5c7b4f4061ec}{get\+Config}} ()
\begin{DoxyCompactList}\small\item\em Gets the config which was used to configure the plugin. \end{DoxyCompactList}\item 
int \mbox{\hyperlink{classorg_1_1libelektra_1_1NativePlugin_a73373e3f05a130927bdc13174d809af7}{open}} (\mbox{\hyperlink{classorg_1_1libelektra_1_1KeySet}{Key\+Set}} conf, \mbox{\hyperlink{classorg_1_1libelektra_1_1Key}{Key}} error\+Key)
\begin{DoxyCompactList}\small\item\em Calls the plugin\textquotesingle{}s open function. \end{DoxyCompactList}\item 
int \mbox{\hyperlink{classorg_1_1libelektra_1_1NativePlugin_a8a7667aa9f508ad5911db1b8cf0271bf}{kdb\+Open}} (\mbox{\hyperlink{classorg_1_1libelektra_1_1Key}{Key}} error\+Key)
\begin{DoxyCompactList}\small\item\em Opens the session with the Key\+Database. \end{DoxyCompactList}\item 
int \mbox{\hyperlink{classorg_1_1libelektra_1_1NativePlugin_a07ee3cd0b93d19b7bef85041d7c4f352}{close}} (\mbox{\hyperlink{classorg_1_1libelektra_1_1Key}{Key}} error\+Key)
\begin{DoxyCompactList}\small\item\em Closes the session with the \mbox{\hyperlink{classorg_1_1libelektra_1_1Key}{Key}} database. \end{DoxyCompactList}\item 
int \mbox{\hyperlink{classorg_1_1libelektra_1_1NativePlugin_a8c6a7d55ecfa67a1213ed2c67d98c733}{set}} (\mbox{\hyperlink{classorg_1_1libelektra_1_1KeySet}{Key\+Set}} key\+Set, \mbox{\hyperlink{classorg_1_1libelektra_1_1Key}{Key}} error\+Key)  throws KDBException  
\begin{DoxyCompactList}\small\item\em Lets the plugin transform the given \mbox{\hyperlink{classorg_1_1libelektra_1_1KeySet}{Key\+Set}}. \end{DoxyCompactList}\end{DoxyCompactItemize}
\doxysubsection*{Additional Inherited Members}


\doxysubsection{Detailed Description}
This class can be used to load native \mbox{\hyperlink{interfaceorg_1_1libelektra_1_1Elektra}{Elektra}} plugins to be used by Java directly. 

\doxysubsection{Constructor \& Destructor Documentation}
\mbox{\Hypertarget{classorg_1_1libelektra_1_1NativePlugin_a5350854110f7864e01af9161002aadbd}\label{classorg_1_1libelektra_1_1NativePlugin_a5350854110f7864e01af9161002aadbd}} 
\index{org.libelektra.NativePlugin@{org.libelektra.NativePlugin}!NativePlugin@{NativePlugin}}
\index{NativePlugin@{NativePlugin}!org.libelektra.NativePlugin@{org.libelektra.NativePlugin}}
\doxysubsubsection{\texorpdfstring{NativePlugin()}{NativePlugin()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}}
{\footnotesize\ttfamily org.\+libelektra.\+Native\+Plugin.\+Native\+Plugin (\begin{DoxyParamCaption}\item[{String}]{plugin\+Name,  }\item[{\mbox{\hyperlink{classorg_1_1libelektra_1_1Key}{Key}}}]{error\+Key,  }\item[{\mbox{\hyperlink{classorg_1_1libelektra_1_1KeySet}{Key\+Set}}}]{modules }\end{DoxyParamCaption}) throws Installation\+Exception\hspace{0.3cm}{\ttfamily [inline]}}



Constructor for loading an \mbox{\hyperlink{interfaceorg_1_1libelektra_1_1Elektra}{Elektra}} plugin. 


\begin{DoxyParams}{Parameters}
{\em plugin\+Name} & The plugin name \\
\hline
{\em error\+Key} & The error\+Key \\
\hline
{\em modules} & TODO \#3754 add parameter description \\
\hline
\end{DoxyParams}

\begin{DoxyExceptions}{Exceptions}
{\em Installation\+Exception} & if the plugin does not exist \\
\hline
{\em Key\+Set\+Released\+Exception} & if
\begin{DoxyCode}{1}
\DoxyCodeLine{modules }

\end{DoxyCode}
 has already been released \\
\hline
{\em Key\+Released\+Exception} & if
\begin{DoxyCode}{1}
\DoxyCodeLine{errorKey }

\end{DoxyCode}
 has already been released \\
\hline
\end{DoxyExceptions}
\mbox{\Hypertarget{classorg_1_1libelektra_1_1NativePlugin_a0bec1bb798e1901536f9a4f09b65cee3}\label{classorg_1_1libelektra_1_1NativePlugin_a0bec1bb798e1901536f9a4f09b65cee3}} 
\index{org.libelektra.NativePlugin@{org.libelektra.NativePlugin}!NativePlugin@{NativePlugin}}
\index{NativePlugin@{NativePlugin}!org.libelektra.NativePlugin@{org.libelektra.NativePlugin}}
\doxysubsubsection{\texorpdfstring{NativePlugin()}{NativePlugin()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}}
{\footnotesize\ttfamily org.\+libelektra.\+Native\+Plugin.\+Native\+Plugin (\begin{DoxyParamCaption}\item[{String}]{plugin\+Name,  }\item[{\mbox{\hyperlink{classorg_1_1libelektra_1_1KeySet}{Key\+Set}}}]{modules,  }\item[{\mbox{\hyperlink{classorg_1_1libelektra_1_1KeySet}{Key\+Set}}}]{config,  }\item[{\mbox{\hyperlink{classorg_1_1libelektra_1_1Key}{Key}}}]{error\+Key }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}



Constructor for loading an \mbox{\hyperlink{interfaceorg_1_1libelektra_1_1Elektra}{Elektra}} plugin. 


\begin{DoxyParams}{Parameters}
{\em plugin\+Name} & The plugin name \\
\hline
{\em error\+Key} & The error\+Key \\
\hline
{\em config} & TODO \#3754 add parameter description and update other \\
\hline
{\em modules} & TODO \#3754 add parameter description and update other \\
\hline
\end{DoxyParams}

\begin{DoxyExceptions}{Exceptions}
{\em Key\+Set\+Released\+Exception} & if
\begin{DoxyCode}{1}
\DoxyCodeLine{modules }

\end{DoxyCode}
 or
\begin{DoxyCode}{1}
\DoxyCodeLine{config }

\end{DoxyCode}
 has already been released \\
\hline
{\em Key\+Released\+Exception} & if
\begin{DoxyCode}{1}
\DoxyCodeLine{errorKey }

\end{DoxyCode}
 has already been released \\
\hline
\end{DoxyExceptions}


\doxysubsection{Member Function Documentation}
\mbox{\Hypertarget{classorg_1_1libelektra_1_1NativePlugin_a07ee3cd0b93d19b7bef85041d7c4f352}\label{classorg_1_1libelektra_1_1NativePlugin_a07ee3cd0b93d19b7bef85041d7c4f352}} 
\index{org.libelektra.NativePlugin@{org.libelektra.NativePlugin}!close@{close}}
\index{close@{close}!org.libelektra.NativePlugin@{org.libelektra.NativePlugin}}
\doxysubsubsection{\texorpdfstring{close()}{close()}}
{\footnotesize\ttfamily int org.\+libelektra.\+Native\+Plugin.\+close (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{classorg_1_1libelektra_1_1Key}{Key}}}]{error\+Key }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}



Closes the session with the \mbox{\hyperlink{classorg_1_1libelektra_1_1Key}{Key}} database. 


\begin{DoxyParams}{Parameters}
{\em error\+Key} & must be a valid key, e.\+g. created with \mbox{\hyperlink{classorg_1_1libelektra_1_1Key_ae62b6596937d48b5a24af97e6341d37a}{Key.\+create()}} \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
0 if success or -\/1 otherwise 
\end{DoxyReturn}


Implements \mbox{\hyperlink{interfaceorg_1_1libelektra_1_1Plugin_aa5d4abf6ffd0d477d6972b13bed05d41}{org.\+libelektra.\+Plugin}}.

\mbox{\Hypertarget{classorg_1_1libelektra_1_1NativePlugin_a6d050d1527b902baae8e5c7b4f4061ec}\label{classorg_1_1libelektra_1_1NativePlugin_a6d050d1527b902baae8e5c7b4f4061ec}} 
\index{org.libelektra.NativePlugin@{org.libelektra.NativePlugin}!getConfig@{getConfig}}
\index{getConfig@{getConfig}!org.libelektra.NativePlugin@{org.libelektra.NativePlugin}}
\doxysubsubsection{\texorpdfstring{getConfig()}{getConfig()}}
{\footnotesize\ttfamily \mbox{\hyperlink{classorg_1_1libelektra_1_1KeySet}{Key\+Set}} org.\+libelektra.\+Native\+Plugin.\+get\+Config (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}



Gets the config which was used to configure the plugin. 

\begin{DoxyReturn}{Returns}
A \mbox{\hyperlink{classorg_1_1libelektra_1_1KeySet}{Key\+Set}} containing the configuration of the plugin 
\end{DoxyReturn}


Implements \mbox{\hyperlink{interfaceorg_1_1libelektra_1_1Plugin_a95ee37a782d5bd32fd95478788652d44}{org.\+libelektra.\+Plugin}}.

\mbox{\Hypertarget{classorg_1_1libelektra_1_1NativePlugin_a8a7667aa9f508ad5911db1b8cf0271bf}\label{classorg_1_1libelektra_1_1NativePlugin_a8a7667aa9f508ad5911db1b8cf0271bf}} 
\index{org.libelektra.NativePlugin@{org.libelektra.NativePlugin}!kdbOpen@{kdbOpen}}
\index{kdbOpen@{kdbOpen}!org.libelektra.NativePlugin@{org.libelektra.NativePlugin}}
\doxysubsubsection{\texorpdfstring{kdbOpen()}{kdbOpen()}}
{\footnotesize\ttfamily int org.\+libelektra.\+Native\+Plugin.\+kdb\+Open (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{classorg_1_1libelektra_1_1Key}{Key}}}]{error\+Key }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}



Opens the session with the Key\+Database. 


\begin{DoxyParams}{Parameters}
{\em error\+Key} & must be a valid key, e.\+g. created with \mbox{\hyperlink{classorg_1_1libelektra_1_1Key_ae62b6596937d48b5a24af97e6341d37a}{Key.\+create()}} \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
0 if success or -\/1 otherwise 
\end{DoxyReturn}

\begin{DoxyExceptions}{Exceptions}
{\em Key\+Released\+Exception} & if
\begin{DoxyCode}{1}
\DoxyCodeLine{errorKey }

\end{DoxyCode}
 has already been released \\
\hline
\end{DoxyExceptions}
\mbox{\Hypertarget{classorg_1_1libelektra_1_1NativePlugin_a73373e3f05a130927bdc13174d809af7}\label{classorg_1_1libelektra_1_1NativePlugin_a73373e3f05a130927bdc13174d809af7}} 
\index{org.libelektra.NativePlugin@{org.libelektra.NativePlugin}!open@{open}}
\index{open@{open}!org.libelektra.NativePlugin@{org.libelektra.NativePlugin}}
\doxysubsubsection{\texorpdfstring{open()}{open()}}
{\footnotesize\ttfamily int org.\+libelektra.\+Native\+Plugin.\+open (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{classorg_1_1libelektra_1_1KeySet}{Key\+Set}}}]{config,  }\item[{\mbox{\hyperlink{classorg_1_1libelektra_1_1Key}{Key}}}]{error\+Key }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [inline]}}



Calls the plugin\textquotesingle{}s open function. 


\begin{DoxyParams}{Parameters}
{\em config} & \mbox{\hyperlink{interfaceorg_1_1libelektra_1_1Plugin}{Plugin}} configuration key set \\
\hline
{\em error\+Key} & Used to store warnings and error information \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
\mbox{\hyperlink{interfaceorg_1_1libelektra_1_1Plugin}{Plugin}}\textquotesingle{}s return value for open 
\end{DoxyReturn}
\begin{DoxySeeAlso}{See also}
\mbox{\hyperlink{interfaceorg_1_1libelektra_1_1Plugin_a89783ba1d7c720421b7e60c09d592663}{STATUS\+\_\+\+SUCCESS}} 

\mbox{\hyperlink{interfaceorg_1_1libelektra_1_1Plugin_af8feab87d512d92228facfab0f90ccd8}{STATUS\+\_\+\+ERROR}} 
\end{DoxySeeAlso}


Implements \mbox{\hyperlink{interfaceorg_1_1libelektra_1_1Plugin_a81622b7078d0442d8121831788252a61}{org.\+libelektra.\+Plugin}}.

\mbox{\Hypertarget{classorg_1_1libelektra_1_1NativePlugin_a8c6a7d55ecfa67a1213ed2c67d98c733}\label{classorg_1_1libelektra_1_1NativePlugin_a8c6a7d55ecfa67a1213ed2c67d98c733}} 
\index{org.libelektra.NativePlugin@{org.libelektra.NativePlugin}!set@{set}}
\index{set@{set}!org.libelektra.NativePlugin@{org.libelektra.NativePlugin}}
\doxysubsubsection{\texorpdfstring{set()}{set()}}
{\footnotesize\ttfamily int org.\+libelektra.\+Native\+Plugin.\+set (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{classorg_1_1libelektra_1_1KeySet}{Key\+Set}}}]{key\+Set,  }\item[{\mbox{\hyperlink{classorg_1_1libelektra_1_1Key}{Key}}}]{error\+Key }\end{DoxyParamCaption}) throws \mbox{\hyperlink{classorg_1_1libelektra_1_1KDBException}{KDBException}}\hspace{0.3cm}{\ttfamily [inline]}}



Lets the plugin transform the given \mbox{\hyperlink{classorg_1_1libelektra_1_1KeySet}{Key\+Set}}. 


\begin{DoxyParams}{Parameters}
{\em key\+Set} & The \mbox{\hyperlink{classorg_1_1libelektra_1_1KeySet}{Key\+Set}} to transform \\
\hline
{\em error\+Key} & must be a valid key, e.\+g. created with \mbox{\hyperlink{classorg_1_1libelektra_1_1Key_ae62b6596937d48b5a24af97e6341d37a}{Key.\+create()}} \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
0 if success or -\/1 otherwise 
\end{DoxyReturn}

\begin{DoxyExceptions}{Exceptions}
{\em \mbox{\hyperlink{classorg_1_1libelektra_1_1KDBException}{KDBException}}} & if return value was -\/1 \\
\hline
{\em Key\+Set\+Released\+Exception} & if
\begin{DoxyCode}{1}
\DoxyCodeLine{keySet }

\end{DoxyCode}
 has already been released \\
\hline
{\em Key\+Released\+Exception} & if
\begin{DoxyCode}{1}
\DoxyCodeLine{errorKey }

\end{DoxyCode}
 has already been released \\
\hline
\end{DoxyExceptions}


Implements \mbox{\hyperlink{interfaceorg_1_1libelektra_1_1Plugin_a3bfd38d875f3e50a05aaaf9a6f547bb4}{org.\+libelektra.\+Plugin}}.



The documentation for this class was generated from the following file\+:\begin{DoxyCompactItemize}
\item 
Native\+Plugin.\+java\end{DoxyCompactItemize}
