| Age | Commit message (Collapse) | Author |
|
- Create version.properties resource file with Maven placeholders
- Enable Maven resource filtering for version.properties
- Add VSVersionInfo utility class to read version at runtime
- Update VSDefaultPrefs to use dynamic version instead of hardcoded
- Version now shows "Distributed Systems Simulator 1.0.1-SNAPSHOT"
- Includes build timestamp for better traceability
The version in the title bar is now automatically updated from the
pom.xml version during the build process.
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
|
|
Change application name from "VS-Simulator 1.2-beta" to
"Distributed Systems Simulator 1.2-beta" for better clarity.
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
|
|
- Convert VS3Tupel and VSLamportTime to records for immutability
- Use switch expressions with pattern matching in VSTimestampTriggeredEvent
- Modernize exception handling with pattern matching in VSErrorHandler
- Replace anonymous ActionListener with lambda in VSAboutFrame
- Use formatted strings instead of concatenation in VSDummyProtocol
- Add sealed hierarchy VSEventType for exhaustive pattern matching
- Create VSSimulationConfig record for configuration management
- Maintain backward compatibility with deprecated methods
All 132 unit tests pass successfully with Java 21 features.
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
|
|
- Document core classes: VSTask, VSMessage, VSInternalProcess
- Document event interfaces: VSAbstractEvent, VSCopyableEvent, VSTime
- Document timestamp events: VSTimestampTriggeredEvent, VSLamportTimestampEvent
- Document protocol framework: VSAbstractProtocol methods
- Document VSSimulator and VSRegisteredEvents
- Add detailed method descriptions with parameter and return value docs
- Include usage examples and cross-references between related classes
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
|
|
- Create base exception classes:
- VSSimulatorException: Base checked exception for all simulator errors
- VSSimulatorRuntimeException: Base unchecked exception for unrecoverable errors
- Refactor existing exceptions to extend from base class:
- VSEventNotCopyableException: Now includes better error messages
- VSParseIntegerVectorException: Added constructors with cause support
- VSNegativeNumberException: Added field name and value parameters
- Add new specific exception types:
- VSConfigurationException: For configuration errors
- VSSerializationException: For save/load operations
- VSProcessException: For process-related errors
- VSProtocolException: For protocol execution errors
- Create VSErrorHandler utility class:
- Centralized error logging and user notification
- Consistent error handling patterns
- Helper methods for warning and error dialogs
- Update exception handling in code:
- VSClassLoader: Better error messages and specific exception handling
- Timestamp events: Catch RuntimeException for custom actions
- All 132 unit tests pass
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
|
|
- Add language strings for all timestamp events and demo protocol in VSDefaultPrefs
- Register new timestamp events and protocol in VSRegisteredEvents:
- VSLamportTimestampEvent
- VSVectorTimestampEvent
- VSTimestampMonitorEvent
- VSTimestampTriggeredEvent
- VSTimestampDemoProtocol
- Integrate VSVectorClockMonitor into VSInternalProcess:
- Add vectorClockMonitor field
- Override increaseVectorTime() and updateVectorTime() to trigger monitor
- Clear monitor events on reset
- Add getVectorClockMonitor() accessor
- Add serialization support to VSTimestampTriggeredEvent for persistence
- Fix VSTimestampDemoProtocol to use process's vector clock monitor
- All 132 unit tests pass
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
|
|
Major improvements:
1. Replace instanceof checks with polymorphic methods in VSAbstractEvent hierarchy
- Added isInternalEvent(), isMessageReceiveEvent(), etc. methods
- Added getEventPriority() for clean event ordering
- Added shouldIncreaseTimestamps() to control timestamp behavior
- Refactored VSTask to use these polymorphic methods
2. Extract magic numbers and strings to constants
- Created VSConstants class for centralized configuration values
- Added event priority constants (PRIORITY_HIGHEST, PRIORITY_HIGH, etc.)
- Extracted string constants like CLASS_PREFIX
- Moved magic numbers to named constants (PERCENTAGE_RANGE, etc.)
3. Update tests to work with new polymorphic approach
- Fixed mocking in VSTaskTest to return correct values
- All 132 tests passing
These changes improve maintainability, reduce coupling, and make the codebase
more self-documenting. The polymorphic approach eliminates type checking and
makes it easier to add new event types.
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
|
|
- Add VSSplashScreen component using Java Swing framework
- Display splash.png image for 3 seconds on application startup
- Scale splash screen to 40% of original size (60% reduction)
- Update CLAUDE.md with JAVA_HOME setup instructions for all platforms
- Integrate splash screen into VSMain startup sequence
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
|
|
- Change default locale from German to English in VSMain.java
- Fix language key typos: "loging" → "logging" throughout codebase
- Improve English language strings:
- "Insert" → "Add" for better UX terminology
- "Fullfilled" → "Fulfilled" (spelling correction)
- "GLobal" → "Global" (capitalization fix)
- "Delete logs" → "Clear logs" (more appropriate action)
- Update all references to changed language keys
🤖 Generated with [Claude Code](https://claude.ai/code)
Co-Authored-By: Claude <noreply@anthropic.com>
|
|
configuration - Fix localization string handling - Add missing localization strings - Improve protocol event handling
|
|
config, update README and .gitignore
|