MCPcopy Create free account
hub / github.com/CyanogenMod/android_frameworks_base / fullyQualifyClassName

Function fullyQualifyClassName

tools/aapt/Resource.cpp:713–739  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

711}
712
713static void fullyQualifyClassName(const String8& package, sp<XMLNode> node,
714 const String16& attrName) {
715 XMLNode::attribute_entry* attr = node->editAttribute(
716 String16("http://schemas.android.com/apk/res/android"), attrName);
717 if (attr != NULL) {
718 String8 name(attr->string);
719
720 // asdf --> package.asdf
721 // .asdf .a.b --> package.asdf package.a.b
722 // asdf.adsf --> asdf.asdf
723 String8 className;
724 const char* p = name.string();
725 const char* q = strchr(p, '.');
726 if (p == q) {
727 className += package;
728 className += name;
729 } else if (q == NULL) {
730 className += package;
731 className += ".";
732 className += name;
733 } else {
734 className += name;
735 }
736 NOISY(printf("Qualifying class '%s' to '%s'", name.string(), className.string()));
737 attr->string.setTo(String16(className));
738 }
739}
740
741status_t massageManifest(Bundle* bundle, sp<XMLNode> root)
742{

Callers 1

massageManifestFunction · 0.85

Calls 4

editAttributeMethod · 0.80
stringMethod · 0.80
String16Class · 0.70
setToMethod · 0.45

Tested by

no test coverage detected