Referentie voor regelset

Rendering van afbeeldingen ondersteunt een eenvoudig voorbewerkingsmechanisme voor aanvragen dat is gebaseerd op regels voor het afstemmen van reguliere expressies en het vervangen van expressies.

Verzamelingen van voorverwerkingsregels (regelsets) kunnen worden gekoppeld aan materiaalcatalogi of de standaardcatalogus. De regels in de standaardcatalogus zijn alleen van toepassing als de aanvraag geen specifieke materiaalcatalogus bevat.

De pre-verwerkingsregels van het verzoek kunnen de weg en vraaggedeelten verzoeken wijzigen alvorens zij door de verzoekparser van de server, met inbegrip van het manipuleren van de weg, het toevoegen van bevelen, het veranderen van bevelwaarden, en het toepassen van malplaatjes of macro's worden verwerkt. De regels kunnen ook worden gebruikt om sommige catalogusattributen te vormen en met voeten te treden, evenals voor het beperken van de dienst tot specifieke cliëntIP adressen.

Regelsets worden opgeslagen als XML-documentbestanden. Het relatieve of absolute pad van het bestand met regelsets moet worden opgegeven in attribute::RuleSetFile.

Algemene structuur

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE ruleset SYSTEM" RuleSet.dtd">
<ruleset>
   <rule>
      <expression>
<varname>
  expression
</varname></expression>
      <substitution>
<varname>
  substitution
</varname></substitution>
      <addressfilter>
<varname>
  addressFilter
</varname></addressfilter>
   </rule>
</ruleset>

De elementen <?xml>, <!DOCTYPE> en <ruleset> worden altijd vereist in een geldig regel geplaatst dossier van XML, zelfs als geen daadwerkelijke regels worden bepaald.

Eén <ruleset>-element met een willekeurig aantal <rule>-elementen is toegestaan.

De inhoud van het voorbewerken van regelbestanden is hoofdlettergevoelig.

URL-voorbewerking

Vóór een andere verwerking, wordt een inkomende HTTP- verzoek gedeeltelijk ontleed om te bepalen welke materiaalcatalogus zou moeten worden toegepast. Nadat de catalogus is geïdentificeerd, wordt de regelset toegepast voor de geselecteerde catalogus (of de standaardcatalogus als er geen specifieke catalogus is geïdentificeerd).

De <rule> elementen worden gezocht in de orde die voor een gelijke met de inhoud van het <expression> element ( expression) wordt gespecificeerd.

Als een <rule> wordt aangepast, wordt de optionele substitution toegepast en wordt de gewijzigde verzoektekenreeks doorgegeven aan de verzoekparser van de server voor normale verwerking.

Als geen succesvolle gelijke wordt gemaakt wanneer het eind van <ruleset> wordt bereikt, wordt het verzoek overgegaan tot de parser zonder wijziging.

Het kenmerk OnMatch

Het standaardgedrag kan worden gewijzigd met het OnMatch-kenmerk van de <rule>-elementen. OnMatch kan worden ingesteld op break (standaard), continueof error.

Element en kenmerk

Gedrag wanneer een overeenkomst plaatsvindt

<rule OnMatch="break">

Regelverwerking wordt onmiddellijk beëindigd nadat de vervanging van deze regel is toegepast. Standaard.

<rule OnMatch="continue">

De vervanging wordt toegepast en de verwerking gaat verder met de volgende regel.

<rule OnMatch="error">

Regelverwerking wordt onmiddellijk beëindigd en een "verzoek geweigerd"antwoordstatus wordt teruggegeven aan de cliënt.

Cataloguskenmerken overschrijven

<rule> elementen kunnen desgewenst kenmerken definiëren die de overeenkomende cataloguskenmerken overschrijven wanneer de regel correct wordt aangepast en OnMatch="break" is ingesteld. Er worden geen kenmerken toegepast wanneer OnMatch="continue" is ingesteld. Raadpleeg de beschrijving van <rule> voor een lijst met kenmerken die met regels kunnen worden beheerd.

Reguliere expressies

Eenvoudige tekenreeksovereenkomsten werken voor zeer eenvoudige toepassingen, maar in de meeste gevallen zijn reguliere expressies vereist. Reguliere expressies zijn industriestandaard, maar de specifieke implementatie verschilt per geval.

pakket java.util. regexdescribes the specific Regular expression implementation used by Image Serving.

Vastgelegde subtekenreeksen

Om complexe URL-wijzigingen mogelijk te maken, kunnen subtekenreeksen worden vastgelegd in de expressie door de subtekenreeks tussen haakjes (…) te plaatsen. Vastgelegde subtekenreeksen worden opeenvolgend genummerd, beginnend met 1 op basis van de positie van het voorloophaakje. De vastgelegde subtekenreeksen kunnen in de vervanging worden ingevoegd met $n, waarbij n het volgnummer van de vastgelegde subtekenreeks is.

Bestanden met regelsets beheren

Eén regelsetbestand kan aan elke materiaalcatalogus worden gekoppeld met het cataloguskenmerk attribute::RuleSetFile. U kunt het regelsetbestand op elk gewenst moment bewerken, maar de afbeeldingsserver herkent de wijzigingen alleen wanneer de bijbehorende materiaalcatalogus opnieuw wordt geladen. Dit gebeurt wanneer de server van het Platform wordt begonnen of opnieuw begonnen en wanneer het primaire catalogusdossier (dat een .ini dossierachtervoegsel heeft) wordt gewijzigd of "aangeraakt"(om de dossierdatum te veranderen).

Voorbeelden

Voorbeelden van linialen zijn te vinden in het corresponderende gedeelte van de naslaggids voor afbeeldingscatalogi in de documentatie bij Afbeeldingsserver.

Zie ook

pakket java.util.regex

Op deze pagina