wiki:Documentatie/Ontwikkelaar/Procedures/ProtocolHandler

Version 9 (modified by henk, 4 years ago) (diff)

--

TOC(heading=ProtocolHandler)? TOC(heading=Procedures, sectionindex, compact, depth=3, allactive, Documentatie/Ontwikkelaar/Procedures/)? TOC(heading=Ontwikkelaar, sectionindex, compact, depth=2, allactive, Documentatie/Ontwikkelaar/)? TOC(heading=Documentatie, sectionindex, compact, depth=1, allactive, Documentatie/)?

Protocol handler

Inleiding

OpenAC gebruikt een eigen protocol handler om te communiceren met software en randapparatuur op het werkstation van de gebruiker. Alle OpenAC URL's die beginnen met protocol openac-protocol: worden door deze protocol handler afgehandeld. Dit functioneert alleen als de OpenAC protocol handler op het werkstation is geïnstalleerd en het protocol in de Windows registry is gekoppeld aan OpenACProtocolHandler.exe . Hierdoor weet Windows welke applicatie moet worden gestart bij een klik op een link met schema openac-protocol:.

De communicatie tussen OpenAC 3 en de protocol handler is gebaseerd op 4 onderdelen. 2 daarvan zijn geïmplementeerd aan de kant van OpenAC en 2 aan de kant van de protocol handler:

  1. Sjabloonhandlers (OpenAC) - een sjabloon handler genereert de argumenten die aan de sjabloon handler moeten worden aangeleverd in de url, gebaseerd op het sjabloon;
  2. Starters (protocol handler) - een starter weet welke applicatie moet worden gestart en hoe de data hiervoor moet worden opgehaald, gebaseerd op het sjabloon;
  3. Print implementaties (protocol handler) - een primt implementatie weet hoe een document van een bepaald type moet worden geprint;
  4. Protocol handler controllers (OpenAC) - een protocol handler controller verwerkt dataverzoeken en antwoorden van de protocol handler.

Sjabloonhandlers

Een sjabloon handler genereert de argumenten die aan de sjabloon handler moeten worden aangeleverd in de url, gebaseerd op het sjabloon.

Starters

Een starter weet welke applicatie moet worden gestart en hoe de data hiervoor moet worden opgehaald, gebaseerd op het sjabloon.

Printimplementaties

Een primt implementatie weet hoe een document van een bepaald type moet worden geprint.

Print implementaties zijn in het OpenACProtocolHandler project te vinden in de map PrintImplementaties . In dezelfde map bevindt zich de klasse PrintImplementatie . Deze klasse heeft een method Get die op basis van een ProtocolArgument een print implementatie teruggeeft.

Elke print implementatie implementeert de interface IPrintImplementatie .

namespace OpenACProtocolHandler.Interfaces
{
    public interface IPrintImplementatie
    {
        Result Print();
    }
}

Protocolhandler controllers

Een protocol handler controller verwerkt dataverzoeken en antwoorden van de protocol handler.

Registry

De protocol handler installer maakt gebruik van de volgende keys in de registry:

Computer\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\EventLog\Application\OpenACProtocolHandler\EventMessageFile
D:\Program Files (x86)\OpenAC Protocol Handler\runtimes\win\lib\netcoreapp3.1\System.Diagnostics.EventLog.Messages.dll
Computer\HKEY_CLASSES_ROOT\openac-protocol
URL:openac-protocol Protocol

Attachments (2)

Download all attachments as: .zip