Uses of Package
com.ultikits.ultitools.utils
Packages that use com.ultikits.ultitools.utils
Package
Description
-
Classes in com.ultikits.ultitools.utils used by com.ultikits.ultitoolsClassDescriptionThe inbound UltiCloud features of one enabled plugin (plan 22-21, D-26, S-59, S-60); internal, not for module use.The files of the module subsystem and the transactions that change them: which folder modules load from, and how
/upm updatereplaces a module's JAR (#505, #513). -
Classes in com.ultikits.ultitools.utils used by com.ultikits.ultitools.commandsClassDescriptionThe outcomes of
CloudAuthManager.login(DeviceLoginListener).Raised when a module's own unload threw.The uninstall could not delete these JARs now -- the running server holds them open, or the folder is not writable -- and has recorded them, so the next start deletes them before any module loads (#518).The uninstall could not delete these JARs now and could not record their deletion for the next start either (#518).What an uninstall did, and what it could not determine. -
Classes in com.ultikits.ultitools.utils used by com.ultikits.ultitools.managerClassDescriptionThe subset of a module's
plugin.ymlthis framework needs: its declaredname:andmain:(both nullable - absent when the archive has none or reading failed), itsloadAfter:list, and its Bukkit-levelsoftdepend:/depend:lists (all three never null; empty when absent or reading failed), and its declaredversion:andapi-version:as text (both nullable, like name and main), which the load-failure refusal quotes to identify the module.Callbacks aPosixAttributePreserver.replaceInPlace(java.io.File, byte[], com.ultikits.ultitools.utils.PosixAttributePreserver.ReplaceInPlaceListener)caller supplies so each replace-in-place site can log accurate, resource-specific wording for exactly how the operation was declined or degraded -- this shared operation does not know or care whethertargetis a language catalogue or a provenance sidecar, only the caller does.The answer to one catalogue version lookup, as the start-up update check needs it: a version was found, the catalogue confirmed it has nothing to offer, or the lookup failed (the catalogue could not be reached, answered with an error status, or sent a body that could not be read). -
Classes in com.ultikits.ultitools.utils used by com.ultikits.ultitools.utilsClassDescriptionThe operator's switches as UltiCloud protocol capabilities (plan 22-21, S-65, S-66).The reconnect state machine of the UltiCloud v2 agent connection (as of 6.3.1).What a refusal or a close means for the connection.Work collected under the monitor and run after it is released: listener callbacks, log lines, socket opens and closes.One attempt's socket, as the state machine sees it.Callbacks to the owner (the cloud session).What
AgentConnection.reconnectNow()did.Events of one attempt's socket; each instance is bound to one attempt id.Opens one attempt's socket; must not block.The states of the connection.The connection's timers.Validates envelopes and dispatches framework handlers; internal, not for module use.Hears every request the capability gate refused because the operator's switch (or the handshake) does not allow it, after its correlatedcapability_not_acceptedreply was handed to the channel (22-23 fix): the place the remote action log records that refusal as one DENIED entry.The UltiCloud protocol v2 layer of one agent connection attempt (as of 6.3.1): the versioned handshake, the per-connection limits, the reliable-event resend and acknowledgement, the overflow report, inbound control errors and the liveCloudChannel.Lifecycle callbacks of one connection; never invoked while this protocol's lock is held.One validated welcome.The operator settings the panel mirrors next to its remote controls: thesettingsobject of the openinghello, and asettings.changedpayload only when the value differs from the last one reported.Turns the handler's stop or restart into one main-thread scheduler task, and answers whether a restart would actually restart this server.One version of one module, as the catalogue describes it.A finished download.A JSON answer.What happened to one request.The four removed filter layers, in the exact orderisSafeClassNameevaluated them.An immutable view ofCloudAuthManager.status()'s result.The outcomes ofCloudAuthManager.login(DeviceLoginListener).Completed unlink outcomes; none contains a credential.Immutable result of a manual reconnect request; an accepted attempt runs asynchronously.Whether a retry was accepted, or the reason no retry was queued.The inbound UltiCloud features of one enabled plugin (plan 22-21, D-26, S-59, S-60); internal, not for module use.The ports the inbound handlers are built from.What happened to one request.The result of one exchange.The bounded buffer of reliable events not yet acknowledged by the UltiCloud gateway (D-11, D-14, D-15).One unacknowledged reliable event.The persisted view of the buffer, read atomically byCloudOutbox.snapshot().The single owner of one UltiCloud login's entire lifetime.The mutable state of one device-code poll; touched only by its poll steps, one at a time.Schedules one device-login step; the test seam ofCloudSession.setDeviceSeamsForTesting(com.ultikits.ultitools.utils.DeviceAuthorizationClient, com.ultikits.ultitools.utils.CloudSession.DeviceStepScheduler, java.util.function.LongSupplier).Persists the reliable-delivery state -- theCloudOutboxand theCommandDedupeSet-- in<server root>/.ultikits/cloud-outbox.json(D-15, D-17, S-15), so unacknowledged events and recently seen command ids survive a restart.The validated content of a state file.A state file that cannot be used as a whole; the message names the reason, never the content.The ids of commands the UltiCloud gateway delivered recently, so a redelivered command is acknowledged but not run twice (D-16, D-17).One remembered command id, when it was first seen and its receipt, if any.Writes a rotated credential durably.The outcome of aCredentialStore.read()call.Shared command-id and player-link receipt ledger; internal, not for module use.The two REST calls of the RFC 8628 device authorization grant against UltiCloud protocol v2:POST /v1/device/authorizeandPOST /v1/device/token.Either aDeviceAuthorizationClient.Grantor the operator-facing reason the request failed.A device code and how to present it.The outcome of one token poll.RFC 8628 §3.5 outcomes, plus the two local ones.One frame's match outcome: theEconomyUtils.MatchKind, plus the resolved module name when (and only when)kind == RESOLVED.The three possible outcomes of matching one stack frame againstprefixToModule(Codex P2, PR #463, round 3): a barenullreturn collapsed "this frame belongs to no registered module" and "this frame's closest root is claimed by two or more DIFFERENT modules" into the same value, and the last two review rounds both found a defect that traces straight back to that conflation — aNONEframe must let the per-frame walk continue outward (a real non-match, no evidence either way), while anAMBIGUOUSframe must terminate the walk immediately (real evidence that a module frame exists here, but WHICH module cannot be determined) — seeEconomyUtils.attributeModule(StackTraceElement[], Map)'s own javadoc for why continuing past an ambiguous frame is itself the bug.Frames protocol replies over a socket handoff, enforcing correlation and UTF-8 frame limits.Progress callback interface for download operations.A fluent builder for creating ItemStacks with various properties.An extremely simple JSON builder.A super simple representation of a JSON object.Where the latest version of a module, and its download, come from.Named points of a transaction; a test crashes at one to reproduce that window.How a JAR is downloaded.A file a destructive step touches, and the recorded hashes it may hold; none means it must be absent.How files are moved and deleted; a test substitutes a failing one.File work that may fail with anIOException.A step found a file the transaction cannot identify; the record is held for the operator.The persisted record of one transaction.WhatModuleFileTransactions.recordedIdentity(com.ultikits.ultitools.utils.ModuleFileTransactions.Removal, java.io.File)found: the same file, a different file, or -- with the read error -- a file whose content could not be read to tell.A record whose names would leave their folder, or that this version does not understand.One file aREMOVErecord deletes at the next start, and what it was when recorded.A module an uninstall removed, in every form a transaction can name it by: the identify-strings and runtime names of the instances it unloaded (plus the argument it was given), and the file names of its JARs -- the ones those instances were loaded from, the ones the start-up scan recorded as declaring their main class, and the ones it deleted or recorded for deletion.One line for the start-up log, with its catalogue key and arguments.WhatModuleFileTransactions.reserve(com.ultikits.ultitools.utils.ModuleFileTransactions.Record, java.io.File, java.lang.String, java.util.List<com.ultikits.ultitools.abstracts.UltiToolsPlugin>, java.util.function.Function<com.ultikits.ultitools.abstracts.UltiToolsPlugin, java.io.File>)decided: the module and JAR to stage an update for, or the refusal.Which start-up step a rollback is finished from; it decides what the log line says.The outcome.Writes the complete content of the file toout; the writer is flushed and closed by the caller.Strict protocol payload reader shared by framework handlers; internal, not for module use.One validated request, independent of the payload object it was read from.The audit port integration binds to the remote action log; one entry per executed or refused action, none for a payload that never ran.One validated teleport target: another online player, or a world and a position.Carries the player-link protocol behindCloudPlayerLinks: it framesplayer.link.create, correlates the answer by envelope id, delivers completions and expiries to the single owning module, and records each completion result in the shared ledger before answering the gateway.A completion that arrived before its create was answered.The owning module and its handler.One create this run issued and has not answered yet.The player fields shared by completions and expiries.What one archive says about which module it holds -- the single reader both identity resolution and entry classification use, so the two cannot drift apart.What one entry of the modules folder is, relative to the module being uninstalled.Everything later decisions need about which module this is, resolved once.Raised when a module's own unload threw.What a filesystem probe answered, keeping "unknown" out of "no".What the module loader and the loaded instances say about an uninstall's targets, read before anything is unloaded.The uninstall could not delete these JARs now -- the running server holds them open, or the folder is not writable -- and has recorded them, so the next start deletes them before any module loads (#518).The uninstall could not delete these JARs now and could not record their deletion for the next start either (#518).The entries an uninstall could not identify, carried on whatever failure leaves the method.Raised when the uninstall refuses to act because its outcome would be undefined: two possible targets, or a target whose JAR another running module shares.What an uninstall did, and what it could not determine.The subset of a module'splugin.ymlthis framework needs: its declaredname:andmain:(both nullable - absent when the archive has none or reading failed), itsloadAfter:list, and its Bukkit-levelsoftdepend:/depend:lists (all three never null; empty when absent or reading failed), and its declaredversion:andapi-version:as text (both nullable, like name and main), which the load-failure refusal quotes to identify the module.Callbacks aPosixAttributePreserver.replaceInPlace(java.io.File, byte[], com.ultikits.ultitools.utils.PosixAttributePreserver.ReplaceInPlaceListener)caller supplies so each replace-in-place site can log accurate, resource-specific wording for exactly how the operation was declined or degraded -- this shared operation does not know or care whethertargetis a language catalogue or a provenance sidecar, only the caller does.The two callsBukkitPowerExecutorturns into a main-thread stop or restart, kept behind an interface so the handler stays unit-testable without a live server.Reconnect delays for the UltiCloud agent connection, with full jitter (as of 6.3.1).An output array plus whether the byte cap forced lines to be dropped.One editable setting: its dotted key, label, type, comment line, value and constraints.The declared Java types the contract can carry.One change accepted for the write, with the entry that types it.One panel change, already shape-checked.One row ofconfig.update.result's per-key array.The one action-log entry of oneconfig.updaterequest (6.3.0 recorded every panel configuration edit): ALLOWED when at least one key was written to the file, DENIED with the text the panel received when nothing was written.One dedicated worker thread for the file andserver.propertiesrequests of one connection (plan 22-21 fix round).The per-server UltiCloud credential (protocol v2, prefixucs_) and the facts the device authorization returned with it.TheDedupeLedgerevery inbound handler of the framework shares (plan 22-21, D-17 as narrowed by S-52, S-59): the command-id set and the receipts live in the current session'sCommandDedupeSet, andSessionDedupeLedger.persistNow()writes them, with the outbox, tocloud-outbox.jsonthrough the session'sCloudStateStore.The state of one session: its id set, its state file and the server id the file is written for.The shutdown window of the inbound UltiCloud requests that change server state (22-23 shutdown-window round, maintainer decision of 2026-10-26); internal, not for module use.How a refused type is answered.The one shutdown signal; see the class comment.Deprecated, for removal: This API element is subject to removal in a future version.ULID generation and validation for UltiCloud protocol v2 envelope ids (D-11, D-21): 26 Crockford base32 characters (0123456789ABCDEFGHJKMNPQRSTVWXYZ), a 48-bit millisecond timestamp followed by 80 random bits, as in the ULID specification (https://github.com/ulid/spec).Deprecated, for removal: This API element is subject to removal in a future version.There is no replacement:CloudPlayerLinksreports its own outcomes.Deprecated, for removal: This API element is subject to removal in a future version.There is no replacement:CloudPlayerLinksreports its own outcomes.What the gateway said when it refused the agent socket's upgrade request (as of 6.3.1).Why a download was or was not accepted.What one verified download did.The answer to one catalogue version lookup, as the start-up update check needs it: a version was found, the catalogue confirmed it has nothing to offer, or the lookup failed (the catalogue could not be reached, answered with an error status, or sent a body that could not be read).What the lookup established.
SimpleHttpClient.