This section documents functions/methods of the LinkarClt object. Using this library requires an understanding of these details.
As noted in the EntryPoints topic, two types of sessions are used from a client application to Linkar SERVER: Persistent and Volatile.
Persistent Client Functions
Login/Logout are only required for Persistent sessions with multiple transactions.
Login is actually a "virtual" operation which creates a new Client Session ID. The DBMS is not called on Login. No DBMS login is performed unless Linkar SERVER determines new Database Sessions are required. These operations are not related.
•Login with a LinkarClt instance using a CredentialsOptions object to create and maintain a Client Session.
•Perform Persistent transactions using functions/methods on the LinkarClt instance.
•Logout when done with a Client Session. Again, no database operation is performed. This is only to close the Client Session.
Volatile Client Functions
Login/Logout are not used for one-off Dynamic/Volatile transactions, which are performed with shared/static functions.
•For a single Volatile transaction, use LinkarClt with static methods, passing in a CredentialsOptions object.
•No Client Session is maintained.
Linkar licencing is based on the concept of the Client Session. While a Login/Logout session is in progress, a Linkar license is consumed. For this reason it is extremely important to keep these connections as short as possible. Individual volatile transactions consume a Linkar license only for the time during which the transaction is in progress and activity is being performed with the database.
The purpose of Persistent functions, with the virtual Login/Logout, is to eliminate the performance penalty of authentication which is incurred when processing CredentialsOptions. This process is called once for Login and not for every transaction in that session. With Volatile transactions, authentication is performed with each operation. As noted on the EntryPoints page: All REST API transactions are Volatile.
Be sure to use try/catch/finally blocks to capture failed Login operations and to handle failed Volatile transactions. For Persistent transactions, wrap try/catch/finally around code that defines an entire session, to ensure LinkarClt.Logout is executed after Login. If Logout is not executed after Login, Client Sessions in the server will not be disposed, resulting in Linkar license consumption until an inactivity timeout on the session occurs. When this happens use Linkar MANAGER and the Client Session page to close disconnected sessions.
The table below summarizes the functions available in LinkarClt. Each function is described in its own topic in this manual. For manuals dedicated to specific languages/frameworks, see the following:
.NET Framework, .NET Core and Mono Libraries
C Library (Note: The C library requires all functions to have all calling arguments specified.)
Asynchronous calls are not yet available for C-based Client libraries including C, JavaScript, PHP, and Python.
Conversion |
Returns the result of executing the ICONV() or OCONV() functions of an expressions list in the database, synchronously or asynchronously.
|
Delete |
Deletes one or several records of a file, synchronously or asynchronously.
|
Dictionaries |
Returns all the dictionaries of a file synchronously or asynchronously.
|
Execute |
Allows the execution of any command in the database, synchronously or asynchronously.
|
Format |
Returns the result of executing the FMT function of an expressions list in the database, synchronously or asynchronously.
|
GetVersion |
Allows you to obtain the Linkar Components Version and the EntryPoint parameters, synchronously or asynchronously.
|
LkSchemas |
Returns a list of all the Schemas defined in Linkar Schemas or the EntryPoint account data files, synchronously or asynchronously.
|
LkProperties |
Returns the Schema properties list defined in Linkar Schemas, synchronously or asynchronously.
|
GetTable |
Returns the query result in a relational table format, synchronously or asynchronously. |
Login |
Starts the communication with a server, allowing it to use of the rest of functions until the Close method is executed or the connection with the server gets lost, synchronously or asynchronously.
|
Logout |
Closes the communication with a server, which previously has been opened with a Login Function, synchronously or asynchronously.
|
New |
Creates one or several new file records, synchronously or asynchronously.
|
Read |
Reads one or several file records, synchronously or asynchronously.
|
ResetCommonBlocks |
Resets the COMMON variables with the 100 most used files, synchronously or asynchronously.
|
RunSubroutine |
Executes a subroutine, synchronously or asynchronously.
|
Select |
Executes a query in the database, synchronously or asynchronously.
|
SendCommand |
Allows different operations to be made, through a standard template in (XML and JSON), synchronously or asynchronously.
|
Update |
Modifies one or several file records, synchronously or asynchronously.
|