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.
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.
- *:
_idobrigató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>representaList<T>,Map<K,V>representa um objeto indexado por chave eInstanté 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.