Foundry.Context

g Foundry.Context Foundry.Context GObject.Object GObject.Object GObject.Object->Foundry.Context

Subclasses:

None

Methods

Inherited:

GObject.Object (37)

Structs:

GObject.ObjectClass (5)

class

discover (path, cancellable)

class

error_quark ()

class

new (foundry_dir, project_dir, flags, cancellable)

class

new_for_user (cancellable)

dup_action_group ()

dup_build_manager ()

dup_build_system ()

dup_command_manager ()

dup_config_manager ()

dup_dbus_service ()

dup_debugger_manager ()

dup_default_license ()

dup_dependency_manager ()

dup_device_manager ()

dup_diagnostic_manager ()

dup_doap_service ()

dup_documentation_manager ()

dup_file_manager ()

dup_forge_manager ()

dup_intent_manager ()

dup_llm_manager ()

dup_log_manager ()

dup_lsp_manager ()

dup_operation_manager ()

dup_project_directory ()

dup_run_manager ()

dup_sdk_manager ()

dup_search_manager ()

dup_secret_service ()

dup_service_typed (service_type)

dup_state_directory ()

dup_terminal_service ()

dup_test_manager ()

dup_text_manager ()

dup_title ()

dup_tweak_manager ()

dup_vcs_manager ()

is_shared ()

list_services ()

load_project_settings ()

load_settings (schema_id, schema_path)

network_allowed ()

save (cancellable)

set_title (title)

shutdown ()

Virtual Methods

Inherited:

GObject.Object (7)

Properties

Name

Type

Flags

Short Description

build-manager

Foundry.BuildManager

r

build-system

str

r

command-manager

Foundry.CommandManager

r

config-manager

Foundry.ConfigManager

r

debugger-manager

Foundry.DebuggerManager

r

dependency-manager

Foundry.DependencyManager

r

device-manager

Foundry.DeviceManager

r

diagnostic-manager

Foundry.DiagnosticManager

r

doap-service

Foundry.DoapService

r

documentation-manager

Foundry.DocumentationManager

r

file-manager

Foundry.FileManager

r

forge-manager

Foundry.ForgeManager

r

intent-manager

Foundry.IntentManager

r

llm-manager

Foundry.LlmManager

r

log-manager

Foundry.LogManager

r

lsp-manager

Foundry.LspManager

r

operation-manager

Foundry.OperationManager

r

project-directory

Gio.File

r

run-manager

Foundry.RunManager

r

sdk-manager

Foundry.SdkManager

r

search-manager

Foundry.SearchManager

r

secret-service

Foundry.SecretService

r

state-directory

Gio.File

r

terminal-service

Foundry.TerminalService

r

test-manager

Foundry.TestManager

r

text-manager

Foundry.TextManager

r

title

str

r/w/en

tweak-manager

Foundry.TweakManager

r

vcs-manager

Foundry.VcsManager

r

Signals

Inherited:

GObject.Object (1)

Fields

Inherited:

GObject.Object (1)

Class Details

class Foundry.Context(**kwargs)
Bases:

GObject.Object

Abstract:

No

Structure:

Foundry.ContextClass

The central object representing an open project.

Foundry.Context serves as the main coordinator for all Foundry services and provides access to managers for files, builds, debugging, and other development tools. It maintains the application state and facilitates communication between different components of the development environment.

classmethod discover(path, cancellable)
Parameters:
Returns:

a Dex.Future that resolves to a path in the file system encoding.

Return type:

Dex.Future

Attempts to locate the nearest .foundry directory starting from path.

classmethod error_quark()
Return type:

int

classmethod new(foundry_dir, project_dir, flags, cancellable)
Parameters:
  • foundry_dir (str) – the “.foundry” directory

  • project_dir (str or None) – the project root directory

  • flags (Foundry.ContextFlags) – flags for how to create the context

  • cancellable (Dex.Cancellable or None) – optional cancellable to use when awaiting to propagate work cancellation

Returns:

a Dex.Future which will resolve to a Foundry.Context.

Return type:

Dex.Future

Creates a new context.

If flags has Foundry.ContextFlags.CREATE set then it will create the “.foundry” directory first.

If project_dir is not set, the current directory is used unless it was previously stored in the context state.

classmethod new_for_user(cancellable)
Parameters:

cancellable (Dex.Cancellable or None) – optional cancellable to use when awaiting to propagate work cancellation

Return type:

Dex.Future

dup_action_group()
Returns:

a [iface`Gio`.ActionGroup]

Return type:

Gio.ActionGroup

Gets a [iface`Gio`.ActionGroup] that contains various actions for the context.

Actions may be provided by subclassing Foundry.Service and implementing the [iface`Gio`.ActionGroup] interface.

dup_build_manager()
Returns:

a Foundry.BuildManager

Return type:

Foundry.BuildManager

Gets the Foundry.BuildManager instance.

dup_build_system()
Returns:

a build-system name or None

Return type:

str or None

Gets the name of the build system to use.

First the settings are checked. If set, that is preferred. After that, the configuration is checked to see if it specifies a build system.

Otherwise, None is returned.

Build addins can also affect which build system is used and you may check what the build pipeline thinks should be the build system (which checks this value) by using [property`Foundry`.BuildPipeline:build-system].

dup_command_manager()
Returns:

a Foundry.CommandManager

Return type:

Foundry.CommandManager

Gets the Foundry.CommandManager instance.

dup_config_manager()
Returns:

a Foundry.ConfigManager

Return type:

Foundry.ConfigManager

Gets the Foundry.ConfigManager instance.

dup_dbus_service()
Returns:

a Foundry.DBusService

Return type:

Foundry.DBusService

Gets the Foundry.DBusService instance.

dup_debugger_manager()
Returns:

a Foundry.DebuggerManager

Return type:

Foundry.DebuggerManager

Gets the Foundry.DebuggerManager instance.

dup_default_license()
Return type:

Foundry.License or None

dup_dependency_manager()
Returns:

a Foundry.DependencyManager

Return type:

Foundry.DependencyManager

Gets the Foundry.DependencyManager instance.

dup_device_manager()
Returns:

a Foundry.DeviceManager

Return type:

Foundry.DeviceManager

Gets the Foundry.DeviceManager instance.

dup_diagnostic_manager()
Returns:

a Foundry.DiagnosticManager

Return type:

Foundry.DiagnosticManager

Gets the Foundry.DiagnosticManager instance.

dup_doap_service()
Returns:

a Foundry.DoapService

Return type:

Foundry.DoapService

Gets the Foundry.DoapService instance.

New in version 1.1.

dup_documentation_manager()
Returns:

a Foundry.DocumentationManager

Return type:

Foundry.DocumentationManager

Gets the Foundry.DocumentationManager instance.

dup_file_manager()
Returns:

a Foundry.FileManager

Return type:

Foundry.FileManager

Gets the Foundry.FileManager instance.

dup_forge_manager()
Returns:

a Foundry.ForgeManager

Return type:

Foundry.ForgeManager

Gets the Foundry.ForgeManager instance.

dup_intent_manager()
Returns:

a Foundry.IntentManager

Return type:

Foundry.IntentManager

Gets the Foundry.IntentManager instance.

dup_llm_manager()
Returns:

a Foundry.LlmManager

Return type:

Foundry.LlmManager

Gets the Foundry.LlmManager instance.

dup_log_manager()
Returns:

a Foundry.LogManager

Return type:

Foundry.LogManager

Gets the Foundry.LogManager instance.

dup_lsp_manager()
Returns:

a Foundry.LspManager

Return type:

Foundry.LspManager

Gets the Foundry.LspManager instance.

dup_operation_manager()
Returns:

a Foundry.OperationManager

Return type:

Foundry.OperationManager

Gets the Foundry.OperationManager instance.

dup_project_directory()
Returns:

a Gio.File

Return type:

Gio.File

Gets the Foundry.Context :project-directory.

dup_run_manager()
Returns:

a Foundry.RunManager

Return type:

Foundry.RunManager

Gets the Foundry.RunManager instance.

dup_sdk_manager()
Returns:

a Foundry.SdkManager

Return type:

Foundry.SdkManager

Gets the Foundry.SdkManager instance.

dup_search_manager()
Returns:

a Foundry.SearchManager

Return type:

Foundry.SearchManager

Gets the Foundry.SearchManager instance.

dup_secret_service()
Returns:

a Foundry.SecretService

Return type:

Foundry.SecretService

Gets the Foundry.SecretService instance.

dup_service_typed(service_type)
Parameters:

service_type (GObject.GType) –

Return type:

Foundry.Service

dup_state_directory()
Returns:

a Gio.File

Return type:

Gio.File

Gets the Foundry.Context :state-directory.

dup_terminal_service()
Returns:

a Foundry.TerminalService

Return type:

Foundry.TerminalService

Gets the Foundry.TerminalService instance.

dup_test_manager()
Returns:

a Foundry.TestManager

Return type:

Foundry.TestManager

Gets the Foundry.TestManager instance.

dup_text_manager()
Returns:

a Foundry.TextManager

Return type:

Foundry.TextManager

Gets the Foundry.TextManager instance.

dup_title()
Return type:

str or None

dup_tweak_manager()
Returns:

a Foundry.TweakManager

Return type:

Foundry.TweakManager

Gets the Foundry.TweakManager instance.

dup_vcs_manager()
Returns:

a Foundry.VcsManager

Return type:

Foundry.VcsManager

Gets the Foundry.VcsManager instance.

is_shared()
Return type:

bool

list_services()
Returns:

a [iface`Gio`.ListModel] of [class`Foundry`.Service]

Return type:

Gio.ListModel

load_project_settings()
Returns:

a [class`Foundry`.Settings]

Return type:

Foundry.Settings

This function is functionally equivalent to calling [method`Foundry`.Context.load_settings] with the “org.gnome.foundry.project” gsettings schema id.

load_settings(schema_id, schema_path)
Parameters:
  • schema_id (str) – the gsettings schema identifier

  • schema_path (str or None) – an optional schema path

Returns:

a [class`Foundry`.Settings]

Return type:

Foundry.Settings

Loads layered [class`Gio`.Settings] as a [class`Foundry`.Settings].

The [class`Foundry`.Settings] allows for settings to come from multiple layers such as user-defaults, project-defaults, and user-overrides.

network_allowed()
Returns:

True if network is allowed

Return type:

bool

Checks if network is currently allowed.

This checks if data is allowed on metered connections and if the current network connection is metered.

save(cancellable)
Parameters:

cancellable (Dex.Cancellable) –

Returns:

A Dex.Future that will resolve to a boolean.

Return type:

Dex.Future

Save the foundry state to the Foundry.Context :directory.

set_title(title)
Parameters:

title (str) –

shutdown()
Returns:

a Dex.Future that resolves when the context has shutdown.

Return type:

Dex.Future

Requests that the context shutdown and cleanup state.

Property Details

Foundry.Context.props.build_manager
Name:

build-manager

Type:

Foundry.BuildManager

Default Value:

None

Flags:

READABLE

Foundry.Context.props.build_system
Name:

build-system

Type:

str

Default Value:

None

Flags:

READABLE

Foundry.Context.props.command_manager
Name:

command-manager

Type:

Foundry.CommandManager

Default Value:

None

Flags:

READABLE

Foundry.Context.props.config_manager
Name:

config-manager

Type:

Foundry.ConfigManager

Default Value:

None

Flags:

READABLE

Foundry.Context.props.debugger_manager
Name:

debugger-manager

Type:

Foundry.DebuggerManager

Default Value:

None

Flags:

READABLE

Foundry.Context.props.dependency_manager
Name:

dependency-manager

Type:

Foundry.DependencyManager

Default Value:

None

Flags:

READABLE

Foundry.Context.props.device_manager
Name:

device-manager

Type:

Foundry.DeviceManager

Default Value:

None

Flags:

READABLE

Foundry.Context.props.diagnostic_manager
Name:

diagnostic-manager

Type:

Foundry.DiagnosticManager

Default Value:

None

Flags:

READABLE

Foundry.Context.props.doap_service
Name:

doap-service

Type:

Foundry.DoapService

Default Value:

None

Flags:

READABLE

New in version 1.1.

Foundry.Context.props.documentation_manager
Name:

documentation-manager

Type:

Foundry.DocumentationManager

Default Value:

None

Flags:

READABLE

Foundry.Context.props.file_manager
Name:

file-manager

Type:

Foundry.FileManager

Default Value:

None

Flags:

READABLE

Foundry.Context.props.forge_manager
Name:

forge-manager

Type:

Foundry.ForgeManager

Default Value:

None

Flags:

READABLE

New in version 1.1.

Foundry.Context.props.intent_manager
Name:

intent-manager

Type:

Foundry.IntentManager

Default Value:

None

Flags:

READABLE

Foundry.Context.props.llm_manager
Name:

llm-manager

Type:

Foundry.LlmManager

Default Value:

None

Flags:

READABLE

Foundry.Context.props.log_manager
Name:

log-manager

Type:

Foundry.LogManager

Default Value:

None

Flags:

READABLE

Foundry.Context.props.lsp_manager
Name:

lsp-manager

Type:

Foundry.LspManager

Default Value:

None

Flags:

READABLE

Foundry.Context.props.operation_manager
Name:

operation-manager

Type:

Foundry.OperationManager

Default Value:

None

Flags:

READABLE

Foundry.Context.props.project_directory
Name:

project-directory

Type:

Gio.File

Default Value:

None

Flags:

READABLE

The directory containing the project.

This is generally the directory which contains “.git” and “.foundry”.

Foundry.Context.props.run_manager
Name:

run-manager

Type:

Foundry.RunManager

Default Value:

None

Flags:

READABLE

Foundry.Context.props.sdk_manager
Name:

sdk-manager

Type:

Foundry.SdkManager

Default Value:

None

Flags:

READABLE

Foundry.Context.props.search_manager
Name:

search-manager

Type:

Foundry.SearchManager

Default Value:

None

Flags:

READABLE

Foundry.Context.props.secret_service
Name:

secret-service

Type:

Foundry.SecretService

Default Value:

None

Flags:

READABLE

Foundry.Context.props.state_directory
Name:

state-directory

Type:

Gio.File

Default Value:

None

Flags:

READABLE

The directory of the context, which is typically “.foundry” within the Foundry.Context :project-directory.

Foundry.Context.props.terminal_service
Name:

terminal-service

Type:

Foundry.TerminalService

Default Value:

None

Flags:

READABLE

Foundry.Context.props.test_manager
Name:

test-manager

Type:

Foundry.TestManager

Default Value:

None

Flags:

READABLE

Foundry.Context.props.text_manager
Name:

text-manager

Type:

Foundry.TextManager

Default Value:

None

Flags:

READABLE

Foundry.Context.props.title
Name:

title

Type:

str

Default Value:

None

Flags:

READABLE, WRITABLE, EXPLICIT_NOTIFY

Foundry.Context.props.tweak_manager
Name:

tweak-manager

Type:

Foundry.TweakManager

Default Value:

None

Flags:

READABLE

Foundry.Context.props.vcs_manager
Name:

vcs-manager

Type:

Foundry.VcsManager

Default Value:

None

Flags:

READABLE