@@ -51,6 +51,164 @@ integration to provide value to users.
5151
5252## See ironoc-frontend README [ here] ( ./frontend/README.md )
5353
54+ ## Backend Project Structure
55+ ``` shell
56+ src
57+ ├── main
58+ │ ├── java
59+ │ │ └── net
60+ │ │ └── ironoc
61+ │ │ └── portfolio
62+ │ │ ├── App.java
63+ │ │ ├── aws
64+ │ │ │ ├── AwsSecretManager.java
65+ │ │ │ └── SecretManager.java
66+ │ │ ├── client
67+ │ │ │ ├── Client.java
68+ │ │ │ └── GitClient.java
69+ │ │ ├── config
70+ │ │ │ ├── GraphiQlConfiguration.java
71+ │ │ │ ├── IronocConfiguration.java
72+ │ │ │ ├── Properties.java
73+ │ │ │ ├── PropertyConfig.java
74+ │ │ │ ├── PropertyConfigI.java
75+ │ │ │ ├── PropertyKey.java
76+ │ │ │ └── PropertyKeyI.java
77+ │ │ ├── controller
78+ │ │ │ ├── BrewGraphqlController.java
79+ │ │ │ ├── CoffeeController.java
80+ │ │ │ ├── DonateGraphqlController.java
81+ │ │ │ ├── DonateRestController.java
82+ │ │ │ ├── GitProjectsController.java
83+ │ │ │ ├── PortfolioController.java
84+ │ │ │ └── VersionController.java
85+ │ │ ├── domain
86+ │ │ │ ├── CoffeeDomain.java
87+ │ │ │ ├── IngredientsDeserializer.java
88+ │ │ │ ├── RepositoryDetailDomain.java
89+ │ │ │ └── RepositoryIssueDomain.java
90+ │ │ ├── dto
91+ │ │ │ ├── Brew.java
92+ │ │ │ ├── Donate.java
93+ │ │ │ ├── DonateItemOrder.java
94+ │ │ │ ├── LabelDto.java
95+ │ │ │ ├── OwnerDto.java
96+ │ │ │ ├── RepositoryDetailDto.java
97+ │ │ │ └── RepositoryIssueDto.java
98+ │ │ ├── enums
99+ │ │ │ └── SortingOrder.java
100+ │ │ ├── exception
101+ │ │ │ └── IronocJsonException.java
102+ │ │ ├── graph
103+ │ │ │ ├── BrewsResolver.java
104+ │ │ │ └── DonateItemsResolver.java
105+ │ │ ├── job
106+ │ │ │ ├── GitDetailsJob.java
107+ │ │ │ └── GitDetailsRunnable.java
108+ │ │ ├── logger
109+ │ │ │ ├── AbstractLogger.java
110+ │ │ │ └── LoggerI.java
111+ │ │ ├── resolver
112+ │ │ │ └── PushStateResourceResolver.java
113+ │ │ ├── service
114+ │ │ │ ├── AbstractGitCache.java
115+ │ │ │ ├── CoffeeCacheService.java
116+ │ │ │ ├── Coffees.java
117+ │ │ │ ├── CoffeesCache.java
118+ │ │ │ ├── CoffeesService.java
119+ │ │ │ ├── GitDetails.java
120+ │ │ │ ├── GitDetailsService.java
121+ │ │ │ ├── GitProjectCache.java
122+ │ │ │ ├── GitProjectCacheService.java
123+ │ │ │ ├── GitRepoCache.java
124+ │ │ │ ├── GitRepoCacheService.java
125+ │ │ │ ├── GraphQLClient.java
126+ │ │ │ ├── GraphQLClientService.java
127+ │ │ │ └── PortfolioItemsResolver.java
128+ │ │ └── utils
129+ │ │ └── UrlUtils.java
130+ │ └── resources
131+ │ ├── application.yml
132+ │ ├── graphiql
133+ │ │ └── index.html
134+ │ ├── graphql
135+ │ │ ├── charities.txt
136+ │ │ ├── coffeesQuery.graphqls
137+ │ │ └── ironocGraphSchema.graphql
138+ │ ├── json
139+ │ │ ├── brews.json
140+ │ │ ├── donate-items.json
141+ │ │ └── portfolio-items.json
142+ │ └── static
143+ │ ├── ironoc-banner.txt
144+ │ └── swagger-ui
145+ └── test
146+ ├── java
147+ │ └── net
148+ │ └── ironoc
149+ │ └── portfolio
150+ │ ├── AppTest.java
151+ │ ├── RemoteBrowserBasedIntTest.java
152+ │ ├── SeleniumConfig.java
153+ │ ├── aws
154+ │ │ └── AwsSecretManagerTest.java
155+ │ ├── client
156+ │ │ └── GitClientTest.java
157+ │ ├── config
158+ │ │ ├── IronocConfigurationTest.java
159+ │ │ ├── PropertyConfigTest.java
160+ │ │ ├── PropertyKeyTest.java
161+ │ │ └── TestIronocConfiguration.java
162+ │ ├── controller
163+ │ │ ├── BaseControllerIntegrationTest.java
164+ │ │ ├── BrewGraphqlControllerTest.java
165+ │ │ ├── CoffeeControllerIntegrationTest.java
166+ │ │ ├── CoffeeControllerTest.java
167+ │ │ ├── DonateGraphqlControllerTest.java
168+ │ │ ├── DonateRestControllerTest.java
169+ │ │ ├── GitProjectsControllerIntegrationTest.java
170+ │ │ ├── GitProjectsControllerTest.java
171+ │ │ ├── PortfolioControllerTest.java
172+ │ │ └── VersionControllerTest.java
173+ │ ├── graph
174+ │ │ ├── BrewsResolverTest.java
175+ │ │ └── DonateItemsResolverTest.java
176+ │ ├── job
177+ │ │ ├── GitDetailsJobTest.java
178+ │ │ └── GitDetailsRunnableTest.java
179+ │ ├── resolver
180+ │ │ └── PushStateResourceResolverTest.java
181+ │ ├── service
182+ │ │ ├── CoffeesServiceTest.java
183+ │ │ ├── GitDetailsServiceTest.java
184+ │ │ ├── GitRepoCacheServiceTest.java
185+ │ │ ├── GraphQLClientServiceTest.java
186+ │ │ └── PortfolioItemsResolverTest.java
187+ │ ├── utils
188+ │ │ ├── TestRequestResponseUtils.java
189+ │ │ └── UrlUtilsTest.java
190+ │ └── web
191+ │ └── page
192+ │ ├── AboutPage.java
193+ │ ├── BrewsPage.java
194+ │ ├── DonatePage.java
195+ │ ├── HomePage.java
196+ │ └── PortfolioPage.java
197+ └── resources
198+ ├── graphql
199+ │ ├── charities.txt
200+ │ ├── iRonocQuery.graphqls.SAMPLE
201+ │ └── query.graphql
202+ └── json
203+ ├── donate-items.json
204+ ├── test_coffees_expected_response.json
205+ ├── test_coffees_input_response.json
206+ ├── test_issues_response.json
207+ ├── test_parse_null_response.json
208+ ├── test_repo_detail_response.json
209+ └── test_response.json
210+ ```
211+
54212## Run without cloning project:
55213```
56214docker run -d --restart=always -p 8080:8080 conorheffron/ironoc
0 commit comments