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


Java Descriptors.EnumValueDescriptor方法代码示例

本文整理汇总了Java中com.google.protobuf.Descriptors.EnumValueDescriptor方法的典型用法代码示例。如果您正苦于以下问题:Java Descriptors.EnumValueDescriptor方法的具体用法?Java Descriptors.EnumValueDescriptor怎么用?Java Descriptors.EnumValueDescriptor使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在com.google.protobuf.Descriptors的用法示例。


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

示例1: populate

import com.google.protobuf.Descriptors; //导入方法依赖的package包/类
/**
 * set preparedstatement params
 * 
 * @param ps
 * @param args
 * @return
 * @throws SQLException
 */
private void populate(PreparedStatement ps, List<?> args)
		throws SQLException {
	for (int i = 0; i < args.size(); i++) {
		Object o = args.get(i);
		if (o instanceof Integer) {
			ps.setInt(i + 1, (int) o);
		} else if (o instanceof Long) {
			ps.setLong(i + 1, (long) o);
		} else if (o instanceof String) {
			ps.setString(i + 1, (String) o);
		} else if (o instanceof Date) {
			ps.setDate(i + 1, (Date) o);
		} else if (o instanceof Float) {
			ps.setFloat(i + 1, (Float) o);
		} else if (o instanceof Double) {
			ps.setDouble(i + 1, (Double) o);
		} else if (o instanceof Date) {
			ps.setDate(i + 1, (Date) o);
		} else if (o instanceof Timestamp) {
			ps.setTimestamp(i + 1, (Timestamp) o);
		} else if (o instanceof Descriptors.EnumValueDescriptor) {
			ps.setInt(i + 1,
					((Descriptors.EnumValueDescriptor) o).getNumber());
		} else if(o instanceof Boolean){
			ps.setBoolean(i+1, (Boolean)o);
		} else {
			ps.setObject(i+1, o);
		}
	}
}
 
开发者ID:jigsaw-projects,项目名称:jigsaw-payment,代码行数:39,代码来源:JdbcProtobufTemplate.java

示例2: fromMessageValue

import com.google.protobuf.Descriptors; //导入方法依赖的package包/类
public static Object fromMessageValue(Object value){
    if(value instanceof Descriptors.EnumValueDescriptor){
        value=((Descriptors.EnumValueDescriptor) value).getName();
    }else if(value instanceof ByteString) {
        value = ((ByteString) value).toByteArray();
    }
    return value;
}
 
开发者ID:taojoe,项目名称:protobuf-transformer,代码行数:9,代码来源:CoreValueCoerce.java

示例3: enumValueFor

import com.google.protobuf.Descriptors; //导入方法依赖的package包/类
private static Object enumValueFor(FieldDescriptor field, Random random) {
    final Descriptors.EnumDescriptor descriptor = field.getEnumType();
    final List<Descriptors.EnumValueDescriptor> enumValues = descriptor.getValues();
    if (enumValues.isEmpty()) {
        return null;
    }

    // Value under index 0 is usually used to store `undefined` option
    // Use values with indexes from 1 to n
    final int index = random.nextInt(enumValues.size() - 1) + 1;
    final Descriptors.EnumValueDescriptor enumValue = descriptor.findValueByNumber(index);
    return enumValue;
}
 
开发者ID:SpineEventEngine,项目名称:core-java,代码行数:14,代码来源:Sample.java

示例4: valueOf

import com.google.protobuf.Descriptors; //导入方法依赖的package包/类
public static PushSMPMessageProtos.PushSMPMessageContent.GroupContext.Type valueOf(Descriptors.EnumValueDescriptor desc) {
	if(desc.getType() != getDescriptor()) {
		throw new IllegalArgumentException("EnumValueDescriptor is not for this type.");
	} else {
		return VALUES[desc.getIndex()];
	}
}
 
开发者ID:Agilitum,项目名称:TextSecureSMP,代码行数:8,代码来源:PushSMPMessageProtos.java

示例5: massageValueToJavaValue

import com.google.protobuf.Descriptors; //导入方法依赖的package包/类
protected Object massageValueToJavaValue(Object value, Class clz){
    if(clz.equals(Integer.class) || clz.equals(Long.class) || clz.equals(Float.class) || clz.equals(Double.class) ||clz.equals(Boolean.class) ||
            clz.equals(int.class) || clz.equals(long.class) || clz.equals(float.class) || clz.equals(double.class) || clz.equals(boolean.class)){
        // 判断clz时,如果是boolean, 估计是直接返回的boolean type,因此同时包含类型的判断
        return value;
    }else if(clz.equals(String.class)){
        if(value instanceof String){
            return value;
        }else if(value instanceof Descriptors.EnumDescriptor){
            return ((Descriptors.EnumDescriptor)value).getName();
        }else if(value instanceof Descriptors.EnumValueDescriptor){
            return ((Descriptors.EnumValueDescriptor) value).getName();
        }
    }else if(clz.isEnum()){
        try{
            if(value instanceof String){
                return Enum.valueOf(clz, (String) value);
            }else if(value instanceof Descriptors.EnumValueDescriptor){
                return Enum.valueOf(clz, ((Descriptors.EnumValueDescriptor) value).getName() );
            }
        }catch (Exception e){
            return null;
        }

    }else if(clz.equals(BigDecimal.class)){
        return new BigDecimal((double)value);
    }else if(clz.equals(LocalDateTime.class)){
        if(!"".equals(value)) {
            try {
                return LocalDateTime.parse((String) value, dateTimeFormatter);
            } catch (Exception ex) {
                return LocalDateTime.parse((String) value);
            }
        }
    }else if(clz.equals(LocalDate.class)){
        if(!"".equals(value)){
            return LocalDate.parse((String) value);
        }
    }else if(clz.equals(LocalTime.class)){
        if(!"".equals(value)){
            return LocalTime.parse((String) value);
        }
    }else if(clz.equals(byte[].class)){
        return ((ByteString) value).toByteArray();
    }
    return null;
}
 
开发者ID:taojoe,项目名称:protobuf-transformer,代码行数:48,代码来源:Transformer.java

示例6: getValueDescriptor

import com.google.protobuf.Descriptors; //导入方法依赖的package包/类
public final Descriptors.EnumValueDescriptor getValueDescriptor() {
	return (Descriptors.EnumValueDescriptor)getDescriptor().getValues().get(this.index);
}
 
开发者ID:Agilitum,项目名称:TextSecureSMP,代码行数:4,代码来源:PushSMPMessageProtos.java


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