Пример #1
0
/*
 * Class:     mapnik_FeatureSet
 * Method:    getProperty
 * Signature: (Ljava/lang/String;)Ljava/lang/Object;
 */
JNIEXPORT jobject JNICALL Java_mapnik_FeatureSet_getProperty
  (JNIEnv *env, jobject fsobj, jstring namej)
{
	PREAMBLE;
	mapnik::feature_ptr* fp=LOAD_FEATURE_POINTER(fsobj);
	if (!fp) {
		throw_runtime_exception(env, "No feature loaded");
		return 0;
	}

	refjavastring name(env,namej);

	// Convert the value
	mapnik::value_type const& value= (*fp)->get(name.stringz);
	return mapnik::value_type::visit(value, value_to_java(env));
	TRAILER(0);
}
Пример #2
0
/*
 * Class:     mapnik_FeatureSet
 * Method:    getProperty
 * Signature: (Ljava/lang/String;)Ljava/lang/Object;
 */
JNIEXPORT jobject JNICALL Java_mapnik_FeatureSet_getProperty
  (JNIEnv *env, jobject fsobj, jstring namej)
{
	PREAMBLE;
	mapnik::feature_ptr* fp=LOAD_FEATURE_POINTER(fsobj);
	if (!fp) {
		throw_runtime_exception(env, "No feature loaded");
		return 0;
	}

	refjavastring name(env,namej);
	std::map<std::string,mapnik::value>::iterator iter=(*fp)->props().find(name.stringz);
	if (iter==(*fp)->end()) return 0;

	// Convert the value
	mapnik::value_base const& value=iter->second.base();
	return boost::apply_visitor(value_to_java(env), value);
	TRAILER(0);
}