/* Ċ Ġ* ĠCopyright Ġ( C ) Ġ 2 0 1 9 ĠThe ĠAndroid ĠOpen ĠSource ĠProject Ċ Ġ* Ċ Ġ* ĠLicensed Ġunder Ġthe ĠApache ĠLicense , ĠVersion Ġ 2 . 0 Ġ( the Ġ" License "); Ċ Ġ* Ġyou Ġmay Ġnot Ġuse Ġthis Ġfile Ġexcept Ġin Ġcompliance Ġwith Ġthe ĠLicense . Ċ Ġ* ĠYou Ġmay Ġobtain Ġa Ġcopy Ġof Ġthe ĠLicense Ġat Ċ Ġ* Ċ Ġ* ĠĠĠĠĠ Ġhttp :// www . apache . org / licenses / LICENSE - 2 . 0 Ċ Ġ* Ċ Ġ* ĠUnless Ġrequired Ġby Ġapplicable Ġlaw Ġor Ġagreed Ġto Ġin Ġwriting , Ġsoftware Ċ Ġ* Ġdistributed Ġunder Ġthe ĠLicense Ġis Ġdistributed Ġon Ġan Ġ" AS ĠIS " ĠBASIS , Ċ Ġ* ĠWITHOUT ĠWARRANTIES ĠOR ĠCONDITIONS ĠOF ĠANY ĠKIND , Ġeither Ġexpress Ġor Ġimplied . Ċ Ġ* ĠSee Ġthe ĠLicense Ġfor Ġthe Ġspecific Ġlanguage Ġgoverning Ġpermissions Ġand Ċ Ġ* Ġlimitations Ġunder Ġthe ĠLicense . Ċ Ġ*/ Ċ package Ġorg . jetbrains . android . dom . xml Ċ Ċ import Ġcom . android . Sdk Constants Ċ import Ġcom . android . resources . Resource Folder Type Ċ import Ġcom . intellij . openapi . application . run Read Action Ċ import Ġcom . intellij . openapi . module . Module Ċ import Ġcom . intellij . psi . xml . Xml File Ċ import Ġorg . jetbrains . android . dom . Custom Logic Resource Dom File Description Ċ Ċ /** Ċ Ġ* ĠDescri bes Ġfiles Ġin Ġ[ Resource Folder Type . XML ] Ġthat Ġhas Ġpreference Ġclass Ġas Ġroot Ġtag . Ċ Ġ*/ Ċ class ĠPreference Class Dom File Description Ġ: ĠCustom Logic Resource Dom File Description < Preference Element >( ĊĠ ĠPreference Element :: class . java , ĠResource Folder Type . XML , Ġ" preference ") Ġ{ ĊĊĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠ Ġfun Ġis Preference Class File ( file : ĠXml File ): ĠBoolean Ġ{ ĊĠĠĠĠĠ Ġval Ġroot Tag Ġ= Ġfile . root Tag Ġ?: Ġreturn Ġfalse ĊĊĠĠĠĠĠ Ġ/** ĊĠĠĠĠĠĠ Ġ* ĠIf Ġthe Ġroot Ġtag Ġuses Ġa Ġcustom Ġnamespace , Ġleave Ġit Ġalone Ġand Ġdon 't Ġprovide Ġany Ġschema . ĠSee ĠIDEA - 1 0 5 2 9 4 . ĊĠĠĠĠĠĠ Ġ*/ ĊĠĠĠĠĠ Ġif Ġ( root Tag . attributes . any Ġ{ Ġit . name Ġ== ĠS dk Constants . XML NS Ġ}) Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġfalse ĊĠĠĠĠĠ Ġ} ĊĠĠĠĠĠ Ġ/** ĊĠĠĠĠĠĠ Ġ* ĠIf Ġwe Ġknow Ġparent Ġtag Ġ( tag Ġhardcoded Ġin ĠAS , Ġone Ġof Ġ[ Android Xml Resources Util . ROOT _ TAGS ]) Ġ-> Ġwe Ġuse Ġ[ Xml Resource Dom File Description ]. ĊĠĠĠĠĠĠ Ġ* ĠIf Ġwe Ġdon 't , Ġwe Ġassume Ġit 's Ġa Ġclass Ġname Ġthat Ġwe Ġneed Ġto Ġresolve . ĊĠĠĠĠĠĠ Ġ*/ ĊĠĠĠĠĠ Ġreturn Ġ! Android Xml Resources Util . ROOT _ TAGS . contains ( root Tag . name ) ĊĠĠĠ Ġ} ĊĠ Ġ} ĊĊĠ Ġoverride Ġfun Ġcheck File ( file : ĠXml File , Ġmodule : ĠModule ?): ĠBoolean Ġ{ ĊĠĠĠ Ġreturn Ġrun Read Action Ġ{ Ġis Preference Class File ( file ) Ġ} ĊĠ Ġ} Ċ }