src.web
Main application entry point for the EC Issuer.
1#!/usr/bin/env python3 2"""Main application entry point for the EC Issuer.""" 3 4from src.access_control.hardcoded_adapter import HardcodedAccessControlAdapter 5from src.api.api_port import ApiPort 6from src.api.http_adapter import HttpApiAdapter 7from src.awards.award_service import AwardService 8from src.awards.http_awards_client_adapter import HttpAwardsClientAdapter 9from src.config.config import EnvConfigRepo 10from src.config.config_port import ConfigRepoPort 11from src.offers.offer_service import OfferService 12from src.offers.postgresql_offers_repository_adapter import ( 13 PostgreSQLOffersRepositoryAdapter, 14) 15from src.offers.ssi_agent_offers_client_adapter import SsiAgentOffersClientAdapter 16 17 18class App: 19 """Main application entry point.""" 20 21 config: ConfigRepoPort 22 _api_port: ApiPort 23 24 def __init__(self): 25 """Initialise and wire all application dependencies.""" 26 self.config = EnvConfigRepo() 27 28 access_control = HardcodedAccessControlAdapter() 29 30 awards_client = HttpAwardsClientAdapter( 31 awards_service_url=self.config.awards_service_url 32 ) 33 award_service = AwardService(client=awards_client) 34 35 offers_client = SsiAgentOffersClientAdapter( 36 ssi_agent_url=self.config.ssi_agent_url, 37 credential_configuration_id=self.config.credential_configuration_id, 38 ) 39 offers_repository = PostgreSQLOffersRepositoryAdapter( 40 self.config.postgresql_connection_string 41 ) 42 offer_service = OfferService( 43 access_control=access_control, 44 offers_client=offers_client, 45 offers_repository=offers_repository, 46 award_service=award_service, 47 ) 48 49 self._api_port = HttpApiAdapter( 50 config=self.config, 51 offer_service=offer_service, 52 ) 53 54 def run(self): 55 """Start the application.""" 56 self._api_port.run() 57 58 59def main() -> None: 60 """Entry point for the EC Issuer application.""" 61 app = App() 62 app.run() 63 64 65if __name__ == "__main__": 66 main()
class
App:
19class App: 20 """Main application entry point.""" 21 22 config: ConfigRepoPort 23 _api_port: ApiPort 24 25 def __init__(self): 26 """Initialise and wire all application dependencies.""" 27 self.config = EnvConfigRepo() 28 29 access_control = HardcodedAccessControlAdapter() 30 31 awards_client = HttpAwardsClientAdapter( 32 awards_service_url=self.config.awards_service_url 33 ) 34 award_service = AwardService(client=awards_client) 35 36 offers_client = SsiAgentOffersClientAdapter( 37 ssi_agent_url=self.config.ssi_agent_url, 38 credential_configuration_id=self.config.credential_configuration_id, 39 ) 40 offers_repository = PostgreSQLOffersRepositoryAdapter( 41 self.config.postgresql_connection_string 42 ) 43 offer_service = OfferService( 44 access_control=access_control, 45 offers_client=offers_client, 46 offers_repository=offers_repository, 47 award_service=award_service, 48 ) 49 50 self._api_port = HttpApiAdapter( 51 config=self.config, 52 offer_service=offer_service, 53 ) 54 55 def run(self): 56 """Start the application.""" 57 self._api_port.run()
Main application entry point.
App()
25 def __init__(self): 26 """Initialise and wire all application dependencies.""" 27 self.config = EnvConfigRepo() 28 29 access_control = HardcodedAccessControlAdapter() 30 31 awards_client = HttpAwardsClientAdapter( 32 awards_service_url=self.config.awards_service_url 33 ) 34 award_service = AwardService(client=awards_client) 35 36 offers_client = SsiAgentOffersClientAdapter( 37 ssi_agent_url=self.config.ssi_agent_url, 38 credential_configuration_id=self.config.credential_configuration_id, 39 ) 40 offers_repository = PostgreSQLOffersRepositoryAdapter( 41 self.config.postgresql_connection_string 42 ) 43 offer_service = OfferService( 44 access_control=access_control, 45 offers_client=offers_client, 46 offers_repository=offers_repository, 47 award_service=award_service, 48 ) 49 50 self._api_port = HttpApiAdapter( 51 config=self.config, 52 offer_service=offer_service, 53 )
Initialise and wire all application dependencies.
def
main() -> None:
60def main() -> None: 61 """Entry point for the EC Issuer application.""" 62 app = App() 63 app.run()
Entry point for the EC Issuer application.