Commit Graph

64 Commits

Author SHA1 Message Date
8874c4e872 [Bleeding] Added loadbefore property; Addresses BUKKIT-843
By: Wesley Wolfe <weswolf@aol.com>
2012-03-20 03:54:51 -05:00
5906da7948 [Bleeding] Cleaned up unsafe casts. Addresses BUKKIT-844
Removed internal collection leaks from PluginDescriptionFile
BREAKING: PluginDescriptionFile.getAuthors() now returns List instead of
ArrayList

Various places with unsafe generics, notably List<Object> getList() in
Configurations are now referenced as <?>. This is nonbreaking, but
sourcecode will need to be revised when compiled.

By: Wesley Wolfe <weswolf@aol.com>
2012-02-29 08:32:25 -06:00
345f24b35c Event system optimizations. Addresses BUKKIT-813
- Made the handlers field a simple array instead of an array of arrays.
- Got rid of the "baked" field.

By: TomyLobo <tomylobo@nurfuerspam.de>
2012-02-28 19:37:27 -06:00
b58168b112 [Bleeding] Exception cleanup. Addresses BUKKIT-774
By: Wesley Wolfe <weswolf@aol.com>
2012-02-18 17:15:59 -06:00
75fd934339 Deprecation cleanup.
By: Erik Broes <erikbroes@grum.nl>
2012-01-30 21:32:48 +01:00
4e48b4725f [Bleeding] Added ability to register and listen to SubEvents. Addresses
BUKKIT-585

By: Feildmaster <admin@feildmaster.com>
2012-01-25 09:49:12 -06:00
cb2fe27653 [Bleeding] Add the ability for plugins to ignore cancelled events when
using the new event system.

By: md_5 <md_5@bigpond.com>
2012-01-21 15:34:22 +11:00
3dadfe5e85 Properly unregister plugin channels when a plugin gets disabled.
By: Meaglin <meaglin.wasabi@gmail.com>
2012-01-28 03:45:49 +01:00
5541a29f2d Fixed plugin loader. Thanks Wolvereness!
By: EvilSeph <evilseph@gmail.com>
2012-01-25 04:11:37 -05:00
05b6ad92d1 Updated timing code for new event system
By: Tahg <tahgtahv@gmail.com>
2012-01-16 15:03:41 -05:00
0c50b9eeb1 Added a default to EventHandler.priority()
Fixed HandlerList.unregisterAll()
Fixed incorrect isAssignableFrom check in SimplePluginManager.getRegistrationClass()

By: zml2008 <zach@zachsthings.com>
2012-01-17 19:06:48 -08:00
e0c7fc6bf5 [Bleeding] Changed event system into a new, much faster design. Huge thanks to @zml2008 & @lahwran.
By: Nathan Adams <dinnerbone@dinnerbone.com>
2012-01-16 18:25:17 +00:00
4c80a49933 Generic cleaning
By: Erik Broes <erikbroes@grum.nl>
2012-01-15 14:37:30 +01:00
44c58c4952 Don't send events to disabled plugins.
By: Feildmaster <admin@feildmaster.com>
2012-01-15 02:14:28 -06:00
544b0a05ae Fixed nullcheck error message on null plugin (see previous commit)
By: Nathan Adams <dinnerbone@dinnerbone.com>
2012-01-14 14:32:56 +00:00
d87866b158 Nullcheck in registerEvent (thanks to an old PR by LRFLEW - I'm sorry for the wait!)
By: Nathan Adams <dinnerbone@dinnerbone.com>
2012-01-14 14:31:00 +00:00
387d09faa1 Added timings command.
By: Tahg <tahgtahv@gmail.com>
2012-01-09 01:09:10 -05:00
aaab1cba23 Generic cleanup of warnings, whitespace and style.
By: Erik Broes <erikbroes@grum.nl>
2011-12-25 16:02:30 +01:00
98583f6462 Revert "Added the ability to register commands dynamically."
This reverts commit 737d6347b1d74e13191df7c521d8db30fa174c9b.
Because this is *NOT* how it should be.

By: Erik Broes <erikbroes@grum.nl>
2011-10-13 18:27:34 +02:00
fa0a9be46c Added the ability to register commands dynamically.
By: sk89q <the.sk89q@gmail.com>
2011-10-13 01:05:20 -07:00
2ef3dfed7b Moved itr.remove() in loadPlugins(). Thanks lahwran!
This was moved so that the loop does not end until it has gone through a
whole pass without finding any loadable plugins.

By: EvilSeph <evilseph@gmail.com>
2011-10-01 13:56:17 -04:00
a8e72bdb91 Many javadoc fixes thanks to Celtic Minstrel
By: Dinnerbone <dinnerbone@dinnerbone.com>
2011-09-25 02:56:40 +01:00
6d19165044 Switched to native weak hashmap instead of guavas for SimplePluginManager
By: Dinnerbone <dinnerbone@dinnerbone.com>
2011-09-17 22:37:45 +01:00
498e63dbfa Added the ability to access offline players & more reverse lookup fixes in Permissible.
By: Dinnerbone <dinnerbone@dinnerbone.com>
2011-09-03 00:41:22 +01:00
8be947f1d8 Added method to retrieve all registered permissions
By: Dinnerbone <dinnerbone@dinnerbone.com>
2011-08-29 14:58:42 +01:00
bfd0ab1851 Made Permissions mutable, added methods to view which Permissibles are subscribed to which Permission
By: Dinnerbone <dinnerbone@dinnerbone.com>
2011-07-20 18:05:04 +01:00
67a52cca79 Added new permission system
By: Dinnerbone <dinnerbone@dinnerbone.com>
2011-07-17 17:17:47 +01:00
0630db640b Register commands on any enable
By: Dinnerbone <dinnerbone@dinnerbone.com>
2011-06-26 02:46:16 +01:00
9469bb110d Added check and catch for errors during cancelTasks and unregister of services during plugin disable
By: stevenh <steven.hartland@multiplay.co.uk>
2011-05-22 22:18:05 +01:00
855f4133b6 Whitespace + general cleanup
By: Erik Broes <erikbroes@grum.nl>
2011-05-14 23:22:54 +02:00
8217ff1836 Fixed errors during plugin enable/disable leaving Bukkit in an undefined state. Previous fix would at least prevent plugins from breaking the server, but it aborted the enable/disable process prematurely.
By: sk89q <the.sk89q@gmail.com>
2011-05-13 18:17:28 -07:00
94aac786c6 Guarded against plugins throwing exceptions on enable and disable to prevent potential corruption issues on server start and stop
By: stevenh <steven.hartland@multiplay.co.uk>
2011-05-13 14:50:03 +01:00
d6f44121b1 Added support for an update on load feature for plugins. Thanks Raphfrk!
Any files placed in the new (optional) update folder are automatically copied into the plugins directory the next time a reload happens. This allows safe updating of the plugin .jar files.

By: EvilSeph <evilseph@unaligned.org>
2011-05-05 16:52:50 -04:00
960732b9f0 Added services manager framework. Services are interfaces that specifies capabilities to be implemented by providers. Example services include economy, <insert example 2>, etc.
By: sk89q <the.sk89q@gmail.com>
2011-05-02 11:31:00 -07:00
5ef26c647b Added support for soft dependencies.
Soft dependencies allow plugins to request to be loaded after another plugin, but they will not throw an UnknownDependency exception if the other plugin is not present.

By: Raphfrk <raphfrk@gmail.com>
2011-04-27 20:35:08 +01:00
a53996b243 Added pre-login event for catching logins right after name verification has completed. This happens in a different thread from the server (and thus can also block).
By: sk89q <the.sk89q@gmail.com>
2011-04-16 03:08:05 -07:00
0d5f7ece8a Plugin's datafolders are now named after the plugin's name (from config.yml)
The code will automagically rename the old data folder to the new format (if it can)
or else throw a fatal error you better solve :D

By: Erik Broes <erikbroes@grum.nl>
2011-04-03 16:12:44 +02:00
9d24880b0e Fix IIOB error when dealing with an incomplete YAML && Nagging
By: Erik Broes <erikbroes@grum.nl>
2011-04-01 10:24:48 +02:00
19ec204cc9 We weren't supposed to break things *that* hard. Plugins still need to update but here's a TEMPORARY fix.
By: Dinnerbone <dinnerbone@dinnerbone.com>
2011-03-31 22:51:26 +01:00
69973b8617 Just NAG once, to be nice
By: Erik Broes <erikbroes@grum.nl>
2011-03-30 00:38:46 +02:00
2e99a0f17d Add 'NagException' to disclose plugin fail
By: Erik Broes <erikbroes@grum.nl>
2011-03-30 00:25:11 +02:00
8cef9edf82 RegisterInterface reload bug fix
By: Dinnerbone <dinnerbone@dinnerbone.com>
2011-03-29 21:29:46 +01:00
020da84ad2 Some more backwards incompatible changes (minor though), also a ton of small cleanup.
onPluginEnable(PluginEvent event)   -> onPluginEnable(PluginEnableEvent event)
onPluginDisable(PluginEvent event)  -> onPluginDisable(PluginDisableEvent event)
onVehicleUpdate(VehicleEvent event) -> onVehicleUpdate(VehicleUpdateEvent event)
onWorldSave(WorldEvent event)       -> onWorldSave(WorldSaveEvent event)
onWorldLoad(WorldEvent event)       -> onWorldLoad(WorldLoadEvent event)

By: Erik Broes <erikbroes@grum.nl>
2011-03-26 22:21:20 +01:00
8117c7771d Plugins can no longer register events while disabled
By: Dinnerbone <dinnerbone@dinnerbone.com>
2011-03-14 15:11:43 +00:00
6dc6946312 Adds basic plugin dependencies, courtesy of Raphfrk
By: Dinnerbone <dinnerbone@dinnerbone.com>
2011-03-07 13:56:34 +00:00
bb755bb9a2 Added a few null pointer checks and performed minor touchups (tried improving a few equals, clone and hashCode methods).
By: VictorD <victor.danell@gmail.com>
2011-03-05 12:27:51 +01:00
1257e0d24f Updating plugin nags to use logger
By: Dinnerbone <dinnerbone@dinnerbone.com>
2011-02-20 02:27:16 +00:00
f398397845 Added Server.getLogger, changed a few anonymous loggers to use it
By: Dinnerbone <dinnerbone@dinnerbone.com>
2011-02-20 02:24:47 +00:00
bff4790a18 And this is so that we don't have to support misbehaving plugins.
By: Dinnerbone <dinnerbone@dinnerbone.com>
2011-02-20 00:47:21 +00:00
314bf387b5 Fixed event priorities
By: Dinnerbone <dinnerbone@dinnerbone.com>
2011-02-19 20:43:35 +00:00