Skip to content

Commit 09655fc

Browse files
committed
Add AWS SQS Shared Project Implementation Summary and related files
- Updated README.md to include links to getting started and implementation plan. - Created SHARED_PROJECT_SUMMARY.md detailing the implementation requirements for the AWS SQS module. - Added SqsMethodType.cs, SqsItemBase.cs, SqsMessage.cs, and IntegrationManager.cs to the shared project. - Updated projitems file to include new source files. - Provided integration steps for the main module and verification checklist.
1 parent e02c5be commit 09655fc

File tree

4 files changed

+1721
-22
lines changed

4 files changed

+1721
-22
lines changed
Lines changed: 260 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,260 @@
1+
# Getting Started - AWS SQS Module Implementation
2+
3+
> **📍 You are here:** `Intent.Modules.Aws.Sqs/` folder in the Intent.Modules.NET workspace
4+
5+
## 🤖 For AI Implementation Agents
6+
7+
This guide helps you navigate the workspace and locate reference files needed for implementing the AWS SQS module.
8+
9+
---
10+
11+
## Step 1: Explore the Workspace Structure
12+
13+
### Check Current Location
14+
```bash
15+
# See what's in the current module folder
16+
list_dir("./")
17+
18+
# Expected files:
19+
# - Intent.Modules.Aws.Sqs.csproj
20+
# - IMPLEMENTATION_PLAN.md (this comprehensive plan)
21+
# - SHARED_PROJECT_SUMMARY.md (focused on shared project)
22+
# - GETTING_STARTED.md (this file)
23+
```
24+
25+
### See All Modules
26+
```bash
27+
# Navigate to parent to see all Intent modules
28+
list_dir("../")
29+
30+
# You should see folders like:
31+
# - Intent.Modules.Eventing.AzureServiceBus/
32+
# - Intent.Modules.Integration.IaC.Shared.AzureServiceBus/
33+
# - Intent.Modules.Integration.IaC.Shared.AwsSqs/
34+
# - Intent.Modules.Aws.Sqs/ (current)
35+
# - ... many others
36+
```
37+
38+
---
39+
40+
## Step 2: Examine Azure Reference Implementation
41+
42+
The Azure Service Bus module is your primary reference. It uses the same architecture pattern.
43+
44+
### Azure Shared Project (Pattern to Copy)
45+
```bash
46+
# List all files in Azure shared project
47+
list_dir("../Intent.Modules.Integration.IaC.Shared.AzureServiceBus")
48+
49+
# Expected files:
50+
# - IntegrationManager.cs (✨ KEY REFERENCE)
51+
# - AzureServiceBusMessage.cs (✨ KEY REFERENCE)
52+
# - AzureServiceBusCommand.cs
53+
# - AzureServiceBusItemBase.cs (✨ KEY REFERENCE)
54+
# - AzureServiceBusChannelType.cs
55+
# - AzureServiceBusMethodType.cs (✨ KEY REFERENCE)
56+
# - AzureHelper.cs
57+
# - Intent.Modules.Integration.IaC.Shared.AzureServiceBus.projitems (✨ KEY REFERENCE)
58+
```
59+
60+
### Read Key Azure Files
61+
```bash
62+
# Read the IntegrationManager pattern
63+
read_file("../Intent.Modules.Integration.IaC.Shared.AzureServiceBus/IntegrationManager.cs", 1, 100)
64+
65+
# Read the Message implementation pattern
66+
read_file("../Intent.Modules.Integration.IaC.Shared.AzureServiceBus/AzureServiceBusMessage.cs", 1, 100)
67+
68+
# Read the base abstraction
69+
read_file("../Intent.Modules.Integration.IaC.Shared.AzureServiceBus/AzureServiceBusItemBase.cs", 1, 50)
70+
71+
# Read the method type enum
72+
read_file("../Intent.Modules.Integration.IaC.Shared.AzureServiceBus/AzureServiceBusMethodType.cs", 1, 20)
73+
```
74+
75+
### Azure Main Module (API Extensions Pattern)
76+
```bash
77+
# See Azure module structure
78+
list_dir("../Intent.Modules.Eventing.AzureServiceBus")
79+
80+
# Find stereotype extensions
81+
file_search("**/MessageModelStereotypeExtensions.cs")
82+
```
83+
84+
---
85+
86+
## Step 3: Check AWS SQS Shared Project Current State
87+
88+
```bash
89+
# See what exists in AWS SQS shared project (likely minimal)
90+
list_dir("../Intent.Modules.Integration.IaC.Shared.AwsSqs")
91+
92+
# Expected files:
93+
# - Intent.Modules.Integration.IaC.Shared.AwsSqs.shproj (should exist)
94+
# - Intent.Modules.Integration.IaC.Shared.AwsSqs.projitems (should exist, likely empty ItemGroup)
95+
96+
# Read the .projitems file to see current state
97+
read_file("../Intent.Modules.Integration.IaC.Shared.AwsSqs/Intent.Modules.Integration.IaC.Shared.AwsSqs.projitems", 1, 50)
98+
```
99+
100+
---
101+
102+
## Step 4: Search for Patterns Across Workspace
103+
104+
### Find All IntegrationManager Implementations
105+
```bash
106+
file_search("**/IntegrationManager.cs")
107+
108+
# Should return:
109+
# - Azure implementation (reference)
110+
# - Possibly others (for context)
111+
```
112+
113+
### Find Stereotype Extension Patterns
114+
```bash
115+
grep_search("MessageModelStereotypeExtensions", isRegexp=false)
116+
117+
# Shows how stereotypes are implemented across modules
118+
```
119+
120+
### Find Factory Extension Patterns
121+
```bash
122+
file_search("**/MetadataLoaderExtension.cs")
123+
124+
# Shows how IntegrationManager is initialized
125+
```
126+
127+
---
128+
129+
## Step 5: Understand File Relationships
130+
131+
### Shared Project → Main Module
132+
```
133+
Intent.Modules.Integration.IaC.Shared.AwsSqs/ (CREATE FIRST)
134+
├── IntegrationManager.cs → Used by templates
135+
├── SqsMessage.cs → Used by templates
136+
├── SqsItemBase.cs → Used by templates
137+
├── SqsMethodType.cs → Used by SqsMessage
138+
└── .projitems → References all above
139+
140+
↓ imported by
141+
142+
Intent.Modules.Aws.Sqs/ (current)
143+
├── Intent.Modules.Aws.Sqs.csproj → <Import Project="..." />
144+
├── Api/
145+
│ └── MessageModelStereotypeExtensions.cs → Used by SqsMessage
146+
├── FactoryExtensions/
147+
│ └── MetadataLoaderExtension.cs → Calls IntegrationManager.Initialize()
148+
└── Templates/
149+
└── (all templates use IntegrationManager)
150+
```
151+
152+
---
153+
154+
## Step 6: Read Implementation Plan
155+
156+
Now that you understand the workspace structure:
157+
158+
1. **Start with TL;DR**: Read `IMPLEMENTATION_PLAN.md` section "📖 TL;DR"
159+
2. **Focus on Shared Project**: Read `SHARED_PROJECT_SUMMARY.md` in detail
160+
3. **Follow Phase 1**: Create all 5 shared project files
161+
4. **Follow Checklist**: Use implementation checklist in `IMPLEMENTATION_PLAN.md`
162+
163+
---
164+
165+
## 🎯 Your Implementation Tasks
166+
167+
### Phase 1: Shared Project (Do This First)
168+
Create these 5 files in `../Intent.Modules.Integration.IaC.Shared.AwsSqs/`:
169+
170+
1.`SqsMethodType.cs` - Enum (7 lines)
171+
2.`SqsItemBase.cs` - Abstract record (15 lines)
172+
3.`SqsMessage.cs` - Concrete record (65 lines)
173+
4.`IntegrationManager.cs` - Singleton (120 lines)
174+
5. ✅ Update `.projitems` - Add files to ItemGroup
175+
176+
**Reference:** See `SHARED_PROJECT_SUMMARY.md` for complete code
177+
178+
### Phase 2: API Extensions
179+
Create in `./Api/`:
180+
- `MessageModelStereotypeExtensions.cs`
181+
182+
### Phase 3: Factory Extensions
183+
Create in `./FactoryExtensions/`:
184+
- `MetadataLoaderExtension.cs`
185+
186+
### Phase 4-6: Templates
187+
Create in `./Templates/`:
188+
- SqsPublisherOptions/
189+
- SqsSubscriptionOptions/
190+
- ISqsMessageDispatcher/
191+
- SqsMessageDispatcher/
192+
- SqsEventBus/
193+
- SqsConfiguration/
194+
195+
**Reference:** See `IMPLEMENTATION_PLAN.md` for detailed specifications
196+
197+
---
198+
199+
## 🔍 Useful Search Patterns
200+
201+
### Find Azure Patterns
202+
```bash
203+
# All Azure shared project files
204+
file_search("**/Intent.Modules.Integration.IaC.Shared.AzureServiceBus/*.cs")
205+
206+
# All Azure main module files
207+
file_search("**/Intent.Modules.Eventing.AzureServiceBus/**/*.cs")
208+
209+
# Specific pattern search
210+
grep_search("IntegrationManager.Instance", isRegexp=false)
211+
grep_search("GetAggregatedPublishedAzureServiceBusItems", isRegexp=false)
212+
```
213+
214+
### Verify Your Work
215+
```bash
216+
# Check shared project has all files
217+
list_dir("../Intent.Modules.Integration.IaC.Shared.AwsSqs")
218+
219+
# Check main module structure
220+
list_dir("./Api")
221+
list_dir("./FactoryExtensions")
222+
list_dir("./Templates")
223+
224+
# Verify .csproj imports shared project
225+
read_file("./Intent.Modules.Aws.Sqs.csproj", 1, 50)
226+
grep_search("<Import Project.*AwsSqs", isRegexp=true, includePattern="*.csproj")
227+
```
228+
229+
---
230+
231+
## 📚 Key Documentation Files
232+
233+
| File | Purpose |
234+
|------|---------|
235+
| `IMPLEMENTATION_PLAN.md` | Comprehensive 2000+ line implementation guide |
236+
| `SHARED_PROJECT_SUMMARY.md` | Focused shared project guide with complete code |
237+
| `GETTING_STARTED.md` | This file - workspace navigation guide |
238+
239+
---
240+
241+
## 🚨 Critical Reminders
242+
243+
1. **Work Locally**: All paths are relative (`../` = parent folder)
244+
2. **Use Tools**: `file_search`, `grep_search`, `list_dir`, `read_file`
245+
3. **Follow Azure**: Azure Service Bus is your primary reference
246+
4. **Simplify**: AWS SQS is simpler than Azure (no topics, no subscriptions)
247+
5. **Shared First**: Cannot implement templates without shared project
248+
249+
---
250+
251+
## ✅ Ready to Begin?
252+
253+
**Next Step:** Open `SHARED_PROJECT_SUMMARY.md` and start creating the 5 shared project files.
254+
255+
**Questions?** Use grep_search to find examples in Azure module:
256+
```bash
257+
grep_search("YOUR_QUESTION_KEYWORD", isRegexp=false)
258+
```
259+
260+
Good luck! 🚀

0 commit comments

Comments
 (0)