diff --git a/docs/allclasses-index.html b/docs/allclasses-index.html new file mode 100644 index 0000000..8cb5e62 --- /dev/null +++ b/docs/allclasses-index.html @@ -0,0 +1,92 @@ + + + + +All Classes and Interfaces + + + + + + + + + + + + + + + +
+ +
+
+
+

All Classes and Interfaces

+
+
+
+
+
+
Class
+
Description
+ +
 
+ +
 
+ +
 
+ +
 
+ +
 
+ +
 
+ +
 
+
SchedulingSystem<T extends org.bukkit.plugin.java.JavaPlugin>
+
 
+ +
 
+ +
 
+ +
 
+
+
+
+
+
+
+ + diff --git a/docs/allpackages-index.html b/docs/allpackages-index.html new file mode 100644 index 0000000..4a21457 --- /dev/null +++ b/docs/allpackages-index.html @@ -0,0 +1,68 @@ + + + + +All Packages + + + + + + + + + + + + + + + +
+ +
+
+
+

All Packages

+
+
Package Summary
+ +
+
+
+ + diff --git a/docs/element-list b/docs/element-list new file mode 100644 index 0000000..b92cf65 --- /dev/null +++ b/docs/element-list @@ -0,0 +1,3 @@ +io.github.simplex.api +io.github.simplex.impl +io.github.simplex.simplexss diff --git a/docs/help-doc.html b/docs/help-doc.html new file mode 100644 index 0000000..13cb13d --- /dev/null +++ b/docs/help-doc.html @@ -0,0 +1,181 @@ + + + + +API Help + + + + + + + + + + + + + + + +
+ +
+
+

JavaDoc Help

+ +
+
+

Navigation

+Starting from the Overview page, you can browse the documentation using the links in each page, and in the navigation bar at the top of each page. The Index and Search box allow you to navigate to specific declarations and summary pages, including: All Packages, All Classes and Interfaces + +
+
+
+

Kinds of Pages

+The following sections describe the different kinds of pages in this collection. +
+

Overview

+

The Overview page is the front page of this API document and provides a list of all packages with a summary for each. This page can also contain an overall description of the set of packages.

+
+
+

Package

+

Each package has a page that contains a list of its classes and interfaces, with a summary for each. These pages may contain the following categories:

+
    +
  • Interfaces
  • +
  • Classes
  • +
  • Enum Classes
  • +
  • Exceptions
  • +
  • Errors
  • +
  • Annotation Interfaces
  • +
+
+
+

Class or Interface

+

Each class, interface, nested class and nested interface has its own separate page. Each of these pages has three sections consisting of a declaration and description, member summary tables, and detailed member descriptions. Entries in each of these sections are omitted if they are empty or not applicable.

+
    +
  • Class Inheritance Diagram
  • +
  • Direct Subclasses
  • +
  • All Known Subinterfaces
  • +
  • All Known Implementing Classes
  • +
  • Class or Interface Declaration
  • +
  • Class or Interface Description
  • +
+
+
    +
  • Nested Class Summary
  • +
  • Enum Constant Summary
  • +
  • Field Summary
  • +
  • Property Summary
  • +
  • Constructor Summary
  • +
  • Method Summary
  • +
  • Required Element Summary
  • +
  • Optional Element Summary
  • +
+
+
    +
  • Enum Constant Details
  • +
  • Field Details
  • +
  • Property Details
  • +
  • Constructor Details
  • +
  • Method Details
  • +
  • Element Details
  • +
+

Note: Annotation interfaces have required and optional elements, but not methods. Only enum classes have enum constants. The components of a record class are displayed as part of the declaration of the record class. Properties are a feature of JavaFX.

+

The summary entries are alphabetical, while the detailed descriptions are in the order they appear in the source code. This preserves the logical groupings established by the programmer.

+
+
+

Other Files

+

Packages and modules may contain pages with additional information related to the declarations nearby.

+
+
+

Tree (Class Hierarchy)

+

There is a Class Hierarchy page for all packages, plus a hierarchy for each package. Each hierarchy page contains a list of classes and a list of interfaces. Classes are organized by inheritance structure starting with java.lang.Object. Interfaces do not inherit from java.lang.Object.

+
    +
  • When viewing the Overview page, clicking on TREE displays the hierarchy for all packages.
  • +
  • When viewing a particular package, class or interface page, clicking on TREE displays the hierarchy for only that package.
  • +
+
+
+

Serialized Form

+

Each serializable or externalizable class has a description of its serialization fields and methods. This information is of interest to those who implement rather than use the API. While there is no link in the navigation bar, you can get to this information by going to any serialized class and clicking "Serialized Form" in the "See Also" section of the class description.

+
+
+

All Packages

+

The All Packages page contains an alphabetic index of all packages contained in the documentation.

+
+
+

All Classes and Interfaces

+

The All Classes and Interfaces page contains an alphabetic index of all classes and interfaces contained in the documentation, including annotation interfaces, enum classes, and record classes.

+
+
+

Index

+

The Index contains an alphabetic index of all classes, interfaces, constructors, methods, and fields in the documentation, as well as summary pages such as All Packages, All Classes and Interfaces.

+
+
+
+This help file applies to API documentation generated by the standard doclet.
+
+
+ + diff --git a/docs/index-files/index-1.html b/docs/index-files/index-1.html new file mode 100644 index 0000000..9372a65 --- /dev/null +++ b/docs/index-files/index-1.html @@ -0,0 +1,67 @@ + + + + +A-Index + + + + + + + + + + + + + + + +
+ +
+
+
+

Index

+
+A C D E F G I L M N O P Q R S T 
All Classes and Interfaces|All Packages|Serialized Form +

A

+
+
addService(IService) - Method in class io.github.simplex.simplexss.ServicePool
+
 
+
addToExistingPool(ServicePool, IService...) - Method in class io.github.simplex.simplexss.ServiceManager
+
 
+
associatedServices - Variable in class io.github.simplex.simplexss.ServicePool
+
 
+
+A C D E F G I L M N O P Q R S T 
All Classes and Interfaces|All Packages|Serialized Form
+
+
+ + diff --git a/docs/index-files/index-10.html b/docs/index-files/index-10.html new file mode 100644 index 0000000..2897510 --- /dev/null +++ b/docs/index-files/index-10.html @@ -0,0 +1,63 @@ + + + + +N-Index + + + + + + + + + + + + + + + +
+ +
+
+
+

Index

+
+A C D E F G I L M N O P Q R S T 
All Classes and Interfaces|All Packages|Serialized Form +

N

+
+
name - Variable in class io.github.simplex.simplexss.ServicePool
+
 
+
+A C D E F G I L M N O P Q R S T 
All Classes and Interfaces|All Packages|Serialized Form
+
+
+ + diff --git a/docs/index-files/index-11.html b/docs/index-files/index-11.html new file mode 100644 index 0000000..eb494e3 --- /dev/null +++ b/docs/index-files/index-11.html @@ -0,0 +1,65 @@ + + + + +O-Index + + + + + + + + + + + + + + + +
+ +
+
+
+

Index

+
+A C D E F G I L M N O P Q R S T 
All Classes and Interfaces|All Packages|Serialized Form +

O

+
+
onDisable() - Method in class io.github.simplex.impl.Main
+
 
+
onEnable() - Method in class io.github.simplex.impl.Main
+
 
+
+A C D E F G I L M N O P Q R S T 
All Classes and Interfaces|All Packages|Serialized Form
+
+
+ + diff --git a/docs/index-files/index-12.html b/docs/index-files/index-12.html new file mode 100644 index 0000000..2e7658c --- /dev/null +++ b/docs/index-files/index-12.html @@ -0,0 +1,67 @@ + + + + +P-Index + + + + + + + + + + + + + + + +
+ +
+
+
+

Index

+
+A C D E F G I L M N O P Q R S T 
All Classes and Interfaces|All Packages|Serialized Form +

P

+
+
period - Variable in class io.github.simplex.api.ExecutableService
+
 
+
plugin - Variable in class io.github.simplex.impl.ServiceImpl
+
 
+
plugin - Variable in class io.github.simplex.simplexss.SchedulingSystem
+
 
+
+A C D E F G I L M N O P Q R S T 
All Classes and Interfaces|All Packages|Serialized Form
+
+
+ + diff --git a/docs/index-files/index-13.html b/docs/index-files/index-13.html new file mode 100644 index 0000000..f5006ba --- /dev/null +++ b/docs/index-files/index-13.html @@ -0,0 +1,65 @@ + + + + +Q-Index + + + + + + + + + + + + + + + +
+ +
+
+
+

Index

+
+A C D E F G I L M N O P Q R S T 
All Classes and Interfaces|All Packages|Serialized Form +

Q

+
+
queue(IService) - Method in class io.github.simplex.simplexss.SchedulingSystem
+
 
+
queue(IService) - Method in interface io.github.simplex.api.ISchedule
+
 
+
+A C D E F G I L M N O P Q R S T 
All Classes and Interfaces|All Packages|Serialized Form
+
+
+ + diff --git a/docs/index-files/index-14.html b/docs/index-files/index-14.html new file mode 100644 index 0000000..bbafa59 --- /dev/null +++ b/docs/index-files/index-14.html @@ -0,0 +1,75 @@ + + + + +R-Index + + + + + + + + + + + + + + + +
+ +
+
+
+

Index

+
+A C D E F G I L M N O P Q R S T 
All Classes and Interfaces|All Packages|Serialized Form +

R

+
+
recycle() - Method in class io.github.simplex.simplexss.ServicePool
+
 
+
removeService(IService) - Method in class io.github.simplex.simplexss.ServicePool
+
 
+
repeating - Variable in class io.github.simplex.api.ExecutableService
+
 
+
repeatingPools - Variable in class io.github.simplex.simplexss.SchedulingSystem
+
 
+
run() - Method in interface io.github.simplex.api.IService
+
 
+
runOnce(IService) - Method in interface io.github.simplex.api.ISchedule
+
 
+
runOnce(IService) - Method in class io.github.simplex.simplexss.SchedulingSystem
+
 
+
+A C D E F G I L M N O P Q R S T 
All Classes and Interfaces|All Packages|Serialized Form
+
+
+ + diff --git a/docs/index-files/index-15.html b/docs/index-files/index-15.html new file mode 100644 index 0000000..87ddec9 --- /dev/null +++ b/docs/index-files/index-15.html @@ -0,0 +1,117 @@ + + + + +S-Index + + + + + + + + + + + + + + + +
+ +
+
+
+

Index

+
+A C D E F G I L M N O P Q R S T 
All Classes and Interfaces|All Packages|Serialized Form +

S

+
+
scheduler - Variable in class io.github.simplex.impl.Main
+
 
+
scheduler - Variable in class io.github.simplex.simplexss.ServicePool
+
 
+
SchedulingSystem<T extends org.bukkit.plugin.java.JavaPlugin> - Class in io.github.simplex.simplexss
+
 
+
SchedulingSystem(ServiceManager, T) - Constructor for class io.github.simplex.simplexss.SchedulingSystem
+
 
+
service_name - Variable in class io.github.simplex.api.ExecutableService
+
 
+
ServiceImpl - Class in io.github.simplex.impl
+
 
+
ServiceImpl(Main) - Constructor for class io.github.simplex.impl.ServiceImpl
+
 
+
serviceManager - Variable in class io.github.simplex.simplexss.SchedulingSystem
+
 
+
ServiceManager - Class in io.github.simplex.simplexss
+
 
+
ServiceManager() - Constructor for class io.github.simplex.simplexss.ServiceManager
+
 
+
ServicePool - Class in io.github.simplex.simplexss
+
 
+
ServicePool(NamespacedKey, boolean) - Constructor for class io.github.simplex.simplexss.ServicePool
+
 
+
servicePools - Variable in class io.github.simplex.simplexss.ServiceManager
+
 
+
setCancelled(boolean) - Method in class io.github.simplex.api.ExecutableService
+
+
Cancels the execution of this service.
+
+
setContext(S) - Method in interface io.github.simplex.api.Context
+
 
+
start() - Method in interface io.github.simplex.api.IService
+
+
The actual start method for the service.
+
+
start() - Method in class io.github.simplex.impl.ServiceImpl
+
 
+
startService(NamespacedKey) - Method in class io.github.simplex.simplexss.ServicePool
+
 
+
startServices() - Method in class io.github.simplex.simplexss.ServicePool
+
 
+
stop() - Method in interface io.github.simplex.api.IService
+
+
The actual end method for the service.
+
+
stop() - Method in class io.github.simplex.impl.ServiceImpl
+
 
+
stopService(NamespacedKey) - Method in class io.github.simplex.simplexss.ServicePool
+
 
+
stopServices(Flux<Disposable>) - Method in class io.github.simplex.simplexss.ServicePool
+
 
+
supplyException() - Static method in exception io.github.simplex.api.InvalidServicePoolException
+
 
+
supplyException(IService) - Static method in exception io.github.simplex.api.InvalidServiceException
+
 
+
+A C D E F G I L M N O P Q R S T 
All Classes and Interfaces|All Packages|Serialized Form
+
+
+ + diff --git a/docs/index-files/index-16.html b/docs/index-files/index-16.html new file mode 100644 index 0000000..0d78cce --- /dev/null +++ b/docs/index-files/index-16.html @@ -0,0 +1,63 @@ + + + + +T-Index + + + + + + + + + + + + + + + +
+ +
+
+
+

Index

+
+A C D E F G I L M N O P Q R S T 
All Classes and Interfaces|All Packages|Serialized Form +

T

+
+
takeFromExistingPool(ServicePool, IService...) - Method in class io.github.simplex.simplexss.ServiceManager
+
 
+
+A C D E F G I L M N O P Q R S T 
All Classes and Interfaces|All Packages|Serialized Form
+
+
+ + diff --git a/docs/index-files/index-2.html b/docs/index-files/index-2.html new file mode 100644 index 0000000..c66c10d --- /dev/null +++ b/docs/index-files/index-2.html @@ -0,0 +1,73 @@ + + + + +C-Index + + + + + + + + + + + + + + + +
+ +
+
+
+

Index

+
+A C D E F G I L M N O P Q R S T 
All Classes and Interfaces|All Packages|Serialized Form +

C

+
+
cancel() - Method in class io.github.simplex.api.ExecutableService
+
+
Actual stop call, to ensure that the service actually #isCancelled().
+
+
cancelled - Variable in class io.github.simplex.api.ExecutableService
+
 
+
Context<S> - Interface in io.github.simplex.api
+
 
+
contextCollection() - Method in interface io.github.simplex.api.Context
+
 
+
createServicePool(NamespacedKey, IService...) - Method in class io.github.simplex.simplexss.ServiceManager
+
 
+
+A C D E F G I L M N O P Q R S T 
All Classes and Interfaces|All Packages|Serialized Form
+
+
+ + diff --git a/docs/index-files/index-3.html b/docs/index-files/index-3.html new file mode 100644 index 0000000..2779033 --- /dev/null +++ b/docs/index-files/index-3.html @@ -0,0 +1,67 @@ + + + + +D-Index + + + + + + + + + + + + + + + +
+ +
+
+
+

Index

+
+A C D E F G I L M N O P Q R S T 
All Classes and Interfaces|All Packages|Serialized Form +

D

+
+
DEFAULT - Static variable in class io.github.simplex.simplexss.ServicePool
+
 
+
delay - Variable in class io.github.simplex.api.ExecutableService
+
 
+
disposables - Variable in class io.github.simplex.impl.Main
+
 
+
+A C D E F G I L M N O P Q R S T 
All Classes and Interfaces|All Packages|Serialized Form
+
+
+ + diff --git a/docs/index-files/index-4.html b/docs/index-files/index-4.html new file mode 100644 index 0000000..1adc22e --- /dev/null +++ b/docs/index-files/index-4.html @@ -0,0 +1,69 @@ + + + + +E-Index + + + + + + + + + + + + + + + +
+ +
+
+
+

Index

+
+A C D E F G I L M N O P Q R S T 
All Classes and Interfaces|All Packages|Serialized Form +

E

+
+
emptyServicePool(NamespacedKey, boolean) - Method in class io.github.simplex.simplexss.ServiceManager
+
 
+
ExecutableService - Class in io.github.simplex.api
+
 
+
ExecutableService(NamespacedKey, Long, Long, Boolean, Boolean) - Constructor for class io.github.simplex.api.ExecutableService
+
+
Creates a new instance of an executable service.
+
+
+A C D E F G I L M N O P Q R S T 
All Classes and Interfaces|All Packages|Serialized Form
+
+
+ + diff --git a/docs/index-files/index-5.html b/docs/index-files/index-5.html new file mode 100644 index 0000000..cbd50d4 --- /dev/null +++ b/docs/index-files/index-5.html @@ -0,0 +1,71 @@ + + + + +F-Index + + + + + + + + + + + + + + + +
+ +
+
+
+

Index

+
+A C D E F G I L M N O P Q R S T 
All Classes and Interfaces|All Packages|Serialized Form +

F

+
+
fluxFromCollection() - Method in interface io.github.simplex.api.Context
+
 
+
forceStart(IService) - Method in interface io.github.simplex.api.ISchedule
+
 
+
forceStart(IService) - Method in class io.github.simplex.simplexss.SchedulingSystem
+
 
+
forceStop(IService) - Method in interface io.github.simplex.api.ISchedule
+
 
+
forceStop(IService) - Method in class io.github.simplex.simplexss.SchedulingSystem
+
 
+
+A C D E F G I L M N O P Q R S T 
All Classes and Interfaces|All Packages|Serialized Form
+
+
+ + diff --git a/docs/index-files/index-6.html b/docs/index-files/index-6.html new file mode 100644 index 0000000..34bcf3a --- /dev/null +++ b/docs/index-files/index-6.html @@ -0,0 +1,109 @@ + + + + +G-Index + + + + + + + + + + + + + + + +
+ +
+
+
+

Index

+
+A C D E F G I L M N O P Q R S T 
All Classes and Interfaces|All Packages|Serialized Form +

G

+
+
getAssociatedServicePool(IService) - Method in class io.github.simplex.simplexss.ServiceManager
+
 
+
getAssociatedServices() - Method in class io.github.simplex.simplexss.ServicePool
+
 
+
getContext() - Method in interface io.github.simplex.api.Context
+
 
+
getDefaultNamespacedKey() - Static method in interface io.github.simplex.api.IService
+
 
+
getDefaultNamespacedKey() - Static method in class io.github.simplex.simplexss.ServicePool
+
 
+
getDelay() - Method in class io.github.simplex.api.ExecutableService
+
 
+
getDelay() - Method in interface io.github.simplex.api.IService
+
 
+
getMainSchedulerThread() - Method in class io.github.simplex.simplexss.SchedulingSystem
+
 
+
getNamespacedKey() - Method in class io.github.simplex.api.ExecutableService
+
 
+
getNamespacedKey() - Method in interface io.github.simplex.api.IService
+
 
+
getParentPool() - Method in interface io.github.simplex.api.IService
+
 
+
getParentPool() - Method in class io.github.simplex.impl.ServiceImpl
+
 
+
getPeriod() - Method in class io.github.simplex.api.ExecutableService
+
 
+
getPeriod() - Method in interface io.github.simplex.api.IService
+
 
+
getPlugin() - Method in interface io.github.simplex.api.IService
+
 
+
getPlugin() - Method in class io.github.simplex.impl.ServiceImpl
+
 
+
getProvidingPlugin() - Method in class io.github.simplex.simplexss.SchedulingSystem
+
 
+
getRepeatingPools() - Method in class io.github.simplex.simplexss.SchedulingSystem
+
 
+
getScheduler() - Method in class io.github.simplex.impl.Main
+
 
+
getScheduler() - Method in class io.github.simplex.simplexss.ServicePool
+
 
+
getService(NamespacedKey) - Method in class io.github.simplex.simplexss.ServicePool
+
 
+
getServiceManager() - Method in interface io.github.simplex.api.ISchedule
+
 
+
getServiceManager() - Method in class io.github.simplex.simplexss.SchedulingSystem
+
 
+
getServicePools() - Method in class io.github.simplex.simplexss.ServiceManager
+
 
+
+A C D E F G I L M N O P Q R S T 
All Classes and Interfaces|All Packages|Serialized Form
+
+
+ + diff --git a/docs/index-files/index-7.html b/docs/index-files/index-7.html new file mode 100644 index 0000000..8be543c --- /dev/null +++ b/docs/index-files/index-7.html @@ -0,0 +1,93 @@ + + + + +I-Index + + + + + + + + + + + + + + + +
+ +
+
+
+

Index

+
+A C D E F G I L M N O P Q R S T 
All Classes and Interfaces|All Packages|Serialized Form +

I

+
+
InvalidServiceException - Exception in io.github.simplex.api
+
 
+
InvalidServiceException(IService) - Constructor for exception io.github.simplex.api.InvalidServiceException
+
 
+
InvalidServiceException(Throwable) - Constructor for exception io.github.simplex.api.InvalidServiceException
+
 
+
InvalidServicePoolException - Exception in io.github.simplex.api
+
 
+
InvalidServicePoolException() - Constructor for exception io.github.simplex.api.InvalidServicePoolException
+
 
+
InvalidServicePoolException(Throwable) - Constructor for exception io.github.simplex.api.InvalidServicePoolException
+
 
+
io.github.simplex.api - package io.github.simplex.api
+
 
+
io.github.simplex.impl - package io.github.simplex.impl
+
 
+
io.github.simplex.simplexss - package io.github.simplex.simplexss
+
 
+
isCancelled() - Method in class io.github.simplex.api.ExecutableService
+
+
Cancels the execution of this service.
+
+
ISchedule - Interface in io.github.simplex.api
+
 
+
IService - Interface in io.github.simplex.api
+
 
+
isPeriodic() - Method in class io.github.simplex.api.ExecutableService
+
 
+
isPeriodic() - Method in interface io.github.simplex.api.IService
+
 
+
isValidService(IService) - Method in class io.github.simplex.simplexss.ServicePool
+
 
+
+A C D E F G I L M N O P Q R S T 
All Classes and Interfaces|All Packages|Serialized Form
+
+
+ + diff --git a/docs/index-files/index-8.html b/docs/index-files/index-8.html new file mode 100644 index 0000000..1346fec --- /dev/null +++ b/docs/index-files/index-8.html @@ -0,0 +1,63 @@ + + + + +L-Index + + + + + + + + + + + + + + + +
+ +
+
+
+

Index

+
+A C D E F G I L M N O P Q R S T 
All Classes and Interfaces|All Packages|Serialized Form +

L

+
+
locateServiceWithinPools(IService) - Method in class io.github.simplex.simplexss.ServiceManager
+
 
+
+A C D E F G I L M N O P Q R S T 
All Classes and Interfaces|All Packages|Serialized Form
+
+
+ + diff --git a/docs/index-files/index-9.html b/docs/index-files/index-9.html new file mode 100644 index 0000000..68c154f --- /dev/null +++ b/docs/index-files/index-9.html @@ -0,0 +1,71 @@ + + + + +M-Index + + + + + + + + + + + + + + + +
+ +
+
+
+

Index

+
+A C D E F G I L M N O P Q R S T 
All Classes and Interfaces|All Packages|Serialized Form +

M

+
+
Main - Class in io.github.simplex.impl
+
 
+
Main() - Constructor for class io.github.simplex.impl.Main
+
 
+
mainScheduler - Variable in class io.github.simplex.simplexss.SchedulingSystem
+
 
+
mayInterruptWhenRunning - Variable in class io.github.simplex.api.ExecutableService
+
 
+
multithreadedServicePool(NamespacedKey, IService...) - Method in class io.github.simplex.simplexss.ServiceManager
+
 
+
+A C D E F G I L M N O P Q R S T 
All Classes and Interfaces|All Packages|Serialized Form
+
+
+ + diff --git a/docs/index.html b/docs/index.html new file mode 100644 index 0000000..b4f8585 --- /dev/null +++ b/docs/index.html @@ -0,0 +1,67 @@ + + + + +Overview + + + + + + + + + + + + + + + +
+ +
+
+
+
Packages
+ +
+
+
+
+ + diff --git a/docs/io/github/simplex/api/Context.html b/docs/io/github/simplex/api/Context.html new file mode 100644 index 0000000..91dd332 --- /dev/null +++ b/docs/io/github/simplex/api/Context.html @@ -0,0 +1,169 @@ + + + + +Context + + + + + + + + + + + + + + + +
+ +
+
+ +
+ +

Interface Context<S>

+
+
+
+
public interface Context<S>
+
+
+ +
+
+
    + +
  • +
    +

    Method Details

    +
      +
    • +
      +

      getContext

      +
      reactor.core.publisher.Mono<S> getContext()
      +
      +
      Returns:
      +
      A Mono object which contains a single element represented by the definer of this Context class.
      +
      +
      +
    • +
    • +
      +

      setContext

      +
      reactor.core.publisher.Mono<Void> setContext(S context)
      +
      +
      Parameters:
      +
      context - A separate (or identical) object identified by the definer of this Context class.
      +
      Returns:
      +
      A Mono object which can be used to set the element of this Context class in a non-blocking manner.
      +
      +
      +
    • +
    • +
      +

      contextCollection

      +
      Collection<S> contextCollection()
      +
      +
      Returns:
      +
      A collection of objects related to the definer of this Context class.
      +
      +
      +
    • +
    • +
      +

      fluxFromCollection

      +
      default reactor.core.publisher.Flux<S> fluxFromCollection()
      +
      +
      Returns:
      +
      A Flux object which contains the values of the contextCollection(), for non-blocking interpretation.
      +
      +
      +
    • +
    +
    +
  • +
+
+ +
+
+
+ + diff --git a/docs/io/github/simplex/api/ExecutableService.html b/docs/io/github/simplex/api/ExecutableService.html new file mode 100644 index 0000000..f46a1f2 --- /dev/null +++ b/docs/io/github/simplex/api/ExecutableService.html @@ -0,0 +1,370 @@ + + + + +ExecutableService + + + + + + + + + + + + + + + +
+ +
+
+ +
+ +

Class ExecutableService

+
+
java.lang.Object +
io.github.simplex.api.ExecutableService
+
+
+
+
All Implemented Interfaces:
+
IService, Runnable
+
+
+
Direct Known Subclasses:
+
ServiceImpl
+
+
+
public abstract class ExecutableService +extends Object +implements IService
+
+
+ +
+
+
    + +
  • +
    +

    Field Details

    +
      +
    • +
      +

      service_name

      +
      private final org.bukkit.NamespacedKey service_name
      +
      +
    • +
    • +
      +

      delay

      +
      private final long delay
      +
      +
    • +
    • +
      +

      period

      +
      private final long period
      +
      +
    • +
    • +
      +

      repeating

      +
      private final boolean repeating
      +
      +
    • +
    • +
      +

      mayInterruptWhenRunning

      +
      private final boolean mayInterruptWhenRunning
      +
      +
    • +
    • +
      +

      cancelled

      +
      private boolean cancelled
      +
      +
    • +
    +
    +
  • + +
  • +
    +

    Constructor Details

    +
      +
    • +
      +

      ExecutableService

      +
      public ExecutableService(@NotNull + @NotNull org.bukkit.NamespacedKey service_name, + @Nullable + @Nullable Long delay, + @Nullable + @Nullable Long period, + @NotNull + @NotNull Boolean repeating, + @NotNull + @NotNull Boolean mayInterruptWhenRunning)
      +
      Creates a new instance of an executable service. + The timings are measured in ticks (20 ticks per second). + You do not need to explicitly define a delay or a period, + however if you have flagged repeating as true, and the period is null, + then the period will automatically be set to 20 minutes. + Each service is registered with a NamespacedKey, + to allow for easy identification within the associated ServicePool.
      +
      +
      Parameters:
      +
      service_name - A namespaced key which can be used to identify the service.
      +
      delay - A specified amount of time (in ticks) to wait before the service runs.
      +
      period - How long the service should wait between service executions (in ticks).
      +
      repeating - If the service should be scheduled for repeated executions or not.
      +
      mayInterruptWhenRunning - If the service can be cancelled during execution.
      +
      +
      +
    • +
    +
    +
  • + +
  • +
    +

    Method Details

    +
      +
    • +
      +

      getNamespacedKey

      +
      public org.bukkit.NamespacedKey getNamespacedKey()
      +
      +
      Specified by:
      +
      getNamespacedKey in interface IService
      +
      Returns:
      +
      The NamespacedKey of this service.
      +
      +
      +
    • +
    • +
      +

      getDelay

      +
      public long getDelay()
      +
      +
      Specified by:
      +
      getDelay in interface IService
      +
      Returns:
      +
      How long the service should wait before executing the first time.
      +
      +
      +
    • +
    • +
      +

      getPeriod

      +
      public long getPeriod()
      +
      +
      Specified by:
      +
      getPeriod in interface IService
      +
      Returns:
      +
      How long the service should wait between subsequent executions.
      +
      +
      +
    • +
    • +
      +

      isPeriodic

      +
      public boolean isPeriodic()
      +
      +
      Specified by:
      +
      isPeriodic in interface IService
      +
      Returns:
      +
      If the service should be scheduled for repeated executions or not.
      +
      +
      +
    • +
    • +
      +

      isCancelled

      +
      public boolean isCancelled()
      +
      Cancels the execution of this service.
      +
      +
      Returns:
      +
      true if the service was cancelled, false if not.
      +
      +
      +
    • +
    • +
      +

      setCancelled

      +
      public reactor.core.publisher.Mono<Void> setCancelled(boolean cancel)
      +
      Cancels the execution of this service.
      +
      +
      Parameters:
      +
      cancel - Whether the service should be cancelled or not.
      +
      +
      +
    • +
    • +
      +

      cancel

      +
      @Contract(pure=true) +reactor.core.publisher.Mono<Void> cancel()
      +
      Actual stop call, to ensure that the service actually #isCancelled().
      +
      +
    • +
    +
    +
  • +
+
+ +
+
+
+ + diff --git a/docs/io/github/simplex/api/ISchedule.html b/docs/io/github/simplex/api/ISchedule.html new file mode 100644 index 0000000..5db81f5 --- /dev/null +++ b/docs/io/github/simplex/api/ISchedule.html @@ -0,0 +1,193 @@ + + + + +ISchedule + + + + + + + + + + + + + + + +
+ +
+
+ +
+ +

Interface ISchedule

+
+
+
+
All Known Implementing Classes:
+
SchedulingSystem
+
+
+
public interface ISchedule
+
+
+ +
+
+
    + +
  • +
    +

    Method Details

    +
      +
    • +
      +

      getServiceManager

      +
      reactor.core.publisher.Mono<ServiceManager> getServiceManager()
      +
      +
      Returns:
      +
      The service manager which exerts control over the service pools and their associated services.
      +
      +
      +
    • +
    • +
      +

      queue

      +
      reactor.core.publisher.Mono<ServicePool> queue(IService service)
      +
      +
      Parameters:
      +
      service - The service to use to locate the associated service pool and queue the service for execution.
      +
      Returns:
      +
      A Mono that can be used to prepare the service for execution within it's associated service pool. + If the service has no associated pool, a new pool will be created.
      +
      +
      +
    • +
    • +
      +

      runOnce

      +
      reactor.core.publisher.Mono<Void> runOnce(IService service)
      +
      +
      Parameters:
      +
      service - The service to run once.
      +
      Returns:
      +
      A Mono object which can be used to run the service one time using Mono.subscribe().
      +
      +
      +
    • +
    • +
      +

      forceStop

      +
      reactor.core.publisher.Mono<Void> forceStop(IService service)
      +
      +
      Parameters:
      +
      service - The service to forcefully stop.
      +
      Returns:
      +
      A Mono object which can be used to forcefully stop the service with Mono.subscribe().
      +
      +
      +
    • +
    • +
      +

      forceStart

      +
      reactor.core.publisher.Mono<Void> forceStart(IService service)
      +
      +
      Parameters:
      +
      service - The service to forcefully start.
      +
      Returns:
      +
      A Mono object which can be used to forcefully start the service with Mono.subscribe().
      +
      +
      +
    • +
    +
    +
  • +
+
+ +
+
+
+ + diff --git a/docs/io/github/simplex/api/IService.html b/docs/io/github/simplex/api/IService.html new file mode 100644 index 0000000..e46fe12 --- /dev/null +++ b/docs/io/github/simplex/api/IService.html @@ -0,0 +1,261 @@ + + + + +IService + + + + + + + + + + + + + + + +
+ +
+
+ +
+ +

Interface IService

+
+
+
+
All Superinterfaces:
+
Runnable
+
+
+
All Known Implementing Classes:
+
ExecutableService, ServiceImpl
+
+
+
public interface IService +extends Runnable
+
+
+
    + +
  • +
    +

    Method Summary

    +
    +
    +
    +
    +
    Modifier and Type
    +
    Method
    +
    Description
    +
    static @NotNull org.bukkit.NamespacedKey
    + +
     
    +
    long
    + +
     
    +
    org.bukkit.NamespacedKey
    + +
     
    +
    reactor.core.publisher.Mono<ServicePool>
    + +
     
    +
    long
    + +
     
    +
    org.bukkit.plugin.java.JavaPlugin
    + +
     
    +
    boolean
    + +
     
    +
    default void
    +
    run()
    +
     
    +
    reactor.core.publisher.Mono<Void>
    + +
    +
    The actual start method for the service.
    +
    +
    reactor.core.publisher.Mono<Void>
    + +
    +
    The actual end method for the service.
    +
    +
    +
    +
    +
    +
  • +
+
+
+
    + +
  • +
    +

    Method Details

    +
      +
    • +
      +

      getDefaultNamespacedKey

      +
      @Contract(" -> new") +@NotNull +static @NotNull org.bukkit.NamespacedKey getDefaultNamespacedKey()
      +
      +
    • +
    • +
      +

      getNamespacedKey

      +
      org.bukkit.NamespacedKey getNamespacedKey()
      +
      +
      Returns:
      +
      The NamespacedKey of this service.
      +
      +
      +
    • +
    • +
      +

      isPeriodic

      +
      boolean isPeriodic()
      +
      +
      Returns:
      +
      If the service should be scheduled for repeated executions or not.
      +
      +
      +
    • +
    • +
      +

      getPeriod

      +
      long getPeriod()
      +
      +
      Returns:
      +
      How long the service should wait between subsequent executions.
      +
      +
      +
    • +
    • +
      +

      getDelay

      +
      long getDelay()
      +
      +
      Returns:
      +
      How long the service should wait before executing the first time.
      +
      +
      +
    • +
    • +
      +

      start

      +
      reactor.core.publisher.Mono<Void> start()
      +
      The actual start method for the service. This should be overridden by subclasses, + and should include all the required code necessary to execute when the service is queued.
      +
      +
      Returns:
      +
      An encapsulated Mono object representing the start method for the service.
      +
      +
      +
    • +
    • +
      +

      stop

      +
      reactor.core.publisher.Mono<Void> stop()
      +
      The actual end method for the service. This should be overridden by subclasses, + and should include all the required code necessary to execute when the service is stopped.
      +
      +
      Returns:
      +
      An encapsulated Mono object representing the end method for the service.
      +
      +
      +
    • +
    • +
      +

      getPlugin

      +
      org.bukkit.plugin.java.JavaPlugin getPlugin()
      +
      +
      Returns:
      +
      The plugin which was defined in the constructor. + This should be an instance of your main plugin class.
      +
      +
      +
    • +
    • +
      +

      getParentPool

      +
      reactor.core.publisher.Mono<ServicePool> getParentPool()
      +
      +
      Returns:
      +
      The ServicePool which this service is executing on.
      +
      +
      +
    • +
    • +
      +

      run

      +
      default void run()
      +
      +
      Specified by:
      +
      run in interface Runnable
      +
      +
      +
    • +
    +
    +
  • +
+
+ +
+
+
+ + diff --git a/docs/io/github/simplex/api/InvalidServiceException.html b/docs/io/github/simplex/api/InvalidServiceException.html new file mode 100644 index 0000000..1e0d61a --- /dev/null +++ b/docs/io/github/simplex/api/InvalidServiceException.html @@ -0,0 +1,187 @@ + + + + +InvalidServiceException + + + + + + + + + + + + + + + +
+ +
+
+ +
+ +

Class InvalidServiceException

+
+
java.lang.Object +
java.lang.Throwable +
java.lang.Exception +
java.lang.RuntimeException +
io.github.simplex.api.InvalidServiceException
+
+
+
+
+
+
+
All Implemented Interfaces:
+
Serializable
+
+
+
public class InvalidServiceException +extends RuntimeException
+
+
See Also:
+
+ +
+
+
+
+ +
+
+
    + +
  • +
    +

    Constructor Details

    +
      +
    • +
      +

      InvalidServiceException

      +
      public InvalidServiceException(IService service)
      +
      +
    • +
    • +
      +

      InvalidServiceException

      +
      public InvalidServiceException(Throwable th)
      +
      +
    • +
    +
    +
  • + +
  • +
    +

    Method Details

    + +
    +
  • +
+
+ +
+
+
+ + diff --git a/docs/io/github/simplex/api/InvalidServicePoolException.html b/docs/io/github/simplex/api/InvalidServicePoolException.html new file mode 100644 index 0000000..a16bb2e --- /dev/null +++ b/docs/io/github/simplex/api/InvalidServicePoolException.html @@ -0,0 +1,189 @@ + + + + +InvalidServicePoolException + + + + + + + + + + + + + + + +
+ +
+
+ +
+ +

Class InvalidServicePoolException

+
+
java.lang.Object +
java.lang.Throwable +
java.lang.Exception +
java.lang.RuntimeException +
io.github.simplex.api.InvalidServicePoolException
+
+
+
+
+
+
+
All Implemented Interfaces:
+
Serializable
+
+
+
public class InvalidServicePoolException +extends RuntimeException
+
+
See Also:
+
+ +
+
+
+
+ +
+
+
    + +
  • +
    +

    Constructor Details

    +
      +
    • +
      +

      InvalidServicePoolException

      +
      public InvalidServicePoolException()
      +
      +
    • +
    • +
      +

      InvalidServicePoolException

      +
      public InvalidServicePoolException(Throwable ex)
      +
      +
    • +
    +
    +
  • + +
  • +
    +

    Method Details

    + +
    +
  • +
+
+ +
+
+
+ + diff --git a/docs/io/github/simplex/api/package-summary.html b/docs/io/github/simplex/api/package-summary.html new file mode 100644 index 0000000..d06739b --- /dev/null +++ b/docs/io/github/simplex/api/package-summary.html @@ -0,0 +1,98 @@ + + + + +io.github.simplex.api + + + + + + + + + + + + + + + +
+ +
+
+
+

Package io.github.simplex.api

+
+
+
package io.github.simplex.api
+
+ +
+
+
+
+ + diff --git a/docs/io/github/simplex/api/package-tree.html b/docs/io/github/simplex/api/package-tree.html new file mode 100644 index 0000000..48dfc13 --- /dev/null +++ b/docs/io/github/simplex/api/package-tree.html @@ -0,0 +1,97 @@ + + + + +io.github.simplex.api Class Hierarchy + + + + + + + + + + + + + + + +
+ +
+
+
+

Hierarchy For Package io.github.simplex.api

+Package Hierarchies: + +
+
+

Class Hierarchy

+ +
+
+

Interface Hierarchy

+ +
+
+
+
+ + diff --git a/docs/io/github/simplex/impl/Main.html b/docs/io/github/simplex/impl/Main.html new file mode 100644 index 0000000..41dca41 --- /dev/null +++ b/docs/io/github/simplex/impl/Main.html @@ -0,0 +1,243 @@ + + + + +Main + + + + + + + + + + + + + + + +
+ +
+
+ +
+ +

Class Main

+
+
java.lang.Object +
org.bukkit.plugin.PluginBase +
org.bukkit.plugin.java.JavaPlugin +
io.github.simplex.impl.Main
+
+
+
+
+
+
All Implemented Interfaces:
+
org.bukkit.command.CommandExecutor, org.bukkit.command.TabCompleter, org.bukkit.command.TabExecutor, org.bukkit.plugin.Plugin
+
+
+
public class Main +extends org.bukkit.plugin.java.JavaPlugin
+
+
+
    + +
  • +
    +

    Field Summary

    +
    Fields
    +
    +
    Modifier and Type
    +
    Field
    +
    Description
    +
    private reactor.core.publisher.Flux<reactor.core.Disposable>
    + +
     
    + + +
     
    +
    +
    +
  • + +
  • +
    +

    Constructor Summary

    +
    Constructors
    +
    +
    Constructor
    +
    Description
    + +
     
    +
    +
    +
  • + +
  • +
    +

    Method Summary

    +
    +
    +
    +
    +
    Modifier and Type
    +
    Method
    +
    Description
    + + +
     
    +
    void
    + +
     
    +
    void
    + +
     
    +
    +
    +
    +
    +

    Methods inherited from class org.bukkit.plugin.java.JavaPlugin

    +getClassLoader, getCommand, getConfig, getDataFolder, getDefaultBiomeProvider, getDefaultWorldGenerator, getDescription, getFile, getLogger, getPlugin, getPluginLoader, getProvidingPlugin, getResource, getServer, getTextResource, isEnabled, isNaggable, onCommand, onLoad, onTabComplete, reloadConfig, saveConfig, saveDefaultConfig, saveResource, setEnabled, setNaggable, toString
    +
    +

    Methods inherited from class org.bukkit.plugin.PluginBase

    +equals, getName, hashCode
    +
    +

    Methods inherited from class java.lang.Object

    +clone, finalize, getClass, notify, notifyAll, wait, wait, wait
    +
    +

    Methods inherited from interface org.bukkit.plugin.Plugin

    +getComponentLogger, getLog4JLogger, getSLF4JLogger
    +
    +
  • +
+
+
+
    + +
  • +
    +

    Field Details

    +
      +
    • +
      +

      scheduler

      +
      private SchedulingSystem<Main> scheduler
      +
      +
    • +
    • +
      +

      disposables

      +
      private reactor.core.publisher.Flux<reactor.core.Disposable> disposables
      +
      +
    • +
    +
    +
  • + +
  • +
    +

    Constructor Details

    +
      +
    • +
      +

      Main

      +
      public Main()
      +
      +
    • +
    +
    +
  • + +
  • +
    +

    Method Details

    +
      +
    • +
      +

      onEnable

      +
      public void onEnable()
      +
      +
      Specified by:
      +
      onEnable in interface org.bukkit.plugin.Plugin
      +
      Overrides:
      +
      onEnable in class org.bukkit.plugin.java.JavaPlugin
      +
      +
      +
    • +
    • +
      +

      onDisable

      +
      public void onDisable()
      +
      +
      Specified by:
      +
      onDisable in interface org.bukkit.plugin.Plugin
      +
      Overrides:
      +
      onDisable in class org.bukkit.plugin.java.JavaPlugin
      +
      +
      +
    • +
    • +
      +

      getScheduler

      +
      public SchedulingSystem<Main> getScheduler()
      +
      +
    • +
    +
    +
  • +
+
+ +
+
+
+ + diff --git a/docs/io/github/simplex/impl/ServiceImpl.html b/docs/io/github/simplex/impl/ServiceImpl.html new file mode 100644 index 0000000..33373ce --- /dev/null +++ b/docs/io/github/simplex/impl/ServiceImpl.html @@ -0,0 +1,253 @@ + + + + +ServiceImpl + + + + + + + + + + + + + + + +
+ +
+
+ +
+ +

Class ServiceImpl

+
+
java.lang.Object +
io.github.simplex.api.ExecutableService +
io.github.simplex.impl.ServiceImpl
+
+
+
+
+
All Implemented Interfaces:
+
IService, Runnable
+
+
+
public class ServiceImpl +extends ExecutableService
+
+
+ +
+
+
    + +
  • +
    +

    Field Details

    +
      +
    • +
      +

      plugin

      +
      private final Main plugin
      +
      +
    • +
    +
    +
  • + +
  • +
    +

    Constructor Details

    +
      +
    • +
      +

      ServiceImpl

      +
      public ServiceImpl(Main plugin)
      +
      +
    • +
    +
    +
  • + +
  • +
    +

    Method Details

    +
      +
    • +
      +

      start

      +
      public reactor.core.publisher.Mono<Void> start()
      +
      Description copied from interface: IService
      +
      The actual start method for the service. This should be overridden by subclasses, + and should include all the required code necessary to execute when the service is queued.
      +
      +
      Returns:
      +
      An encapsulated Mono object representing the start method for the service.
      +
      +
      +
    • +
    • +
      +

      stop

      +
      public reactor.core.publisher.Mono<Void> stop()
      +
      Description copied from interface: IService
      +
      The actual end method for the service. This should be overridden by subclasses, + and should include all the required code necessary to execute when the service is stopped.
      +
      +
      Returns:
      +
      An encapsulated Mono object representing the end method for the service.
      +
      +
      +
    • +
    • +
      +

      getPlugin

      +
      public Main getPlugin()
      +
      +
      Returns:
      +
      The plugin which was defined in the constructor. + This should be an instance of your main plugin class.
      +
      +
      +
    • +
    • +
      +

      getParentPool

      +
      public reactor.core.publisher.Mono<ServicePool> getParentPool()
      +
      +
      Returns:
      +
      The ServicePool which this service is executing on.
      +
      +
      +
    • +
    +
    +
  • +
+
+ +
+
+
+ + diff --git a/docs/io/github/simplex/impl/package-summary.html b/docs/io/github/simplex/impl/package-summary.html new file mode 100644 index 0000000..ca4681a --- /dev/null +++ b/docs/io/github/simplex/impl/package-summary.html @@ -0,0 +1,84 @@ + + + + +io.github.simplex.impl + + + + + + + + + + + + + + + +
+ +
+
+
+

Package io.github.simplex.impl

+
+
+
package io.github.simplex.impl
+
+ +
+
+
+
+ + diff --git a/docs/io/github/simplex/impl/package-tree.html b/docs/io/github/simplex/impl/package-tree.html new file mode 100644 index 0000000..382d56c --- /dev/null +++ b/docs/io/github/simplex/impl/package-tree.html @@ -0,0 +1,84 @@ + + + + +io.github.simplex.impl Class Hierarchy + + + + + + + + + + + + + + + +
+ +
+
+
+

Hierarchy For Package io.github.simplex.impl

+Package Hierarchies: + +
+
+

Class Hierarchy

+
    +
  • java.lang.Object +
      +
    • io.github.simplex.api.ExecutableService (implements io.github.simplex.api.IService) + +
    • +
    • org.bukkit.plugin.PluginBase (implements org.bukkit.plugin.Plugin) +
        +
      • org.bukkit.plugin.java.JavaPlugin +
          +
        • io.github.simplex.impl.Main
        • +
        +
      • +
      +
    • +
    +
  • +
+
+
+
+
+ + diff --git a/docs/io/github/simplex/simplexss/SchedulingSystem.html b/docs/io/github/simplex/simplexss/SchedulingSystem.html new file mode 100644 index 0000000..e4e3059 --- /dev/null +++ b/docs/io/github/simplex/simplexss/SchedulingSystem.html @@ -0,0 +1,343 @@ + + + + +SchedulingSystem + + + + + + + + + + + + + + + +
+ +
+
+ +
+ +

Class SchedulingSystem<T extends org.bukkit.plugin.java.JavaPlugin>

+
+
java.lang.Object +
io.github.simplex.simplexss.SchedulingSystem<T>
+
+
+
+
All Implemented Interfaces:
+
ISchedule
+
+
+
public final class SchedulingSystem<T extends org.bukkit.plugin.java.JavaPlugin> +extends Object +implements ISchedule
+
+
+ +
+
+
    + +
  • +
    +

    Field Details

    +
      +
    • +
      +

      serviceManager

      +
      private final ServiceManager serviceManager
      +
      +
    • +
    • +
      +

      plugin

      +
      private final T extends org.bukkit.plugin.java.JavaPlugin plugin
      +
      +
    • +
    • +
      +

      repeatingPools

      +
      private final Set<ServicePool> repeatingPools
      +
      +
    • +
    • +
      +

      mainScheduler

      +
      private final reactor.core.scheduler.Scheduler mainScheduler
      +
      +
    • +
    +
    +
  • + +
  • +
    +

    Constructor Details

    +
      +
    • +
      +

      SchedulingSystem

      +
      public SchedulingSystem(@NotNull + @NotNull ServiceManager serviceManager, + T plugin)
      +
      +
    • +
    +
    +
  • + +
  • +
    +

    Method Details

    +
      +
    • +
      +

      getRepeatingPools

      +
      @Contract(pure=true) +public Set<ServicePool> getRepeatingPools()
      +
      +
      Returns:
      +
      A set of ServicePools which contain repeating services.
      +
      +
      +
    • +
    • +
      +

      getServiceManager

      +
      @NotNull +public @NotNull reactor.core.publisher.Mono<ServiceManager> getServiceManager()
      +
      +
      Specified by:
      +
      getServiceManager in interface ISchedule
      +
      Returns:
      +
      The service manager which exerts control over the service pools and their associated services.
      +
      +
      +
    • +
    • +
      +

      queue

      +
      @NotNull +public @NotNull reactor.core.publisher.Mono<ServicePool> queue(@NotNull + @NotNull IService service)
      +
      +
      Specified by:
      +
      queue in interface ISchedule
      +
      Parameters:
      +
      service - The service to use to locate the associated service pool and queue the service for execution.
      +
      Returns:
      +
      A Mono that can be used to prepare the service for execution within it's associated service pool. + If the service has no associated pool, a new pool will be created.
      +
      +
      +
    • +
    • +
      +

      runOnce

      +
      @NotNull +public @NotNull reactor.core.publisher.Mono<Void> runOnce(IService service)
      +
      +
      Specified by:
      +
      runOnce in interface ISchedule
      +
      Parameters:
      +
      service - The service to run once.
      +
      Returns:
      +
      A Mono object which can be used to run the service one time using Mono.subscribe().
      +
      +
      +
    • +
    • +
      +

      forceStop

      +
      public reactor.core.publisher.Mono<Void> forceStop(IService service)
      +
      +
      Specified by:
      +
      forceStop in interface ISchedule
      +
      Parameters:
      +
      service - The service to forcefully stop.
      +
      Returns:
      +
      A Mono object which can be used to forcefully stop the service with Mono.subscribe().
      +
      +
      +
    • +
    • +
      +

      forceStart

      +
      public reactor.core.publisher.Mono<Void> forceStart(IService service)
      +
      +
      Specified by:
      +
      forceStart in interface ISchedule
      +
      Parameters:
      +
      service - The service to forcefully start.
      +
      Returns:
      +
      A Mono object which can be used to forcefully start the service with Mono.subscribe().
      +
      +
      +
    • +
    • +
      +

      getProvidingPlugin

      +
      @NotNull +public @NotNull reactor.core.publisher.Mono<T> getProvidingPlugin()
      +
      +
      Returns:
      +
      A Mono object containing your plugin, for non-blocking communication.
      +
      +
      +
    • +
    • +
      +

      getMainSchedulerThread

      +
      @Contract(pure=true) +public reactor.core.scheduler.Scheduler getMainSchedulerThread()
      +
      +
      Returns:
      +
      The main thread which the scheduling system operates on.
      +
      +
      +
    • +
    +
    +
  • +
+
+ +
+
+
+ + diff --git a/docs/io/github/simplex/simplexss/ServiceManager.html b/docs/io/github/simplex/simplexss/ServiceManager.html new file mode 100644 index 0000000..731b754 --- /dev/null +++ b/docs/io/github/simplex/simplexss/ServiceManager.html @@ -0,0 +1,337 @@ + + + + +ServiceManager + + + + + + + + + + + + + + + +
+ +
+
+ +
+ +

Class ServiceManager

+
+
java.lang.Object +
io.github.simplex.simplexss.ServiceManager
+
+
+
+
public final class ServiceManager +extends Object
+
+
+ +
+
+
    + +
  • +
    +

    Field Details

    +
      +
    • +
      +

      servicePools

      +
      private final Set<ServicePool> servicePools
      +
      +
    • +
    +
    +
  • + +
  • +
    +

    Constructor Details

    +
      +
    • +
      +

      ServiceManager

      +
      public ServiceManager()
      +
      +
    • +
    +
    +
  • + +
  • +
    +

    Method Details

    +
      +
    • +
      +

      createServicePool

      +
      @Contract(pure=true, + value="_, _ -> new") +@NotNull +public @NotNull reactor.core.publisher.Mono<ServicePool> createServicePool(org.bukkit.NamespacedKey poolName, + IService... services)
      +
      +
      Parameters:
      +
      poolName - The name of the service pool.
      +
      services - The services to register within the service pool.
      +
      Returns:
      +
      A Mono object which contains a ServicePool element. + This service pool will execute each service consecutively within a singular non-blocking thread.
      +
      +
      +
    • +
    • +
      +

      multithreadedServicePool

      +
      @Contract(pure=true, + value="_, _ -> new") +@NotNull +public @NotNull reactor.core.publisher.Mono<ServicePool> multithreadedServicePool(org.bukkit.NamespacedKey name, + IService... services)
      +
      +
      Parameters:
      +
      name - The name of the service pool.
      +
      services - The services to register within the service pool.
      +
      Returns:
      +
      A Mono object which contains a ServicePool element. + This service pool will execute each service across a set of non-blocking threads.
      +
      +
      +
    • +
    • +
      +

      emptyServicePool

      +
      @Contract(pure=true, + value="_, _ -> new") +@NotNull +public @NotNull reactor.core.publisher.Mono<ServicePool> emptyServicePool(org.bukkit.NamespacedKey poolName, + boolean multithreaded)
      +
      +
      Parameters:
      +
      poolName - The name of the service pool.
      +
      multithreaded - Whether the service pool should be multithreaded, or operate upon a single thread.
      +
      Returns:
      +
      A Mono object which contains a ServicePool element. + This pool is empty, meaning it contains no services. Any attempt to run services on this pool while it remains empty will either fail or error. + You can add services to this pool by using addToExistingPool(ServicePool, IService...), + or by using ServicePool.addService(IService).
      +
      +
      +
    • +
    • +
      +

      addToExistingPool

      +
      @Contract("_, _ -> new") +@NotNull +public @NotNull reactor.core.publisher.Mono<ServicePool> addToExistingPool(@NotNull + @NotNull ServicePool pool, + IService... services)
      +
      +
      Parameters:
      +
      pool - The service pool to add to.
      +
      services - The services to register within the service pool.
      +
      Returns:
      +
      A Mono object which contains the ServicePool element that now contains the registered services.
      +
      +
      +
    • +
    • +
      +

      takeFromExistingPool

      +
      @Contract("_, _ -> new") +@NotNull +public @NotNull reactor.core.publisher.Mono<ServicePool> takeFromExistingPool(@NotNull + @NotNull ServicePool pool, + IService... services)
      +
      +
      Parameters:
      +
      pool - The service pool to take from.
      +
      services - The services to remove from the pool.
      +
      Returns:
      +
      A Mono object which contains the ServicePool that no longer contains the removed services.
      +
      +
      +
    • +
    • +
      +

      getServicePools

      +
      @Contract(" -> new") +@NotNull +public @NotNull reactor.core.publisher.Flux<ServicePool> getServicePools()
      +
      +
      Returns:
      +
      A Flux object which contains all the service pools currently available.
      +
      +
      +
    • +
    • +
      +

      locateServiceWithinPools

      +
      @Contract(pure=true) +public boolean locateServiceWithinPools(IService service)
      +
      +
      Parameters:
      +
      service - The service to locate.
      +
      Returns:
      +
      True if the service is somewhere within a service pool, false otherwise.
      +
      +
      +
    • +
    • +
      +

      getAssociatedServicePool

      +
      @Contract("_ -> new") +@NotNull +public @NotNull reactor.core.publisher.Mono<ServicePool> getAssociatedServicePool(IService service)
      +
      +
      Parameters:
      +
      service - The service pool to call from.
      +
      Returns:
      +
      A Mono object which contains a ServicePool element which contains the specified service. + If no service pool can be found, an empty Mono is returned.
      +
      +
      +
    • +
    +
    +
  • +
+
+ +
+
+
+ + diff --git a/docs/io/github/simplex/simplexss/ServicePool.html b/docs/io/github/simplex/simplexss/ServicePool.html new file mode 100644 index 0000000..9777761 --- /dev/null +++ b/docs/io/github/simplex/simplexss/ServicePool.html @@ -0,0 +1,316 @@ + + + + +ServicePool + + + + + + + + + + + + + + + +
+ +
+
+ +
+ +

Class ServicePool

+
+
java.lang.Object +
io.github.simplex.simplexss.ServicePool
+
+
+
+
public final class ServicePool +extends Object
+
+
+ +
+
+
    + +
  • +
    +

    Field Details

    +
      +
    • +
      +

      associatedServices

      +
      private final Set<IService> associatedServices
      +
      +
    • +
    • +
      +

      scheduler

      +
      private final reactor.core.scheduler.Scheduler scheduler
      +
      +
    • +
    • +
      +

      name

      +
      private final org.bukkit.NamespacedKey name
      +
      +
    • +
    • +
      +

      DEFAULT

      +
      private static final org.bukkit.NamespacedKey DEFAULT
      +
      +
    • +
    +
    +
  • + +
  • +
    +

    Constructor Details

    +
      +
    • +
      +

      ServicePool

      +
      public ServicePool(org.bukkit.NamespacedKey name, + boolean multithreaded)
      +
      +
    • +
    +
    +
  • + +
  • +
    +

    Method Details

    +
      +
    • +
      +

      getDefaultNamespacedKey

      +
      static org.bukkit.NamespacedKey getDefaultNamespacedKey()
      +
      +
    • +
    • +
      +

      addService

      +
      void addService(IService service)
      +
      +
    • +
    • +
      +

      isValidService

      +
      boolean isValidService(IService service)
      +
      +
    • +
    • +
      +

      getAssociatedServices

      +
      @NotNull +public @NotNull Set<IService> getAssociatedServices()
      +
      +
    • +
    • +
      +

      startService

      +
      public reactor.core.publisher.Mono<reactor.core.Disposable> startService(org.bukkit.NamespacedKey service_name)
      +
      +
    • +
    • +
      +

      startServices

      +
      public reactor.core.publisher.Flux<reactor.core.Disposable> startServices()
      +
      +
    • +
    • +
      +

      stopServices

      +
      public reactor.core.publisher.Mono<Void> stopServices(reactor.core.publisher.Flux<reactor.core.Disposable> disposableThread)
      +
      +
    • +
    • +
      +

      stopService

      +
      public reactor.core.publisher.Mono<Void> stopService(org.bukkit.NamespacedKey service_name)
      +
      +
    • +
    • +
      +

      getService

      +
      public reactor.core.publisher.Mono<IService> getService(org.bukkit.NamespacedKey service_name)
      +
      +
    • +
    • +
      +

      removeService

      +
      void removeService(IService service)
      +
      +
    • +
    • +
      +

      recycle

      +
      public reactor.core.publisher.Mono<ServicePool> recycle()
      +
      +
    • +
    • +
      +

      getScheduler

      +
      public reactor.core.scheduler.Scheduler getScheduler()
      +
      +
    • +
    +
    +
  • +
+
+ +
+
+
+ + diff --git a/docs/io/github/simplex/simplexss/package-summary.html b/docs/io/github/simplex/simplexss/package-summary.html new file mode 100644 index 0000000..b9a1422 --- /dev/null +++ b/docs/io/github/simplex/simplexss/package-summary.html @@ -0,0 +1,86 @@ + + + + +io.github.simplex.simplexss + + + + + + + + + + + + + + + +
+ +
+
+
+

Package io.github.simplex.simplexss

+
+
+
package io.github.simplex.simplexss
+
+ +
+
+
+
+ + diff --git a/docs/io/github/simplex/simplexss/package-tree.html b/docs/io/github/simplex/simplexss/package-tree.html new file mode 100644 index 0000000..df057ac --- /dev/null +++ b/docs/io/github/simplex/simplexss/package-tree.html @@ -0,0 +1,73 @@ + + + + +io.github.simplex.simplexss Class Hierarchy + + + + + + + + + + + + + + + +
+ +
+
+
+

Hierarchy For Package io.github.simplex.simplexss

+Package Hierarchies: + +
+
+

Class Hierarchy

+ +
+
+
+
+ + diff --git a/docs/jquery-ui.overrides.css b/docs/jquery-ui.overrides.css new file mode 100644 index 0000000..f89acb6 --- /dev/null +++ b/docs/jquery-ui.overrides.css @@ -0,0 +1,34 @@ +/* + * Copyright (c) 2020, Oracle and/or its affiliates. All rights reserved. + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * This code is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License version 2 only, as + * published by the Free Software Foundation. Oracle designates this + * particular file as subject to the "Classpath" exception as provided + * by Oracle in the LICENSE file that accompanied this code. + * + * This code is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + * version 2 for more details (a copy is included in the LICENSE file that + * accompanied this code). + * + * You should have received a copy of the GNU General Public License version + * 2 along with this work; if not, write to the Free Software Foundation, + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. + * + * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA + * or visit www.oracle.com if you need additional information or have any + * questions. + */ + +.ui-state-active, +.ui-widget-content .ui-state-active, +.ui-widget-header .ui-state-active, +a.ui-button:active, +.ui-button:active, +.ui-button.ui-state-active:hover { + /* Overrides the color of selection used in jQuery UI */ + background: #F8981D; +} diff --git a/docs/legal/ADDITIONAL_LICENSE_INFO b/docs/legal/ADDITIONAL_LICENSE_INFO new file mode 100644 index 0000000..b62cc3e --- /dev/null +++ b/docs/legal/ADDITIONAL_LICENSE_INFO @@ -0,0 +1 @@ +Please see ..\java.base\ADDITIONAL_LICENSE_INFO diff --git a/docs/legal/ASSEMBLY_EXCEPTION b/docs/legal/ASSEMBLY_EXCEPTION new file mode 100644 index 0000000..0d4cfb4 --- /dev/null +++ b/docs/legal/ASSEMBLY_EXCEPTION @@ -0,0 +1 @@ +Please see ..\java.base\ASSEMBLY_EXCEPTION diff --git a/docs/legal/LICENSE b/docs/legal/LICENSE new file mode 100644 index 0000000..4ad9fe4 --- /dev/null +++ b/docs/legal/LICENSE @@ -0,0 +1 @@ +Please see ..\java.base\LICENSE diff --git a/docs/legal/jquery.md b/docs/legal/jquery.md new file mode 100644 index 0000000..8054a34 --- /dev/null +++ b/docs/legal/jquery.md @@ -0,0 +1,72 @@ +## jQuery v3.5.1 + +### jQuery License +``` +jQuery v 3.5.1 +Copyright JS Foundation and other contributors, https://js.foundation/ + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +****************************************** + +The jQuery JavaScript Library v3.5.1 also includes Sizzle.js + +Sizzle.js includes the following license: + +Copyright JS Foundation and other contributors, https://js.foundation/ + +This software consists of voluntary contributions made by many +individuals. For exact contribution history, see the revision history +available at https://github.com/jquery/sizzle + +The following license applies to all parts of this software except as +documented below: + +==== + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +==== + +All files located in the node_modules and external directories are +externally maintained libraries used by this software which have their +own licenses; we recommend you read them, as their terms may differ from +the terms above. + +********************* + +``` diff --git a/docs/legal/jqueryUI.md b/docs/legal/jqueryUI.md new file mode 100644 index 0000000..8031bdb --- /dev/null +++ b/docs/legal/jqueryUI.md @@ -0,0 +1,49 @@ +## jQuery UI v1.12.1 + +### jQuery UI License +``` +Copyright jQuery Foundation and other contributors, https://jquery.org/ + +This software consists of voluntary contributions made by many +individuals. For exact contribution history, see the revision history +available at https://github.com/jquery/jquery-ui + +The following license applies to all parts of this software except as +documented below: + +==== + +Permission is hereby granted, free of charge, to any person obtaining +a copy of this software and associated documentation files (the +"Software"), to deal in the Software without restriction, including +without limitation the rights to use, copy, modify, merge, publish, +distribute, sublicense, and/or sell copies of the Software, and to +permit persons to whom the Software is furnished to do so, subject to +the following conditions: + +The above copyright notice and this permission notice shall be +included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, +EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF +MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE +LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION +OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION +WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +==== + +Copyright and related rights for sample code are waived via CC0. Sample +code is defined as all source code contained within the demos directory. + +CC0: http://creativecommons.org/publicdomain/zero/1.0/ + +==== + +All files located in the node_modules and external directories are +externally maintained libraries used by this software which have their +own licenses; we recommend you read them, as their terms may differ from +the terms above. + +``` diff --git a/docs/member-search-index.js b/docs/member-search-index.js new file mode 100644 index 0000000..99de2fd --- /dev/null +++ b/docs/member-search-index.js @@ -0,0 +1 @@ +memberSearchIndex = [{"p":"io.github.simplex.simplexss","c":"ServicePool","l":"addService(IService)","u":"addService(io.github.simplex.api.IService)"},{"p":"io.github.simplex.simplexss","c":"ServiceManager","l":"addToExistingPool(ServicePool, IService...)","u":"addToExistingPool(io.github.simplex.simplexss.ServicePool,io.github.simplex.api.IService...)"},{"p":"io.github.simplex.simplexss","c":"ServicePool","l":"associatedServices"},{"p":"io.github.simplex.api","c":"ExecutableService","l":"cancel()"},{"p":"io.github.simplex.api","c":"ExecutableService","l":"cancelled"},{"p":"io.github.simplex.api","c":"Context","l":"contextCollection()"},{"p":"io.github.simplex.simplexss","c":"ServiceManager","l":"createServicePool(NamespacedKey, IService...)","u":"createServicePool(org.bukkit.NamespacedKey,io.github.simplex.api.IService...)"},{"p":"io.github.simplex.simplexss","c":"ServicePool","l":"DEFAULT"},{"p":"io.github.simplex.api","c":"ExecutableService","l":"delay"},{"p":"io.github.simplex.impl","c":"Main","l":"disposables"},{"p":"io.github.simplex.simplexss","c":"ServiceManager","l":"emptyServicePool(NamespacedKey, boolean)","u":"emptyServicePool(org.bukkit.NamespacedKey,boolean)"},{"p":"io.github.simplex.api","c":"ExecutableService","l":"ExecutableService(NamespacedKey, Long, Long, Boolean, Boolean)","u":"%3Cinit%3E(org.bukkit.NamespacedKey,java.lang.Long,java.lang.Long,java.lang.Boolean,java.lang.Boolean)"},{"p":"io.github.simplex.api","c":"Context","l":"fluxFromCollection()"},{"p":"io.github.simplex.api","c":"ISchedule","l":"forceStart(IService)","u":"forceStart(io.github.simplex.api.IService)"},{"p":"io.github.simplex.simplexss","c":"SchedulingSystem","l":"forceStart(IService)","u":"forceStart(io.github.simplex.api.IService)"},{"p":"io.github.simplex.api","c":"ISchedule","l":"forceStop(IService)","u":"forceStop(io.github.simplex.api.IService)"},{"p":"io.github.simplex.simplexss","c":"SchedulingSystem","l":"forceStop(IService)","u":"forceStop(io.github.simplex.api.IService)"},{"p":"io.github.simplex.simplexss","c":"ServiceManager","l":"getAssociatedServicePool(IService)","u":"getAssociatedServicePool(io.github.simplex.api.IService)"},{"p":"io.github.simplex.simplexss","c":"ServicePool","l":"getAssociatedServices()"},{"p":"io.github.simplex.api","c":"Context","l":"getContext()"},{"p":"io.github.simplex.api","c":"IService","l":"getDefaultNamespacedKey()"},{"p":"io.github.simplex.simplexss","c":"ServicePool","l":"getDefaultNamespacedKey()"},{"p":"io.github.simplex.api","c":"ExecutableService","l":"getDelay()"},{"p":"io.github.simplex.api","c":"IService","l":"getDelay()"},{"p":"io.github.simplex.simplexss","c":"SchedulingSystem","l":"getMainSchedulerThread()"},{"p":"io.github.simplex.api","c":"ExecutableService","l":"getNamespacedKey()"},{"p":"io.github.simplex.api","c":"IService","l":"getNamespacedKey()"},{"p":"io.github.simplex.api","c":"IService","l":"getParentPool()"},{"p":"io.github.simplex.impl","c":"ServiceImpl","l":"getParentPool()"},{"p":"io.github.simplex.api","c":"ExecutableService","l":"getPeriod()"},{"p":"io.github.simplex.api","c":"IService","l":"getPeriod()"},{"p":"io.github.simplex.api","c":"IService","l":"getPlugin()"},{"p":"io.github.simplex.impl","c":"ServiceImpl","l":"getPlugin()"},{"p":"io.github.simplex.simplexss","c":"SchedulingSystem","l":"getProvidingPlugin()"},{"p":"io.github.simplex.simplexss","c":"SchedulingSystem","l":"getRepeatingPools()"},{"p":"io.github.simplex.impl","c":"Main","l":"getScheduler()"},{"p":"io.github.simplex.simplexss","c":"ServicePool","l":"getScheduler()"},{"p":"io.github.simplex.simplexss","c":"ServicePool","l":"getService(NamespacedKey)","u":"getService(org.bukkit.NamespacedKey)"},{"p":"io.github.simplex.api","c":"ISchedule","l":"getServiceManager()"},{"p":"io.github.simplex.simplexss","c":"SchedulingSystem","l":"getServiceManager()"},{"p":"io.github.simplex.simplexss","c":"ServiceManager","l":"getServicePools()"},{"p":"io.github.simplex.api","c":"InvalidServiceException","l":"InvalidServiceException(IService)","u":"%3Cinit%3E(io.github.simplex.api.IService)"},{"p":"io.github.simplex.api","c":"InvalidServiceException","l":"InvalidServiceException(Throwable)","u":"%3Cinit%3E(java.lang.Throwable)"},{"p":"io.github.simplex.api","c":"InvalidServicePoolException","l":"InvalidServicePoolException()","u":"%3Cinit%3E()"},{"p":"io.github.simplex.api","c":"InvalidServicePoolException","l":"InvalidServicePoolException(Throwable)","u":"%3Cinit%3E(java.lang.Throwable)"},{"p":"io.github.simplex.api","c":"ExecutableService","l":"isCancelled()"},{"p":"io.github.simplex.api","c":"ExecutableService","l":"isPeriodic()"},{"p":"io.github.simplex.api","c":"IService","l":"isPeriodic()"},{"p":"io.github.simplex.simplexss","c":"ServicePool","l":"isValidService(IService)","u":"isValidService(io.github.simplex.api.IService)"},{"p":"io.github.simplex.simplexss","c":"ServiceManager","l":"locateServiceWithinPools(IService)","u":"locateServiceWithinPools(io.github.simplex.api.IService)"},{"p":"io.github.simplex.impl","c":"Main","l":"Main()","u":"%3Cinit%3E()"},{"p":"io.github.simplex.simplexss","c":"SchedulingSystem","l":"mainScheduler"},{"p":"io.github.simplex.api","c":"ExecutableService","l":"mayInterruptWhenRunning"},{"p":"io.github.simplex.simplexss","c":"ServiceManager","l":"multithreadedServicePool(NamespacedKey, IService...)","u":"multithreadedServicePool(org.bukkit.NamespacedKey,io.github.simplex.api.IService...)"},{"p":"io.github.simplex.simplexss","c":"ServicePool","l":"name"},{"p":"io.github.simplex.impl","c":"Main","l":"onDisable()"},{"p":"io.github.simplex.impl","c":"Main","l":"onEnable()"},{"p":"io.github.simplex.api","c":"ExecutableService","l":"period"},{"p":"io.github.simplex.impl","c":"ServiceImpl","l":"plugin"},{"p":"io.github.simplex.simplexss","c":"SchedulingSystem","l":"plugin"},{"p":"io.github.simplex.simplexss","c":"SchedulingSystem","l":"queue(IService)","u":"queue(io.github.simplex.api.IService)"},{"p":"io.github.simplex.api","c":"ISchedule","l":"queue(IService)","u":"queue(io.github.simplex.api.IService)"},{"p":"io.github.simplex.simplexss","c":"ServicePool","l":"recycle()"},{"p":"io.github.simplex.simplexss","c":"ServicePool","l":"removeService(IService)","u":"removeService(io.github.simplex.api.IService)"},{"p":"io.github.simplex.api","c":"ExecutableService","l":"repeating"},{"p":"io.github.simplex.simplexss","c":"SchedulingSystem","l":"repeatingPools"},{"p":"io.github.simplex.api","c":"IService","l":"run()"},{"p":"io.github.simplex.api","c":"ISchedule","l":"runOnce(IService)","u":"runOnce(io.github.simplex.api.IService)"},{"p":"io.github.simplex.simplexss","c":"SchedulingSystem","l":"runOnce(IService)","u":"runOnce(io.github.simplex.api.IService)"},{"p":"io.github.simplex.impl","c":"Main","l":"scheduler"},{"p":"io.github.simplex.simplexss","c":"ServicePool","l":"scheduler"},{"p":"io.github.simplex.simplexss","c":"SchedulingSystem","l":"SchedulingSystem(ServiceManager, T)","u":"%3Cinit%3E(io.github.simplex.simplexss.ServiceManager,T)"},{"p":"io.github.simplex.api","c":"ExecutableService","l":"service_name"},{"p":"io.github.simplex.impl","c":"ServiceImpl","l":"ServiceImpl(Main)","u":"%3Cinit%3E(io.github.simplex.impl.Main)"},{"p":"io.github.simplex.simplexss","c":"SchedulingSystem","l":"serviceManager"},{"p":"io.github.simplex.simplexss","c":"ServiceManager","l":"ServiceManager()","u":"%3Cinit%3E()"},{"p":"io.github.simplex.simplexss","c":"ServicePool","l":"ServicePool(NamespacedKey, boolean)","u":"%3Cinit%3E(org.bukkit.NamespacedKey,boolean)"},{"p":"io.github.simplex.simplexss","c":"ServiceManager","l":"servicePools"},{"p":"io.github.simplex.api","c":"ExecutableService","l":"setCancelled(boolean)"},{"p":"io.github.simplex.api","c":"Context","l":"setContext(S)"},{"p":"io.github.simplex.api","c":"IService","l":"start()"},{"p":"io.github.simplex.impl","c":"ServiceImpl","l":"start()"},{"p":"io.github.simplex.simplexss","c":"ServicePool","l":"startService(NamespacedKey)","u":"startService(org.bukkit.NamespacedKey)"},{"p":"io.github.simplex.simplexss","c":"ServicePool","l":"startServices()"},{"p":"io.github.simplex.api","c":"IService","l":"stop()"},{"p":"io.github.simplex.impl","c":"ServiceImpl","l":"stop()"},{"p":"io.github.simplex.simplexss","c":"ServicePool","l":"stopService(NamespacedKey)","u":"stopService(org.bukkit.NamespacedKey)"},{"p":"io.github.simplex.simplexss","c":"ServicePool","l":"stopServices(Flux)","u":"stopServices(reactor.core.publisher.Flux)"},{"p":"io.github.simplex.api","c":"InvalidServicePoolException","l":"supplyException()"},{"p":"io.github.simplex.api","c":"InvalidServiceException","l":"supplyException(IService)","u":"supplyException(io.github.simplex.api.IService)"},{"p":"io.github.simplex.simplexss","c":"ServiceManager","l":"takeFromExistingPool(ServicePool, IService...)","u":"takeFromExistingPool(io.github.simplex.simplexss.ServicePool,io.github.simplex.api.IService...)"}];updateSearchResults(); \ No newline at end of file diff --git a/docs/module-search-index.js b/docs/module-search-index.js new file mode 100644 index 0000000..0d59754 --- /dev/null +++ b/docs/module-search-index.js @@ -0,0 +1 @@ +moduleSearchIndex = [];updateSearchResults(); \ No newline at end of file diff --git a/docs/overview-summary.html b/docs/overview-summary.html new file mode 100644 index 0000000..382fda0 --- /dev/null +++ b/docs/overview-summary.html @@ -0,0 +1,26 @@ + + + + +Generated Documentation (Untitled) + + + + + + + + + + + +
+ +

index.html

+
+ + diff --git a/docs/overview-tree.html b/docs/overview-tree.html new file mode 100644 index 0000000..83a3b4d --- /dev/null +++ b/docs/overview-tree.html @@ -0,0 +1,115 @@ + + + + +Class Hierarchy + + + + + + + + + + + + + + + +
+ +
+
+
+

Hierarchy For All Packages

+Package Hierarchies: + +
+
+

Class Hierarchy

+ +
+
+

Interface Hierarchy

+ +
+
+
+
+ + diff --git a/docs/package-search-index.js b/docs/package-search-index.js new file mode 100644 index 0000000..f0590e9 --- /dev/null +++ b/docs/package-search-index.js @@ -0,0 +1 @@ +packageSearchIndex = [{"l":"All Packages","u":"allpackages-index.html"},{"l":"io.github.simplex.api"},{"l":"io.github.simplex.impl"},{"l":"io.github.simplex.simplexss"}];updateSearchResults(); \ No newline at end of file diff --git a/docs/resources/glass.png b/docs/resources/glass.png new file mode 100644 index 0000000..a7f591f Binary files /dev/null and b/docs/resources/glass.png differ diff --git a/docs/resources/x.png b/docs/resources/x.png new file mode 100644 index 0000000..30548a7 Binary files /dev/null and b/docs/resources/x.png differ diff --git a/docs/script-dir/images/ui-bg_glass_55_fbf9ee_1x400.png b/docs/script-dir/images/ui-bg_glass_55_fbf9ee_1x400.png new file mode 100644 index 0000000..34abd18 Binary files /dev/null and b/docs/script-dir/images/ui-bg_glass_55_fbf9ee_1x400.png differ diff --git a/docs/script-dir/images/ui-bg_glass_65_dadada_1x400.png b/docs/script-dir/images/ui-bg_glass_65_dadada_1x400.png new file mode 100644 index 0000000..f058a93 Binary files /dev/null and b/docs/script-dir/images/ui-bg_glass_65_dadada_1x400.png differ diff --git a/docs/script-dir/images/ui-bg_glass_75_dadada_1x400.png b/docs/script-dir/images/ui-bg_glass_75_dadada_1x400.png new file mode 100644 index 0000000..2ce04c1 Binary files /dev/null and b/docs/script-dir/images/ui-bg_glass_75_dadada_1x400.png differ diff --git a/docs/script-dir/images/ui-bg_glass_75_e6e6e6_1x400.png b/docs/script-dir/images/ui-bg_glass_75_e6e6e6_1x400.png new file mode 100644 index 0000000..a90afb8 Binary files /dev/null and b/docs/script-dir/images/ui-bg_glass_75_e6e6e6_1x400.png differ diff --git a/docs/script-dir/images/ui-bg_glass_95_fef1ec_1x400.png b/docs/script-dir/images/ui-bg_glass_95_fef1ec_1x400.png new file mode 100644 index 0000000..dbe091f Binary files /dev/null and b/docs/script-dir/images/ui-bg_glass_95_fef1ec_1x400.png differ diff --git a/docs/script-dir/images/ui-bg_highlight-soft_75_cccccc_1x100.png b/docs/script-dir/images/ui-bg_highlight-soft_75_cccccc_1x100.png new file mode 100644 index 0000000..5dc3593 Binary files /dev/null and b/docs/script-dir/images/ui-bg_highlight-soft_75_cccccc_1x100.png differ diff --git a/docs/script-dir/images/ui-icons_222222_256x240.png b/docs/script-dir/images/ui-icons_222222_256x240.png new file mode 100644 index 0000000..e723e17 Binary files /dev/null and b/docs/script-dir/images/ui-icons_222222_256x240.png differ diff --git a/docs/script-dir/images/ui-icons_2e83ff_256x240.png b/docs/script-dir/images/ui-icons_2e83ff_256x240.png new file mode 100644 index 0000000..1f5f497 Binary files /dev/null and b/docs/script-dir/images/ui-icons_2e83ff_256x240.png differ diff --git a/docs/script-dir/images/ui-icons_454545_256x240.png b/docs/script-dir/images/ui-icons_454545_256x240.png new file mode 100644 index 0000000..618f5b0 Binary files /dev/null and b/docs/script-dir/images/ui-icons_454545_256x240.png differ diff --git a/docs/script-dir/images/ui-icons_888888_256x240.png b/docs/script-dir/images/ui-icons_888888_256x240.png new file mode 100644 index 0000000..ee5e33f Binary files /dev/null and b/docs/script-dir/images/ui-icons_888888_256x240.png differ diff --git a/docs/script-dir/images/ui-icons_cd0a0a_256x240.png b/docs/script-dir/images/ui-icons_cd0a0a_256x240.png new file mode 100644 index 0000000..7e8ebc1 Binary files /dev/null and b/docs/script-dir/images/ui-icons_cd0a0a_256x240.png differ diff --git a/docs/script-dir/jquery-3.5.1.min.js b/docs/script-dir/jquery-3.5.1.min.js new file mode 100644 index 0000000..b061403 --- /dev/null +++ b/docs/script-dir/jquery-3.5.1.min.js @@ -0,0 +1,2 @@ +/*! jQuery v3.5.1 | (c) JS Foundation and other contributors | jquery.org/license */ +!function(e,t){"use strict";"object"==typeof module&&"object"==typeof module.exports?module.exports=e.document?t(e,!0):function(e){if(!e.document)throw new Error("jQuery requires a window with a document");return t(e)}:t(e)}("undefined"!=typeof window?window:this,function(C,e){"use strict";var t=[],r=Object.getPrototypeOf,s=t.slice,g=t.flat?function(e){return t.flat.call(e)}:function(e){return t.concat.apply([],e)},u=t.push,i=t.indexOf,n={},o=n.toString,v=n.hasOwnProperty,a=v.toString,l=a.call(Object),y={},m=function(e){return"function"==typeof e&&"number"!=typeof e.nodeType},x=function(e){return null!=e&&e===e.window},E=C.document,c={type:!0,src:!0,nonce:!0,noModule:!0};function b(e,t,n){var r,i,o=(n=n||E).createElement("script");if(o.text=e,t)for(r in c)(i=t[r]||t.getAttribute&&t.getAttribute(r))&&o.setAttribute(r,i);n.head.appendChild(o).parentNode.removeChild(o)}function w(e){return null==e?e+"":"object"==typeof e||"function"==typeof e?n[o.call(e)]||"object":typeof e}var f="3.5.1",S=function(e,t){return new S.fn.init(e,t)};function p(e){var t=!!e&&"length"in e&&e.length,n=w(e);return!m(e)&&!x(e)&&("array"===n||0===t||"number"==typeof t&&0+~]|"+M+")"+M+"*"),U=new RegExp(M+"|>"),X=new RegExp(F),V=new RegExp("^"+I+"$"),G={ID:new RegExp("^#("+I+")"),CLASS:new RegExp("^\\.("+I+")"),TAG:new RegExp("^("+I+"|[*])"),ATTR:new RegExp("^"+W),PSEUDO:new RegExp("^"+F),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+M+"*(even|odd|(([+-]|)(\\d*)n|)"+M+"*(?:([+-]|)"+M+"*(\\d+)|))"+M+"*\\)|)","i"),bool:new RegExp("^(?:"+R+")$","i"),needsContext:new RegExp("^"+M+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+M+"*((?:-\\d)?\\d*)"+M+"*\\)|)(?=[^-]|$)","i")},Y=/HTML$/i,Q=/^(?:input|select|textarea|button)$/i,J=/^h\d$/i,K=/^[^{]+\{\s*\[native \w/,Z=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,ee=/[+~]/,te=new RegExp("\\\\[\\da-fA-F]{1,6}"+M+"?|\\\\([^\\r\\n\\f])","g"),ne=function(e,t){var n="0x"+e.slice(1)-65536;return t||(n<0?String.fromCharCode(n+65536):String.fromCharCode(n>>10|55296,1023&n|56320))},re=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,ie=function(e,t){return t?"\0"===e?"\ufffd":e.slice(0,-1)+"\\"+e.charCodeAt(e.length-1).toString(16)+" ":"\\"+e},oe=function(){T()},ae=be(function(e){return!0===e.disabled&&"fieldset"===e.nodeName.toLowerCase()},{dir:"parentNode",next:"legend"});try{H.apply(t=O.call(p.childNodes),p.childNodes),t[p.childNodes.length].nodeType}catch(e){H={apply:t.length?function(e,t){L.apply(e,O.call(t))}:function(e,t){var n=e.length,r=0;while(e[n++]=t[r++]);e.length=n-1}}}function se(t,e,n,r){var i,o,a,s,u,l,c,f=e&&e.ownerDocument,p=e?e.nodeType:9;if(n=n||[],"string"!=typeof t||!t||1!==p&&9!==p&&11!==p)return n;if(!r&&(T(e),e=e||C,E)){if(11!==p&&(u=Z.exec(t)))if(i=u[1]){if(9===p){if(!(a=e.getElementById(i)))return n;if(a.id===i)return n.push(a),n}else if(f&&(a=f.getElementById(i))&&y(e,a)&&a.id===i)return n.push(a),n}else{if(u[2])return H.apply(n,e.getElementsByTagName(t)),n;if((i=u[3])&&d.getElementsByClassName&&e.getElementsByClassName)return H.apply(n,e.getElementsByClassName(i)),n}if(d.qsa&&!N[t+" "]&&(!v||!v.test(t))&&(1!==p||"object"!==e.nodeName.toLowerCase())){if(c=t,f=e,1===p&&(U.test(t)||z.test(t))){(f=ee.test(t)&&ye(e.parentNode)||e)===e&&d.scope||((s=e.getAttribute("id"))?s=s.replace(re,ie):e.setAttribute("id",s=S)),o=(l=h(t)).length;while(o--)l[o]=(s?"#"+s:":scope")+" "+xe(l[o]);c=l.join(",")}try{return H.apply(n,f.querySelectorAll(c)),n}catch(e){N(t,!0)}finally{s===S&&e.removeAttribute("id")}}}return g(t.replace($,"$1"),e,n,r)}function ue(){var r=[];return function e(t,n){return r.push(t+" ")>b.cacheLength&&delete e[r.shift()],e[t+" "]=n}}function le(e){return e[S]=!0,e}function ce(e){var t=C.createElement("fieldset");try{return!!e(t)}catch(e){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function fe(e,t){var n=e.split("|"),r=n.length;while(r--)b.attrHandle[n[r]]=t}function pe(e,t){var n=t&&e,r=n&&1===e.nodeType&&1===t.nodeType&&e.sourceIndex-t.sourceIndex;if(r)return r;if(n)while(n=n.nextSibling)if(n===t)return-1;return e?1:-1}function de(t){return function(e){return"input"===e.nodeName.toLowerCase()&&e.type===t}}function he(n){return function(e){var t=e.nodeName.toLowerCase();return("input"===t||"button"===t)&&e.type===n}}function ge(t){return function(e){return"form"in e?e.parentNode&&!1===e.disabled?"label"in e?"label"in e.parentNode?e.parentNode.disabled===t:e.disabled===t:e.isDisabled===t||e.isDisabled!==!t&&ae(e)===t:e.disabled===t:"label"in e&&e.disabled===t}}function ve(a){return le(function(o){return o=+o,le(function(e,t){var n,r=a([],e.length,o),i=r.length;while(i--)e[n=r[i]]&&(e[n]=!(t[n]=e[n]))})})}function ye(e){return e&&"undefined"!=typeof e.getElementsByTagName&&e}for(e in d=se.support={},i=se.isXML=function(e){var t=e.namespaceURI,n=(e.ownerDocument||e).documentElement;return!Y.test(t||n&&n.nodeName||"HTML")},T=se.setDocument=function(e){var t,n,r=e?e.ownerDocument||e:p;return r!=C&&9===r.nodeType&&r.documentElement&&(a=(C=r).documentElement,E=!i(C),p!=C&&(n=C.defaultView)&&n.top!==n&&(n.addEventListener?n.addEventListener("unload",oe,!1):n.attachEvent&&n.attachEvent("onunload",oe)),d.scope=ce(function(e){return a.appendChild(e).appendChild(C.createElement("div")),"undefined"!=typeof e.querySelectorAll&&!e.querySelectorAll(":scope fieldset div").length}),d.attributes=ce(function(e){return e.className="i",!e.getAttribute("className")}),d.getElementsByTagName=ce(function(e){return e.appendChild(C.createComment("")),!e.getElementsByTagName("*").length}),d.getElementsByClassName=K.test(C.getElementsByClassName),d.getById=ce(function(e){return a.appendChild(e).id=S,!C.getElementsByName||!C.getElementsByName(S).length}),d.getById?(b.filter.ID=function(e){var t=e.replace(te,ne);return function(e){return e.getAttribute("id")===t}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&E){var n=t.getElementById(e);return n?[n]:[]}}):(b.filter.ID=function(e){var n=e.replace(te,ne);return function(e){var t="undefined"!=typeof e.getAttributeNode&&e.getAttributeNode("id");return t&&t.value===n}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&E){var n,r,i,o=t.getElementById(e);if(o){if((n=o.getAttributeNode("id"))&&n.value===e)return[o];i=t.getElementsByName(e),r=0;while(o=i[r++])if((n=o.getAttributeNode("id"))&&n.value===e)return[o]}return[]}}),b.find.TAG=d.getElementsByTagName?function(e,t){return"undefined"!=typeof t.getElementsByTagName?t.getElementsByTagName(e):d.qsa?t.querySelectorAll(e):void 0}:function(e,t){var n,r=[],i=0,o=t.getElementsByTagName(e);if("*"===e){while(n=o[i++])1===n.nodeType&&r.push(n);return r}return o},b.find.CLASS=d.getElementsByClassName&&function(e,t){if("undefined"!=typeof t.getElementsByClassName&&E)return t.getElementsByClassName(e)},s=[],v=[],(d.qsa=K.test(C.querySelectorAll))&&(ce(function(e){var t;a.appendChild(e).innerHTML="",e.querySelectorAll("[msallowcapture^='']").length&&v.push("[*^$]="+M+"*(?:''|\"\")"),e.querySelectorAll("[selected]").length||v.push("\\["+M+"*(?:value|"+R+")"),e.querySelectorAll("[id~="+S+"-]").length||v.push("~="),(t=C.createElement("input")).setAttribute("name",""),e.appendChild(t),e.querySelectorAll("[name='']").length||v.push("\\["+M+"*name"+M+"*="+M+"*(?:''|\"\")"),e.querySelectorAll(":checked").length||v.push(":checked"),e.querySelectorAll("a#"+S+"+*").length||v.push(".#.+[+~]"),e.querySelectorAll("\\\f"),v.push("[\\r\\n\\f]")}),ce(function(e){e.innerHTML="";var t=C.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),e.querySelectorAll("[name=d]").length&&v.push("name"+M+"*[*^$|!~]?="),2!==e.querySelectorAll(":enabled").length&&v.push(":enabled",":disabled"),a.appendChild(e).disabled=!0,2!==e.querySelectorAll(":disabled").length&&v.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),v.push(",.*:")})),(d.matchesSelector=K.test(c=a.matches||a.webkitMatchesSelector||a.mozMatchesSelector||a.oMatchesSelector||a.msMatchesSelector))&&ce(function(e){d.disconnectedMatch=c.call(e,"*"),c.call(e,"[s!='']:x"),s.push("!=",F)}),v=v.length&&new RegExp(v.join("|")),s=s.length&&new RegExp(s.join("|")),t=K.test(a.compareDocumentPosition),y=t||K.test(a.contains)?function(e,t){var n=9===e.nodeType?e.documentElement:e,r=t&&t.parentNode;return e===r||!(!r||1!==r.nodeType||!(n.contains?n.contains(r):e.compareDocumentPosition&&16&e.compareDocumentPosition(r)))}:function(e,t){if(t)while(t=t.parentNode)if(t===e)return!0;return!1},D=t?function(e,t){if(e===t)return l=!0,0;var n=!e.compareDocumentPosition-!t.compareDocumentPosition;return n||(1&(n=(e.ownerDocument||e)==(t.ownerDocument||t)?e.compareDocumentPosition(t):1)||!d.sortDetached&&t.compareDocumentPosition(e)===n?e==C||e.ownerDocument==p&&y(p,e)?-1:t==C||t.ownerDocument==p&&y(p,t)?1:u?P(u,e)-P(u,t):0:4&n?-1:1)}:function(e,t){if(e===t)return l=!0,0;var n,r=0,i=e.parentNode,o=t.parentNode,a=[e],s=[t];if(!i||!o)return e==C?-1:t==C?1:i?-1:o?1:u?P(u,e)-P(u,t):0;if(i===o)return pe(e,t);n=e;while(n=n.parentNode)a.unshift(n);n=t;while(n=n.parentNode)s.unshift(n);while(a[r]===s[r])r++;return r?pe(a[r],s[r]):a[r]==p?-1:s[r]==p?1:0}),C},se.matches=function(e,t){return se(e,null,null,t)},se.matchesSelector=function(e,t){if(T(e),d.matchesSelector&&E&&!N[t+" "]&&(!s||!s.test(t))&&(!v||!v.test(t)))try{var n=c.call(e,t);if(n||d.disconnectedMatch||e.document&&11!==e.document.nodeType)return n}catch(e){N(t,!0)}return 0":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(te,ne),e[3]=(e[3]||e[4]||e[5]||"").replace(te,ne),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||se.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&se.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return G.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":n&&X.test(n)&&(t=h(n,!0))&&(t=n.indexOf(")",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(te,ne).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=m[e+" "];return t||(t=new RegExp("(^|"+M+")"+e+"("+M+"|$)"))&&m(e,function(e){return t.test("string"==typeof e.className&&e.className||"undefined"!=typeof e.getAttribute&&e.getAttribute("class")||"")})},ATTR:function(n,r,i){return function(e){var t=se.attr(e,n);return null==t?"!="===r:!r||(t+="","="===r?t===i:"!="===r?t!==i:"^="===r?i&&0===t.indexOf(i):"*="===r?i&&-1:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i;function D(e,n,r){return m(n)?S.grep(e,function(e,t){return!!n.call(e,t,e)!==r}):n.nodeType?S.grep(e,function(e){return e===n!==r}):"string"!=typeof n?S.grep(e,function(e){return-1)[^>]*|#([\w-]+))$/;(S.fn.init=function(e,t,n){var r,i;if(!e)return this;if(n=n||j,"string"==typeof e){if(!(r="<"===e[0]&&">"===e[e.length-1]&&3<=e.length?[null,e,null]:q.exec(e))||!r[1]&&t)return!t||t.jquery?(t||n).find(e):this.constructor(t).find(e);if(r[1]){if(t=t instanceof S?t[0]:t,S.merge(this,S.parseHTML(r[1],t&&t.nodeType?t.ownerDocument||t:E,!0)),N.test(r[1])&&S.isPlainObject(t))for(r in t)m(this[r])?this[r](t[r]):this.attr(r,t[r]);return this}return(i=E.getElementById(r[2]))&&(this[0]=i,this.length=1),this}return e.nodeType?(this[0]=e,this.length=1,this):m(e)?void 0!==n.ready?n.ready(e):e(S):S.makeArray(e,this)}).prototype=S.fn,j=S(E);var L=/^(?:parents|prev(?:Until|All))/,H={children:!0,contents:!0,next:!0,prev:!0};function O(e,t){while((e=e[t])&&1!==e.nodeType);return e}S.fn.extend({has:function(e){var t=S(e,this),n=t.length;return this.filter(function(){for(var e=0;e\x20\t\r\n\f]*)/i,he=/^$|^module$|\/(?:java|ecma)script/i;ce=E.createDocumentFragment().appendChild(E.createElement("div")),(fe=E.createElement("input")).setAttribute("type","radio"),fe.setAttribute("checked","checked"),fe.setAttribute("name","t"),ce.appendChild(fe),y.checkClone=ce.cloneNode(!0).cloneNode(!0).lastChild.checked,ce.innerHTML="",y.noCloneChecked=!!ce.cloneNode(!0).lastChild.defaultValue,ce.innerHTML="",y.option=!!ce.lastChild;var ge={thead:[1,"","
"],col:[2,"","
"],tr:[2,"","
"],td:[3,"","
"],_default:[0,"",""]};function ve(e,t){var n;return n="undefined"!=typeof e.getElementsByTagName?e.getElementsByTagName(t||"*"):"undefined"!=typeof e.querySelectorAll?e.querySelectorAll(t||"*"):[],void 0===t||t&&A(e,t)?S.merge([e],n):n}function ye(e,t){for(var n=0,r=e.length;n",""]);var me=/<|&#?\w+;/;function xe(e,t,n,r,i){for(var o,a,s,u,l,c,f=t.createDocumentFragment(),p=[],d=0,h=e.length;d\s*$/g;function qe(e,t){return A(e,"table")&&A(11!==t.nodeType?t:t.firstChild,"tr")&&S(e).children("tbody")[0]||e}function Le(e){return e.type=(null!==e.getAttribute("type"))+"/"+e.type,e}function He(e){return"true/"===(e.type||"").slice(0,5)?e.type=e.type.slice(5):e.removeAttribute("type"),e}function Oe(e,t){var n,r,i,o,a,s;if(1===t.nodeType){if(Y.hasData(e)&&(s=Y.get(e).events))for(i in Y.remove(t,"handle events"),s)for(n=0,r=s[i].length;n").attr(n.scriptAttrs||{}).prop({charset:n.scriptCharset,src:n.url}).on("load error",i=function(e){r.remove(),i=null,e&&t("error"===e.type?404:200,e.type)}),E.head.appendChild(r[0])},abort:function(){i&&i()}}});var Ut,Xt=[],Vt=/(=)\?(?=&|$)|\?\?/;S.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=Xt.pop()||S.expando+"_"+Ct.guid++;return this[e]=!0,e}}),S.ajaxPrefilter("json jsonp",function(e,t,n){var r,i,o,a=!1!==e.jsonp&&(Vt.test(e.url)?"url":"string"==typeof e.data&&0===(e.contentType||"").indexOf("application/x-www-form-urlencoded")&&Vt.test(e.data)&&"data");if(a||"jsonp"===e.dataTypes[0])return r=e.jsonpCallback=m(e.jsonpCallback)?e.jsonpCallback():e.jsonpCallback,a?e[a]=e[a].replace(Vt,"$1"+r):!1!==e.jsonp&&(e.url+=(Et.test(e.url)?"&":"?")+e.jsonp+"="+r),e.converters["script json"]=function(){return o||S.error(r+" was not called"),o[0]},e.dataTypes[0]="json",i=C[r],C[r]=function(){o=arguments},n.always(function(){void 0===i?S(C).removeProp(r):C[r]=i,e[r]&&(e.jsonpCallback=t.jsonpCallback,Xt.push(r)),o&&m(i)&&i(o[0]),o=i=void 0}),"script"}),y.createHTMLDocument=((Ut=E.implementation.createHTMLDocument("").body).innerHTML="
",2===Ut.childNodes.length),S.parseHTML=function(e,t,n){return"string"!=typeof e?[]:("boolean"==typeof t&&(n=t,t=!1),t||(y.createHTMLDocument?((r=(t=E.implementation.createHTMLDocument("")).createElement("base")).href=E.location.href,t.head.appendChild(r)):t=E),o=!n&&[],(i=N.exec(e))?[t.createElement(i[1])]:(i=xe([e],t,o),o&&o.length&&S(o).remove(),S.merge([],i.childNodes)));var r,i,o},S.fn.load=function(e,t,n){var r,i,o,a=this,s=e.indexOf(" ");return-1").append(S.parseHTML(e)).find(r):e)}).always(n&&function(e,t){a.each(function(){n.apply(this,o||[e.responseText,t,e])})}),this},S.expr.pseudos.animated=function(t){return S.grep(S.timers,function(e){return t===e.elem}).length},S.offset={setOffset:function(e,t,n){var r,i,o,a,s,u,l=S.css(e,"position"),c=S(e),f={};"static"===l&&(e.style.position="relative"),s=c.offset(),o=S.css(e,"top"),u=S.css(e,"left"),("absolute"===l||"fixed"===l)&&-1<(o+u).indexOf("auto")?(a=(r=c.position()).top,i=r.left):(a=parseFloat(o)||0,i=parseFloat(u)||0),m(t)&&(t=t.call(e,n,S.extend({},s))),null!=t.top&&(f.top=t.top-s.top+a),null!=t.left&&(f.left=t.left-s.left+i),"using"in t?t.using.call(e,f):("number"==typeof f.top&&(f.top+="px"),"number"==typeof f.left&&(f.left+="px"),c.css(f))}},S.fn.extend({offset:function(t){if(arguments.length)return void 0===t?this:this.each(function(e){S.offset.setOffset(this,t,e)});var e,n,r=this[0];return r?r.getClientRects().length?(e=r.getBoundingClientRect(),n=r.ownerDocument.defaultView,{top:e.top+n.pageYOffset,left:e.left+n.pageXOffset}):{top:0,left:0}:void 0},position:function(){if(this[0]){var e,t,n,r=this[0],i={top:0,left:0};if("fixed"===S.css(r,"position"))t=r.getBoundingClientRect();else{t=this.offset(),n=r.ownerDocument,e=r.offsetParent||n.documentElement;while(e&&(e===n.body||e===n.documentElement)&&"static"===S.css(e,"position"))e=e.parentNode;e&&e!==r&&1===e.nodeType&&((i=S(e).offset()).top+=S.css(e,"borderTopWidth",!0),i.left+=S.css(e,"borderLeftWidth",!0))}return{top:t.top-i.top-S.css(r,"marginTop",!0),left:t.left-i.left-S.css(r,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){var e=this.offsetParent;while(e&&"static"===S.css(e,"position"))e=e.offsetParent;return e||re})}}),S.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(t,i){var o="pageYOffset"===i;S.fn[t]=function(e){return $(this,function(e,t,n){var r;if(x(e)?r=e:9===e.nodeType&&(r=e.defaultView),void 0===n)return r?r[i]:e[t];r?r.scrollTo(o?r.pageXOffset:n,o?n:r.pageYOffset):e[t]=n},t,e,arguments.length)}}),S.each(["top","left"],function(e,n){S.cssHooks[n]=$e(y.pixelPosition,function(e,t){if(t)return t=Be(e,n),Me.test(t)?S(e).position()[n]+"px":t})}),S.each({Height:"height",Width:"width"},function(a,s){S.each({padding:"inner"+a,content:s,"":"outer"+a},function(r,o){S.fn[o]=function(e,t){var n=arguments.length&&(r||"boolean"!=typeof e),i=r||(!0===e||!0===t?"margin":"border");return $(this,function(e,t,n){var r;return x(e)?0===o.indexOf("outer")?e["inner"+a]:e.document.documentElement["client"+a]:9===e.nodeType?(r=e.documentElement,Math.max(e.body["scroll"+a],r["scroll"+a],e.body["offset"+a],r["offset"+a],r["client"+a])):void 0===n?S.css(e,t,i):S.style(e,t,n,i)},s,n?e:void 0,n)}})}),S.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(e,t){S.fn[t]=function(e){return this.on(t,e)}}),S.fn.extend({bind:function(e,t,n){return this.on(e,null,t,n)},unbind:function(e,t){return this.off(e,null,t)},delegate:function(e,t,n,r){return this.on(t,e,n,r)},undelegate:function(e,t,n){return 1===arguments.length?this.off(e,"**"):this.off(t,e||"**",n)},hover:function(e,t){return this.mouseenter(e).mouseleave(t||e)}}),S.each("blur focus focusin focusout resize scroll click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup contextmenu".split(" "),function(e,n){S.fn[n]=function(e,t){return 0a;a++)for(s in o[a])n=o[a][s],o[a].hasOwnProperty(s)&&void 0!==n&&(e[s]=t.isPlainObject(n)?t.isPlainObject(e[s])?t.widget.extend({},e[s],n):t.widget.extend({},n):n);return e},t.widget.bridge=function(e,s){var n=s.prototype.widgetFullName||e;t.fn[e]=function(o){var a="string"==typeof o,r=i.call(arguments,1),l=this;return a?this.length||"instance"!==o?this.each(function(){var i,s=t.data(this,n);return"instance"===o?(l=s,!1):s?t.isFunction(s[o])&&"_"!==o.charAt(0)?(i=s[o].apply(s,r),i!==s&&void 0!==i?(l=i&&i.jquery?l.pushStack(i.get()):i,!1):void 0):t.error("no such method '"+o+"' for "+e+" widget instance"):t.error("cannot call methods on "+e+" prior to initialization; "+"attempted to call method '"+o+"'")}):l=void 0:(r.length&&(o=t.widget.extend.apply(null,[o].concat(r))),this.each(function(){var e=t.data(this,n);e?(e.option(o||{}),e._init&&e._init()):t.data(this,n,new s(o,this))})),l}},t.Widget=function(){},t.Widget._childConstructors=[],t.Widget.prototype={widgetName:"widget",widgetEventPrefix:"",defaultElement:"
",options:{classes:{},disabled:!1,create:null},_createWidget:function(i,s){s=t(s||this.defaultElement||this)[0],this.element=t(s),this.uuid=e++,this.eventNamespace="."+this.widgetName+this.uuid,this.bindings=t(),this.hoverable=t(),this.focusable=t(),this.classesElementLookup={},s!==this&&(t.data(s,this.widgetFullName,this),this._on(!0,this.element,{remove:function(t){t.target===s&&this.destroy()}}),this.document=t(s.style?s.ownerDocument:s.document||s),this.window=t(this.document[0].defaultView||this.document[0].parentWindow)),this.options=t.widget.extend({},this.options,this._getCreateOptions(),i),this._create(),this.options.disabled&&this._setOptionDisabled(this.options.disabled),this._trigger("create",null,this._getCreateEventData()),this._init()},_getCreateOptions:function(){return{}},_getCreateEventData:t.noop,_create:t.noop,_init:t.noop,destroy:function(){var e=this;this._destroy(),t.each(this.classesElementLookup,function(t,i){e._removeClass(i,t)}),this.element.off(this.eventNamespace).removeData(this.widgetFullName),this.widget().off(this.eventNamespace).removeAttr("aria-disabled"),this.bindings.off(this.eventNamespace)},_destroy:t.noop,widget:function(){return this.element},option:function(e,i){var s,n,o,a=e;if(0===arguments.length)return t.widget.extend({},this.options);if("string"==typeof e)if(a={},s=e.split("."),e=s.shift(),s.length){for(n=a[e]=t.widget.extend({},this.options[e]),o=0;s.length-1>o;o++)n[s[o]]=n[s[o]]||{},n=n[s[o]];if(e=s.pop(),1===arguments.length)return void 0===n[e]?null:n[e];n[e]=i}else{if(1===arguments.length)return void 0===this.options[e]?null:this.options[e];a[e]=i}return this._setOptions(a),this},_setOptions:function(t){var e;for(e in t)this._setOption(e,t[e]);return this},_setOption:function(t,e){return"classes"===t&&this._setOptionClasses(e),this.options[t]=e,"disabled"===t&&this._setOptionDisabled(e),this},_setOptionClasses:function(e){var i,s,n;for(i in e)n=this.classesElementLookup[i],e[i]!==this.options.classes[i]&&n&&n.length&&(s=t(n.get()),this._removeClass(n,i),s.addClass(this._classes({element:s,keys:i,classes:e,add:!0})))},_setOptionDisabled:function(t){this._toggleClass(this.widget(),this.widgetFullName+"-disabled",null,!!t),t&&(this._removeClass(this.hoverable,null,"ui-state-hover"),this._removeClass(this.focusable,null,"ui-state-focus"))},enable:function(){return this._setOptions({disabled:!1})},disable:function(){return this._setOptions({disabled:!0})},_classes:function(e){function i(i,o){var a,r;for(r=0;i.length>r;r++)a=n.classesElementLookup[i[r]]||t(),a=e.add?t(t.unique(a.get().concat(e.element.get()))):t(a.not(e.element).get()),n.classesElementLookup[i[r]]=a,s.push(i[r]),o&&e.classes[i[r]]&&s.push(e.classes[i[r]])}var s=[],n=this;return e=t.extend({element:this.element,classes:this.options.classes||{}},e),this._on(e.element,{remove:"_untrackClassesElement"}),e.keys&&i(e.keys.match(/\S+/g)||[],!0),e.extra&&i(e.extra.match(/\S+/g)||[]),s.join(" ")},_untrackClassesElement:function(e){var i=this;t.each(i.classesElementLookup,function(s,n){-1!==t.inArray(e.target,n)&&(i.classesElementLookup[s]=t(n.not(e.target).get()))})},_removeClass:function(t,e,i){return this._toggleClass(t,e,i,!1)},_addClass:function(t,e,i){return this._toggleClass(t,e,i,!0)},_toggleClass:function(t,e,i,s){s="boolean"==typeof s?s:i;var n="string"==typeof t||null===t,o={extra:n?e:i,keys:n?t:e,element:n?this.element:t,add:s};return o.element.toggleClass(this._classes(o),s),this},_on:function(e,i,s){var n,o=this;"boolean"!=typeof e&&(s=i,i=e,e=!1),s?(i=n=t(i),this.bindings=this.bindings.add(i)):(s=i,i=this.element,n=this.widget()),t.each(s,function(s,a){function r(){return e||o.options.disabled!==!0&&!t(this).hasClass("ui-state-disabled")?("string"==typeof a?o[a]:a).apply(o,arguments):void 0}"string"!=typeof a&&(r.guid=a.guid=a.guid||r.guid||t.guid++);var l=s.match(/^([\w:-]*)\s*(.*)$/),h=l[1]+o.eventNamespace,c=l[2];c?n.on(h,c,r):i.on(h,r)})},_off:function(e,i){i=(i||"").split(" ").join(this.eventNamespace+" ")+this.eventNamespace,e.off(i).off(i),this.bindings=t(this.bindings.not(e).get()),this.focusable=t(this.focusable.not(e).get()),this.hoverable=t(this.hoverable.not(e).get())},_delay:function(t,e){function i(){return("string"==typeof t?s[t]:t).apply(s,arguments)}var s=this;return setTimeout(i,e||0)},_hoverable:function(e){this.hoverable=this.hoverable.add(e),this._on(e,{mouseenter:function(e){this._addClass(t(e.currentTarget),null,"ui-state-hover")},mouseleave:function(e){this._removeClass(t(e.currentTarget),null,"ui-state-hover")}})},_focusable:function(e){this.focusable=this.focusable.add(e),this._on(e,{focusin:function(e){this._addClass(t(e.currentTarget),null,"ui-state-focus")},focusout:function(e){this._removeClass(t(e.currentTarget),null,"ui-state-focus")}})},_trigger:function(e,i,s){var n,o,a=this.options[e];if(s=s||{},i=t.Event(i),i.type=(e===this.widgetEventPrefix?e:this.widgetEventPrefix+e).toLowerCase(),i.target=this.element[0],o=i.originalEvent)for(n in o)n in i||(i[n]=o[n]);return this.element.trigger(i,s),!(t.isFunction(a)&&a.apply(this.element[0],[i].concat(s))===!1||i.isDefaultPrevented())}},t.each({show:"fadeIn",hide:"fadeOut"},function(e,i){t.Widget.prototype["_"+e]=function(s,n,o){"string"==typeof n&&(n={effect:n});var a,r=n?n===!0||"number"==typeof n?i:n.effect||i:e;n=n||{},"number"==typeof n&&(n={duration:n}),a=!t.isEmptyObject(n),n.complete=o,n.delay&&s.delay(n.delay),a&&t.effects&&t.effects.effect[r]?s[e](n):r!==e&&s[r]?s[r](n.duration,n.easing,o):s.queue(function(i){t(this)[e](),o&&o.call(s[0]),i()})}}),t.widget,function(){function e(t,e,i){return[parseFloat(t[0])*(u.test(t[0])?e/100:1),parseFloat(t[1])*(u.test(t[1])?i/100:1)]}function i(e,i){return parseInt(t.css(e,i),10)||0}function s(e){var i=e[0];return 9===i.nodeType?{width:e.width(),height:e.height(),offset:{top:0,left:0}}:t.isWindow(i)?{width:e.width(),height:e.height(),offset:{top:e.scrollTop(),left:e.scrollLeft()}}:i.preventDefault?{width:0,height:0,offset:{top:i.pageY,left:i.pageX}}:{width:e.outerWidth(),height:e.outerHeight(),offset:e.offset()}}var n,o=Math.max,a=Math.abs,r=/left|center|right/,l=/top|center|bottom/,h=/[\+\-]\d+(\.[\d]+)?%?/,c=/^\w+/,u=/%$/,d=t.fn.position;t.position={scrollbarWidth:function(){if(void 0!==n)return n;var e,i,s=t("
"),o=s.children()[0];return t("body").append(s),e=o.offsetWidth,s.css("overflow","scroll"),i=o.offsetWidth,e===i&&(i=s[0].clientWidth),s.remove(),n=e-i},getScrollInfo:function(e){var i=e.isWindow||e.isDocument?"":e.element.css("overflow-x"),s=e.isWindow||e.isDocument?"":e.element.css("overflow-y"),n="scroll"===i||"auto"===i&&e.widthi?"left":e>0?"right":"center",vertical:0>r?"top":s>0?"bottom":"middle"};h>p&&p>a(e+i)&&(u.horizontal="center"),c>f&&f>a(s+r)&&(u.vertical="middle"),u.important=o(a(e),a(i))>o(a(s),a(r))?"horizontal":"vertical",n.using.call(this,t,u)}),l.offset(t.extend(D,{using:r}))})},t.ui.position={fit:{left:function(t,e){var i,s=e.within,n=s.isWindow?s.scrollLeft:s.offset.left,a=s.width,r=t.left-e.collisionPosition.marginLeft,l=n-r,h=r+e.collisionWidth-a-n;e.collisionWidth>a?l>0&&0>=h?(i=t.left+l+e.collisionWidth-a-n,t.left+=l-i):t.left=h>0&&0>=l?n:l>h?n+a-e.collisionWidth:n:l>0?t.left+=l:h>0?t.left-=h:t.left=o(t.left-r,t.left)},top:function(t,e){var i,s=e.within,n=s.isWindow?s.scrollTop:s.offset.top,a=e.within.height,r=t.top-e.collisionPosition.marginTop,l=n-r,h=r+e.collisionHeight-a-n;e.collisionHeight>a?l>0&&0>=h?(i=t.top+l+e.collisionHeight-a-n,t.top+=l-i):t.top=h>0&&0>=l?n:l>h?n+a-e.collisionHeight:n:l>0?t.top+=l:h>0?t.top-=h:t.top=o(t.top-r,t.top)}},flip:{left:function(t,e){var i,s,n=e.within,o=n.offset.left+n.scrollLeft,r=n.width,l=n.isWindow?n.scrollLeft:n.offset.left,h=t.left-e.collisionPosition.marginLeft,c=h-l,u=h+e.collisionWidth-r-l,d="left"===e.my[0]?-e.elemWidth:"right"===e.my[0]?e.elemWidth:0,p="left"===e.at[0]?e.targetWidth:"right"===e.at[0]?-e.targetWidth:0,f=-2*e.offset[0];0>c?(i=t.left+d+p+f+e.collisionWidth-r-o,(0>i||a(c)>i)&&(t.left+=d+p+f)):u>0&&(s=t.left-e.collisionPosition.marginLeft+d+p+f-l,(s>0||u>a(s))&&(t.left+=d+p+f))},top:function(t,e){var i,s,n=e.within,o=n.offset.top+n.scrollTop,r=n.height,l=n.isWindow?n.scrollTop:n.offset.top,h=t.top-e.collisionPosition.marginTop,c=h-l,u=h+e.collisionHeight-r-l,d="top"===e.my[1],p=d?-e.elemHeight:"bottom"===e.my[1]?e.elemHeight:0,f="top"===e.at[1]?e.targetHeight:"bottom"===e.at[1]?-e.targetHeight:0,g=-2*e.offset[1];0>c?(s=t.top+p+f+g+e.collisionHeight-r-o,(0>s||a(c)>s)&&(t.top+=p+f+g)):u>0&&(i=t.top-e.collisionPosition.marginTop+p+f+g-l,(i>0||u>a(i))&&(t.top+=p+f+g))}},flipfit:{left:function(){t.ui.position.flip.left.apply(this,arguments),t.ui.position.fit.left.apply(this,arguments)},top:function(){t.ui.position.flip.top.apply(this,arguments),t.ui.position.fit.top.apply(this,arguments)}}}}(),t.ui.position,t.ui.keyCode={BACKSPACE:8,COMMA:188,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,LEFT:37,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SPACE:32,TAB:9,UP:38},t.fn.extend({uniqueId:function(){var t=0;return function(){return this.each(function(){this.id||(this.id="ui-id-"+ ++t)})}}(),removeUniqueId:function(){return this.each(function(){/^ui-id-\d+$/.test(this.id)&&t(this).removeAttr("id")})}}),t.ui.safeActiveElement=function(t){var e;try{e=t.activeElement}catch(i){e=t.body}return e||(e=t.body),e.nodeName||(e=t.body),e},t.widget("ui.menu",{version:"1.12.1",defaultElement:"
    ",delay:300,options:{icons:{submenu:"ui-icon-caret-1-e"},items:"> *",menus:"ul",position:{my:"left top",at:"right top"},role:"menu",blur:null,focus:null,select:null},_create:function(){this.activeMenu=this.element,this.mouseHandled=!1,this.element.uniqueId().attr({role:this.options.role,tabIndex:0}),this._addClass("ui-menu","ui-widget ui-widget-content"),this._on({"mousedown .ui-menu-item":function(t){t.preventDefault()},"click .ui-menu-item":function(e){var i=t(e.target),s=t(t.ui.safeActiveElement(this.document[0]));!this.mouseHandled&&i.not(".ui-state-disabled").length&&(this.select(e),e.isPropagationStopped()||(this.mouseHandled=!0),i.has(".ui-menu").length?this.expand(e):!this.element.is(":focus")&&s.closest(".ui-menu").length&&(this.element.trigger("focus",[!0]),this.active&&1===this.active.parents(".ui-menu").length&&clearTimeout(this.timer)))},"mouseenter .ui-menu-item":function(e){if(!this.previousFilter){var i=t(e.target).closest(".ui-menu-item"),s=t(e.currentTarget);i[0]===s[0]&&(this._removeClass(s.siblings().children(".ui-state-active"),null,"ui-state-active"),this.focus(e,s))}},mouseleave:"collapseAll","mouseleave .ui-menu":"collapseAll",focus:function(t,e){var i=this.active||this.element.find(this.options.items).eq(0);e||this.focus(t,i)},blur:function(e){this._delay(function(){var i=!t.contains(this.element[0],t.ui.safeActiveElement(this.document[0]));i&&this.collapseAll(e)})},keydown:"_keydown"}),this.refresh(),this._on(this.document,{click:function(t){this._closeOnDocumentClick(t)&&this.collapseAll(t),this.mouseHandled=!1}})},_destroy:function(){var e=this.element.find(".ui-menu-item").removeAttr("role aria-disabled"),i=e.children(".ui-menu-item-wrapper").removeUniqueId().removeAttr("tabIndex role aria-haspopup");this.element.removeAttr("aria-activedescendant").find(".ui-menu").addBack().removeAttr("role aria-labelledby aria-expanded aria-hidden aria-disabled tabIndex").removeUniqueId().show(),i.children().each(function(){var e=t(this);e.data("ui-menu-submenu-caret")&&e.remove()})},_keydown:function(e){var i,s,n,o,a=!0;switch(e.keyCode){case t.ui.keyCode.PAGE_UP:this.previousPage(e);break;case t.ui.keyCode.PAGE_DOWN:this.nextPage(e);break;case t.ui.keyCode.HOME:this._move("first","first",e);break;case t.ui.keyCode.END:this._move("last","last",e);break;case t.ui.keyCode.UP:this.previous(e);break;case t.ui.keyCode.DOWN:this.next(e);break;case t.ui.keyCode.LEFT:this.collapse(e);break;case t.ui.keyCode.RIGHT:this.active&&!this.active.is(".ui-state-disabled")&&this.expand(e);break;case t.ui.keyCode.ENTER:case t.ui.keyCode.SPACE:this._activate(e);break;case t.ui.keyCode.ESCAPE:this.collapse(e);break;default:a=!1,s=this.previousFilter||"",o=!1,n=e.keyCode>=96&&105>=e.keyCode?""+(e.keyCode-96):String.fromCharCode(e.keyCode),clearTimeout(this.filterTimer),n===s?o=!0:n=s+n,i=this._filterMenuItems(n),i=o&&-1!==i.index(this.active.next())?this.active.nextAll(".ui-menu-item"):i,i.length||(n=String.fromCharCode(e.keyCode),i=this._filterMenuItems(n)),i.length?(this.focus(e,i),this.previousFilter=n,this.filterTimer=this._delay(function(){delete this.previousFilter},1e3)):delete this.previousFilter}a&&e.preventDefault()},_activate:function(t){this.active&&!this.active.is(".ui-state-disabled")&&(this.active.children("[aria-haspopup='true']").length?this.expand(t):this.select(t))},refresh:function(){var e,i,s,n,o,a=this,r=this.options.icons.submenu,l=this.element.find(this.options.menus);this._toggleClass("ui-menu-icons",null,!!this.element.find(".ui-icon").length),s=l.filter(":not(.ui-menu)").hide().attr({role:this.options.role,"aria-hidden":"true","aria-expanded":"false"}).each(function(){var e=t(this),i=e.prev(),s=t("").data("ui-menu-submenu-caret",!0);a._addClass(s,"ui-menu-icon","ui-icon "+r),i.attr("aria-haspopup","true").prepend(s),e.attr("aria-labelledby",i.attr("id"))}),this._addClass(s,"ui-menu","ui-widget ui-widget-content ui-front"),e=l.add(this.element),i=e.find(this.options.items),i.not(".ui-menu-item").each(function(){var e=t(this);a._isDivider(e)&&a._addClass(e,"ui-menu-divider","ui-widget-content")}),n=i.not(".ui-menu-item, .ui-menu-divider"),o=n.children().not(".ui-menu").uniqueId().attr({tabIndex:-1,role:this._itemRole()}),this._addClass(n,"ui-menu-item")._addClass(o,"ui-menu-item-wrapper"),i.filter(".ui-state-disabled").attr("aria-disabled","true"),this.active&&!t.contains(this.element[0],this.active[0])&&this.blur()},_itemRole:function(){return{menu:"menuitem",listbox:"option"}[this.options.role]},_setOption:function(t,e){if("icons"===t){var i=this.element.find(".ui-menu-icon");this._removeClass(i,null,this.options.icons.submenu)._addClass(i,null,e.submenu)}this._super(t,e)},_setOptionDisabled:function(t){this._super(t),this.element.attr("aria-disabled",t+""),this._toggleClass(null,"ui-state-disabled",!!t)},focus:function(t,e){var i,s,n;this.blur(t,t&&"focus"===t.type),this._scrollIntoView(e),this.active=e.first(),s=this.active.children(".ui-menu-item-wrapper"),this._addClass(s,null,"ui-state-active"),this.options.role&&this.element.attr("aria-activedescendant",s.attr("id")),n=this.active.parent().closest(".ui-menu-item").children(".ui-menu-item-wrapper"),this._addClass(n,null,"ui-state-active"),t&&"keydown"===t.type?this._close():this.timer=this._delay(function(){this._close()},this.delay),i=e.children(".ui-menu"),i.length&&t&&/^mouse/.test(t.type)&&this._startOpening(i),this.activeMenu=e.parent(),this._trigger("focus",t,{item:e})},_scrollIntoView:function(e){var i,s,n,o,a,r;this._hasScroll()&&(i=parseFloat(t.css(this.activeMenu[0],"borderTopWidth"))||0,s=parseFloat(t.css(this.activeMenu[0],"paddingTop"))||0,n=e.offset().top-this.activeMenu.offset().top-i-s,o=this.activeMenu.scrollTop(),a=this.activeMenu.height(),r=e.outerHeight(),0>n?this.activeMenu.scrollTop(o+n):n+r>a&&this.activeMenu.scrollTop(o+n-a+r))},blur:function(t,e){e||clearTimeout(this.timer),this.active&&(this._removeClass(this.active.children(".ui-menu-item-wrapper"),null,"ui-state-active"),this._trigger("blur",t,{item:this.active}),this.active=null)},_startOpening:function(t){clearTimeout(this.timer),"true"===t.attr("aria-hidden")&&(this.timer=this._delay(function(){this._close(),this._open(t)},this.delay))},_open:function(e){var i=t.extend({of:this.active},this.options.position);clearTimeout(this.timer),this.element.find(".ui-menu").not(e.parents(".ui-menu")).hide().attr("aria-hidden","true"),e.show().removeAttr("aria-hidden").attr("aria-expanded","true").position(i)},collapseAll:function(e,i){clearTimeout(this.timer),this.timer=this._delay(function(){var s=i?this.element:t(e&&e.target).closest(this.element.find(".ui-menu"));s.length||(s=this.element),this._close(s),this.blur(e),this._removeClass(s.find(".ui-state-active"),null,"ui-state-active"),this.activeMenu=s},this.delay)},_close:function(t){t||(t=this.active?this.active.parent():this.element),t.find(".ui-menu").hide().attr("aria-hidden","true").attr("aria-expanded","false")},_closeOnDocumentClick:function(e){return!t(e.target).closest(".ui-menu").length},_isDivider:function(t){return!/[^\-\u2014\u2013\s]/.test(t.text())},collapse:function(t){var e=this.active&&this.active.parent().closest(".ui-menu-item",this.element);e&&e.length&&(this._close(),this.focus(t,e))},expand:function(t){var e=this.active&&this.active.children(".ui-menu ").find(this.options.items).first();e&&e.length&&(this._open(e.parent()),this._delay(function(){this.focus(t,e)}))},next:function(t){this._move("next","first",t)},previous:function(t){this._move("prev","last",t)},isFirstItem:function(){return this.active&&!this.active.prevAll(".ui-menu-item").length},isLastItem:function(){return this.active&&!this.active.nextAll(".ui-menu-item").length},_move:function(t,e,i){var s;this.active&&(s="first"===t||"last"===t?this.active["first"===t?"prevAll":"nextAll"](".ui-menu-item").eq(-1):this.active[t+"All"](".ui-menu-item").eq(0)),s&&s.length&&this.active||(s=this.activeMenu.find(this.options.items)[e]()),this.focus(i,s)},nextPage:function(e){var i,s,n;return this.active?(this.isLastItem()||(this._hasScroll()?(s=this.active.offset().top,n=this.element.height(),this.active.nextAll(".ui-menu-item").each(function(){return i=t(this),0>i.offset().top-s-n}),this.focus(e,i)):this.focus(e,this.activeMenu.find(this.options.items)[this.active?"last":"first"]())),void 0):(this.next(e),void 0)},previousPage:function(e){var i,s,n;return this.active?(this.isFirstItem()||(this._hasScroll()?(s=this.active.offset().top,n=this.element.height(),this.active.prevAll(".ui-menu-item").each(function(){return i=t(this),i.offset().top-s+n>0}),this.focus(e,i)):this.focus(e,this.activeMenu.find(this.options.items).first())),void 0):(this.next(e),void 0)},_hasScroll:function(){return this.element.outerHeight()",options:{appendTo:null,autoFocus:!1,delay:300,minLength:1,position:{my:"left top",at:"left bottom",collision:"none"},source:null,change:null,close:null,focus:null,open:null,response:null,search:null,select:null},requestIndex:0,pending:0,_create:function(){var e,i,s,n=this.element[0].nodeName.toLowerCase(),o="textarea"===n,a="input"===n;this.isMultiLine=o||!a&&this._isContentEditable(this.element),this.valueMethod=this.element[o||a?"val":"text"],this.isNewMenu=!0,this._addClass("ui-autocomplete-input"),this.element.attr("autocomplete","off"),this._on(this.element,{keydown:function(n){if(this.element.prop("readOnly"))return e=!0,s=!0,i=!0,void 0;e=!1,s=!1,i=!1;var o=t.ui.keyCode;switch(n.keyCode){case o.PAGE_UP:e=!0,this._move("previousPage",n);break;case o.PAGE_DOWN:e=!0,this._move("nextPage",n);break;case o.UP:e=!0,this._keyEvent("previous",n);break;case o.DOWN:e=!0,this._keyEvent("next",n);break;case o.ENTER:this.menu.active&&(e=!0,n.preventDefault(),this.menu.select(n));break;case o.TAB:this.menu.active&&this.menu.select(n);break;case o.ESCAPE:this.menu.element.is(":visible")&&(this.isMultiLine||this._value(this.term),this.close(n),n.preventDefault());break;default:i=!0,this._searchTimeout(n)}},keypress:function(s){if(e)return e=!1,(!this.isMultiLine||this.menu.element.is(":visible"))&&s.preventDefault(),void 0;if(!i){var n=t.ui.keyCode;switch(s.keyCode){case n.PAGE_UP:this._move("previousPage",s);break;case n.PAGE_DOWN:this._move("nextPage",s);break;case n.UP:this._keyEvent("previous",s);break;case n.DOWN:this._keyEvent("next",s)}}},input:function(t){return s?(s=!1,t.preventDefault(),void 0):(this._searchTimeout(t),void 0)},focus:function(){this.selectedItem=null,this.previous=this._value()},blur:function(t){return this.cancelBlur?(delete this.cancelBlur,void 0):(clearTimeout(this.searching),this.close(t),this._change(t),void 0)}}),this._initSource(),this.menu=t("
      ").appendTo(this._appendTo()).menu({role:null}).hide().menu("instance"),this._addClass(this.menu.element,"ui-autocomplete","ui-front"),this._on(this.menu.element,{mousedown:function(e){e.preventDefault(),this.cancelBlur=!0,this._delay(function(){delete this.cancelBlur,this.element[0]!==t.ui.safeActiveElement(this.document[0])&&this.element.trigger("focus")})},menufocus:function(e,i){var s,n;return this.isNewMenu&&(this.isNewMenu=!1,e.originalEvent&&/^mouse/.test(e.originalEvent.type))?(this.menu.blur(),this.document.one("mousemove",function(){t(e.target).trigger(e.originalEvent)}),void 0):(n=i.item.data("ui-autocomplete-item"),!1!==this._trigger("focus",e,{item:n})&&e.originalEvent&&/^key/.test(e.originalEvent.type)&&this._value(n.value),s=i.item.attr("aria-label")||n.value,s&&t.trim(s).length&&(this.liveRegion.children().hide(),t("
      ").text(s).appendTo(this.liveRegion)),void 0)},menuselect:function(e,i){var s=i.item.data("ui-autocomplete-item"),n=this.previous;this.element[0]!==t.ui.safeActiveElement(this.document[0])&&(this.element.trigger("focus"),this.previous=n,this._delay(function(){this.previous=n,this.selectedItem=s})),!1!==this._trigger("select",e,{item:s})&&this._value(s.value),this.term=this._value(),this.close(e),this.selectedItem=s}}),this.liveRegion=t("
      ",{role:"status","aria-live":"assertive","aria-relevant":"additions"}).appendTo(this.document[0].body),this._addClass(this.liveRegion,null,"ui-helper-hidden-accessible"),this._on(this.window,{beforeunload:function(){this.element.removeAttr("autocomplete")}})},_destroy:function(){clearTimeout(this.searching),this.element.removeAttr("autocomplete"),this.menu.element.remove(),this.liveRegion.remove()},_setOption:function(t,e){this._super(t,e),"source"===t&&this._initSource(),"appendTo"===t&&this.menu.element.appendTo(this._appendTo()),"disabled"===t&&e&&this.xhr&&this.xhr.abort()},_isEventTargetInWidget:function(e){var i=this.menu.element[0];return e.target===this.element[0]||e.target===i||t.contains(i,e.target)},_closeOnClickOutside:function(t){this._isEventTargetInWidget(t)||this.close()},_appendTo:function(){var e=this.options.appendTo;return e&&(e=e.jquery||e.nodeType?t(e):this.document.find(e).eq(0)),e&&e[0]||(e=this.element.closest(".ui-front, dialog")),e.length||(e=this.document[0].body),e},_initSource:function(){var e,i,s=this;t.isArray(this.options.source)?(e=this.options.source,this.source=function(i,s){s(t.ui.autocomplete.filter(e,i.term))}):"string"==typeof this.options.source?(i=this.options.source,this.source=function(e,n){s.xhr&&s.xhr.abort(),s.xhr=t.ajax({url:i,data:e,dataType:"json",success:function(t){n(t)},error:function(){n([])}})}):this.source=this.options.source},_searchTimeout:function(t){clearTimeout(this.searching),this.searching=this._delay(function(){var e=this.term===this._value(),i=this.menu.element.is(":visible"),s=t.altKey||t.ctrlKey||t.metaKey||t.shiftKey;(!e||e&&!i&&!s)&&(this.selectedItem=null,this.search(null,t))},this.options.delay)},search:function(t,e){return t=null!=t?t:this._value(),this.term=this._value(),t.length").append(t("
      ").text(i.label)).appendTo(e)},_move:function(t,e){return this.menu.element.is(":visible")?this.menu.isFirstItem()&&/^previous/.test(t)||this.menu.isLastItem()&&/^next/.test(t)?(this.isMultiLine||this._value(this.term),this.menu.blur(),void 0):(this.menu[t](e),void 0):(this.search(null,e),void 0)},widget:function(){return this.menu.element},_value:function(){return this.valueMethod.apply(this.element,arguments)},_keyEvent:function(t,e){(!this.isMultiLine||this.menu.element.is(":visible"))&&(this._move(t,e),e.preventDefault())},_isContentEditable:function(t){if(!t.length)return!1;var e=t.prop("contentEditable");return"inherit"===e?this._isContentEditable(t.parent()):"true"===e}}),t.extend(t.ui.autocomplete,{escapeRegex:function(t){return t.replace(/[\-\[\]{}()*+?.,\\\^$|#\s]/g,"\\$&")},filter:function(e,i){var s=RegExp(t.ui.autocomplete.escapeRegex(i),"i");return t.grep(e,function(t){return s.test(t.label||t.value||t)})}}),t.widget("ui.autocomplete",t.ui.autocomplete,{options:{messages:{noResults:"No search results.",results:function(t){return t+(t>1?" results are":" result is")+" available, use up and down arrow keys to navigate."}}},__response:function(e){var i;this._superApply(arguments),this.options.disabled||this.cancelSearch||(i=e&&e.length?this.options.messages.results(e.length):this.options.messages.noResults,this.liveRegion.children().hide(),t("
      ").text(i).appendTo(this.liveRegion))}}),t.ui.autocomplete}); \ No newline at end of file diff --git a/docs/script-dir/jquery-ui.structure.min.css b/docs/script-dir/jquery-ui.structure.min.css new file mode 100644 index 0000000..e880892 --- /dev/null +++ b/docs/script-dir/jquery-ui.structure.min.css @@ -0,0 +1,5 @@ +/*! jQuery UI - v1.12.1 - 2018-12-06 +* http://jqueryui.com +* Copyright jQuery Foundation and other contributors; Licensed MIT */ + +.ui-helper-hidden{display:none}.ui-helper-hidden-accessible{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.ui-helper-reset{margin:0;padding:0;border:0;outline:0;line-height:1.3;text-decoration:none;font-size:100%;list-style:none}.ui-helper-clearfix:before,.ui-helper-clearfix:after{content:"";display:table;border-collapse:collapse}.ui-helper-clearfix:after{clear:both}.ui-helper-zfix{width:100%;height:100%;top:0;left:0;position:absolute;opacity:0;filter:Alpha(Opacity=0)}.ui-front{z-index:100}.ui-state-disabled{cursor:default!important;pointer-events:none}.ui-icon{display:inline-block;vertical-align:middle;margin-top:-.25em;position:relative;text-indent:-99999px;overflow:hidden;background-repeat:no-repeat}.ui-widget-icon-block{left:50%;margin-left:-8px;display:block}.ui-widget-overlay{position:fixed;top:0;left:0;width:100%;height:100%}.ui-autocomplete{position:absolute;top:0;left:0;cursor:default}.ui-menu{list-style:none;padding:0;margin:0;display:block;outline:0}.ui-menu .ui-menu{position:absolute}.ui-menu .ui-menu-item{margin:0;cursor:pointer;list-style-image:url("data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7")}.ui-menu .ui-menu-item-wrapper{position:relative;padding:3px 1em 3px .4em}.ui-menu .ui-menu-divider{margin:5px 0;height:0;font-size:0;line-height:0;border-width:1px 0 0 0}.ui-menu .ui-state-focus,.ui-menu .ui-state-active{margin:-1px}.ui-menu-icons{position:relative}.ui-menu-icons .ui-menu-item-wrapper{padding-left:2em}.ui-menu .ui-icon{position:absolute;top:0;bottom:0;left:.2em;margin:auto 0}.ui-menu .ui-menu-icon{left:auto;right:0} \ No newline at end of file diff --git a/docs/script.js b/docs/script.js new file mode 100644 index 0000000..864989c --- /dev/null +++ b/docs/script.js @@ -0,0 +1,132 @@ +/* + * Copyright (c) 2013, 2020, Oracle and/or its affiliates. All rights reserved. + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * This code is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License version 2 only, as + * published by the Free Software Foundation. Oracle designates this + * particular file as subject to the "Classpath" exception as provided + * by Oracle in the LICENSE file that accompanied this code. + * + * This code is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + * version 2 for more details (a copy is included in the LICENSE file that + * accompanied this code). + * + * You should have received a copy of the GNU General Public License version + * 2 along with this work; if not, write to the Free Software Foundation, + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. + * + * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA + * or visit www.oracle.com if you need additional information or have any + * questions. + */ + +var moduleSearchIndex; +var packageSearchIndex; +var typeSearchIndex; +var memberSearchIndex; +var tagSearchIndex; +function loadScripts(doc, tag) { + createElem(doc, tag, 'search.js'); + + createElem(doc, tag, 'module-search-index.js'); + createElem(doc, tag, 'package-search-index.js'); + createElem(doc, tag, 'type-search-index.js'); + createElem(doc, tag, 'member-search-index.js'); + createElem(doc, tag, 'tag-search-index.js'); +} + +function createElem(doc, tag, path) { + var script = doc.createElement(tag); + var scriptElement = doc.getElementsByTagName(tag)[0]; + script.src = pathtoroot + path; + scriptElement.parentNode.insertBefore(script, scriptElement); +} + +function show(tableId, selected, columns) { + if (tableId !== selected) { + document.querySelectorAll('div.' + tableId + ':not(.' + selected + ')') + .forEach(function(elem) { + elem.style.display = 'none'; + }); + } + document.querySelectorAll('div.' + selected) + .forEach(function(elem, index) { + elem.style.display = ''; + var isEvenRow = index % (columns * 2) < columns; + elem.classList.remove(isEvenRow ? oddRowColor : evenRowColor); + elem.classList.add(isEvenRow ? evenRowColor : oddRowColor); + }); + updateTabs(tableId, selected); +} + +function updateTabs(tableId, selected) { + document.querySelector('div#' + tableId +' .summary-table') + .setAttribute('aria-labelledby', selected); + document.querySelectorAll('button[id^="' + tableId + '"]') + .forEach(function(tab, index) { + if (selected === tab.id || (tableId === selected && index === 0)) { + tab.className = activeTableTab; + tab.setAttribute('aria-selected', true); + tab.setAttribute('tabindex',0); + } else { + tab.className = tableTab; + tab.setAttribute('aria-selected', false); + tab.setAttribute('tabindex',-1); + } + }); +} + +function switchTab(e) { + var selected = document.querySelector('[aria-selected=true]'); + if (selected) { + if ((e.keyCode === 37 || e.keyCode === 38) && selected.previousSibling) { + // left or up arrow key pressed: move focus to previous tab + selected.previousSibling.click(); + selected.previousSibling.focus(); + e.preventDefault(); + } else if ((e.keyCode === 39 || e.keyCode === 40) && selected.nextSibling) { + // right or down arrow key pressed: move focus to next tab + selected.nextSibling.click(); + selected.nextSibling.focus(); + e.preventDefault(); + } + } +} + +var updateSearchResults = function() {}; + +function indexFilesLoaded() { + return moduleSearchIndex + && packageSearchIndex + && typeSearchIndex + && memberSearchIndex + && tagSearchIndex; +} + +// Workaround for scroll position not being included in browser history (8249133) +document.addEventListener("DOMContentLoaded", function(e) { + var contentDiv = document.querySelector("div.flex-content"); + window.addEventListener("popstate", function(e) { + if (e.state !== null) { + contentDiv.scrollTop = e.state; + } + }); + window.addEventListener("hashchange", function(e) { + history.replaceState(contentDiv.scrollTop, document.title); + }); + contentDiv.addEventListener("scroll", function(e) { + var timeoutID; + if (!timeoutID) { + timeoutID = setTimeout(function() { + history.replaceState(contentDiv.scrollTop, document.title); + timeoutID = null; + }, 100); + } + }); + if (!location.hash) { + history.replaceState(contentDiv.scrollTop, document.title); + } +}); diff --git a/docs/search.js b/docs/search.js new file mode 100644 index 0000000..db3b2f4 --- /dev/null +++ b/docs/search.js @@ -0,0 +1,354 @@ +/* + * Copyright (c) 2015, 2020, Oracle and/or its affiliates. All rights reserved. + * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. + * + * This code is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License version 2 only, as + * published by the Free Software Foundation. Oracle designates this + * particular file as subject to the "Classpath" exception as provided + * by Oracle in the LICENSE file that accompanied this code. + * + * This code is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License + * version 2 for more details (a copy is included in the LICENSE file that + * accompanied this code). + * + * You should have received a copy of the GNU General Public License version + * 2 along with this work; if not, write to the Free Software Foundation, + * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA. + * + * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA + * or visit www.oracle.com if you need additional information or have any + * questions. + */ + +var noResult = {l: "No results found"}; +var loading = {l: "Loading search index..."}; +var catModules = "Modules"; +var catPackages = "Packages"; +var catTypes = "Classes and Interfaces"; +var catMembers = "Members"; +var catSearchTags = "Search Tags"; +var highlight = "$&"; +var searchPattern = ""; +var fallbackPattern = ""; +var RANKING_THRESHOLD = 2; +var NO_MATCH = 0xffff; +var MIN_RESULTS = 3; +var MAX_RESULTS = 500; +var UNNAMED = ""; +function escapeHtml(str) { + return str.replace(//g, ">"); +} +function getHighlightedText(item, matcher, fallbackMatcher) { + var escapedItem = escapeHtml(item); + var highlighted = escapedItem.replace(matcher, highlight); + if (highlighted === escapedItem) { + highlighted = escapedItem.replace(fallbackMatcher, highlight) + } + return highlighted; +} +function getURLPrefix(ui) { + var urlPrefix=""; + var slash = "/"; + if (ui.item.category === catModules) { + return ui.item.l + slash; + } else if (ui.item.category === catPackages && ui.item.m) { + return ui.item.m + slash; + } else if (ui.item.category === catTypes || ui.item.category === catMembers) { + if (ui.item.m) { + urlPrefix = ui.item.m + slash; + } else { + $.each(packageSearchIndex, function(index, item) { + if (item.m && ui.item.p === item.l) { + urlPrefix = item.m + slash; + } + }); + } + } + return urlPrefix; +} +function createSearchPattern(term) { + var pattern = ""; + var isWordToken = false; + term.replace(/,\s*/g, ", ").trim().split(/\s+/).forEach(function(w, index) { + if (index > 0) { + // whitespace between identifiers is significant + pattern += (isWordToken && /^\w/.test(w)) ? "\\s+" : "\\s*"; + } + var tokens = w.split(/(?=[A-Z,.()<>[\/])/); + for (var i = 0; i < tokens.length; i++) { + var s = tokens[i]; + if (s === "") { + continue; + } + pattern += $.ui.autocomplete.escapeRegex(s); + isWordToken = /\w$/.test(s); + if (isWordToken) { + pattern += "([a-z0-9_$<>\\[\\]]*?)"; + } + } + }); + return pattern; +} +function createMatcher(pattern, flags) { + var isCamelCase = /[A-Z]/.test(pattern); + return new RegExp(pattern, flags + (isCamelCase ? "" : "i")); +} +var watermark = 'Search'; +$(function() { + var search = $("#search-input"); + var reset = $("#reset-button"); + search.val(''); + search.prop("disabled", false); + reset.prop("disabled", false); + search.val(watermark).addClass('watermark'); + search.blur(function() { + if ($(this).val().length === 0) { + $(this).val(watermark).addClass('watermark'); + } + }); + search.on('click keydown paste', function() { + if ($(this).val() === watermark) { + $(this).val('').removeClass('watermark'); + } + }); + reset.click(function() { + search.val('').focus(); + }); + search.focus()[0].setSelectionRange(0, 0); +}); +$.widget("custom.catcomplete", $.ui.autocomplete, { + _create: function() { + this._super(); + this.widget().menu("option", "items", "> :not(.ui-autocomplete-category)"); + }, + _renderMenu: function(ul, items) { + var rMenu = this; + var currentCategory = ""; + rMenu.menu.bindings = $(); + $.each(items, function(index, item) { + var li; + if (item.category && item.category !== currentCategory) { + ul.append("
    • " + item.category + "
    • "); + currentCategory = item.category; + } + li = rMenu._renderItemData(ul, item); + if (item.category) { + li.attr("aria-label", item.category + " : " + item.l); + li.attr("class", "result-item"); + } else { + li.attr("aria-label", item.l); + li.attr("class", "result-item"); + } + }); + }, + _renderItem: function(ul, item) { + var label = ""; + var matcher = createMatcher(escapeHtml(searchPattern), "g"); + var fallbackMatcher = new RegExp(fallbackPattern, "gi") + if (item.category === catModules) { + label = getHighlightedText(item.l, matcher, fallbackMatcher); + } else if (item.category === catPackages) { + label = getHighlightedText(item.l, matcher, fallbackMatcher); + } else if (item.category === catTypes) { + label = (item.p && item.p !== UNNAMED) + ? getHighlightedText(item.p + "." + item.l, matcher, fallbackMatcher) + : getHighlightedText(item.l, matcher, fallbackMatcher); + } else if (item.category === catMembers) { + label = (item.p && item.p !== UNNAMED) + ? getHighlightedText(item.p + "." + item.c + "." + item.l, matcher, fallbackMatcher) + : getHighlightedText(item.c + "." + item.l, matcher, fallbackMatcher); + } else if (item.category === catSearchTags) { + label = getHighlightedText(item.l, matcher, fallbackMatcher); + } else { + label = item.l; + } + var li = $("
    • ").appendTo(ul); + var div = $("
      ").appendTo(li); + if (item.category === catSearchTags && item.h) { + if (item.d) { + div.html(label + " (" + item.h + ")
      " + + item.d + "
      "); + } else { + div.html(label + " (" + item.h + ")"); + } + } else { + if (item.m) { + div.html(item.m + "/" + label); + } else { + div.html(label); + } + } + return li; + } +}); +function rankMatch(match, category) { + if (!match) { + return NO_MATCH; + } + var index = match.index; + var input = match.input; + var leftBoundaryMatch = 2; + var periferalMatch = 0; + // make sure match is anchored on a left word boundary + if (index === 0 || /\W/.test(input[index - 1]) || "_" === input[index]) { + leftBoundaryMatch = 0; + } else if ("_" === input[index - 1] || (input[index] === input[index].toUpperCase() && !/^[A-Z0-9_$]+$/.test(input))) { + leftBoundaryMatch = 1; + } + var matchEnd = index + match[0].length; + var leftParen = input.indexOf("("); + var endOfName = leftParen > -1 ? leftParen : input.length; + // exclude peripheral matches + if (category !== catModules && category !== catSearchTags) { + var delim = category === catPackages ? "/" : "."; + if (leftParen > -1 && leftParen < index) { + periferalMatch += 2; + } else if (input.lastIndexOf(delim, endOfName) >= matchEnd) { + periferalMatch += 2; + } + } + var delta = match[0].length === endOfName ? 0 : 1; // rank full match higher than partial match + for (var i = 1; i < match.length; i++) { + // lower ranking if parts of the name are missing + if (match[i]) + delta += match[i].length; + } + if (category === catTypes) { + // lower ranking if a type name contains unmatched camel-case parts + if (/[A-Z]/.test(input.substring(matchEnd))) + delta += 5; + if (/[A-Z]/.test(input.substring(0, index))) + delta += 5; + } + return leftBoundaryMatch + periferalMatch + (delta / 200); + +} +function doSearch(request, response) { + var result = []; + searchPattern = createSearchPattern(request.term); + fallbackPattern = createSearchPattern(request.term.toLowerCase()); + if (searchPattern === "") { + return this.close(); + } + var camelCaseMatcher = createMatcher(searchPattern, ""); + var fallbackMatcher = new RegExp(fallbackPattern, "i"); + + function searchIndexWithMatcher(indexArray, matcher, category, nameFunc) { + if (indexArray) { + var newResults = []; + $.each(indexArray, function (i, item) { + item.category = category; + var ranking = rankMatch(matcher.exec(nameFunc(item)), category); + if (ranking < RANKING_THRESHOLD) { + newResults.push({ranking: ranking, item: item}); + } + return newResults.length <= MAX_RESULTS; + }); + return newResults.sort(function(e1, e2) { + return e1.ranking - e2.ranking; + }).map(function(e) { + return e.item; + }); + } + return []; + } + function searchIndex(indexArray, category, nameFunc) { + var primaryResults = searchIndexWithMatcher(indexArray, camelCaseMatcher, category, nameFunc); + result = result.concat(primaryResults); + if (primaryResults.length <= MIN_RESULTS && !camelCaseMatcher.ignoreCase) { + var secondaryResults = searchIndexWithMatcher(indexArray, fallbackMatcher, category, nameFunc); + result = result.concat(secondaryResults.filter(function (item) { + return primaryResults.indexOf(item) === -1; + })); + } + } + + searchIndex(moduleSearchIndex, catModules, function(item) { return item.l; }); + searchIndex(packageSearchIndex, catPackages, function(item) { + return (item.m && request.term.indexOf("/") > -1) + ? (item.m + "/" + item.l) : item.l; + }); + searchIndex(typeSearchIndex, catTypes, function(item) { + return request.term.indexOf(".") > -1 ? item.p + "." + item.l : item.l; + }); + searchIndex(memberSearchIndex, catMembers, function(item) { + return request.term.indexOf(".") > -1 + ? item.p + "." + item.c + "." + item.l : item.l; + }); + searchIndex(tagSearchIndex, catSearchTags, function(item) { return item.l; }); + + if (!indexFilesLoaded()) { + updateSearchResults = function() { + doSearch(request, response); + } + result.unshift(loading); + } else { + updateSearchResults = function() {}; + } + response(result); +} +$(function() { + $("#search-input").catcomplete({ + minLength: 1, + delay: 300, + source: doSearch, + response: function(event, ui) { + if (!ui.content.length) { + ui.content.push(noResult); + } else { + $("#search-input").empty(); + } + }, + autoFocus: true, + focus: function(event, ui) { + return false; + }, + position: { + collision: "flip" + }, + select: function(event, ui) { + if (ui.item.category) { + var url = getURLPrefix(ui); + if (ui.item.category === catModules) { + url += "module-summary.html"; + } else if (ui.item.category === catPackages) { + if (ui.item.u) { + url = ui.item.u; + } else { + url += ui.item.l.replace(/\./g, '/') + "/package-summary.html"; + } + } else if (ui.item.category === catTypes) { + if (ui.item.u) { + url = ui.item.u; + } else if (ui.item.p === UNNAMED) { + url += ui.item.l + ".html"; + } else { + url += ui.item.p.replace(/\./g, '/') + "/" + ui.item.l + ".html"; + } + } else if (ui.item.category === catMembers) { + if (ui.item.p === UNNAMED) { + url += ui.item.c + ".html" + "#"; + } else { + url += ui.item.p.replace(/\./g, '/') + "/" + ui.item.c + ".html" + "#"; + } + if (ui.item.u) { + url += ui.item.u; + } else { + url += ui.item.l; + } + } else if (ui.item.category === catSearchTags) { + url += ui.item.u; + } + if (top !== window) { + parent.classFrame.location = pathtoroot + url; + } else { + window.location.href = pathtoroot + url; + } + $("#search-input").focus(); + } + } + }); +}); diff --git a/docs/serialized-form.html b/docs/serialized-form.html new file mode 100644 index 0000000..2de287a --- /dev/null +++ b/docs/serialized-form.html @@ -0,0 +1,78 @@ + + + + +Serialized Form + + + + + + + + + + + + + + + +
      + +
      +
      +
      +

      Serialized Form

      +
      + +
      +
      +
      + + diff --git a/docs/stylesheet.css b/docs/stylesheet.css new file mode 100644 index 0000000..836c62d --- /dev/null +++ b/docs/stylesheet.css @@ -0,0 +1,865 @@ +/* + * Javadoc style sheet + */ + +@import url('resources/fonts/dejavu.css'); + +/* + * Styles for individual HTML elements. + * + * These are styles that are specific to individual HTML elements. Changing them affects the style of a particular + * HTML element throughout the page. + */ + +body { + background-color:#ffffff; + color:#353833; + font-family:'DejaVu Sans', Arial, Helvetica, sans-serif; + font-size:14px; + margin:0; + padding:0; + height:100%; + width:100%; +} +iframe { + margin:0; + padding:0; + height:100%; + width:100%; + overflow-y:scroll; + border:none; +} +a:link, a:visited { + text-decoration:none; + color:#4A6782; +} +a[href]:hover, a[href]:focus { + text-decoration:none; + color:#bb7a2a; +} +a[name] { + color:#353833; +} +pre { + font-family:'DejaVu Sans Mono', monospace; + font-size:14px; +} +h1 { + font-size:20px; +} +h2 { + font-size:18px; +} +h3 { + font-size:16px; +} +h4 { + font-size:15px; +} +h5 { + font-size:14px; +} +h6 { + font-size:13px; +} +ul { + list-style-type:disc; +} +code, tt { + font-family:'DejaVu Sans Mono', monospace; +} +:not(h1, h2, h3, h4, h5, h6) > code, +:not(h1, h2, h3, h4, h5, h6) > tt { + font-size:14px; + padding-top:4px; + margin-top:8px; + line-height:1.4em; +} +dt code { + font-family:'DejaVu Sans Mono', monospace; + font-size:14px; + padding-top:4px; +} +.summary-table dt code { + font-family:'DejaVu Sans Mono', monospace; + font-size:14px; + vertical-align:top; + padding-top:4px; +} +sup { + font-size:8px; +} +button { + font-family: 'DejaVu Sans', Arial, Helvetica, sans-serif; + font-size: 14px; +} +/* + * Styles for HTML generated by javadoc. + * + * These are style classes that are used by the standard doclet to generate HTML documentation. + */ + +/* + * Styles for document title and copyright. + */ +.clear { + clear:both; + height:0; + overflow:hidden; +} +.about-language { + float:right; + padding:0 21px 8px 8px; + font-size:11px; + margin-top:-9px; + height:2.9em; +} +.legal-copy { + margin-left:.5em; +} +.tab { + background-color:#0066FF; + color:#ffffff; + padding:8px; + width:5em; + font-weight:bold; +} +/* + * Styles for navigation bar. + */ +@media screen { + .flex-box { + position:fixed; + display:flex; + flex-direction:column; + height: 100%; + width: 100%; + } + .flex-header { + flex: 0 0 auto; + } + .flex-content { + flex: 1 1 auto; + overflow-y: auto; + } +} +.top-nav { + background-color:#4D7A97; + color:#FFFFFF; + float:left; + padding:0; + width:100%; + clear:right; + min-height:2.8em; + padding-top:10px; + overflow:hidden; + font-size:12px; +} +.sub-nav { + background-color:#dee3e9; + float:left; + width:100%; + overflow:hidden; + font-size:12px; +} +.sub-nav div { + clear:left; + float:left; + padding:0 0 5px 6px; + text-transform:uppercase; +} +.sub-nav .nav-list { + padding-top:5px; +} +ul.nav-list { + display:block; + margin:0 25px 0 0; + padding:0; +} +ul.sub-nav-list { + float:left; + margin:0 25px 0 0; + padding:0; +} +ul.nav-list li { + list-style:none; + float:left; + padding: 5px 6px; + text-transform:uppercase; +} +.sub-nav .nav-list-search { + float:right; + margin:0 0 0 0; + padding:5px 6px; + clear:none; +} +.nav-list-search label { + position:relative; + right:-16px; +} +ul.sub-nav-list li { + list-style:none; + float:left; + padding-top:10px; +} +.top-nav a:link, .top-nav a:active, .top-nav a:visited { + color:#FFFFFF; + text-decoration:none; + text-transform:uppercase; +} +.top-nav a:hover { + text-decoration:none; + color:#bb7a2a; + text-transform:uppercase; +} +.nav-bar-cell1-rev { + background-color:#F8981D; + color:#253441; + margin: auto 5px; +} +.skip-nav { + position:absolute; + top:auto; + left:-9999px; + overflow:hidden; +} +/* + * Hide navigation links and search box in print layout + */ +@media print { + ul.nav-list, div.sub-nav { + display:none; + } +} +/* + * Styles for page header and footer. + */ +.title { + color:#2c4557; + margin:10px 0; +} +.sub-title { + margin:5px 0 0 0; +} +.header ul { + margin:0 0 15px 0; + padding:0; +} +.header ul li, .footer ul li { + list-style:none; + font-size:13px; +} +/* + * Styles for headings. + */ +body.class-declaration-page .summary h2, +body.class-declaration-page .details h2, +body.class-use-page h2, +body.module-declaration-page .block-list h2 { + font-style: italic; + padding:0; + margin:15px 0; +} +body.class-declaration-page .summary h3, +body.class-declaration-page .details h3, +body.class-declaration-page .summary .inherited-list h2 { + background-color:#dee3e9; + border:1px solid #d0d9e0; + margin:0 0 6px -8px; + padding:7px 5px; +} +/* + * Styles for page layout containers. + */ +main { + clear:both; + padding:10px 20px; + position:relative; +} +dl.notes > dt { + font-family: 'DejaVu Sans', Arial, Helvetica, sans-serif; + font-size:12px; + font-weight:bold; + margin:10px 0 0 0; + color:#4E4E4E; +} +dl.notes > dd { + margin:5px 10px 10px 0; + font-size:14px; + font-family:'DejaVu Serif', Georgia, "Times New Roman", Times, serif; +} +dl.name-value > dt { + margin-left:1px; + font-size:1.1em; + display:inline; + font-weight:bold; +} +dl.name-value > dd { + margin:0 0 0 1px; + font-size:1.1em; + display:inline; +} +/* + * Styles for lists. + */ +li.circle { + list-style:circle; +} +ul.horizontal li { + display:inline; + font-size:0.9em; +} +div.inheritance { + margin:0; + padding:0; +} +div.inheritance div.inheritance { + margin-left:2em; +} +ul.block-list, +ul.details-list, +ul.member-list, +ul.summary-list { + margin:10px 0 10px 0; + padding:0; +} +ul.block-list > li, +ul.details-list > li, +ul.member-list > li, +ul.summary-list > li { + list-style:none; + margin-bottom:15px; + line-height:1.4; +} +.summary-table dl, .summary-table dl dt, .summary-table dl dd { + margin-top:0; + margin-bottom:1px; +} +ul.see-list, ul.see-list-long { + padding-left: 0; + list-style: none; +} +ul.see-list li { + display: inline; +} +ul.see-list li:not(:last-child):after, +ul.see-list-long li:not(:last-child):after { + content: ", "; + white-space: pre-wrap; +} +/* + * Styles for tables. + */ +.summary-table, .details-table { + width:100%; + border-spacing:0; + border-left:1px solid #EEE; + border-right:1px solid #EEE; + border-bottom:1px solid #EEE; + padding:0; +} +.caption { + position:relative; + text-align:left; + background-repeat:no-repeat; + color:#253441; + font-weight:bold; + clear:none; + overflow:hidden; + padding:0; + padding-top:10px; + padding-left:1px; + margin:0; + white-space:pre; +} +.caption a:link, .caption a:visited { + color:#1f389c; +} +.caption a:hover, +.caption a:active { + color:#FFFFFF; +} +.caption span { + white-space:nowrap; + padding-top:5px; + padding-left:12px; + padding-right:12px; + padding-bottom:7px; + display:inline-block; + float:left; + background-color:#F8981D; + border: none; + height:16px; +} +div.table-tabs { + padding:10px 0 0 1px; + margin:0; +} +div.table-tabs > button { + border: none; + cursor: pointer; + padding: 5px 12px 7px 12px; + font-weight: bold; + margin-right: 3px; +} +div.table-tabs > button.active-table-tab { + background: #F8981D; + color: #253441; +} +div.table-tabs > button.table-tab { + background: #4D7A97; + color: #FFFFFF; +} +.two-column-summary { + display: grid; + grid-template-columns: minmax(15%, max-content) minmax(15%, auto); +} +.three-column-summary { + display: grid; + grid-template-columns: minmax(10%, max-content) minmax(15%, max-content) minmax(15%, auto); +} +.four-column-summary { + display: grid; + grid-template-columns: minmax(10%, max-content) minmax(10%, max-content) minmax(10%, max-content) minmax(10%, auto); +} +@media screen and (max-width: 600px) { + .two-column-summary { + display: grid; + grid-template-columns: 1fr; + } +} +@media screen and (max-width: 800px) { + .three-column-summary { + display: grid; + grid-template-columns: minmax(10%, max-content) minmax(25%, auto); + } + .three-column-summary .col-last { + grid-column-end: span 2; + } +} +@media screen and (max-width: 1000px) { + .four-column-summary { + display: grid; + grid-template-columns: minmax(15%, max-content) minmax(15%, auto); + } +} +.summary-table > div, .details-table > div { + text-align:left; + padding: 8px 3px 3px 7px; +} +.col-first, .col-second, .col-last, .col-constructor-name, .col-summary-item-name { + vertical-align:top; + padding-right:0; + padding-top:8px; + padding-bottom:3px; +} +.table-header { + background:#dee3e9; + font-weight: bold; +} +.col-first, .col-first { + font-size:13px; +} +.col-second, .col-second, .col-last, .col-constructor-name, .col-summary-item-name, .col-last { + font-size:13px; +} +.col-first, .col-second, .col-constructor-name { + vertical-align:top; + overflow: auto; +} +.col-last { + white-space:normal; +} +.col-first a:link, .col-first a:visited, +.col-second a:link, .col-second a:visited, +.col-first a:link, .col-first a:visited, +.col-second a:link, .col-second a:visited, +.col-constructor-name a:link, .col-constructor-name a:visited, +.col-summary-item-name a:link, .col-summary-item-name a:visited, +.constant-values-container a:link, .constant-values-container a:visited, +.all-classes-container a:link, .all-classes-container a:visited, +.all-packages-container a:link, .all-packages-container a:visited { + font-weight:bold; +} +.table-sub-heading-color { + background-color:#EEEEFF; +} +.even-row-color, .even-row-color .table-header { + background-color:#FFFFFF; +} +.odd-row-color, .odd-row-color .table-header { + background-color:#EEEEEF; +} +/* + * Styles for contents. + */ +.deprecated-content { + margin:0; + padding:10px 0; +} +div.block { + font-size:14px; + font-family:'DejaVu Serif', Georgia, "Times New Roman", Times, serif; +} +.col-last div { + padding-top:0; +} +.col-last a { + padding-bottom:3px; +} +.module-signature, +.package-signature, +.type-signature, +.member-signature { + font-family:'DejaVu Sans Mono', monospace; + font-size:14px; + margin:14px 0; + white-space: pre-wrap; +} +.module-signature, +.package-signature, +.type-signature { + margin-top: 0; +} +.member-signature .type-parameters-long, +.member-signature .parameters, +.member-signature .exceptions { + display: inline-block; + vertical-align: top; + white-space: pre; +} +.member-signature .type-parameters { + white-space: normal; +} +/* + * Styles for formatting effect. + */ +.source-line-no { + color:green; + padding:0 30px 0 0; +} +h1.hidden { + visibility:hidden; + overflow:hidden; + font-size:10px; +} +.block { + display:block; + margin:0 10px 5px 0; + color:#474747; +} +.deprecated-label, .descfrm-type-label, .implementation-label, .member-name-label, .member-name-link, +.module-label-in-package, .module-label-in-type, .override-specify-label, .package-label-in-type, +.package-hierarchy-label, .type-name-label, .type-name-link, .search-tag-link, .preview-label { + font-weight:bold; +} +.deprecation-comment, .help-footnote, .preview-comment { + font-style:italic; +} +.deprecation-block { + font-size:14px; + font-family:'DejaVu Serif', Georgia, "Times New Roman", Times, serif; + border-style:solid; + border-width:thin; + border-radius:10px; + padding:10px; + margin-bottom:10px; + margin-right:10px; + display:inline-block; +} +.preview-block { + font-size:14px; + font-family:'DejaVu Serif', Georgia, "Times New Roman", Times, serif; + border-style:solid; + border-width:thin; + border-radius:10px; + padding:10px; + margin-bottom:10px; + margin-right:10px; + display:inline-block; +} +div.block div.deprecation-comment { + font-style:normal; +} +/* + * Styles specific to HTML5 elements. + */ +main, nav, header, footer, section { + display:block; +} +/* + * Styles for javadoc search. + */ +.ui-autocomplete-category { + font-weight:bold; + font-size:15px; + padding:7px 0 7px 3px; + background-color:#4D7A97; + color:#FFFFFF; +} +.result-item { + font-size:13px; +} +.ui-autocomplete { + max-height:85%; + max-width:65%; + overflow-y:scroll; + overflow-x:scroll; + white-space:nowrap; + box-shadow: 0 3px 6px rgba(0,0,0,0.16), 0 3px 6px rgba(0,0,0,0.23); +} +ul.ui-autocomplete { + position:fixed; + z-index:999999; +} +ul.ui-autocomplete li { + float:left; + clear:both; + width:100%; +} +.result-highlight { + font-weight:bold; +} +#search-input { + background-image:url('resources/glass.png'); + background-size:13px; + background-repeat:no-repeat; + background-position:2px 3px; + padding-left:20px; + position:relative; + right:-18px; + width:400px; +} +#reset-button { + background-color: rgb(255,255,255); + background-image:url('resources/x.png'); + background-position:center; + background-repeat:no-repeat; + background-size:12px; + border:0 none; + width:16px; + height:16px; + position:relative; + left:-4px; + top:-4px; + font-size:0px; +} +.watermark { + color:#545454; +} +.search-tag-desc-result { + font-style:italic; + font-size:11px; +} +.search-tag-holder-result { + font-style:italic; + font-size:12px; +} +.search-tag-result:target { + background-color:yellow; +} +.module-graph span { + display:none; + position:absolute; +} +.module-graph:hover span { + display:block; + margin: -100px 0 0 100px; + z-index: 1; +} +.inherited-list { + margin: 10px 0 10px 0; +} +section.class-description { + line-height: 1.4; +} +.summary section[class$="-summary"], .details section[class$="-details"], +.class-uses .detail, .serialized-class-details { + padding: 0px 20px 5px 10px; + border: 1px solid #ededed; + background-color: #f8f8f8; +} +.inherited-list, section[class$="-details"] .detail { + padding:0 0 5px 8px; + background-color:#ffffff; + border:none; +} +.vertical-separator { + padding: 0 5px; +} +ul.help-section-list { + margin: 0; +} +ul.help-subtoc > li { + display: inline-block; + padding-right: 5px; + font-size: smaller; +} +ul.help-subtoc > li::before { + content: "\2022" ; + padding-right:2px; +} +span.help-note { + font-style: italic; +} +/* + * Indicator icon for external links. + */ +main a[href*="://"]::after { + content:""; + display:inline-block; + background-image:url('data:image/svg+xml; utf8, \ + \ + \ + '); + background-size:100% 100%; + width:7px; + height:7px; + margin-left:2px; + margin-bottom:4px; +} +main a[href*="://"]:hover::after, +main a[href*="://"]:focus::after { + background-image:url('data:image/svg+xml; utf8, \ + \ + \ + '); +} + +/* + * Styles for user-provided tables. + * + * borderless: + * No borders, vertical margins, styled caption. + * This style is provided for use with existing doc comments. + * In general, borderless tables should not be used for layout purposes. + * + * plain: + * Plain borders around table and cells, vertical margins, styled caption. + * Best for small tables or for complex tables for tables with cells that span + * rows and columns, when the "striped" style does not work well. + * + * striped: + * Borders around the table and vertical borders between cells, striped rows, + * vertical margins, styled caption. + * Best for tables that have a header row, and a body containing a series of simple rows. + */ + +table.borderless, +table.plain, +table.striped { + margin-top: 10px; + margin-bottom: 10px; +} +table.borderless > caption, +table.plain > caption, +table.striped > caption { + font-weight: bold; + font-size: smaller; +} +table.borderless th, table.borderless td, +table.plain th, table.plain td, +table.striped th, table.striped td { + padding: 2px 5px; +} +table.borderless, +table.borderless > thead > tr > th, table.borderless > tbody > tr > th, table.borderless > tr > th, +table.borderless > thead > tr > td, table.borderless > tbody > tr > td, table.borderless > tr > td { + border: none; +} +table.borderless > thead > tr, table.borderless > tbody > tr, table.borderless > tr { + background-color: transparent; +} +table.plain { + border-collapse: collapse; + border: 1px solid black; +} +table.plain > thead > tr, table.plain > tbody tr, table.plain > tr { + background-color: transparent; +} +table.plain > thead > tr > th, table.plain > tbody > tr > th, table.plain > tr > th, +table.plain > thead > tr > td, table.plain > tbody > tr > td, table.plain > tr > td { + border: 1px solid black; +} +table.striped { + border-collapse: collapse; + border: 1px solid black; +} +table.striped > thead { + background-color: #E3E3E3; +} +table.striped > thead > tr > th, table.striped > thead > tr > td { + border: 1px solid black; +} +table.striped > tbody > tr:nth-child(even) { + background-color: #EEE +} +table.striped > tbody > tr:nth-child(odd) { + background-color: #FFF +} +table.striped > tbody > tr > th, table.striped > tbody > tr > td { + border-left: 1px solid black; + border-right: 1px solid black; +} +table.striped > tbody > tr > th { + font-weight: normal; +} +/** + * Tweak font sizes and paddings for small screens. + */ +@media screen and (max-width: 1050px) { + #search-input { + width: 300px; + } +} +@media screen and (max-width: 800px) { + #search-input { + width: 200px; + } + .top-nav, + .bottom-nav { + font-size: 11px; + padding-top: 6px; + } + .sub-nav { + font-size: 11px; + } + .about-language { + padding-right: 16px; + } + ul.nav-list li, + .sub-nav .nav-list-search { + padding: 6px; + } + ul.sub-nav-list li { + padding-top: 5px; + } + main { + padding: 10px; + } + .summary section[class$="-summary"], .details section[class$="-details"], + .class-uses .detail, .serialized-class-details { + padding: 0 8px 5px 8px; + } + body { + -webkit-text-size-adjust: none; + } +} +@media screen and (max-width: 500px) { + #search-input { + width: 150px; + } + .top-nav, + .bottom-nav { + font-size: 10px; + } + .sub-nav { + font-size: 10px; + } + .about-language { + font-size: 10px; + padding-right: 12px; + } +} diff --git a/docs/tag-search-index.js b/docs/tag-search-index.js new file mode 100644 index 0000000..f38b3cb --- /dev/null +++ b/docs/tag-search-index.js @@ -0,0 +1 @@ +tagSearchIndex = [{"l":"Serialized Form","h":"","u":"serialized-form.html"}];updateSearchResults(); \ No newline at end of file diff --git a/docs/type-search-index.js b/docs/type-search-index.js new file mode 100644 index 0000000..eea9ac5 --- /dev/null +++ b/docs/type-search-index.js @@ -0,0 +1 @@ +typeSearchIndex = [{"l":"All Classes and Interfaces","u":"allclasses-index.html"},{"p":"io.github.simplex.api","l":"Context"},{"p":"io.github.simplex.api","l":"ExecutableService"},{"p":"io.github.simplex.api","l":"InvalidServiceException"},{"p":"io.github.simplex.api","l":"InvalidServicePoolException"},{"p":"io.github.simplex.api","l":"ISchedule"},{"p":"io.github.simplex.api","l":"IService"},{"p":"io.github.simplex.impl","l":"Main"},{"p":"io.github.simplex.simplexss","l":"SchedulingSystem"},{"p":"io.github.simplex.impl","l":"ServiceImpl"},{"p":"io.github.simplex.simplexss","l":"ServiceManager"},{"p":"io.github.simplex.simplexss","l":"ServicePool"}];updateSearchResults(); \ No newline at end of file