Difference between revisions of "Extensions.ExternalServiceProvider"
(Created by Ngoc Tran.) |
(Edited by Ngoc Tran. Replace link checker rules) |
||
Line 80: | Line 80: | ||
{| {{TableHeader}} | {| {{TableHeader}} | ||
− | {{TableRowKeyValueList|[[Extensions.ExternalServiceProvider. | + | {{TableRowKeyValueList|[[Extensions.ExternalServiceProvider.ExternalServiceProviderChk001|ExternalServiceProvider_Chk001]]|Incorrect target for service provider }} |
− | {{TableRowKeyValueList|[[Extensions.ExternalServiceProvider. | + | {{TableRowKeyValueList|[[Extensions.ExternalServiceProvider.ExternalServiceProviderChk002|ExternalServiceProvider_Chk002]]|Incorrect CreateProvider constructor arguments }} |
− | {{TableRowKeyValueList|[[Extensions.ExternalServiceProvider. | + | {{TableRowKeyValueList|[[Extensions.ExternalServiceProvider.ExternalServiceProviderChk003|ExternalServiceProvider_Chk003]]|Input argument omission }} |
− | {{TableRowKeyValueList|[[Extensions.ExternalServiceProvider. | + | {{TableRowKeyValueList|[[Extensions.ExternalServiceProvider.ExternalServiceProviderChk004|ExternalServiceProvider_Chk004]]|Incorrect CreateProvider constructor reference }} |
− | {{TableRowKeyValueList|[[Extensions.ExternalServiceProvider. | + | {{TableRowKeyValueList|[[Extensions.ExternalServiceProvider.ExternalServiceProviderChk005|ExternalServiceProvider_Chk005]]|Incorrect ExecuteService service reference }} |
− | {{TableRowKeyValueList|[[Extensions.ExternalServiceProvider. | + | {{TableRowKeyValueList|[[Extensions.ExternalServiceProvider.ExternalServiceProviderChk006|ExternalServiceProvider_Chk006]]|Incorrect ExecuteService arguments }} |
− | {{TableRowKeyValueList|[[Extensions.ExternalServiceProvider. | + | {{TableRowKeyValueList|[[Extensions.ExternalServiceProvider.ExternalServiceProviderChk007|ExternalServiceProvider_Chk007]]|Incorrect property attribute reference }} |
− | {{TableRowKeyValueList|[[Extensions.ExternalServiceProvider. | + | {{TableRowKeyValueList|[[Extensions.ExternalServiceProvider.ExternalServiceProviderChk008|ExternalServiceProvider_Chk009]]|Incorrect Property access}} |
− | {{TableRowKeyValueList|[[Extensions.ExternalServiceProvider. | + | {{TableRowKeyValueList|[[Extensions.ExternalServiceProvider.ExternalServiceProviderChk009|ExternalServiceProvider_Chk009]]|Incorrect event attribute reference}} |
− | {{TableRowKeyValueList|[[Extensions.ExternalServiceProvider. | + | {{TableRowKeyValueList|[[Extensions.ExternalServiceProvider.ExternalServiceProviderChk010|ExternalServiceProvider_Chk010]]|Incorrect CreateProvider constructor attribute}} |
− | {{TableRowKeyValueList|[[Extensions.ExternalServiceProvider. | + | {{TableRowKeyValueList|[[Extensions.ExternalServiceProvider.ExternalServiceProviderChk011|ExternalServiceProvider_Chk011]]|Incorrect Event values}} |
|} | |} |
Latest revision as of 12:21, 14 November 2019
Contents
Classification
Name | ExternalServiceProvider |
Short Description | Provides actions, terms, events and data types for an access to external services |
Class | OTX Extension |
Base Extension | OTX EventHandling Extension |
Pre-Conditions | - |
Specified by | ISO 13209-4 |
Introductions
The OTX ExternalServiceProvider Extension provides actions, terms, events and data types for accessing external services. These services can be a part of a system, a device, a database or a simple library. The purpose of the OTX ExternalServiceProvider Extension is to extend OTX to functionality that is encapsulated in these services to help fulfill the requirements of vehicle manufacturing and diagnosis. The existing OTX signature concept gives the author a very flexible construction kit to add existing functionality into OTX test sequences without any knowledge of the complex schema structure of OTX. To extend OTX for general purpose functionality a new OTX extension will be introduced. The criteria for new extensions are:
- As general as possible, as specific as necessary
- Each new extension must be able to be potentially standardized
Use cases for the OTX ExternalServiceProvider Extension:
- Add the seed/key functionality of a third party company that is encapsulated in a library must be added into an OTX test sequence.
- Add an existing proprietary test sequence of an existing test system into an OTX test sequence. In this use case new OTX test sequences can be easily added to an existing test sequence. A step by step migration of the test logic to OTX is possible as well as the possibility to add new functionality written in OTX into proprietary test sequences. So the introduction to use OTX test sequences is not complex. The author has the possibility to add small and simple pieces of OTX code into an already running code. With this knowledge the author is able to write larger and more complex OTX programs.
- Add any external functionality to an OTX test sequence.
Keep in mind. The usage of the ExternalServiceProvider Extension guarantees the exchangeability of the OTX source code itself, but not the exchangeability of the functionality. If you want to add e.g. a proprietary library into OTX, with the help of the ExternalServiceProvider, the binding between the OTX runtime system and the library must be separately implemented and is not part of the standard.
Actions
CreateProvider | |
DisposeProvider | |
ExecuteService | |
GetServiceProviderEventValues | |
SetProperty | |
TerminateService |
Terms
GetProperty | |
IsDisposed | |
IsServiceRunning | |
External Service provider event query terms | |
GetServiceProviderFromEvent | |
IsServiceExecutionFinishedEvent | |
IsServiceProviderEvent | |
External service provider event source terms | |
ServiceExecutionFinishedEventSource | |
ServiceProviderEventSource |
Data Types
PropertyFlag | |
Service | |
ServiceProvider |
Exceptions
ConfigurationException | |
ExecuteException | |
ExternalServiceProviderException | |
ProviderDisposedException | |
ProviderServiceException |
Signatures
ConstructorSignature | |
EventSignature | |
PropertyRealisation | |
PropertySignature | |
ServiceProviderSignature | |
ServiceSignature |
Checker rules
ExternalServiceProvider_Chk001 | Incorrect target for service provider |
ExternalServiceProvider_Chk002 | Incorrect CreateProvider constructor arguments |
ExternalServiceProvider_Chk003 | Input argument omission |
ExternalServiceProvider_Chk004 | Incorrect CreateProvider constructor reference |
ExternalServiceProvider_Chk005 | Incorrect ExecuteService service reference |
ExternalServiceProvider_Chk006 | Incorrect ExecuteService arguments |
ExternalServiceProvider_Chk007 | Incorrect property attribute reference |
ExternalServiceProvider_Chk009 | Incorrect Property access |
ExternalServiceProvider_Chk009 | Incorrect event attribute reference |
ExternalServiceProvider_Chk010 | Incorrect CreateProvider constructor attribute |
ExternalServiceProvider_Chk011 | Incorrect Event values |