Riferimento set di regole

Image Rendering supporta un semplice meccanismo di pre-elaborazione delle richieste basato su regole di corrispondenza e sostituzione delle espressioni regolari.

Raccolte di regole di pre-elaborazione (set di regole) può essere allegato ai cataloghi di materiali o al catalogo predefinito. Le regole nel catalogo predefinito si applicano solo se la richiesta non allega un catalogo di materiali specifico.

Le regole di pre-elaborazione delle richieste possono modificare il percorso e le porzioni di query delle richieste prima che vengano elaborate dal parser di richieste del server, inclusa la manipolazione del percorso, l'aggiunta di comandi, la modifica dei valori dei comandi e l'applicazione di modelli o macro. È inoltre possibile utilizzare le regole per configurare e sostituire alcuni attributi del catalogo, nonché per limitare il servizio a specifici indirizzi IP del client.

I set di regole vengono memorizzati come file di documento XML. Il percorso relativo o assoluto del file del set di regole deve essere specificato in attribute::RuleSetFile.

Struttura generale

<?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>

La <?xml>, <!DOCTYPE> e <ruleset> gli elementi sono sempre necessari in un file XML di set di regole valido, anche se non sono definite regole effettive.

Uno <ruleset> elemento contenente un numero qualsiasi di <rule> gli elementi sono consentiti.

I contenuti dei file delle regole di preelaborazione sono sensibili all’uso di maiuscole e minuscole.

Pre-elaborazione URL

Prima di qualsiasi altra elaborazione, una richiesta HTTP in arrivo viene analizzata in parte per determinare quale catalogo di materiali applicare. Una volta identificato il catalogo, viene applicato il set di regole per il catalogo selezionato (o per il catalogo predefinito, se non è stato identificato alcun catalogo specifico).

La <rule> vengono cercati nell’ordine specificato per ottenere una corrispondenza con il contenuto <expression> elemento ( expression).

Se <rule> viene confrontato con il substitution viene applicata e la stringa di richiesta modificata viene passata al parser di richiesta del server per una normale elaborazione.

Se non viene effettuata alcuna corrispondenza con successo alla fine del <ruleset> viene raggiunta, la richiesta viene trasmessa al parser senza modifiche.

Attributo OnMatch

Il comportamento predefinito può essere modificato con OnMatch dell'attributo <rule> elementi. OnMatch possono essere fissati break (predefinito), continueoppure error.

Elemento e attributo

Comportamento quando si verifica una corrispondenza

<rule OnMatch="break">

L'elaborazione delle regole viene terminata immediatamente dopo l'applicazione della sostituzione di questa regola. Predefinito.

<rule OnMatch="continue">

La sostituzione viene applicata e l'elaborazione continua con la regola successiva.

<rule OnMatch="error">

L'elaborazione delle regole viene terminata immediatamente e lo stato di risposta "richiesta rifiutata" viene restituito al client.

Sovrascrittura degli attributi del catalogo

<rule> se necessario, gli elementi possono definire attributi che sovrascrivono gli attributi del catalogo corrispondenti quando la regola viene confrontata correttamente e OnMatch="break" è impostato. Se non viene applicato alcun attributo, OnMatch="continue" è impostato. Fai riferimento alla descrizione di <rule> per un elenco di attributi che possono essere controllati con le regole.

Espressioni regolari

La corrispondenza semplice delle stringhe funziona per applicazioni molto semplici, ma nella maggior parte delle istanze sono necessarie espressioni regolari. Anche se le espressioni regolari sono standard di settore, l'implementazione specifica varia da un'istanza all'altra.

pacchetto java.util.regex descrive l'implementazione specifica delle espressioni regolari utilizzate da Image Serving.

Sottostringhe acquisite

Per facilitare modifiche complesse all’URL, le sottostringhe possono essere acquisite nell’espressione racchiudendo la sottostringa con parentesi (…). Le sottostringhe acquisite vengono numerate in sequenza a partire da 1 in base alla posizione della parentesi iniziale. Le sottostringhe acquisite possono essere inserite nella sostituzione utilizzando $n, dove n è il numero di sequenza della sottostringa acquisita.

Gestione dei file set di regole

Un file set di regole può essere allegato a ogni catalogo di materiali con l'attributo catalogo attribute::RuleSetFile. Mentre è possibile modificare il file del set di regole in qualsiasi momento, il server di immagini riconosce le modifiche solo quando il catalogo del materiale associato viene ricaricato. Questo accade quando il Platform Server viene avviato o riavviato e ogni volta che il file di catalogo principale (che ha un .ini suffisso file) modificato o "toccato" (per modificare la data del file).

Esempi

Gli esempi di set di regole sono forniti nella sezione corrispondente del Riferimento al catalogo immagini nella documentazione Image Serving .

Consultate anche

pacchetto java.util.regex

In questa pagina