当前位置: 首页>>代码示例>>Java>>正文


Java LatLngValue类代码示例

本文整理汇总了Java中com.google.cloud.datastore.LatLngValue的典型用法代码示例。如果您正苦于以下问题:Java LatLngValue类的具体用法?Java LatLngValue怎么用?Java LatLngValue使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。


LatLngValue类属于com.google.cloud.datastore包,在下文中一共展示了LatLngValue类的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: toDatastore

import com.google.cloud.datastore.LatLngValue; //导入依赖的package包/类
@Override
public ValueBuilder<?, ?, ?> toDatastore(Object input) {
  if (input == null) {
    return NullValue.newBuilder();
  }
  GeoLocation geoLocation = (GeoLocation) input;
  return LatLngValue.newBuilder(LatLng.of(geoLocation.getLatitude(), geoLocation.getLongitude()));
}
 
开发者ID:sai-pullabhotla,项目名称:catatumbo,代码行数:9,代码来源:GeoLocationMapper.java

示例2: toModel

import com.google.cloud.datastore.LatLngValue; //导入依赖的package包/类
@Override
public Object toModel(Value<?> input) {
  if (input instanceof NullValue) {
    return null;
  }
  LatLngValue value = (LatLngValue) input;
  LatLng coordinates = value.get();
  return new GeoLocation(coordinates.getLatitude(), coordinates.getLongitude());
}
 
开发者ID:sai-pullabhotla,项目名称:catatumbo,代码行数:10,代码来源:GeoLocationMapper.java

示例3: toDatastore

import com.google.cloud.datastore.LatLngValue; //导入依赖的package包/类
@Override
public ValueBuilder<?, ?, ?> toDatastore(Object input) {
  ValueBuilder<?, ?, ?> builder;
  if (input == null) {
    builder = NullValue.newBuilder();
  } else if (input instanceof Long) {
    builder = LongValue.newBuilder((long) input);
  } else if (input instanceof Double) {
    builder = DoubleValue.newBuilder((double) input);
  } else if (input instanceof Boolean) {
    builder = BooleanValue.newBuilder((boolean) input);
  } else if (input instanceof String) {
    builder = StringValue.newBuilder((String) input);
  } else if (input instanceof DatastoreKey) {
    builder = KeyValue.newBuilder(((DatastoreKey) input).nativeKey());
  } else if (input instanceof GeoLocation) {
    GeoLocation geoLocation = (GeoLocation) input;
    builder = LatLngValue
        .newBuilder(LatLng.of(geoLocation.getLatitude(), geoLocation.getLongitude()));
  } else if (input instanceof Map) {
    @SuppressWarnings("unchecked")
    Map<String, ?> map = (Map<String, ?>) input;
    FullEntity.Builder<IncompleteKey> entityBuilder = FullEntity.newBuilder();
    for (Map.Entry<String, ?> entry : map.entrySet()) {
      String key = entry.getKey();
      entityBuilder.set(key, toDatastore(entry.getValue()).build());
    }
    builder = EntityValue.newBuilder(entityBuilder.build());
  } else {
    throw new MappingException(String.format("Unsupported type: %s", input.getClass().getName()));
  }
  return builder;
}
 
开发者ID:sai-pullabhotla,项目名称:catatumbo,代码行数:34,代码来源:CatchAllMapper.java

示例4: toModel

import com.google.cloud.datastore.LatLngValue; //导入依赖的package包/类
@Override
public Object toModel(Value<?> input) {
  Object javaValue;
  if (input instanceof NullValue) {
    javaValue = null;
  } else if (input instanceof StringValue) {
    javaValue = input.get();
  } else if (input instanceof LongValue) {
    javaValue = input.get();
  } else if (input instanceof DoubleValue) {
    javaValue = input.get();
  } else if (input instanceof BooleanValue) {
    javaValue = input.get();
  } else if (input instanceof KeyValue) {
    javaValue = new DefaultDatastoreKey(((KeyValue) input).get());
  } else if (input instanceof LatLngValue) {
    LatLng latLong = ((LatLngValue) input).get();
    javaValue = new GeoLocation(latLong.getLatitude(), latLong.getLongitude());
  } else if (input instanceof EntityValue) {
    EntityValue entityValue = (EntityValue) input;
    FullEntity<?> entity = entityValue.get();
    Map<String, Object> map = new HashMap<>();
    for (String property : entity.getNames()) {
      map.put(property, toModel(entity.getValue(property)));
    }
    javaValue = map;
  } else {
    throw new MappingException(String.format("Unsupported type %s", input.getClass().getName()));
  }
  return javaValue;
}
 
开发者ID:sai-pullabhotla,项目名称:catatumbo,代码行数:32,代码来源:CatchAllMapper.java

示例5: valueOf

import com.google.cloud.datastore.LatLngValue; //导入依赖的package包/类
private Object valueOf(Value<?> value) {
    switch (value.getType()) {
    case NULL:
        return null;

    case STRING:
        return ((StringValue) value).get();

    case ENTITY:
        Map<String, Object> map2 = new HashMap<>();
        FullEntity<?> fe = ((EntityValue) value).get();
        Set<String> names = fe.getNames();
        for (String nom : names) {
            GoogleDatastoreKeyStore.put(map2, nom, fe.getValue(nom));
        }
        return map2;

    case LIST:
        List<? extends Value<?>> list = ((ListValue) value).get();
        List<String> slist = new ArrayList<>();
        // TODO this may be an oversimplification
        for (Value<?> v : list) {
            if (v instanceof StringValue) slist.add(((StringValue) v).get());
        }
        return slist;
        
    case KEY:
        return((KeyValue) value).get();
    case LONG:
        return((LongValue) value).get();
    case DOUBLE:
        return((DoubleValue) value).get();
    case BOOLEAN:
        return ((BooleanValue) value).get();
    case BLOB:
        try (ByteArrayOutputStream baos = new ByteArrayOutputStream()) {
            IOUtils.copy(((BlobValue) value).get().asInputStream(), baos);
            return(baos.toString());
        } catch (IOException e) {
            log.error("Cannot read blob: " + e.getMessage());
            break;
        }
    case RAW_VALUE:
        return((RawValue) value).get();
    case LAT_LNG:
        return((LatLngValue) value).get();
    default:
        throw new RuntimeException("Can't yet");
    }
    return null;
}
 
开发者ID:RapturePlatform,项目名称:Rapture,代码行数:52,代码来源:GoogleIndexHandler.java

示例6: put

import com.google.cloud.datastore.LatLngValue; //导入依赖的package包/类
public static void put(Map<String, Object> map, String name, Value<?> value) {
    switch (value.getType()) {
    case STRING:
        map.put(name, ((StringValue) value).get());
        break;
    case NULL:
        map.put(name, null);
        break;
    case ENTITY:
        Map<String, Object> map2 = new HashMap<>();
        FullEntity<?> fe = ((EntityValue) value).get();
        Set<String> names = fe.getNames();
        for (String nom : names) {
            put(map2, nom, fe.getValue(nom));
        }
        map.put(name, map2);
        break;
    case LIST:
        List<? extends Value<?>> list = ((ListValue) value).get();
        List<String> slist = new ArrayList<>();
        // TODO this may be an oversimplification
        for (Value<?> v : list) {
            if (v instanceof StringValue) slist.add(((StringValue) v).get());
        }
        map.put(name, slist);
        break;
    case KEY:
        map.put(name, ((KeyValue) value).get());
        break;
    case LONG:
        map.put(name, ((LongValue) value).get());
        break;
    case DOUBLE:
        map.put(name, ((DoubleValue) value).get());
        break;
    case BOOLEAN:
        map.put(name, ((BooleanValue) value).get());
        break;
    case BLOB:
        try (ByteArrayOutputStream baos = new ByteArrayOutputStream()) {
            IOUtils.copy(((BlobValue) value).get().asInputStream(), baos);
            map.put(name, baos.toString());
        } catch (IOException e) {
            log.error("Cannot read blob: " + e.getMessage());
        }
        break;
    case RAW_VALUE:
        map.put(name, ((RawValue) value).get());
        break;
    case LAT_LNG:
        map.put(name, ((LatLngValue) value).get());
        break;
    default:
        throw new RuntimeException("Can't yet");
    }
}
 
开发者ID:RapturePlatform,项目名称:Rapture,代码行数:57,代码来源:GoogleDatastoreKeyStore.java


注:本文中的com.google.cloud.datastore.LatLngValue类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。