Module holochain_types::app
source · Expand description
Everything to do with App (hApp) installation and uninstallation
An App is a essentially a collection of Cells which are intended to be available for a particular Holochain use-case, such as a microservice used by some UI in a broader application.
Each Cell maintains its own identity separate from any App. Access to Cells can be shared between different Apps.
Modules
- Normalized, validated representation of the App Manifest.
Structs
- A bundle of an AppManifest and collection of DNAs
- Version 1 of the App manifest schema
- Builder for
AppManifestV1
. - Version 1 of the App manifest schema
- Builder for
AppManifestV1
. - Normalized, validated representation of the App Manifest.
- App “roles” correspond to cell entries in the AppManifest.
- The DNA portion of an app role
- Description of an app “role” defined by this app. Roles get filled according to the provisioning rules, as well as by potential runtime clones.
- The answer to the question: “how do we concretely assign DNAs to the open roles of this App?” Includes the DNAs selected to fill the roles and the details of the role assignments.
- The arguments to create a clone of an existing cell.
- Arguments to specify the clone cell to be disabled.
- Information needed to specify a DNA as part of an App
- An app which has been installed. An installed app is merely its collection of “roles”, associated with an ID.
- The common data between apps of any status
- Data about an installed Cell.
- The instructions on how to request NetworkInfo
- The instructions on how to get the DNA to be registered
- An active app
- An app which is either Paused or Disabled, i.e. not Running
- The instructions on how to update coordinators for a dna file.
Enums
- Errors occurring while installing an AppBundle
- The possible locations of an AppBundle
- Container struct which uses the
manifest_version
field to determine which manifest version to deserialize to. - Rules to determine if and how a Cell will be created for this Dna
- The status of an installed app.
- A declaration of the side effects of a particular AppStatusTransition.
- The AppStatus without the reasons.
- Represents a state transition operation from one state to another
- Rules to determine if and how a Cell will be created for this Dna
- Uninhabitable placeholder
- Specifies what step should be taken to provision a cell while installing an App
- Ways of specifying a clone cell.
- The source of coordinators to be installed, either as binary data, or from a path
- The reason for an app being in a Disabled state.
- The source of the DNA to be installed, either as binary data, or from a path
- The reason for an app being in a Paused state. NB: there is no way to manually pause an app.
- The various reasons for why an App is not in the Running state.
Functions
- This function is called in places where it will be necessary to rework that area after use_existing has been implemented
Type Definitions
- Arguments to delete a disabled clone cell of an app.
- Specifies remote, local, or bundled location of DNA
- Argumtents to specify the clone cell to be enabled.
- The unique identifier for an installed app in this conductor
- A map from InstalledAppId -> InstalledApp