twitter

package
v0.0.0-...-5f4f256 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 13, 2019 License: MIT Imports: 4 Imported by: 0

Documentation

Index

Constants

View Source
const ServiceName = "twitter"

ServiceName is the name of the service as defined in the design. This is the same value that is set in the endpoint request contexts under the ServiceKey key.

Variables

View Source
var MethodNames = [4]string{"register-url", "attach-to-account", "detach-from-account", "receive"}

MethodNames lists the service method names as defined in the design. These are the same values that are set in the endpoint request contexts under the MethodKey key.

Functions

func MakeBadRequest

func MakeBadRequest(err error) *goa.ServiceError

MakeBadRequest builds a goa.ServiceError from an error.

func MakeForbidden

func MakeForbidden(err error) *goa.ServiceError

MakeForbidden builds a goa.ServiceError from an error.

func MakeInternalServerError

func MakeInternalServerError(err error) *goa.ServiceError

MakeInternalServerError builds a goa.ServiceError from an error.

func MakeNotFound

func MakeNotFound(err error) *goa.ServiceError

MakeNotFound builds a goa.ServiceError from an error.

func MakeUnauthorized

func MakeUnauthorized(err error) *goa.ServiceError

MakeUnauthorized builds a goa.ServiceError from an error.

func NewAttachToAccountEndpoint

func NewAttachToAccountEndpoint(s Service, authJWTFn security.AuthJWTFunc, authAPIKeyFn security.AuthAPIKeyFunc) goa.Endpoint

NewAttachToAccountEndpoint returns an endpoint function that calls the method "attach-to-account" of service "twitter".

func NewDetachFromAccountEndpoint

func NewDetachFromAccountEndpoint(s Service, authJWTFn security.AuthJWTFunc, authAPIKeyFn security.AuthAPIKeyFunc) goa.Endpoint

NewDetachFromAccountEndpoint returns an endpoint function that calls the method "detach-from-account" of service "twitter".

func NewReceiveEndpoint

func NewReceiveEndpoint(s Service, authAPIKeyFn security.AuthAPIKeyFunc) goa.Endpoint

NewReceiveEndpoint returns an endpoint function that calls the method "receive" of service "twitter".

func NewRegisterURLEndpoint

func NewRegisterURLEndpoint(s Service, authAPIKeyFn security.AuthAPIKeyFunc) goa.Endpoint

NewRegisterURLEndpoint returns an endpoint function that calls the method "register-url" of service "twitter".

func NewViewedUserMedia

func NewViewedUserMedia(res *UserMedia, view string) *twitterviews.UserMedia

NewViewedUserMedia initializes viewed result type UserMedia from result type UserMedia using the given view.

Types

type AggCampaignMedia

type AggCampaignMedia struct {
	Rejected    []interface{}
	Invited     []interface{}
	Applied     []interface{}
	Shortlisted []interface{}
	Selected    []interface{}
	Previous    []interface{}
}

type AggInstagramMedia

type AggInstagramMedia struct {
	Website        *string
	SelectedPlan   *SelectedPlanMedia
	Username       *string
	ProfilePicture *string
	Bio            *string
	ID             *string
	IsBusiness     *bool
	FullName       *string
}

type AggSocialMedia

type AggSocialMedia struct {
	Instagram *AggInstagramMedia
}

type AttachToAccountPayload

type AttachToAccountPayload struct {
	Authorization *string
	XSession      *string
	APIKey        *string
}

AttachToAccountPayload is the payload type of the twitter service attach-to-account method.

type Auther

type Auther interface {
	// APIKeyAuth implements the authorization logic for the APIKey security scheme.
	APIKeyAuth(ctx context.Context, key string, schema *security.APIKeyScheme) (context.Context, error)
	// JWTAuth implements the authorization logic for the JWT security scheme.
	JWTAuth(ctx context.Context, token string, schema *security.JWTScheme) (context.Context, error)
}

Auther defines the authorization functions to be implemented by the service.

type Client

type Client struct {
	RegisterURLEndpoint       goa.Endpoint
	AttachToAccountEndpoint   goa.Endpoint
	DetachFromAccountEndpoint goa.Endpoint
	ReceiveEndpoint           goa.Endpoint
}

Client is the "twitter" service client.

func NewClient

func NewClient(registerURL, attachToAccount, detachFromAccount, receive goa.Endpoint) *Client

NewClient initializes a "twitter" service client given the endpoints.

func (*Client) AttachToAccount

func (c *Client) AttachToAccount(ctx context.Context, p *AttachToAccountPayload) (res string, err error)

AttachToAccount calls the "attach-to-account" endpoint of the "twitter" service. AttachToAccount may return the following errors:

  • "InternalServerError" (type *goa.ServiceError)
  • error: internal error

func (*Client) DetachFromAccount

func (c *Client) DetachFromAccount(ctx context.Context, p *DetachFromAccountPayload) (err error)

DetachFromAccount calls the "detach-from-account" endpoint of the "twitter" service. DetachFromAccount may return the following errors:

  • "NotFound" (type *goa.ServiceError)
  • "Forbidden" (type *goa.ServiceError)
  • "InternalServerError" (type *goa.ServiceError)
  • error: internal error

func (*Client) Receive

func (c *Client) Receive(ctx context.Context, p *ReceivePayload) (res *UserMedia, err error)

Receive calls the "receive" endpoint of the "twitter" service. Receive may return the following errors:

  • "Unauthorized" (type *goa.ServiceError)
  • "BadRequest" (type *goa.ServiceError)
  • "InternalServerError" (type *goa.ServiceError)
  • error: internal error

func (*Client) RegisterURL

func (c *Client) RegisterURL(ctx context.Context, p *RegisterURLPayload) (res string, err error)

RegisterURL calls the "register-url" endpoint of the "twitter" service. RegisterURL may return the following errors:

  • "InternalServerError" (type *goa.ServiceError)
  • error: internal error

type DetachFromAccountPayload

type DetachFromAccountPayload struct {
	Authorization *string
	XSession      *string
	APIKey        *string
}

DetachFromAccountPayload is the payload type of the twitter service detach-from-account method.

type Endpoints

type Endpoints struct {
	RegisterURL       goa.Endpoint
	AttachToAccount   goa.Endpoint
	DetachFromAccount goa.Endpoint
	Receive           goa.Endpoint
}

Endpoints wraps the "twitter" service endpoints.

func NewEndpoints

func NewEndpoints(s Service) *Endpoints

NewEndpoints wraps the methods of the "twitter" service with endpoints.

func (*Endpoints) Use

func (e *Endpoints) Use(m func(goa.Endpoint) goa.Endpoint)

Use applies the given middleware to all the "twitter" service endpoints.

type ReceivePayload

type ReceivePayload struct {
	OauthToken    *string
	OauthVerifier *string
	State         *string
	Authorization *string
	XSession      *string
	APIKey        *string
	RedirectURL   *string
}

ReceivePayload is the payload type of the twitter service receive method.

type RegisterURLPayload

type RegisterURLPayload struct {
	APIKey *string
}

RegisterURLPayload is the payload type of the twitter service register-url method.

type SelectedPlanMedia

type SelectedPlanMedia struct {
	ID          *string `json:"id"`
	Title       *string `json:"title"`
	Description *string `json:"description"`
	CPC         *int    `json:"CPC"`
	Commission  *int    `json:"commission"`
	OneP        *int    `json:"1P"`
	TwoP        *int    `json:"2P"`
	OneV        *int    `json:"1V"`
	TwoV        *int    `json:"2V"`
	OnePOneV    *int    `json:"1P + 1V"`
}

type Service

type Service interface {
	// Gets the URL the front-end should redirect the browser to in order to be
	// authenticated with Twitter, and then register
	RegisterURL(context.Context, *RegisterURLPayload) (res string, err error)
	// Attaches a Twitter account to an existing user account, returns the URL the
	// browser should be redirected to
	AttachToAccount(context.Context, *AttachToAccountPayload) (res string, err error)
	// Detaches a Twitter account from an existing user account.
	DetachFromAccount(context.Context, *DetachFromAccountPayload) (err error)
	// The endpoint that Twitter redirects the browser to after the user has
	// authenticated
	Receive(context.Context, *ReceivePayload) (res *UserMedia, err error)
}

Service is the twitter service interface.

type UserLocationMedia

type UserLocationMedia struct {
	Street   *string
	Line2    *string
	Locality *string
	City     *string
	State    *string
	Country  *string
	Postcode *string
	Text     *string
}

type UserMedia

type UserMedia struct {
	// Unique unchanging user ID
	ID string
	// Given name for the user
	FirstName string
	// Family name for the user
	LastName string
	// Email attached to the account of the user
	Email string
	// Phone Number Of the user
	Phone string
	// Category of the user generated by our algorithms
	Category *string
	// Phone Number Of the user
	Username string
	// When the user attempts to change their email, this is what they will change
	// it to after they verify that it belongs to them
	ChangingEmail *string
	Genres        []string
	// Whether the user has verified their email
	VerifiedEmail bool
	// Whether the user is an administrator on the site
	IsAdmin bool
	// Whether the user is a brand manager on the site
	IsBrandManager     bool
	UID                *string
	UpdatedAt          *string
	IsActive           *bool
	AggCampaigns       *AggCampaignMedia
	Gender             *string
	Onboarded          *UserOnboardedMedia
	Location           *UserLocationMedia
	Dob                *string
	CreatedAt          *string
	AggSocial          *AggSocialMedia
	SocialMediaRawData interface{}
	Authorization      string
	XSession           string
}

UserMedia is the result type of the twitter service receive method.

func NewUserMedia

func NewUserMedia(vres *twitterviews.UserMedia) *UserMedia

NewUserMedia initializes result type UserMedia from viewed result type UserMedia.

type UserOnboardedMedia

type UserOnboardedMedia struct {
	Profile         *bool
	Signup          *bool
	Store           *bool
	CampaignDetails *bool
}

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL