@@ -23,20 +23,21 @@ import xyz.jpenilla.resourcefactory.util.nullAction
2323import xyz.jpenilla.resourcefactory.util.nullIfEmpty
2424import xyz.jpenilla.resourcefactory.util.validateAll
2525
26- fun Project.bukkitPluginYml (configure : Action <BukkitPluginYml > = nullAction()): BukkitPluginYml {
27- val yml = BukkitPluginYml (objects)
28- yml .setConventionsFromProjectMeta(this )
29- configure.execute(yml )
30- return yml
26+ fun Project.bukkitPluginYaml (configure : Action <BukkitPluginYaml > = nullAction()): BukkitPluginYaml {
27+ val yaml = BukkitPluginYaml (objects)
28+ yaml .setConventionsFromProjectMeta(this )
29+ configure.execute(yaml )
30+ return yaml
3131}
3232
33- class BukkitPluginYml (
33+ class BukkitPluginYaml (
3434 @Transient
3535 private val objects : ObjectFactory
3636) : ConfigurateSingleFileResourceFactory.ObjectMapper.ValueProvider, ProjectMetaConventions, ResourceFactory.Provider {
3737
3838 companion object {
3939 private const val PLUGIN_NAME_PATTERN : String = " ^[A-Za-z0-9_\\ .-]+$"
40+ private const val FILE_NAME : String = " plugin.yml"
4041 }
4142
4243 @get:Input
@@ -163,7 +164,7 @@ class BukkitPluginYml(
163164 }
164165 }.nodeStyle(NodeStyle .BLOCK )
165166 }
166- gen.path.set(" plugin.yml " )
167+ gen.path.set(FILE_NAME )
167168 gen.value.set(this )
168169 return gen
169170 }
@@ -173,25 +174,25 @@ class BukkitPluginYml(
173174 }
174175
175176 @ConfigSerializable
176- class Serializable (yml : BukkitPluginYml ) {
177- val apiVersion = yml .apiVersion.orNull
178- val name = yml ::name.getValidating()
179- val version = yml .version.get()
180- val main = yml ::main.getValidating()
181- val description = yml .description.orNull
182- val load = yml .load.orNull
183- val author = yml .author.orNull
184- val authors = yml .authors.nullIfEmpty()
185- val website = yml .website.orNull
186- val depend = yml .depend.nullIfEmpty()?.validateAll(PLUGIN_NAME_PATTERN , " Bukkit plugin name (of depend)" )
187- val softDepend = yml .softDepend.nullIfEmpty()?.validateAll(PLUGIN_NAME_PATTERN , " Bukkit plugin name (of softDepend)" )
188- val loadBefore = yml .loadBefore.nullIfEmpty()?.validateAll(PLUGIN_NAME_PATTERN , " Bukkit plugin name (of loadBefore)" )
189- val prefix = yml .prefix.orNull
190- val defaultPermission = yml .defaultPermission.orNull
191- val provides = yml .provides.nullIfEmpty()
192- val libraries = yml .libraries.nullIfEmpty()
193- val commands = yml .commands.nullIfEmpty()
194- val permissions = yml .permissions.nullIfEmpty()?.mapValues { Permission .Serializable (it.value) }
195- val foliaSupported = yml .foliaSupported.orNull
177+ class Serializable (yaml : BukkitPluginYaml ) {
178+ val apiVersion = yaml .apiVersion.orNull
179+ val name = yaml ::name.getValidating()
180+ val version = yaml .version.get()
181+ val main = yaml ::main.getValidating()
182+ val description = yaml .description.orNull
183+ val load = yaml .load.orNull
184+ val author = yaml .author.orNull
185+ val authors = yaml .authors.nullIfEmpty()
186+ val website = yaml .website.orNull
187+ val depend = yaml .depend.nullIfEmpty()?.validateAll(PLUGIN_NAME_PATTERN , " Bukkit plugin name (of depend)" )
188+ val softDepend = yaml .softDepend.nullIfEmpty()?.validateAll(PLUGIN_NAME_PATTERN , " Bukkit plugin name (of softDepend)" )
189+ val loadBefore = yaml .loadBefore.nullIfEmpty()?.validateAll(PLUGIN_NAME_PATTERN , " Bukkit plugin name (of loadBefore)" )
190+ val prefix = yaml .prefix.orNull
191+ val defaultPermission = yaml .defaultPermission.orNull
192+ val provides = yaml .provides.nullIfEmpty()
193+ val libraries = yaml .libraries.nullIfEmpty()
194+ val commands = yaml .commands.nullIfEmpty()
195+ val permissions = yaml .permissions.nullIfEmpty()?.mapValues { Permission .Serializable (it.value) }
196+ val foliaSupported = yaml .foliaSupported.orNull
196197 }
197198}
0 commit comments