aboutsummaryrefslogtreecommitdiffhomepage
path: root/vendor/google.golang.org/appengine/mail/mail.go
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/google.golang.org/appengine/mail/mail.go')
-rw-r--r--vendor/google.golang.org/appengine/mail/mail.go123
1 files changed, 0 insertions, 123 deletions
diff --git a/vendor/google.golang.org/appengine/mail/mail.go b/vendor/google.golang.org/appengine/mail/mail.go
deleted file mode 100644
index 1ce1e87..0000000
--- a/vendor/google.golang.org/appengine/mail/mail.go
+++ /dev/null
@@ -1,123 +0,0 @@
-// Copyright 2011 Google Inc. All rights reserved.
-// Use of this source code is governed by the Apache 2.0
-// license that can be found in the LICENSE file.
-
-/*
-Package mail provides the means of sending email from an
-App Engine application.
-
-Example:
- msg := &mail.Message{
- Sender: "romeo@montague.com",
- To: []string{"Juliet <juliet@capulet.org>"},
- Subject: "See you tonight",
- Body: "Don't forget our plans. Hark, 'til later.",
- }
- if err := mail.Send(c, msg); err != nil {
- log.Errorf(c, "Alas, my user, the email failed to sendeth: %v", err)
- }
-*/
-package mail // import "google.golang.org/appengine/mail"
-
-import (
- "net/mail"
-
- "github.com/golang/protobuf/proto"
- "golang.org/x/net/context"
-
- "google.golang.org/appengine/internal"
- bpb "google.golang.org/appengine/internal/base"
- pb "google.golang.org/appengine/internal/mail"
-)
-
-// A Message represents an email message.
-// Addresses may be of any form permitted by RFC 822.
-type Message struct {
- // Sender must be set, and must be either an application admin
- // or the currently signed-in user.
- Sender string
- ReplyTo string // may be empty
-
- // At least one of these slices must have a non-zero length,
- // except when calling SendToAdmins.
- To, Cc, Bcc []string
-
- Subject string
-
- // At least one of Body or HTMLBody must be non-empty.
- Body string
- HTMLBody string
-
- Attachments []Attachment
-
- // Extra mail headers.
- // See https://cloud.google.com/appengine/docs/standard/go/mail/
- // for permissible headers.
- Headers mail.Header
-}
-
-// An Attachment represents an email attachment.
-type Attachment struct {
- // Name must be set to a valid file name.
- Name string
- Data []byte
- ContentID string
-}
-
-// Send sends an email message.
-func Send(c context.Context, msg *Message) error {
- return send(c, "Send", msg)
-}
-
-// SendToAdmins sends an email message to the application's administrators.
-func SendToAdmins(c context.Context, msg *Message) error {
- return send(c, "SendToAdmins", msg)
-}
-
-func send(c context.Context, method string, msg *Message) error {
- req := &pb.MailMessage{
- Sender: &msg.Sender,
- To: msg.To,
- Cc: msg.Cc,
- Bcc: msg.Bcc,
- Subject: &msg.Subject,
- }
- if msg.ReplyTo != "" {
- req.ReplyTo = &msg.ReplyTo
- }
- if msg.Body != "" {
- req.TextBody = &msg.Body
- }
- if msg.HTMLBody != "" {
- req.HtmlBody = &msg.HTMLBody
- }
- if len(msg.Attachments) > 0 {
- req.Attachment = make([]*pb.MailAttachment, len(msg.Attachments))
- for i, att := range msg.Attachments {
- req.Attachment[i] = &pb.MailAttachment{
- FileName: proto.String(att.Name),
- Data: att.Data,
- }
- if att.ContentID != "" {
- req.Attachment[i].ContentID = proto.String(att.ContentID)
- }
- }
- }
- for key, vs := range msg.Headers {
- for _, v := range vs {
- req.Header = append(req.Header, &pb.MailHeader{
- Name: proto.String(key),
- Value: proto.String(v),
- })
- }
- }
- res := &bpb.VoidProto{}
- if err := internal.Call(c, "mail", method, req, res); err != nil {
- return err
- }
- return nil
-}
-
-func init() {
- internal.RegisterErrorCodeMap("mail", pb.MailServiceError_ErrorCode_name)
-}