MCPcopy
hub / github.com/docker/docker-agent / extractText

Function extractText

pkg/tools/a2a/a2a.go:251–281  ·  view source on GitHub ↗
(event a2a.Event)

Source from the content-addressed store, hash-verified

249}
250
251func extractText(event a2a.Event) string {
252 var parts a2a.ContentParts
253
254 switch e := event.(type) {
255 case *a2a.TaskStatusUpdateEvent:
256 if e.Status.Message != nil {
257 parts = e.Status.Message.Parts
258 }
259 case *a2a.TaskArtifactUpdateEvent:
260 if e.Artifact != nil {
261 parts = e.Artifact.Parts
262 }
263 case *a2a.Message:
264 parts = e.Parts
265 case *a2a.Task:
266 if e.Status.Message != nil {
267 parts = e.Status.Message.Parts
268 }
269 }
270
271 var sb strings.Builder
272 for _, part := range parts {
273 switch p := part.(type) {
274 case *a2a.TextPart:
275 sb.WriteString(p.Text)
276 case a2a.TextPart:
277 sb.WriteString(p.Text)
278 }
279 }
280 return sb.String()
281}
282
283func sanitizeToolName(name string) string {
284 result := strings.Map(func(r rune) rune {

Callers 1

createHandlerMethod · 0.85

Calls 1

StringMethod · 0.45

Tested by

no test coverage detected