Package com.datastax.driver.core

Examples of com.datastax.driver.core.DataType$Collection


    public static DataType rawTypeToDataType(AbstractType<?> rawType) {
        if (rawType instanceof ReversedType)
            rawType = ((ReversedType) rawType).baseType;

        DataType type = rawNativeMap.get(rawType);
        if (type != null)
            return type;

        if (rawType instanceof CollectionType) {
            switch (((CollectionType)rawType).kind) {
View Full Code Here


        break;
      }
      if (row.isNull(colIndex)) {
        continue;
      }
      DataType dataType = definitions.getType(colIndex);
      String columnNameText = definitions.getName(colIndex);
      CqlColumnType columnType = typeMap.get(columnNameText.toLowerCase());
      if (columnType == null) {
        columnType = CqlColumnType.REGULAR;
        LOG.debug("Column type not found for: {} - using regular", columnNameText);
View Full Code Here

    entity.doWithProperties(new PropertyHandler<CassandraPersistentProperty>() {
      @Override
      public void doWithPersistentProperty(CassandraPersistentProperty prop) {

        String columnName = prop.getColumnName().toCql();
        DataType columnDataType = prop.getDataType();
        ColumnMetadata columnMetadata = table.getColumn(columnName.toLowerCase());

        if (columnMetadata != null && columnDataType.equals(columnMetadata.getType())) {
          return;
        }

        final StringBuilder str = new StringBuilder();
        str.append("ALTER TABLE ");
View Full Code Here

    if (row.isNull(i)) {
      return null;
    }

    DataType type = columns.getType(i);

    if (type.isCollection()) {

      List<DataType> collectionTypes = type.getTypeArguments();
      if (collectionTypes.size() == 2) {
        return row.getMap(i, collectionTypes.get(0).asJavaClass(), collectionTypes.get(1).asJavaClass());
      }

      if (type.equals(DataType.list(collectionTypes.get(0)))) {
        return row.getList(i, collectionTypes.get(0).asJavaClass());
      }

      if (type.equals(DataType.set(collectionTypes.get(0)))) {
        return row.getSet(i, collectionTypes.get(0).asJavaClass());
      }

      throw new IllegalStateException("Unknown Collection type encountered.  Valid collections are Set, List and Map.");
    }

    if (type.equals(DataType.text()) || type.equals(DataType.ascii()) || type.equals(DataType.varchar())) {
      return row.getString(i);
    }
    if (type.equals(DataType.cint()) || type.equals(DataType.varint())) {
      return new Integer(row.getInt(i));
    }
    if (type.equals(DataType.cdouble())) {
      return new Double(row.getDouble(i));
    }
    if (type.equals(DataType.bigint()) || type.equals(DataType.counter())) {
      return new Long(row.getLong(i));
    }
    if (type.equals(DataType.cfloat())) {
      return new Float(row.getFloat(i));
    }
    if (type.equals(DataType.decimal())) {
      return row.getDecimal(i);
    }
    if (type.equals(DataType.cboolean())) {
      return new Boolean(row.getBool(i));
    }
    if (type.equals(DataType.timestamp())) {
      return row.getDate(i);
    }
    if (type.equals(DataType.blob())) {
      return row.getBytes(i);
    }
    if (type.equals(DataType.inet())) {
      return row.getInet(i);
    }
    if (type.equals(DataType.uuid()) || type.equals(DataType.timeuuid())) {
      return row.getUUID(i);
    }

    return row.getBytesUnsafe(i);
  }
View Full Code Here

    _registry.put(clazz, datatype);
  }

  public void removeDatatTypeMap(Class<?> clazz) {
    if (_registry.containsKey(clazz)) {
      DataType datatype = _registry.get(clazz);
      _log.info("Removing datatype map {} to {}", clazz, datatype);
      _registry.remove(clazz);
    } else {
      _log.warn("Trying to remove non-existing mapping for class {} !",
          clazz);
View Full Code Here

    public static DataType rawTypeToDataType(AbstractType<?> rawType) {
        if (rawType instanceof ReversedType)
            rawType = ((ReversedType) rawType).baseType;

        DataType type = rawNativeMap.get(rawType);
        if (type != null)
            return type;

        if (rawType instanceof CollectionType) {
            switch (((CollectionType)rawType).kind) {
View Full Code Here

      if (List.class.isAssignableFrom(getType())) {
        return DataType.list(getDataTypeFor(args.get(0).getType()));
      }
    }

    DataType dataType = CassandraSimpleTypeHolder.getDataTypeFor(getType());
    if (dataType == null) {
      throw new InvalidDataAccessApiUsageException(
          String
              .format(
                  "unknown type for property [%s], type [%s] in entity [%s]; only primitive types and collections or maps of primitive types are allowed",
View Full Code Here

  public boolean isPrimaryKeyColumn() {
    return isAnnotationPresent(PrimaryKeyColumn.class);
  }

  protected DataType getDataTypeFor(DataType.Name typeName) {
    DataType dataType = CassandraSimpleTypeHolder.getDataTypeFor(typeName);
    if (dataType == null) {
      throw new InvalidDataAccessApiUsageException(
          "only primitive types are allowed inside collections for the property  '" + this.getName() + "' type is '"
              + this.getType() + "' in the entity " + this.getOwner().getName());
    }
View Full Code Here

    }
    return dataType;
  }

  protected DataType getDataTypeFor(Class<?> javaType) {
    DataType dataType = CassandraSimpleTypeHolder.getDataTypeFor(javaType);
    if (dataType == null) {
      throw new InvalidDataAccessApiUsageException(
          "only primitive types are allowed inside collections for the property  '" + this.getName() + "' type is '"
              + this.getType() + "' in the entity " + this.getOwner().getName());
    }
View Full Code Here

  public static DataType.Name[] getDataTypeNamesFrom(List<TypeInformation<?>> arguments) {
    DataType.Name[] array = new DataType.Name[arguments.size()];
    for (int i = 0; i != array.length; i++) {
      TypeInformation<?> typeInfo = arguments.get(i);
      DataType dataType = getDataTypeFor(typeInfo.getType());
      if (dataType == null) {
        throw new InvalidDataAccessApiUsageException("not found appropriate primitive DataType for type = '"
            + typeInfo.getType());
      }
      array[i] = dataType.getName();
    }
    return array;
  }
View Full Code Here

TOP

Related Classes of com.datastax.driver.core.DataType$Collection

Copyright © 2018 www.massapicom. 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.