Package-level declarations

Types

Link copied to clipboard
class AetherContext(val system: RepositorySystem, val session: RepositorySystemSession, val remoteRepos: List<RemoteRepository>)

Bundles the three Maven Resolver objects needed by io.github.skhokhlov.rewriterunner.recipe.RecipeArtifactResolver and io.github.skhokhlov.rewriterunner.lst.DependencyResolutionStage: a RepositorySystem, a RepositorySystemSession, and the list of configured RemoteRepository instances.

Link copied to clipboard
data class ExecutionDiagnostics(val stageUsed: UsedExecutionStage?, val resolvedJarCount: Int, val parseFailures: List<ParseFailure> = emptyList(), val parsedFileCount: Int? = null, val estimatedTimeSaved: Duration? = null, val writeOutcome: WriteOutcome = WriteOutcome.EMPTY, val executorAttempts: List<ExecutorAttempt> = emptyList())

Diagnostic info about which execution path produced the run and how its classpath was assembled.

Link copied to clipboard

Controls where rewrite-runner performs post-plugin Lossless Semantic Tree work.

Link copied to clipboard
data class ExecutorAttempt(val executor: LogicalExecutor, val phase: ExecutorPhase, val workingDirectory: String = ".", val processId: Long? = null, val jvmConfigurationSource: JvmConfigurationSource, val requestedMaximumHeapBytes: Long? = null, val observedMaximumHeapBytes: Long? = null, val durationMillis: Long, val outcome: ExecutorOutcome, val exitCode: Int? = null, val message: String? = null)

Serializable, sanitized record of a process attempt. It deliberately contains no raw command, arbitrary JVM flags, credentials, or absolute host paths.

Link copied to clipboard

Terminal status of a runner-owned executor attempt.

Link copied to clipboard

A compact phase label for a runner-owned executor attempt.

Link copied to clipboard

Logical process responsible for an execution attempt.

Link copied to clipboard

Safe construction of DefaultArtifact from a groupId:artifactId[:version] coordinate.

Link copied to clipboard
class MavenTransferListener(val logger: RunnerLogger) : AbstractTransferListener

Logs Maven artifact download progress in the same format Maven itself uses:

Link copied to clipboard
Link copied to clipboard
data class ParseFailure(val path: String, val reason: String, val parser: String)

A non-fatal parse failure recorded during LST building. Surfaced via ExecutionDiagnostics.parseFailures so callers can see which files the parsers could not handle without having to scrape the logs.

Link copied to clipboard

Programmatic entry point for running OpenRewrite recipes against a project directory.

Link copied to clipboard
interface RunnerLogger
Link copied to clipboard
data class RunResult(val results: List<Result>, val changedFiles: List<Path>, val projectDir: Path, val rawDiffs: Map<Path, String> = emptyMap(), val executionDiagnostics: ExecutionDiagnostics)

The result of a single RewriteRunner invocation.

Link copied to clipboard

Which path produced the recipe run (and the classpath behind it, when applicable).

Link copied to clipboard
data class WorkerCommand(val command: List<String>, val environment: Map<String, String> = emptyMap())

A tokenized worker command and a narrow environment delta.

Link copied to clipboard
fun interface WorkerCommandFactory

Advanced packaging seam for constructing the LST worker process invocation.

Link copied to clipboard
data class WorkerCommandRequest(val javaExecutable: Path, val classpath: String, val mainClass: String, val requestDirectory: Path, val requestFile: Path, val responseFile: Path, val jvmArgs: List<String>)

Structured inputs for WorkerCommandFactory.