/** * Modify the internal byte buffer. If the new data is equal to * the old data, the cached values are not cleared. * * @param src the new bytes * @param offset start offset * @param size number of bytes to use */ public void setBytes(byte[] src, int offset, int size) { if (equalTo(src, offset, size)) { modified = false; return; } if (buffer.length != size) { buffer = new byte[size]; } System.arraycopy(src, offset, buffer, 0, size); modified = true; cachedString = null; }
/** * Write padded scalar <code>DRDAString</code> object value. The * string is converted into the appropriate codeset. * * @param drdaString string to be written * @param paddedLength length to pad string to */ protected void writeScalarPaddedString (DRDAString drdaString, int paddedLength) { int stringLength = drdaString.length(); int fillLength = paddedLength - stringLength; ensureLength(paddedLength); buffer.put(drdaString.getBytes(), 0, stringLength); padBytes(ccsidManager.space, fillLength); }
/** * Read string value into a <code>DRDAString</code> object. * * @param dst destination for the read string * @param size size (in bytes) of string to read * @param unpad if true, remove padding (trailing spaces) * * @exception DRDAProtocolException */ protected void readString(DRDAString dst, int size, boolean unpad) throws DRDAProtocolException { ensureBLayerDataInBuffer(size, ADJUST_LENGTHS); int startPos = pos; pos += size; if (unpad) { while ((size > 0) && (buffer[startPos + size - 1] == ccsidManager.space)) { --size; } } dst.setBytes(buffer, startPos, size); }
if (!Attribute.GFXD_DBNAME.equals(rdbnam.toString())) { rdbnam.setString(Attribute.GFXD_DBNAME); || appRequester.greaterThanOrEqualTo(10,3,0) ) { if (!rdbnam.toString().equals(database.dbName)) rdbnamMismatch(CodePoint.PKGNAMCSN); if (!Attribute.GFXD_DBNAME.equals(rdbnam.toString())) { rdbnam.setString(Attribute.GFXD_DBNAME); || appRequester.greaterThanOrEqualTo(10,3,0) ) { if (!rdbnam.toString().equals(database.dbName)) rdbnamMismatch(CodePoint.PKGNAMCSN); rdbnam.wasModified() || rdbcolid.wasModified() || pkgid.wasModified() || pkgcnstkn.wasModified() || (prevPkgnamcsn.getPkgsn() != pkgsn)) byte[] token = new byte[pkgcnstkn.length()]; System.arraycopy(pkgcnstkn.getBytes(), 0, token, 0, token.length); new Pkgnamcsn(rdbnam.toString(), rdbcolid.toString(), pkgid.toString(), pkgsn, new ConsistencyToken(token));
private void writePKGNAMCSN() throws DRDAProtocolException { writePKGNAMCSN(pkgcnstkn.getBytes()); }
if (rdbnam.length() <= CodePoint.RDBNAM_LEN && rdbcolid.length() <= CodePoint.RDBCOLID_LEN && pkgid.length() <= CodePoint.PKGID_LEN) int len = Math.max(CodePoint.RDBNAM_LEN, rdbnam.length()); writer.writeShort(len); writer.writeScalarPaddedString(rdbnam, len); len = Math.max(CodePoint.RDBCOLID_LEN, rdbcolid.length()); writer.writeShort(len); writer.writeScalarPaddedString(rdbcolid, len); len = Math.max(CodePoint.PKGID_LEN, pkgid.length()); writer.writeShort(len); writer.writeScalarPaddedString(pkgid, len);
if (!Attribute.GFXD_DBNAME.equals(rdbnam.toString())) { rdbnam.setString(Attribute.GFXD_DBNAME); || appRequester.greaterThanOrEqualTo(10,3,0) ) { if (!rdbnam.toString().equals(database.dbName)) rdbnamMismatch(CodePoint.PKGNAMCSN); if (!Attribute.GFXD_DBNAME.equals(rdbnam.toString())) { rdbnam.setString(Attribute.GFXD_DBNAME); || appRequester.greaterThanOrEqualTo(10,3,0) ) { if (!rdbnam.toString().equals(database.dbName)) rdbnamMismatch(CodePoint.PKGNAMCSN); rdbnam.wasModified() || rdbcolid.wasModified() || pkgid.wasModified() || pkgcnstkn.wasModified() || (prevPkgnamcsn.getPkgsn() != pkgsn)) byte[] token = new byte[pkgcnstkn.length()]; System.arraycopy(pkgcnstkn.getBytes(), 0, token, 0, token.length); new Pkgnamcsn(rdbnam.toString(), rdbcolid.toString(), pkgid.toString(), pkgsn, new ConsistencyToken(token));
private void writePKGNAMCSN() throws DRDAProtocolException { writePKGNAMCSN(pkgcnstkn.getBytes()); }
if (rdbnam.length() <= CodePoint.RDBNAM_LEN && rdbcolid.length() <= CodePoint.RDBCOLID_LEN && pkgid.length() <= CodePoint.PKGID_LEN) int len = Math.max(CodePoint.RDBNAM_LEN, rdbnam.length()); writer.writeShort(len); writer.writeScalarPaddedString(rdbnam, len); len = Math.max(CodePoint.RDBCOLID_LEN, rdbcolid.length()); writer.writeShort(len); writer.writeScalarPaddedString(rdbcolid, len); len = Math.max(CodePoint.PKGID_LEN, pkgid.length()); writer.writeShort(len); writer.writeScalarPaddedString(pkgid, len);
if (!Attribute.GFXD_DBNAME.equals(rdbnam.toString())) { rdbnam.setString(Attribute.GFXD_DBNAME); || appRequester.greaterThanOrEqualTo(10,3,0) ) { if (!rdbnam.toString().equals(database.dbName)) rdbnamMismatch(CodePoint.PKGNAMCSN); if (!Attribute.GFXD_DBNAME.equals(rdbnam.toString())) { rdbnam.setString(Attribute.GFXD_DBNAME); || appRequester.greaterThanOrEqualTo(10,3,0) ) { if (!rdbnam.toString().equals(database.dbName)) rdbnamMismatch(CodePoint.PKGNAMCSN); rdbnam.wasModified() || rdbcolid.wasModified() || pkgid.wasModified() || pkgcnstkn.wasModified() || (prevPkgnamcsn.getPkgsn() != pkgsn)) byte[] token = new byte[pkgcnstkn.length()]; System.arraycopy(pkgcnstkn.getBytes(), 0, token, 0, token.length); new Pkgnamcsn(rdbnam.toString(), rdbcolid.toString(), pkgid.toString(), pkgsn, new ConsistencyToken(token));
/** * Write padded scalar <code>DRDAString</code> object value. The * string is converted into the appropriate codeset. * * @param drdaString string to be written * @param paddedLength length to pad string to */ protected void writeScalarPaddedString (DRDAString drdaString, int paddedLength) { int stringLength = drdaString.length(); int fillLength = paddedLength - stringLength; ensureLength(paddedLength); buffer.put(drdaString.getBytes(), 0, stringLength); padBytes(ccsidManager.space, fillLength); }
private void writePKGNAMCSN() throws DRDAProtocolException { writePKGNAMCSN(pkgcnstkn.getBytes()); }
/** * Modify the internal byte buffer. If the new data is equal to * the old data, the cached values are not cleared. * * @param src the new bytes * @param offset start offset * @param size number of bytes to use */ public void setBytes(byte[] src, int offset, int size) { if (equalTo(src, offset, size)) { modified = false; return; } if (buffer.length != size) { buffer = new byte[size]; } System.arraycopy(src, offset, buffer, 0, size); modified = true; cachedString = null; }
/** * Read string value into a <code>DRDAString</code> object. * * @param dst destination for the read string * @param size size (in bytes) of string to read * @param unpad if true, remove padding (trailing spaces) * * @exception DRDAProtocolException */ protected void readString(DRDAString dst, int size, boolean unpad) throws DRDAProtocolException { ensureBLayerDataInBuffer(size, ADJUST_LENGTHS); int startPos = pos; pos += size; if (unpad) { while ((size > 0) && (buffer[startPos + size - 1] == ccsidManager.space)) { --size; } } dst.setBytes(buffer, startPos, size); }
if (rdbnam.length() <= CodePoint.RDBNAM_LEN && rdbcolid.length() <= CodePoint.RDBCOLID_LEN && pkgid.length() <= CodePoint.PKGID_LEN) int len = Math.max(CodePoint.RDBNAM_LEN, rdbnam.length()); writer.writeShort(len); writer.writeScalarPaddedString(rdbnam, len); len = Math.max(CodePoint.RDBCOLID_LEN, rdbcolid.length()); writer.writeShort(len); writer.writeScalarPaddedString(rdbcolid, len); len = Math.max(CodePoint.PKGID_LEN, pkgid.length()); writer.writeShort(len); writer.writeScalarPaddedString(pkgid, len);
/** * Write padded scalar <code>DRDAString</code> object value. The * string is converted into the appropriate codeset. * * @param drdaString string to be written * @param paddedLength length to pad string to */ protected void writeScalarPaddedString (DRDAString drdaString, int paddedLength) { int stringLength = drdaString.length(); int fillLength = paddedLength - stringLength; ensureLength(paddedLength); buffer.put(drdaString.getBytes(), 0, stringLength); padBytes(ccsidManager.space, fillLength); }
/** * Modify the internal byte buffer. If the new data is equal to * the old data, the cached values are not cleared. * * @param src the new bytes * @param offset start offset * @param size number of bytes to use */ public void setBytes(byte[] src, int offset, int size) { if (equalTo(src, offset, size)) { modified = false; return; } if (buffer.length != size) { buffer = new byte[size]; } System.arraycopy(src, offset, buffer, 0, size); modified = true; cachedString = null; }
/** * Read string value into a <code>DRDAString</code> object. * * @param dst destination for the read string * @param size size (in bytes) of string to read * @param unpad if true, remove padding (trailing spaces) * * @exception DRDAProtocolException */ protected void readString(DRDAString dst, int size, boolean unpad) throws DRDAProtocolException { ensureBLayerDataInBuffer(size, ADJUST_LENGTHS); int startPos = pos; pos += size; if (unpad) { while ((size > 0) && (buffer[startPos + size - 1] == ccsidManager.space)) { --size; } } dst.setBytes(buffer, startPos, size); }