Record Class DoctorAnalysisRequest
java.lang.Object
java.lang.Record
com.shaft.doctor.DoctorAnalysisRequest
- Record Components:
inputPaths- explicit evidence paths or existing bundle JSON fileshistoricalBundlePaths- optional older bundle JSON filesallowedRoots- roots that every input and referenced attachment must remain withinoutputDirectory- report and portable bundle destinationincludeScreenshots- whether screenshot bytes may be retainedincludePageSnapshots- whether page source or snapshot text may be retainedminimumAllureResults- minimum valid Allure result count expected from the runmaxItemBytes- maximum retained bytes per evidence itemmaxBundleBytes- maximum retained bytes across the bundle
public record DoctorAnalysisRequest(List<Path> inputPaths, List<Path> historicalBundlePaths, List<Path> allowedRoots, Path outputDirectory, boolean includeScreenshots, boolean includePageSnapshots, int minimumAllureResults, long maxItemBytes, long maxBundleBytes)
extends Record
Explicit local input and privacy policy for one deterministic analysis.
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final longDefault maximum retained size for an evidence bundle.static final longDefault maximum retained size for one evidence item. -
Constructor Summary
ConstructorsConstructorDescriptionDoctorAnalysisRequest(List<Path> inputPaths, List<Path> historicalBundlePaths, List<Path> allowedRoots, Path outputDirectory, boolean includeScreenshots, boolean includePageSnapshots, int minimumAllureResults, long maxItemBytes, long maxBundleBytes) Creates a validated analysis request. -
Method Summary
Modifier and TypeMethodDescriptionReturns the value of theallowedRootsrecord component.static DoctorAnalysisRequestCreates a request with conservative default size limits.final booleanIndicates whether some other object is "equal to" this one.final inthashCode()Returns a hash code value for this object.Returns the value of thehistoricalBundlePathsrecord component.booleanReturns the value of theincludePageSnapshotsrecord component.booleanReturns the value of theincludeScreenshotsrecord component.Returns the value of theinputPathsrecord component.longReturns the value of themaxBundleBytesrecord component.longReturns the value of themaxItemBytesrecord component.intReturns the value of theminimumAllureResultsrecord component.Returns the value of theoutputDirectoryrecord component.final StringtoString()Returns a string representation of this record class.
-
Field Details
-
DEFAULT_MAX_ITEM_BYTES
public static final long DEFAULT_MAX_ITEM_BYTESDefault maximum retained size for one evidence item.- See Also:
-
DEFAULT_MAX_BUNDLE_BYTES
public static final long DEFAULT_MAX_BUNDLE_BYTESDefault maximum retained size for an evidence bundle.- See Also:
-
-
Constructor Details
-
DoctorAnalysisRequest
-
-
Method Details
-
defaults
public static DoctorAnalysisRequest defaults(List<Path> inputPaths, List<Path> allowedRoots, Path outputDirectory) Creates a request with conservative default size limits.- Parameters:
inputPaths- explicit evidence pathsallowedRoots- allowed rootsoutputDirectory- output directory- Returns:
- default request
-
toString
-
hashCode
-
equals
Indicates whether some other object is "equal to" this one. The objects are equal if the other object is of the same class and if all the record components are equal. Reference components are compared withObjects::equals(Object,Object); primitive components are compared with thecomparemethod from their corresponding wrapper classes. -
inputPaths
Returns the value of theinputPathsrecord component.- Returns:
- the value of the
inputPathsrecord component
-
historicalBundlePaths
Returns the value of thehistoricalBundlePathsrecord component.- Returns:
- the value of the
historicalBundlePathsrecord component
-
allowedRoots
Returns the value of theallowedRootsrecord component.- Returns:
- the value of the
allowedRootsrecord component
-
outputDirectory
Returns the value of theoutputDirectoryrecord component.- Returns:
- the value of the
outputDirectoryrecord component
-
includeScreenshots
public boolean includeScreenshots()Returns the value of theincludeScreenshotsrecord component.- Returns:
- the value of the
includeScreenshotsrecord component
-
includePageSnapshots
public boolean includePageSnapshots()Returns the value of theincludePageSnapshotsrecord component.- Returns:
- the value of the
includePageSnapshotsrecord component
-
minimumAllureResults
public int minimumAllureResults()Returns the value of theminimumAllureResultsrecord component.- Returns:
- the value of the
minimumAllureResultsrecord component
-
maxItemBytes
public long maxItemBytes()Returns the value of themaxItemBytesrecord component.- Returns:
- the value of the
maxItemBytesrecord component
-
maxBundleBytes
public long maxBundleBytes()Returns the value of themaxBundleBytesrecord component.- Returns:
- the value of the
maxBundleBytesrecord component
-