Riferimento set di regole

Image Rendering supporta un meccanismo di pre-elaborazione delle richieste semplice 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 materiale o al catalogo predefinito. Le regole del catalogo predefinito vengono applicate solo se la richiesta non allega un catalogo dei 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, ad esempio la modifica del percorso, l'aggiunta di comandi, la modifica dei valori dei comandi e l'applicazione di modelli o macro. Le regole possono essere utilizzate anche per configurare ed eseguire l’override di alcuni attributi di catalogo, nonché per limitare il servizio a indirizzi IP client specifici.

I set di regole vengono memorizzati come file di documenti 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>

Il <?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> sono consentiti.

Il contenuto dei file delle regole di pre-elaborazione fa distinzione tra maiuscole e minuscole.

Pre-elaborazione URL

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

Il <rule> Gli elementi vengono cercati nell'ordine specificato per una corrispondenza con il contenuto del <expression> elemento ( expression).

Se un <rule> corrisponde, l'opzione substitution viene applicata e la stringa di richiesta modificata viene passata al parser di richieste del server per la normale elaborazione.

Se non viene trovata alcuna corrispondenza corretta quando la fine del <ruleset> viene raggiunto, la richiesta viene passata al parser senza modifiche.

Attributo OnMatch

Il comportamento predefinito può essere modificato con OnMatch attributo del <rule> elementi. OnMatch può essere impostato su break (impostazione predefinita), continue, o 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 per 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 interrotta immediatamente e al client viene restituito lo stato di risposta "richiesta rifiutata".

Ignorare gli attributi del catalogo

<rule> Gli elementi possono facoltativamente definire attributi che sostituiscono gli attributi di catalogo corrispondenti quando la regola viene trovata correttamente e OnMatch="break" è impostato. Non vengono applicati attributi se OnMatch="continue" è impostato. Fai riferimento alla descrizione di <rule> per un elenco di attributi che possono essere controllati tramite regole.

Espressioni regolari

La corrispondenza delle stringhe semplice funziona per applicazioni molto semplici, ma nella maggior parte dei casi 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 di espressioni regolari utilizzata da Image Server.

Sottostringhe acquisite

Per facilitare modifiche URL complesse, è possibile acquisire sottostringhe nell’espressione racchiudendo la sottostringa tra parentesi (…). Le sottostringhe acquisite vengono numerate in sequenza iniziando da 1 in base alla posizione delle parentesi iniziali. Le sottostringhe acquisite possono essere inserite nella sostituzione utilizzando $n, dove n è il numero di sequenza della sottostringa acquisita.

Gestione dei file del set di regole

È possibile allegare un file di set di regole a ciascun catalogo di materiali con l'attributo catalogo attribute::RuleSetFile. Sebbene sia possibile modificare il file del set di regole in qualsiasi momento, il server immagini riconosce le modifiche solo quando il catalogo dei materiali associato viene ricaricato. Ciò si verifica quando Platform Server viene avviato o riavviato e ogni volta che il file di catalogo principale (che .ini suffisso del file) è stato modificato o "toccato" (per modificare la data del file).

Esempi

Gli esempi di set di regole sono forniti nella sezione corrispondente della documentazione Image Server della documentazione di Image Catalog.

Consultate anche

pacchetto java.util.regex

In questa pagina