zope.configuration biedt een uitbreidbaar systeem voor het ondersteunen van diverse soorten configuraties.
Het is gebaseerd op het idee van configuratie richtlijnen. Gebruikers van de systeemconfiguratie bieden configuratie richtlijnen in sommige talen die configuratie keuzes te uiten. De bedoeling is dat de taal pluggable. Een XML-taal wordt verzorgd door standaard.
Gedetailleerde Documentatie
Zope systeemconfiguratie
Het zope configuratie biedt een uitbreidbaar systeem voor het ondersteunen variouse soorten configuraties.
Het is gebaseerd op het idee van configuratie richtlijnen. Gebruikers van de systeemconfiguratie bieden configuratie richtlijnen in sommige talen die configuratie keuzes te uiten. De bedoeling is dat de taal pluggable. Een XML-taal wordt verzorgd door standaard.
Configuratie wordt uitgevoerd in drie fasen. In de eerste fase worden richtlijnen verwerkt tot configuratiebewerkingen berekenen. Configuratie acties bestaan uit:
- Een discriminator
- Een opvraagbare
- Positional argumenten
- Argumenten Trefwoord
De acties zijn in wezen vertraagd functie oproepen. Twee of meer acties conflict als ze dezelfde discriminator. De systeemconfiguratie heeft regels voor het oplossen van conflicten. Als conflicten niet kan worden opgelost, zal een fout optreden. Conflicten ontdoet typisch één na alle van de conflicterende handelingen, zodat de resterende werking van de oorspronkelijk tegenstrijdige acties niet meer conflicten. Niet-conflicterende acties worden uitgevoerd in de volgorde waarin ze zijn gemaakt door het passeren van de positionele en niet-positionele argumenten om de actie af te roepen.
Het systeem is uitbreidbaar. Er is een meta-configuratie taal voor het definiëren configuratie richtlijnen. Een richtlijn wordt gedefinieerd door het verstrekken van meta-data over de richtlijn en de handler code om de richtlijn te verwerken. Er zijn vier soorten van richtlijnen:
- Eenvoudige richtlijnen berekenen configuratie acties. Hun handlers zijn meestal functies die een context en nul of meer zoekwoorden argumenten te nemen en terug te keren een opeenvolging van configuratie acties.
- Om te leren hoe eenvoudige richtlijnen te maken, zie testen / test_simple.py.
- Groepering richtlijnen informatie verzamelen om te worden gebruikt door geneste richtlijnen. Ze heten met een context object dat zij zich aanpassen aan een interface die IConfigurationContext verlengt.
- Om te leren hoe het groeperen van richtlijnen te maken, kijk naar de documentatie in zopeconfigure.py, waarin de uitvoering van de richtlijn Zope configure biedt.
& Nbsp; de overige richtlijnen kunnen worden genest in het groeperen van richtlijnen.
- Om te leren hoe geneste richtlijnen implementeren, kijk naar de documentatie in testen / test_nested.py.
- Complexe richtlijnen zijn richtlijnen die subdirectives hebben. Subdirectives hebben handlers die gewoon zijn methoden van complexe richtlijnen. Complexe diretives worden behandeld door fabrieken, meestal klassen, dat objecten die methoden voor het omgaan met subdirectives hebben te maken. Deze objecten hebben ook __call__ methoden die worden opgeroepen wanneer de verwerking van subdirectives is voltooid.
- Alleen Complex richtlijnen bestaan om oude richtlijn handlers ondersteunen. Ze zullen waarschijnlijk worden afgekeurd in de toekomst.
- Subdirectives zijn genest in complexe richtlijnen. Zij zijn als eenvoudige richtlijnen, behalve dat ze Hane handlers dat complexe richtlijn methoden zijn.
- Subdirectives, zoals complexe richtlijnen bestaan alleen om oude richtlijn handlers ondersteunen. Ze zullen waarschijnlijk worden afgekeurd in de toekomst
Wat is nieuw in deze release:..
- 100% unit test dekking
- Geautomatiseerde build van Sphinx HTML-docs en loopt doctest fragmenten via tox.
- harde Dropped testen afhankelijkheid zope.testing.
- Toegevoegd expliciete steun voor pypy.
- Toegevoegd expliciete steun voor Python 3.2.
- Dropped expliciete steun voor Python 2.4 / 2.5.
- Ondersteuning toegevoegd voor continue integratie met behulp van Tox en Jenkins.
- Toegevoegd Sphinx documentatie.
- Toegevoegd setup.py docs alias (installeert Sphinx en afhankelijkheden).
- Toegevoegd setup.py dev alias (runs setup.py ontwikkelen plus installeert neus en dekking).
Wat is nieuw in versie 3.8.1:
- Vaste Python 2.4 achteruit Incompat (itemgetter gebruikt met meerdere args); Python 2.4 werkt nu (tenminste als je zope.schema == 3.8.1 te gebruiken). Dit is de laatste release die zal ondersteunen Python 2.4 of 2.5.
Wat is nieuw in versie 3.8.0:
- Actie structuren veranderd van tupels om woordenboeken te zorgen voor actie structuur uitbreidbaarheid (samengevoegde chrisma-dictactions tak).
Eisen
- Python
Reacties niet gevonden