ttomcat-1778514358873.zip-extract/_dependencies/maven/com.h2database_h2-2.2.220/org/h2/table/DataChangeDeltaTable.java

Path
ttomcat-1778514358873.zip-extract/_dependencies/maven/com.h2database_h2-2.2.220/org/h2/table/DataChangeDeltaTable.java
Status
scanned
Type
file
Name
DataChangeDeltaTable.java
Extension
.java
Programming language
Java
Mime type
text/x-java
File type
Java source, ASCII text
Tag

      
    
Rootfs path

      
    
Size
3905 (3.8 KB)
MD5
fc9f52f10fd2a7f8ea6bb129937cffae
SHA1
9f407e36c91d7580c5018276abcdb0f6496f04e8
SHA256
d034af17f4a57a6857878f2e161629465d0f06f2af7645cbaba8184189248834
SHA512

      
    
SHA1_git
bac1c0e937f30f25be30f7a7ac1efa042ed8b036
Is binary

      
    
Is text
True
Is archive

      
    
Is media

      
    
Is legal

      
    
Is manifest

      
    
Is readme

      
    
Is top level

      
    
Is key file

      
    
DataChangeDeltaTable.java | 3.8 KB |

/* * Copyright 2004-2023 H2 Group. Multiple-Licensed under the MPL 2.0, * and the EPL 1.0 (https://h2database.com/html/license.html). * Initial Developer: H2 Group */ package org.h2.table; import org.h2.command.dml.DataChangeStatement; import org.h2.engine.SessionLocal; import org.h2.expression.Expression; import org.h2.expression.ExpressionColumn; import org.h2.result.LocalResult; import org.h2.result.ResultInterface; import org.h2.result.ResultTarget; import org.h2.result.Row; import org.h2.schema.Schema; /** * A data change delta table. */ public class DataChangeDeltaTable extends VirtualConstructedTable { /** * Result option. */ public enum ResultOption { /** * OLD row. */ OLD, /** * NEW row with evaluated default expressions, but before triggers. */ NEW, /** * FINAL rows after triggers. */ FINAL; } /** * Collects final row for INSERT operations. * * @param session * the session * @param table * the table * @param deltaChangeCollector * target result * @param deltaChangeCollectionMode * collection mode * @param newRow * the inserted row */ public static void collectInsertedFinalRow(SessionLocal session, Table table, ResultTarget deltaChangeCollector, ResultOption deltaChangeCollectionMode, Row newRow) { if (session.getMode().takeInsertedIdentity) { Column column = table.getIdentityColumn(); if (column != null) { session.setLastIdentity(newRow.getValue(column.getColumnId())); } } if (deltaChangeCollectionMode == ResultOption.FINAL) { deltaChangeCollector.addRow(newRow.getValueList()); } } private final DataChangeStatement statement; private final ResultOption resultOption; private final Expression[] expressions; public DataChangeDeltaTable(Schema schema, SessionLocal session, DataChangeStatement statement, ResultOption resultOption) { super(schema, 0, statement.getStatementName()); this.statement = statement; this.resultOption = resultOption; Table table = statement.getTable(); Column[] tableColumns = table.getColumns(); int columnCount = tableColumns.length; Column[] c = new Column[columnCount]; for (int i = 0; i < columnCount; i++) { c[i] = tableColumns[i].getClone(); } setColumns(c); Expression[] expressions = new Expression[columnCount]; String tableName = getName(); for (int i = 0; i < columnCount; i++) { expressions[i] = new ExpressionColumn(database, null, tableName, c[i].getName()); } this.expressions = expressions; } @Override public boolean canGetRowCount(SessionLocal session) { return false; } @Override public long getRowCount(SessionLocal session) { return Long.MAX_VALUE; } @Override public long getRowCountApproximation(SessionLocal session) { return Long.MAX_VALUE; } @Override public ResultInterface getResult(SessionLocal session) { statement.prepare(); int columnCount = expressions.length; LocalResult result = new LocalResult(session, expressions, columnCount, columnCount); result.setForDataChangeDeltaTable(); statement.update(result, resultOption); return result; } @Override public StringBuilder getSQL(StringBuilder builder, int sqlFlags) { return builder.append(resultOption.name()).append(" TABLE (").append(statement.getSQL()).append(')'); } @Override public boolean isDeterministic() { return false; } }
Detected license expression

      
    
Detected license expression (SPDX)

      
    
Percentage of license text
3.28
Copyrights
- end_line: 2
  copyright: Copyright 2004-2023 H2 Group. Multiple-Licensed
  start_line: 2
Holders
- holder: H2 Group. Multiple-Licensed
  end_line: 2
  start_line: 2
Authors

      
    
License expression License clue details
(mpl-2.0 OR epl-1.0) AND proprietary-license {'score': 20.37, 'matcher': '3-seq', 'end_line': 3, 'rule_url': 'https://github.com/nexB/scancode-toolkit/tree/develop/src/licensedcode/data/rules/mpl-2.0_or_epl-1.0_and_proprietary-license_2.RULE', 'from_file': None, 'start_line': 2, 'matched_text': ' * Copyright 2004-2023 H2 Group. Multiple-Licensed under the MPL 2.0,\n * and the EPL 1.0 (https://h2database.com/html/license.html).', 'match_coverage': 20.37, 'matched_length': 11, 'rule_relevance': 100, 'rule_identifier': 'mpl-2.0_or_epl-1.0_and_proprietary-license_2.RULE', 'license_expression': '(mpl-2.0 OR epl-1.0) AND proprietary-license', 'license_expression_spdx': '(MPL-2.0 OR EPL-1.0) AND LicenseRef-scancode-proprietary-license'}
URL Start line End line
https://h2database.com/html/license.html 3 3
Package URL License Primary language
pkg:osgi/com.h2database.source@2.2.220