13
0
geforkt von Mirrors/Paper

255 Commits

Autor SHA1 Nachricht Datum
Bukkit/Spigot
1366d7b502 Pulling all pending Bukkit-JavaDoc changes
By: Wesley Wolfe <weswolf@aol.com>
2013-05-16 04:41:09 -05:00
Bukkit/Spigot
ebc98f04ed Move world generator warning to CraftBukkit. Fixes BUKKIT-2565
By: Score_Under <seejay.11@gmail.com>
2012-03-20 16:51:01 +00:00
Bukkit/Spigot
761a84cb1b Pulling all pending Bukkit-JavaDoc changes
By: Edmond Poon <sagaciouszzzz@gmail.com>
2013-04-02 00:11:22 -04:00
Bukkit/Spigot
50f297d941 Validate method parameters when registering events. Fixes BUKKIT-3779
By: feildmaster <admin@feildmaster.com>
2013-03-16 17:17:09 -05:00
Bukkit/Spigot
63dc4b52b3 Convert name to lower case for removePermission; Fixes BUKKIT-3726
Permissions are stored as lower case names and referenced as such in all
appropriate methods but removePermission. This changes removePermission
to also convert names to lower case to be consistent with the rest of
the API.

By: Max A <maximilian.ammann@googlemail.com>
2013-01-13 12:25:50 +01:00
Bukkit/Spigot
c23f9be8d3 Fix ClassCastException for malformed plugin.yml. Fixes BUKKIT-3563
If the plugin.yml gets loaded but wasn't in the form of a map, the
server would crash. This safely checks to see if it can be cast,
throwing invalid description if it cannot.

By: Wesley Wolfe <weswolf@aol.com>
2013-02-03 04:08:10 -06:00
Bukkit/Spigot
ac2908b781 Use correct warning in JavaPluginLoader. Fixes BUKKIT-3315
The warning message printed with the stack traces on the deprecated
methods mistakingly use the wrong method signature in the description.

By: Wesley Wolfe <weswolf@aol.com>
2012-12-27 10:36:10 -06:00
Bukkit/Spigot
fb2cf30fbe Deprecate methods in JavaPluginLoader and PluginClassLoader
These methods are unnecessarily exposed. They are specific to a type of
implementation for the class loaders, and should have no external use.
Because these methods are exposed, it limits the versatility to change
how the internal class loading system works, including an inherent class
loader leak for some situations.

They are now replaced with internal, package-private methods. The public
facing methods will print a stack trace the first time one is activated.

Extending the classes also produces a stack trace, to indicate that
extension is not actively supported.

By: Wesley Wolfe <weswolf@aol.com>
2012-12-18 00:15:40 -06:00
Bukkit/Spigot
49c3dee8f8 Make some JavaPlugin methods final. Fixes BUKKIT-2916
These methods were never intended to be overwritten, and bukkit relies
on their internal functionality. Additionally, the methods were inlined
in JavaPlugin, but the finality maintains intention.

By: Wesley Wolfe <weswolf@aol.com>
2012-11-13 15:38:46 -06:00
Bukkit/Spigot
14c7734fb1 Add tab-completion API. Fixes BUKKIT-2181. Adds BUKKIT-2602
CommandMap contains a method that will auto-complete commands
appropriately. Before the first space, it searches for commands of which
the sender has permission. After the first space, it delegates to the
individual command.

Vanilla commands contain implementations to mimic vanilla
implementation. Exception would be give, that allows for name matching;
a feature we already allowed as part of the command is now supported for
auto-complete as well.

Plugin commands can get a tab completer set to delegate the completion
for. If no tab completer is set, it can check the executor to see if it
implements the tab completion interface. It will also attempt to chain
calls if null gets returned from these interfaces. Plugins also
implement the new TabCompleter interface, to add ease-of-use for plugin
developers, similar to the onCommand() method.

The default command implementation simply searches for player names.

To help facilitate command completion, a utility class was added with
two functions. One checks two strings, to see if the specified string
starts with (ignoring case) the second. The other method uses the first
to selectively copy elements from one collection to another.

By: Score_Under <seejay.11@gmail.com>
2012-10-09 14:54:12 -05:00
Bukkit/Spigot
e747728b35 Clarify some of the verbose in SimplePluginManager.
When an exception occurs, the version of the plugin is not included.
Having this information would be beneficial to plugin authors performing
debug.

The list of authors for NagAuthorException verbose (although unused)
would be more appropriate to simply include all authors, as opposed to
the first appearing.

By: Wesley Wolfe <weswolf@aol.com>
2012-09-30 03:35:06 -05:00
Bukkit/Spigot
29a5295348 Allow inherited methods to be event handlers. Addresses BUKKIT-2299
This change lets JavaPluginLoader use a temporary HashSet to store
methods that could possibly have the EventHandler annotation. Duplicates
are prevented by the nature of a Set.

Registering parent listeners is a breaking change for any listener
extending another listener and expecting parent listeners to not be
called. Changing this is justified by the ease-of-use and proper object
inheritance design. If this is undesired behavior, the method may be
overridden without reapplying the method with the EventHandler notation.

By: Wesley Wolfe <weswolf@aol.com>
2012-08-26 21:14:28 -05:00
Bukkit/Spigot
f7b46ffa10 Provide better verbose for registering listeners. Addresses BUKKIT-2391
By: Wesley Wolfe <weswolf@aol.com>
2012-08-25 17:48:53 -05:00
Bukkit/Spigot
9b80392085 Fully restrict the org.bukkit and net.minecraft namespace
By: Wesley Wolfe <weswolf@aol.com>
2012-08-19 05:53:30 -05:00
Bukkit/Spigot
cef9873c0c Add Warning API and settings for Deprecated events
By: Wesley Wolfe <weswolf@aol.com>
2012-08-07 00:16:57 -05:00
Bukkit/Spigot
6aae0dcd35 Warn server owners of plugins using deprecated events. Fixes BUKKIT-2027
By: Wesley Wolfe <weswolf@aol.com>
2012-08-02 23:21:02 -05:00
Bukkit/Spigot
d4f4e9f5d1 Add check for existing config file. Addresses BUKKIT-1851
By: Wesley Wolfe <weswolf@aol.com>
2012-06-23 21:31:57 -05:00
Bukkit/Spigot
8b6f1612a1 Revert "Shift plugin initialization; Addresses BUKKIT-1788"
This reverts commit 27cb5e7c9c6b2cfc5419262df75d89bc6bfe7879. Issues
were discovered with shared class loaders.

By: Wesley Wolfe <weswolf@aol.com>
2012-06-16 00:48:47 -05:00
Bukkit/Spigot
5d9e74a637 Shift plugin initialization; Addresses BUKKIT-1788
By: Wesley Wolfe <weswolf@aol.com>
2012-06-11 01:45:41 -05:00
Bukkit/Spigot
ad7045596d Support asynchronous events; Addresses BUKKIT-1212
By: Wesley Wolfe <weswolf@aol.com>
2012-06-13 21:28:13 -05:00
Bukkit/Spigot
03af91781c Javadoc updates
Fixes BUKKIT-1653, Fixes BUKKIT-1383 and Fixes BUKKIT-1644

By: feildmaster <admin@feildmaster.com>
2012-06-03 05:40:54 -05:00
Bukkit/Spigot
3b35e0472d Change logger references to explicitly use plugin logger
By: Wesley Wolfe <weswolf@aol.com>
2012-05-26 14:33:27 -05:00
Bukkit/Spigot
a8a9d75bcd Reverse disable order; Addresses BUKKIT-1389
By: Wesley Wolfe <weswolf@aol.com>
2012-05-25 15:56:33 -05:00
Bukkit/Spigot
242582acc7 Make class loader preference predictable; Fixes BUKKIT-1591
By: Wesley Wolfe <weswolf@aol.com>
2012-05-25 15:47:39 -05:00
Bukkit/Spigot
1290db91bf [Bleeding] Fixed soft-dependencies broken by previous commit.
By: Wesley Wolfe <weswolf@aol.com>
2012-03-22 01:56:44 -05:00
Bukkit/Spigot
8874c4e872 [Bleeding] Added loadbefore property; Addresses BUKKIT-843
By: Wesley Wolfe <weswolf@aol.com>
2012-03-20 03:54:51 -05:00
Bukkit/Spigot
1cbbdebfe3 [Bleeding] Lazily calculate permissions. Addresses BUKKIT-1122
By: Wesley Wolfe <weswolf@aol.com>
2012-03-10 15:05:59 -06:00
Bukkit/Spigot
71a60b4c11 [Bleeding] More lenient command creation from plugin.yml. Fixes BUKKIT-1093
By: Wesley Wolfe <weswolf@aol.com>
2012-03-10 13:11:21 -06:00
Bukkit/Spigot
18c825222a [Bleeding] Fixed naughty plugins crashing server.
By: Wesley Wolfe <weswolf@aol.com>
2012-03-01 09:19:23 -06:00
Bukkit/Spigot
795a61bbeb Fix javadoc errors/warnings
By: Celtic Minstrel <celtic.minstrel.ca@some.place>
2012-02-26 10:35:17 -05:00
Bukkit/Spigot
5ebb8d2b3e Revert Plugin to Interface, added PluginBase
Fixed Tests, moved TestPlugin out of messaging

By: Feildmaster <admin@feildmaster.com>
2012-02-29 18:46:09 -06:00
Bukkit/Spigot
43002d0cbb Add optional prefix value to plugin.yml. Addresses BUKKIT-838
By: Aidan Matzko <amatzko48@gmail.com>
2012-02-26 18:36:03 -05:00
Bukkit/Spigot
dd1bee786b [Bleeding] Added a Metadata framework for Entities, Blocks, and Worlds
This metadata implementation has the following features:

- All metadata is lazy. Metadata values are not actually computed until another plugin requests them. Memory and CPU are conserved by not computing and storing unnecessary metadata values.

- All metadata is cached. Once a metadata value is computed its value is cached in the metadata store to prevent further unnecessary computation. An invalidation mechanism is provided to flush the cache and force recompilation of metadata values.

- All metadata is stored in basic data types. Convenience methods in the MetadataValue class allow for the conversion of metadata data types when possible. Restricting metadata to basic data types prevents the accidental linking of large object graphs into metadata. Metadata is persistent across the lifetime of the application and adding large object graphs would damage garbage collector performance.

- Metadata access is thread safe. Care has been taken to protect the internal data structures and access them in a thread safe manner.

- Metadata is exposed for all objects that descend from Entity, Block, and World. All Entity and World metadata is stored at the Server  level and all Block metadata is stored at the World level.

- Metadata is NOT keyed on references to original objects - instead metadata is keyed off of unique fields within those objects. Doing this allows metadata to exist for blocks that are in chunks not currently in memory. Additionally, Player objects are keyed off of player name so that Player metadata remains consistent between logins.

- Metadata convenience methods have been added to all Entities, Players, Blocks, BlockStates, and World allowing direct access to an individual instance's metadata.

- Players and OfflinePlayers share a single metadata store, allowing player metadata to be manipulated regardless of the player's current online status.

By: rmichela <deltahat@gmail.com>
2011-12-08 00:33:33 -05:00
Bukkit/Spigot
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
Bukkit/Spigot
9ebb2f13de [Bleeding] Fixes deadlock issue and generic usage. Fixes BUKKIT-844 and fixes BUKKIT-854
By: Wesley Wolfe <weswolf@aol.com>
2012-02-29 08:29:22 -06:00
Bukkit/Spigot
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
Bukkit/Spigot
3b9e2f4a67 Adjust plugin enable/disable logging
By: EdGruberman <ed@rjump.com>
2012-02-15 12:11:10 -07:00
Bukkit/Spigot
860011dcc1 Added service register and unregister events. Addresses BUKKIT-816
By: zml2008 <zach@zachsthings.com>
2011-11-12 20:22:30 -08:00
Bukkit/Spigot
b58168b112 [Bleeding] Exception cleanup. Addresses BUKKIT-774
By: Wesley Wolfe <weswolf@aol.com>
2012-02-18 17:15:59 -06:00
Bukkit/Spigot
91c8bbacc7 [Bleeding] Skip InvocationTargetException. Addresses BUKKIT-774
By: Wesley Wolfe <weswolf@aol.com>
2012-02-16 18:14:39 -06:00
Bukkit/Spigot
75fd934339 Deprecation cleanup.
By: Erik Broes <erikbroes@grum.nl>
2012-01-30 21:32:48 +01:00
Bukkit/Spigot
63464c3bb0 [Bleeding] Update serialVersionUID.
By: Wesley Wolfe <weswolf@aol.com>
2012-02-13 01:22:39 -06:00
Bukkit/Spigot
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
Bukkit/Spigot
6492eb9683 [Bleeding] Cleanup of exceptions org.bukkit.plugin.Invalid*
Removed throwable and message, because the superclass already stores them
Added message of inner exception to the outer exception to make the first line of the stacktrace more verbose

By: Zeerix <zeerix@draig.de>
2012-02-11 02:16:16 +01:00
Bukkit/Spigot
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
Bukkit/Spigot
3dadfe5e85 Properly unregister plugin channels when a plugin gets disabled.
By: Meaglin <meaglin.wasabi@gmail.com>
2012-01-28 03:45:49 +01:00
Bukkit/Spigot
e423860f9f onEnable and onDisable are no longer required implementations for JavaPlugins
By: Nathan Adams <dinnerbone@dinnerbone.com>
2012-02-01 01:53:38 +00:00
Bukkit/Spigot
5541a29f2d Fixed plugin loader. Thanks Wolvereness!
By: EvilSeph <evilseph@gmail.com>
2012-01-25 04:11:37 -05:00
Bukkit/Spigot
05b6ad92d1 Updated timing code for new event system
By: Tahg <tahgtahv@gmail.com>
2012-01-16 15:03:41 -05:00
Bukkit/Spigot
1a86a7e3f7 Added new PlayerExpChangeEvent and PlayerLevelChangeEvent events. Thanks to feildmaster for the PR.
By: Nathan Adams <dinnerbone@dinnerbone.com>
2012-01-19 16:07:03 +00:00