(deps commandDeps, workspaceRef *string)
| 855 | } |
| 856 | |
| 857 | func newNetworkSendCommand(deps commandDeps, workspaceRef *string) *cobra.Command { |
| 858 | var flags networkSendFlags |
| 859 | cmd := &cobra.Command{ |
| 860 | Use: networkSendKey, |
| 861 | Short: "Send one envelope through the daemon-owned network runtime", |
| 862 | RunE: func(cmd *cobra.Command, _ []string) error { |
| 863 | body, err := parseNetworkJSONValue("--body", flags.bodyRaw) |
| 864 | if err != nil { |
| 865 | return err |
| 866 | } |
| 867 | ext, err := parseNetworkJSONObjectMap("--ext", flags.extRaw) |
| 868 | if err != nil { |
| 869 | return err |
| 870 | } |
| 871 | if err := validateNetworkSendNoRawClaimToken(body, ext); err != nil { |
| 872 | return err |
| 873 | } |
| 874 | expiresAt, err := parseNetworkExpiresAt(flags.expiresAtRaw) |
| 875 | if err != nil { |
| 876 | return err |
| 877 | } |
| 878 | if err := validateNetworkSendFlags(flags); err != nil { |
| 879 | return err |
| 880 | } |
| 881 | client, err := clientFromDeps(deps) |
| 882 | if err != nil { |
| 883 | return err |
| 884 | } |
| 885 | workspace, err := resolveNetworkWorkspaceRef(cmd, deps, client, workspaceRef) |
| 886 | if err != nil { |
| 887 | return err |
| 888 | } |
| 889 | |
| 890 | message, err := client.NetworkSend(cmd.Context(), NetworkSendRequest{ |
| 891 | WorkspaceID: workspace, |
| 892 | SessionID: strings.TrimSpace(flags.sessionID), |
| 893 | Channel: strings.TrimSpace(flags.channel), |
| 894 | Surface: strings.TrimSpace(flags.surface), |
| 895 | ThreadID: strings.TrimSpace(flags.threadID), |
| 896 | DirectID: strings.TrimSpace(flags.directID), |
| 897 | Kind: strings.TrimSpace(flags.kind), |
| 898 | To: strings.TrimSpace(flags.to), |
| 899 | Mentions: trimSpawnAtoms(flags.mentions), |
| 900 | Body: body, |
| 901 | WorkID: strings.TrimSpace(flags.workID), |
| 902 | ReplyTo: strings.TrimSpace(flags.replyTo), |
| 903 | TraceID: strings.TrimSpace(flags.traceID), |
| 904 | CausationID: strings.TrimSpace(flags.causationID), |
| 905 | ExpiresAt: expiresAt, |
| 906 | ID: strings.TrimSpace(flags.id), |
| 907 | Ext: ext, |
| 908 | }) |
| 909 | if err != nil { |
| 910 | return err |
| 911 | } |
| 912 | return writeCommandOutput(cmd, networkSendBundle(message)) |
| 913 | }, |
| 914 | } |
no test coverage detected