ttomcat-1778514358873.zip-extract/_dependencies/maven/com.h2database_h2-2.2.220/org/h2/jdbcx/JdbcXid.java

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

      
    
Rootfs path

      
    
Size
2590 (2.5 KB)
MD5
74005c1f34454af57b72b2af0034b012
SHA1
55039e2ce5e704f40e3861bf92c514cdb30acf5e
SHA256
32f9ce03a1812669968469a825b144778da826dc0317f30bc86a523da6b689be
SHA512

      
    
SHA1_git
d7f84819eb62e0dee1df669eb13d1c1af471b569
Is binary

      
    
Is text
True
Is archive

      
    
Is media

      
    
Is legal

      
    
Is manifest

      
    
Is readme

      
    
Is top level

      
    
Is key file

      
    
JdbcXid.java | 2.5 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.jdbcx; import java.util.Base64; import javax.transaction.xa.Xid; import org.h2.api.ErrorCode; import org.h2.message.DbException; import org.h2.message.TraceObject; /** * An object of this class represents a transaction id. */ public final class JdbcXid extends TraceObject implements Xid { private static final String PREFIX = "XID"; private static final Base64.Encoder ENCODER = Base64.getUrlEncoder().withoutPadding(); private final int formatId; private final byte[] branchQualifier; private final byte[] globalTransactionId; JdbcXid(JdbcDataSourceFactory factory, int id, String tid) { setTrace(factory.getTrace(), TraceObject.XID, id); try { String[] splits = tid.split("\\|"); if (splits.length == 4 && PREFIX.equals(splits[0])) { formatId = Integer.parseInt(splits[1]); Base64.Decoder decoder = Base64.getUrlDecoder(); branchQualifier = decoder.decode(splits[2]); globalTransactionId = decoder.decode(splits[3]); return; } } catch (IllegalArgumentException e) { } throw DbException.get(ErrorCode.WRONG_XID_FORMAT_1, tid); } /** * INTERNAL * @param builder to put result into * @param xid to provide string representation for * @return provided StringBuilder */ static StringBuilder toString(StringBuilder builder, Xid xid) { return builder.append(PREFIX).append('|').append(xid.getFormatId()) // .append('|').append(ENCODER.encodeToString(xid.getBranchQualifier())) // .append('|').append(ENCODER.encodeToString(xid.getGlobalTransactionId())); } /** * Get the format id. * * @return the format id */ @Override public int getFormatId() { debugCodeCall("getFormatId"); return formatId; } /** * The transaction branch identifier. * * @return the identifier */ @Override public byte[] getBranchQualifier() { debugCodeCall("getBranchQualifier"); return branchQualifier; } /** * The global transaction identifier. * * @return the transaction id */ @Override public byte[] getGlobalTransactionId() { debugCodeCall("getGlobalTransactionId"); return globalTransactionId; } }
Detected license expression
mpl-2.0 AND epl-1.0
Detected license expression (SPDX)
MPL-2.0 AND EPL-1.0
Percentage of license text
3.75
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 detections License expression License expression SPDX
mpl_2_0_and_epl_1_0-796bf8d7-f485-3520-923d-e6a4b1ecd2f3 mpl-2.0 AND epl-1.0 MPL-2.0 AND EPL-1.0
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