WebSphere Virtual Enterprise, Version 6.1.1
             Sistemas Operacionais: AIX,, HP-UX, Linux, Solaris, Windows ,


Classificação de Pedidos Baseada em Regras

Com qualquer tecnologia baseada em regra, o processamento baseado em regra envolve três áreas básicas: o vocabulário que forma o idioma, a gramática para expressão do vocabulário em linguagem e o mecanismo de processamento da regra.

Vocabulário

O vocabulário consiste nos operadores, palavras-chaves variáveis conhecidas como operandos e instruções de fluxo de controle. O idioma é o Sistema de Mensagens Java (JMS 1.1) e a Sintaxe do Seletor de Mensagem. O seletor de mensagem é uma cadeia cuja sintaxe é baseada em um subconjunto da expressão condicional SQL92. A sintaxe da instrução geral é:

operand operator literalExpression [| compoundOperator expression] .

No exemplo a seguir,

serverhost like '%ibm.com' or clienthost = 'myhost.raleigh.ibm.com'

serverhost and clienthost são os operandos like e = são os operadores, or é o operador composto e '%ibm.com' e 'myhost.raleigh.ibm.com' são a literalExpression. O [] indica que a expressão é opcional e | indica que após o operador, uma literalExpression ou operador composto pode ser seguido por mais expressões.

O resultado de uma expressão é uma ação executada. Do ponto de vista da gramática, estas ações são literais fornecidos por um provedor de políticas. Dois tipos de políticas são suportados:
  1. Roteamento
  2. Serviço
As ações utilizadas são ditadas pelo provedor de política. Para roteamento, as ações são:
  • permitir
  • rejeitar
  • permitsticky
  • redirecionar
Cada uma das ações tem o destino apropriado; o destinatário de uma ação. Se o resultado da avaliação de uma expressão é executar a ação permit, o destino dessa ação será o aplicativo para o qual o roteamento é permitido. Para políticas de serviço, o destino é encapsulado na ação e a ação é uma classe de transação.

Uma instrução completa consiste na expressão da regra e a ação a ser executada é representada de forma diferente, dependendo da origem de entrada. No console administrativo, as ações são separadas em formulários e campos que são facilmente selecionáveis. Se você estiver utilizando script, a instrução completa poderá ser semelhante ao exemplo a seguir:

expression<delimeter>action
Por exemplo, clienthost='localhost' and serverhost like
'%.ibm.com'?permit?DefaultApplication.ear

Do ponto de vista de uma implementação, as classes de trabalho, que são documentos XML, são usadas para capturar as expressões de regras, as ações correspondidas e outros artefatos de implementação. Portanto, uma classe de trabalho é um documento XML que contém zero ou mais elementos matchRules e um ou mais elementos workClassModules.

Operadores

O WebSphere Virtual Enterprise suporta os operadores nas expressões de regras. Em geral, você pode não saber qual é o verdadeiro tipo de dados de um determinado operando. Se você usar o Hypertext Transfer Protocol (HTTP), cada operando será tratado como uma cadeia de tipo de dado e usará o operador como um indicador para o tipo de dado real do operando para fins de validação de dados. Um exemplo de um operador que testa um operando que tem um valor nulo é: IS NULL.

Operandos

Quando novos protocolos são incluídos e novos conjuntos de operandos são definidos, os operandos são válidos dentro dos escopos do protocolo. Se um operando for especificado em um escopo para o qual ele não é válido, será indicada uma condição de erro. Neste release, os protocolos suportados são:
  • HTTP
  • [For distributed platforms] JMS
  • [For distributed platforms] IIOP (Internet Inter-ORB Protocol)

Um exemplo de um operando para pedidos de HTTP é: MIMEType.




Referências relacionadas
Políticas de Serviço e de Roteamento
Script workclassoperations.py
Tópico de Conceito    

Termos de Uso | Feedback

Última atualização: 24/09/2009 14h16min12s EDT
http://publib.boulder.ibm.com/infocenter/wxdinfo/v6r1m1/index.jsp?topic=/com.ibm.websphere.ops.doc/info/odoe_task/codoerule.html