ttomcat-1778514358873.zip-extract/_dependencies/maven/com.h2database_h2-2.2.220/org/h2/value/ValueBytesBase.java

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

      
    
Rootfs path

      
    
Size
2079 (2.0 KB)
MD5
5596a4c7318d4a53703902eb456c644a
SHA1
9efba71d0a1f0acd22300bf8fa3ee1ed9989607c
SHA256
e72cf1ffe91148113c8929dfcdd76d5099dadeb44d70b986830abdad455c1fd8
SHA512

      
    
SHA1_git
724c8d24e71910498e0dae95fb64049274e58f45
Is binary

      
    
Is text
True
Is archive

      
    
Is media

      
    
Is legal

      
    
Is manifest

      
    
Is readme

      
    
Is top level

      
    
Is key file

      
    
ValueBytesBase.java | 2.0 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.value; import java.util.Arrays; import org.h2.engine.CastDataProvider; import org.h2.engine.Constants; import org.h2.message.DbException; import org.h2.util.Bits; import org.h2.util.StringUtils; import org.h2.util.Utils; /** * Base implementation of byte array based data types. */ abstract class ValueBytesBase extends Value { /** * The value. */ byte[] value; /** * The hash code. */ int hash; ValueBytesBase(byte[] value) { int length = value.length; if (length > Constants.MAX_STRING_LENGTH) { throw DbException.getValueTooLongException(getTypeName(getValueType()), StringUtils.convertBytesToHex(value, 41), length); } this.value = value; } @Override public final byte[] getBytes() { return Utils.cloneByteArray(value); } @Override public final byte[] getBytesNoCopy() { return value; } @Override public final int compareTypeSafe(Value v, CompareMode mode, CastDataProvider provider) { return Bits.compareNotNullUnsigned(value, ((ValueBytesBase) v).value); } @Override public StringBuilder getSQL(StringBuilder builder, int sqlFlags) { return StringUtils.convertBytesToHex(builder.append("X'"), value).append('\''); } @Override public final int hashCode() { int h = hash; if (h == 0) { h = getClass().hashCode() ^ Utils.getByteArrayHash(value); if (h == 0) { h = 1_234_570_417; } hash = h; } return h; } @Override public int getMemory() { return value.length + 24; } @Override public final boolean equals(Object other) { return other != null && getClass() == other.getClass() && Arrays.equals(value, ((ValueBytesBase) other).value); } }
Detected license expression

      
    
Detected license expression (SPDX)

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