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

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

      
    
Rootfs path

      
    
Size
2476 (2.4 KB)
MD5
280ca837c21ad1323b27da907c9b826c
SHA1
f79813ed6bf5b5737bbbadaf0502a69201d64961
SHA256
ed05ec572ad8a5f4338addc981e121cc48b3f222f1452a6560f88c5b1855ae07
SHA512

      
    
SHA1_git
f19cb40c9713a56e385f016689ef265aae7d76b5
Is binary

      
    
Is text
True
Is archive

      
    
Is media

      
    
Is legal

      
    
Is manifest

      
    
Is readme

      
    
Is top level

      
    
Is key file

      
    
GeneratedColumnResolver.java | 2.4 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 java.util.HashMap; import org.h2.result.Row; import org.h2.value.Value; import org.h2.value.ValueBigint; /** * Column resolver for generated columns. */ class GeneratedColumnResolver implements ColumnResolver { private final Table table; private Column[] columns; private HashMap<String, Column> columnMap; private Row current; /** * Column resolver for generated columns. * * @param table * the table */ GeneratedColumnResolver(Table table) { this.table = table; } /** * Set the current row. * * @param current * the current row */ void set(Row current) { this.current = current; } @Override public Column[] getColumns() { Column[] columns = this.columns; if (columns == null) { this.columns = columns = createColumns(); } return columns; } private Column[] createColumns() { Column[] allColumns = table.getColumns(); int totalCount = allColumns.length, baseCount = totalCount; for (int i = 0; i < totalCount; i++) { if (allColumns[i].isGenerated()) { baseCount--; } } Column[] baseColumns = new Column[baseCount]; for (int i = 0, j = 0; i < totalCount; i++) { Column c = allColumns[i]; if (!c.isGenerated()) { baseColumns[j++] = c; } } return baseColumns; } @Override public Column findColumn(String name) { HashMap<String, Column> columnMap = this.columnMap; if (columnMap == null) { columnMap = table.getDatabase().newStringMap(); for (Column c : getColumns()) { columnMap.put(c.getName(), c); } this.columnMap = columnMap; } return columnMap.get(name); } @Override public Value getValue(Column column) { int columnId = column.getColumnId(); if (columnId == -1) { return ValueBigint.get(current.getKey()); } return current.getValue(columnId); } @Override public Column getRowIdColumn() { return table.getRowIdColumn(); } }
Detected license expression

      
    
Detected license expression (SPDX)

      
    
Percentage of license text
4.78
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