Dzmitry Dym edited this page Aug 25, 2018 · 17 revisions

Welcome to Appline Wiki!

What is it? Nuget

Appline allow to communicate between processes with Anonymous Pipes, to send messages or complex objects. Anonymous pipes provide interprocess communication on a local computer. To present how to use such a mechanism, you can use the example: Steam(Launcher) > Dota2.exe(Application). So you can be notified for any changes in your game or collect analytic information.

Diagram

Objects

LineFactory - A factory for creating lines, both for the starting point and for the end point.

Static Methods

  • Launcher - Create a starting point. In the parameters we specify the path to the second application, the timeout allocated for the execute, additional arguments for second application and the event object that you can listen to.
  • Application - Create an endpoint. Create this object as close as possible to the input point and transfer the passed parameters from the starting point to the object, as well as the object for listening.

NotifyMessage/NotifyContext - This object registers events for listening. It is preferable to create it before starting the factory to create a line.

Events

  • Timeout - It will be called if the start fails for the allotted time.
  • Connected - It will be called when the connection is successful.
  • Disconnected - It will be called when the connection fails.
  • Message - It will be called when a string is received.
  • ContextChanges - It will be called when the context object is received.
  • Exception - It will be called when the line throw any exception

MessageLine/ContextLine - The main objects to work for and will come changes. Please note, it is important to understand that changing data at the ends of lines can lead to recursion. In order to prevent recursion, use a stub. An example of the work will follow the link below.

Properties

  • Notify - The notification object.
  • IsConnected - Indicates the status of the line.
  • IsRunning - Indicates whether the process is running.
  • IsLauncher - Indicates whether this line is the main line.

Methods

  • Send - Sends the string/object to the other end of the line.
  • Close - Closes the line.

License

Mit

Clone this wiki locally
You can’t perform that action at this time.
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.
Press h to open a hovercard with more details.