Included Applications

Included Applications:

Definition:

An application can include many other applications. An included application contains its own application directory and .app file, but it is begun as part of the supervisor tree of another application.

  • An application can be included by one other application only.
  • An included application can include many other applications.
  • An application that is not included by any other application is called as a primary application.

1046_included applications.jpg

 
  

Figure: Primary Application and Included Applications

The application controller will be load any included applications automatically while loading a primary application, but not begin them. Instead, the top supervisor of the included application ought to be begun by a supervisor in the including application.

It means that when running, an included application is in fact part of the primary application and a procedure in an included application will regard as itself containing to the primary application.

Specifying Included Applications:

Which applications to include are described by the included_applications key in the .app file.

Synchronizing Processes during Startup:

The supervisor tree of an included application is begun as part of the supervisor tree of the including application. If there is a requirement for synchronization between processes in the including and included applications, it can be achieved by using start phases.

Start phases are described by the start_phases key in the .app file like a list of tuples {Phase, PhaseArgs}, where Phase is an atom and PhaseArgs is a term. The value of the mod key of the including application also ought be set to {application_starter,[Module,StartArgs]}, where Module as usual is the application callback module and StartArgs a term provided as argument to the callback function Module:start/2.

The needs apply to the .app file for an included application is following:

1. The {mod, {Module, StartArgs}} option ought to be included. This option is utilized to find the callback module Module of the application. StartArgs is avoided, as Module:start/2 is called for the primary application only.

2. If the included application itself has included applications, instead the option {mod, {application_starter, [Module,StartArgs]}} ought to be included.

3. The {start_phases, [{Phase,PhaseArgs}]} option ought to be included, and the set of defined phases ought to be a subset of the set of phases defined for the primary application.

Latest technology based Computer Science Online Tutoring Assistance

Tutors, at the www.tutorsglobe.com, take pledge to provide full satisfaction and assurance in Included Applications homework help via online tutoring. Students are getting 100% satisfaction by online tutors across the globe. Here you can get homework help for Included Applications, project ideas and tutorials. We provide email based Included Applications homework help. You can join us to ask queries 24x7 with live, experienced and qualified online tutors specialized in Included Applications. Through Online Tutoring, you would be able to complete your homework or assignments at your home. Tutors at the TutorsGlobe are committed to provide the best quality online tutoring assistance for Computer Science homework help and assignment help services. They use their experience, as they have solved thousands of the Computer assignments, which may help you to solve your complex issues of Included Applications. TutorsGlobe assure for the best quality compliance to your homework. Compromise with quality is not in our dictionary. If we feel that we are not able to provide the homework help as per the deadline or given instruction by the student, we refund the money of the student without any delay.