A mensagem de comando Pedido de Atualização é enviada de um assinante a um intermediário para pedir as publicações retidas atuais para o tópico e ponto de assinatura especificados que correspondam ao filtro (opcional) dado.
Essa mensagem é enviada a SYSTEM.BROKER.CONTROL.QUEUE, a fila de controle do intermediário. É requerida autoridade para colocar uma mensagem nessa fila, além de autoridade de acesso ao tópico no request update; isso é definido pelo administrador do sistema do intermediário.
Esse comando é utilizado em geral se o assinante tiver especificado a opção PubOnReqOnly quando se registrou. Se o intermediário tiver quaisquer publicações retidas correspondentes, elas serão enviadas ao assinante. Se o intermediário não tiver publicações retidas correspondentes, o pedido falhará com o código de retorno MQRCCF_NO_RETAINED_MSG. O solicitante deve ter registrado anteriormente uma assinatura com os mesmos valores de Topic, SubPoint e Filter.
Essa propriedade precisa ser especificada, mas somente uma ocorrência é permitida nessa mensagem.
Se essa propriedade for omitida, o ponto de assinatura padrão será utilizado.
A propriedade <Filtro> deve ter o mesmo valor especificado na assinatura original para a qual você está solicitando agora uma atualização.
Se essa propriedade for omitida, não ocorrerá filtragem de conteúdo.
O CorrelId no descritor da mensagem (MQMD), o qual não pode ser zero, é utilizado ao enviar publicações correspondentes à fila do assinante.
Todas as opções assumem seus valores padrão. Isso tem o mesmo efeito que omitir a propriedade <RegOpt>.Se outras opções forem especificadas ao mesmo tempo, Nenhuma será ignorada.
Quando especificado, a identidade do assinante (fila, gerenciador de filas e correlid) não será restrita a um único ID do usuário. Isso difere do comportamento existente do intermediário que associa o ID do usuário da mensagem de registro original à identidade do assinante e a partir daí impede que outros usuários utilizem essa identidade. Se um novo assinante tentar utilizar a mesma identidade, o comando falhará com o código de retorno MQRCCF_DUPLICATE_SUBSCRIPTION.
Isso permite a qualquer usuário modificar a assinatura ou cancelar seu registro quando tiver autoridade apropriada. Portanto, não há necessidade de verificar se o ID do usuário corresponde ao do assinante original.
Para incluir esta opção a uma assinatura existente o comando deve vir do mesmo ID do usuário da assinatura original.
Se a assinatura do comando Pedido de Atualização tiver VariableUserId definido, este deve ser definido no tempo de atualização do pedido para indicar a qual assinatura se refere. Caso contrário, o ID do usuário do comando Pedido de Atualização será utilizado para identificar a assinatura. Isso é substituído, junto com os outros identificadores do assinante, se for fornecido um nome de assinatura.
O padrão, se essa propriedade for omitida, é que nenhuma opção de registro seja definida.
Se essa propriedade for omitida, o padrão é o nome de ReplyToQMgr no descritor da mensagem (MQMD). Se o nome resultante estiver em branco, ele assumirá o padrão do QMgrName do intermediário.
Se essa propriedade for omitida, o padrão é o nome de ReplyToQ no descritor da mensagem (MQMD), o qual não pode estar em branco neste caso.
Se VariableUserId for definido e o ID do usuário diferir do da assinatura, o comando obterá êxito se o ID do usuário da nova mensagem de comando tiver autoridade para procurar na fila do fluxo e colocar na fila do assinante da assinatura. Caso contrário, o comando falhará com o código de retorno MQRCCF_NOT_AUTHORIZED.
Se existir uma assinatura que corresponda à identidade tradicional desse comando, mas não tiver SubName, o comando Pedido de Atualização falhará com o código de retorno MQRCCF_SUB_NAME_ERROR.
Se for feita uma tentativa de pedir uma atualização de uma assinatura que tenha um SubName utilizando uma mensagem de comando que corresponda à identidade tradicional mas sem SubName especificado, o comando obterá êxito.
<psc> <Command>ReqUpdate</Command> <RegOpt>CorrelAsId</RegOpt> <Topic>Sport/Soccer/State/LatestScore/#</Topic> </psc>