Programming exercises
: Feature Proposal - Store repository URLs without base path in the database
#10318
Labels
component:Programming
core
Pull requests that affect the corresponding module
exercise
Pull requests that affect the corresponding module
feature-proposal
This issue is a feature proposal
lecture
Pull requests that affect the corresponding module
programming
Pull requests that affect the corresponding module
Feature Proposal
Context
The Participation table stores the repository URL of the repository, which contains the files.
![Image](https://private-user-images.githubusercontent.com/33342534/412793388-a20b515e-a6f0-4b61-ac74-117e10f82d51.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3Mzk0ODM4NTgsIm5iZiI6MTczOTQ4MzU1OCwicGF0aCI6Ii8zMzM0MjUzNC80MTI3OTMzODgtYTIwYjUxNWUtYTZmMC00YjYxLWFjNzQtMTE3ZTEwZjgyZDUxLnBuZz9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNTAyMTMlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjUwMjEzVDIxNTIzOFomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPTc1YTc2Y2QxYTBkNzlhNmJjM2E3Y2QyMmEyYWIwZmM0MzdiMWQzMDVmYTY5ZWYxZDdhZDQxN2U1ODkwMTQ1NWQmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0In0._Snjhs2LDSt8emzeHzbEUzyGkDMnfnZHyU1EJUx3osc)
Problem
Motivation
Requirements Engineering
Existing (Problematic) Solution / System
Currently the whole repository URL is stored for a participation in the database.
Proposed System
Only store the Path of the repositories in the database.
Reconstruct the full URL from the path, and the server's base path, to provide it to the user.
Requirements
Analysis
Analysis Object Model
repositoryUri
attribute in participation should be replaced withrepositoryPath
System Architecture
Subsystem Decomposition.
LocalVCServletService.authenticateAndAuthorizeGitRequest
SSH: seeSshGitLocationResolverService.resolveRootDirectory
)Persistent Data Management
UI/UX Design
No changes to the UI
The text was updated successfully, but these errors were encountered: