Examples of AkibanAppender


Examples of com.foundationdb.util.AkibanAppender

    // Object interface

    @Override
    public final String toString()
    {
        AkibanAppender buffer = AkibanAppender.of(new StringBuilder());
        buffer.append("(");
        for (int i = 0; i < nIndexFields; i++) {
            if (i > 0) {
                buffer.append(", ");
            }
            types[i].format(value(i), buffer);
        }
        buffer.append(")->");
        buffer.append(hKey().toString());
        return buffer.toString();
    }
View Full Code Here

Examples of com.foundationdb.util.AkibanAppender

    @Override
    public TCast castToVarchar() {
        return new TCastBase(this, MString.VARCHAR) {
            @Override
            protected void doEvaluate(TExecutionContext context, ValueSource source, ValueTarget target) {
                AkibanAppender appender = (AkibanAppender) context.exectimeObjectAt(APPENDER_CACHE_INDEX);
                StringBuilder sb;
                if (appender == null) {
                    sb = new StringBuilder();
                    appender = AkibanAppender.of(sb);
                    context.putExectimeObject(APPENDER_CACHE_INDEX, appender);
                }
                else {
                    sb = (StringBuilder) appender.getAppendable();
                    sb.setLength(0);
                }
                format(context.inputTypeAt(0), source, appender);
                String string = sb.toString();
                int maxlen = context.outputType().attribute(StringAttribute.MAX_LENGTH);
View Full Code Here

Examples of com.foundationdb.util.AkibanAppender

    }

    public static String formatKey(Session session, RowData row, List<Column> columns) {
        RowDataValueSource source = new RowDataValueSource();
        StringBuilder str = new StringBuilder();
        AkibanAppender appender = AkibanAppender.of(str);
        for (int i = 0; i < columns.size(); i++) {
            if (i > 0) {
                str.append(" and ");
            }
            Column column = columns.get(i);
View Full Code Here

Examples of com.foundationdb.util.AkibanAppender

    public String toString(final RowDef rowDef)
    {
        if (rowDef == null) {
            return toStringWithoutRowDef("No RowDef provided");
        }
        final AkibanAppender sb = AkibanAppender.of(new StringBuilder());
        RowDataValueSource source = new RowDataValueSource();
        try {
            sb.append(rowDef.table().getName().getTableName());
            for (int i = 0; i < getFieldCount(); i++) {
                final FieldDef fieldDef = rowDef.getFieldDef(i);
                sb.append(i == 0 ? '(' : ',');
                final long location = fieldDef.getRowDef().fieldLocation(
                    this, fieldDef.getFieldIndex());
                if (location == 0) {
                    // sb.append("null");
                } else {
                    source.bind(fieldDef, this);
                    fieldDef.column().getType().format(source, sb);
                }
            }
            sb.append(')');
        } catch (Exception e) {
            int size = Math.min(getRowSize(), 64);
            if (size > 0 && rowStart >= 0) {
                sb.append(AkServerUtil.dump(bytes, rowStart, size));
            }
            return sb.toString();
        }
        return sb.toString();
    }
View Full Code Here

Examples of com.foundationdb.util.AkibanAppender

        return sb.toString();
    }

    /** Returns a hex-dump of the backing buffer. */
    public String toStringWithoutRowDef(String missingRowDefExplanation) {
        final AkibanAppender sb = AkibanAppender.of(new StringBuilder());
        try {
            sb.append("RowData[");
            sb.append(missingRowDefExplanation);
            sb.append("]?(rowDefId=");
            sb.append(getRowDefId());
            sb.append(": ");
            AkServerUtil.hex(sb, bytes, rowStart, rowEnd - rowStart);
        } catch (Exception e) {
            int size = Math.min(getRowSize(), 64);
            if (size > 0 && rowStart >= 0) {
                sb.append(AkServerUtil.dump(bytes, rowStart, size));
            }
            return sb.toString();
        }
        return sb.toString();
    }
View Full Code Here

Examples of com.foundationdb.util.AkibanAppender

            return AkGUID.bytesToUUID(bytes, offset+prefixSize);
        }
    }
   
    private BigDecimalWrapperImpl getDecimal() {
        AkibanAppender appender = AkibanAppender.of(new StringBuilder(fieldDef().getMaxStorageSize()));
        ConversionHelperBigDecimal.decodeToString(fieldDef(), bytes(), getRawOffsetAndWidth(), appender);
        String asString = appender.toString();
        assert ! asString.isEmpty();
        try {
            return new BigDecimalWrapperImpl(new BigDecimal(asString));
        } catch (NumberFormatException e) {
            throw new NumberFormatException(asString);
View Full Code Here

Examples of com.foundationdb.util.AkibanAppender

        FormatOptions FORMAT_OPTS = new FormatOptions();
        FORMAT_OPTS.set(FormatOptions.BinaryFormatOption.HEX);
        FORMAT_OPTS.set(FormatOptions.JsonBinaryFormatOption.HEX);
        String typeName = source.getType().typeClass().name().toString();
        StringBuilder sb = new StringBuilder();
        AkibanAppender out = AkibanAppender.of(sb);
        sb.setLength(0);
        source.getType().format(source, out);
        assertEquals(typeName + " str", formatted, sb.toString());
        sb.setLength(0);
        source.getType().formatAsJson(source, out, FORMAT_OPTS);
View Full Code Here
TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.