Pular para conteúdo

Core — diagramas de documentos

Explore os campos e relacionamentos de gateways, routes, gateway_revisions e route_revisions, na database do tenant. O piloto inclui suas estruturas embutidas e snapshots. As demais collections do Core continuam no modelo textual.

Explorar o modelo

Selecione uma visão. 100% preserva a leitura dos campos; arraste o desenho ou use as barras de rolagem para navegar. Ajustar mostra o conjunto; Tela cheia amplia a área de trabalho. Clique no cabeçalho de uma caixa para abrir sua documentação. Os SVGs também podem ser abertos separadamente.

Carregando… Abrir SVG

Como ler

  • Laranja — collection: documento independente. Verde — objeto embutido: parte de outro documento. Roxo — snapshot: cópia histórica embutida.
  • Linha contínua com seta: campo de referência → identificador. Pontilhada: estrutura embutida; [] indica array. Tracejada: array de snapshots. As caixas descrevem tipos, não uma instância compartilhada.
  • ID: identificador; REF: referência por ID ou mapa de IDs. Referências para outros domínios permanecem nos campos e na documentação vinculada. CALC: propriedade calculada por getter.
  • *: _id obrigatório nas collections MongoDB. A ausência da marca não significa que uma API aceite omissão: regras de entrada e de construção estão no dicionário. Não há cardinalidades ou foreign keys impostas pelos desenhos.
  • Os tipos são os tipos Java do modelo: Array<T> representa List<T>, Map<K,V> representa um objeto indexado por chave e Instant é codificado como data BSON. Passe o mouse sobre os campos para consultar valores iniciais, enums e destinos de referências, quando indicados.

Onde cada estrutura é armazenada

Visão Caminho no documento Abrir SVG / documentação
Identidades e revisões Quatro collections completas, com _id, timestamps e campos próprios SVG · Dicionário
Entrada HTTP e autenticação route_revisions.client, com input e authentication SVG · ClientConfig
Políticas e destino iPaaS route_revisions.rateLimit, .ipPolicy e .ipaasResource; são estruturas independentes, sem relação entre si SVG · Políticas
Transformação da requisição route_revisions.resource.transform; headers, query e path usam o mesmo tipo de elemento, em arrays distintos SVG · Transform
Transformação da resposta route_revisions.response.responseConfig[]; _id identifica um elemento embutido SVG · ResponseConfig
Proveniência e snapshots gateway_revisions.templateState; routeMetadata[] e categoryMetadata[] copiam metadados, não fazem joins SVG · TemplateInstanceState
Estado do upgrade gateway_revisions.templateUpgrade; baselineState reutiliza TemplateInstanceState e setupContexts contém IpaasResourceConfig SVG · TemplateUpgradeState

PendingRoute.routeId e .revisionId guardam os IDs de rota e revisão em String. baselineRevisionId aponta para a revisão de gateway de base. customRouteRevisionIds[] guarda IDs String das revisões CUSTOM. Os mapas routes e categories associam IDs lógicos da origem às instâncias. IDs de origem e ownerTenantId preservam a proveniência do Template; não implicam leitura automática de outra database. Consulte versionamento e ownership para as regras de resolução.

O índice único parcial de um DRAFT por gateway está documentado em índices e regras de escrita. Ele não transforma o relacionamento gateway/revisões em 1:1.

Fontes e atualização

Os cabeçalhos dos diagramas levam às classes e evidências já registradas no dicionário. Campos herdados de BaseEntity e EmbeddedUpdatedAt são apresentados dentro do documento que os contém. DTOs não compõem o modelo.

Os fontes versionados ficam em mkdocs/tools/data-diagrams/: core.json contém campos, referências, visões e hashes das fontes; generate.mjs produz DOT e SVG nos dois temas. Veja o procedimento de geração.

O piloto usa Graphviz, com tabelas e portas por campo, executado localmente via WebAssembly. Mermaid permanece nas visões arquiteturais existentes. Nenhum serviço externo é necessário para navegar nos diagramas.