Record Class UpsertResultado
java.lang.Object
java.lang.Record
br.com.xadm.ingestao.UpsertResultado
- Record Components:
enviadas- linhas enviadas ao bancoinseridas- linhas efetivamente inseridasatualizadas- linhas efetivamente atualizadas (0 se a engine não distingue)removidas- linhas removidas por delete seletivo (0 se não se aplica)
public record UpsertResultado(int enviadas, int inseridas, int atualizadas, int removidas)
extends Record
Métrica de um upsert em lote — superconjunto que serve as duas técnicas:
executeBatch (onpetro, que só conhece enviadas/efetivas) e
COPY+CTE RETURNING xmax=0 (vantroba, que separa inseridas/atualizadas/removidas).
Engines que não distinguem insert de update reportam inseridas = efetivas,
atualizadas = 0, removidas = 0. Engines finos preenchem os quatro campos.
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final UpsertResultadoResultado vazio (nenhuma linha enviada). -
Constructor Summary
ConstructorsConstructorDescriptionUpsertResultado(int enviadas, int inseridas, int atualizadas, int removidas) Creates an instance of aUpsertResultadorecord class. -
Method Summary
Modifier and TypeMethodDescriptionintReturns the value of theatualizadasrecord component.static UpsertResultadocoarse(int enviadas, int efetivas) Fábrica para engines que só sabem "quantas linhas mudaram" (executeBatch).intenviadas()Returns the value of theenviadasrecord component.final booleanIndicates whether some other object is "equal to" this one.final inthashCode()Returns a hash code value for this object.intReturns as linhas enviadas que não resultaram em alteração (idempotentes).intReturns the value of theinseridasrecord component.mais(UpsertResultado outra) Soma duas métricas (acumular por tabela num processamento).intReturns the value of theremovidasrecord component.final StringtoString()Returns a string representation of this record class.intReturns o total de linhas efetivamente alteradas (inseridas + atualizadas + removidas).
-
Field Details
-
VAZIO
Resultado vazio (nenhuma linha enviada).
-
-
Constructor Details
-
UpsertResultado
public UpsertResultado(int enviadas, int inseridas, int atualizadas, int removidas) Creates an instance of aUpsertResultadorecord class.- Parameters:
enviadas- the value for theenviadasrecord componentinseridas- the value for theinseridasrecord componentatualizadas- the value for theatualizadasrecord componentremovidas- the value for theremovidasrecord component
-
-
Method Details
-
coarse
Fábrica para engines que só sabem "quantas linhas mudaram" (executeBatch).- Parameters:
enviadas- linhas enviadasefetivas- linhas afetadas (viraminseridas; sem separar update)- Returns:
- métrica coarse-grained
-
totalAlteracoes
public int totalAlteracoes()Returns o total de linhas efetivamente alteradas (inseridas + atualizadas + removidas).- Returns:
- o total de linhas efetivamente alteradas (inseridas + atualizadas + removidas)
-
inalteradas
public int inalteradas()Returns as linhas enviadas que não resultaram em alteração (idempotentes).- Returns:
- as linhas enviadas que não resultaram em alteração (idempotentes)
-
mais
Soma duas métricas (acumular por tabela num processamento).- Parameters:
outra- métrica a somar- Returns:
- nova métrica com os campos somados
-
toString
-
hashCode
-
equals
Indicates whether some other object is "equal to" this one. The objects are equal if the other object is of the same class and if all the record components are equal. All components in this record class are compared with thecomparemethod from their corresponding wrapper classes. -
enviadas
-
inseridas
-
atualizadas
public int atualizadas()Returns the value of theatualizadasrecord component.- Returns:
- the value of the
atualizadasrecord component
-
removidas
-