static Base newSchema(int id, Class<?> compontentType, Class<?> typeClass,
            IdStrategy strategy, final Handler handler)
    {
        switch (id)
        {
            case ID_BOOL:
                return new BoolArray(strategy, handler, compontentType.isPrimitive());
            case ID_CHAR:
                return new CharArray(strategy, handler, compontentType.isPrimitive());
            case ID_SHORT:
                return new ShortArray(strategy, handler, compontentType.isPrimitive());
            case ID_INT32:
                return new Int32Array(strategy, handler, compontentType.isPrimitive());
            case ID_INT64:
                return new Int64Array(strategy, handler, compontentType.isPrimitive());
            case ID_FLOAT:
                return new FloatArray(strategy, handler, compontentType.isPrimitive());
            case ID_DOUBLE:
                return new DoubleArray(strategy, handler, compontentType.isPrimitive());
            case ID_STRING:
                return new StringArray(strategy, handler);
            case ID_BYTES:
                return new ByteStringArray(strategy, handler);
            case ID_BYTE_ARRAY:
                return new ByteArrayArray(strategy, handler);
            case ID_BIGDECIMAL:
                return new BigDecimalArray(strategy, handler);
            case ID_BIGINTEGER:
                return new BigIntegerArray(strategy, handler);
            case ID_DATE:
                return new DateArray(strategy, handler);
            default:
                throw new RuntimeException("Should not happen.");
        }
    }
Built-in array schemas.

@author David Yu
@created Dec 4, 2012
protostuff-runtime/src/main/java/io/protostuff/runtime/ArraySchemas.java