ap

package
v0.0.0-...-46677ce Latest Latest
Warning

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

Go to latest
Published: Aug 5, 2021 License: AGPL-3.0 Imports: 23 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func NewActor

func NewActor(c *config.Config,
	a app.Application,
	clock *Clock,
	db *Database,
	apdb *APDB,
	o *oauth2.Server,
	pk *services.PrivateKeys,
	po *services.Policies,
	f *services.Followers,
	u *services.Users,
	tc *conn.Controller) (actor pub.Actor, err error)

func NewActorMap

func NewActorMap(c *config.Config,
	clock *Clock,
	db *Database,
	apdb *APDB,
	pk *services.PrivateKeys,
	f *services.Followers,
	tc *conn.Controller) (actorMap map[paths.Actor]pub.Actor)

Types

type APDB

type APDB struct {
	*Database
	// contains filtered or unexported fields
}

func NewAPDB

func NewAPDB(db *Database, a app.Application) *APDB

func (*APDB) Lock

func (a *APDB) Lock(c context.Context, id *url.URL) error

func (*APDB) NewID

func (a *APDB) NewID(c context.Context, t vocab.Type) (id *url.URL, err error)

func (*APDB) Unlock

func (a *APDB) Unlock(c context.Context, id *url.URL) error

type Clock

type Clock struct {
	// contains filtered or unexported fields
}

func NewClock

func NewClock(location string) (c *Clock, err error)

Creates new clock with IANA Time Zone database string

func (*Clock) Now

func (c *Clock) Now() time.Time

type CommonBehavior

type CommonBehavior struct {
	// contains filtered or unexported fields
}

func NewCommonBehavior

func NewCommonBehavior(
	app app.Application,
	db *Database,
	tc *conn.Controller,
	o *oauth2.Server,
	pk *services.PrivateKeys) *CommonBehavior

func (*CommonBehavior) AuthenticateGetInbox

func (a *CommonBehavior) AuthenticateGetInbox(c context.Context, w http.ResponseWriter, r *http.Request) (newCtx context.Context, authenticated bool, err error)

func (*CommonBehavior) AuthenticateGetOutbox

func (a *CommonBehavior) AuthenticateGetOutbox(c context.Context, w http.ResponseWriter, r *http.Request) (newCtx context.Context, authenticated bool, err error)

func (*CommonBehavior) GetOutbox

func (*CommonBehavior) NewTransport

func (a *CommonBehavior) NewTransport(c context.Context, actorBoxIRI *url.URL, gofedAgent string) (t pub.Transport, err error)

type Database

type Database struct {
	// contains filtered or unexported fields
}

func NewDatabase

func NewDatabase(scheme string,
	c *config.Config,
	inboxes *services.Inboxes,
	outboxes *services.Outboxes,
	users *services.Users,
	data *services.Data,
	followers *services.Followers,
	following *services.Following,
	liked *services.Liked,
	any *services.Any) *Database

func (*Database) ActorForInbox

func (d *Database) ActorForInbox(c context.Context, inboxIRI *url.URL) (actorIRI *url.URL, err error)

func (*Database) ActorForOutbox

func (d *Database) ActorForOutbox(c context.Context, outboxIRI *url.URL) (actorIRI *url.URL, err error)

func (*Database) Begin

func (d *Database) Begin() app.TxBuilder

func (*Database) Create

func (d *Database) Create(c context.Context, asType vocab.Type) (err error)

func (*Database) Delete

func (d *Database) Delete(c context.Context, id *url.URL) (err error)

func (*Database) Exists

func (d *Database) Exists(c context.Context, id *url.URL) (exists bool, err error)

func (*Database) Followers

func (d *Database) Followers(c context.Context, actorIRI *url.URL) (followers vocab.ActivityStreamsCollection, err error)

func (*Database) Following

func (d *Database) Following(c context.Context, actorIRI *url.URL) (followers vocab.ActivityStreamsCollection, err error)

func (*Database) Get

func (d *Database) Get(c context.Context, id *url.URL) (value vocab.Type, err error)

func (*Database) GetInbox

func (d *Database) GetInbox(c context.Context, inboxIRI *url.URL) (inbox vocab.ActivityStreamsOrderedCollectionPage, err error)

func (*Database) GetOutbox

func (d *Database) GetOutbox(c context.Context, outboxIRI *url.URL) (outbox vocab.ActivityStreamsOrderedCollectionPage, err error)

func (*Database) GetPublicInbox

func (d *Database) GetPublicInbox(c context.Context, inboxIRI *url.URL) (inbox vocab.ActivityStreamsOrderedCollectionPage, err error)

func (*Database) GetPublicOutbox

func (d *Database) GetPublicOutbox(c context.Context, outboxIRI *url.URL) (outbox vocab.ActivityStreamsOrderedCollectionPage, err error)

func (*Database) InboxContains

func (d *Database) InboxContains(c context.Context, inbox, id *url.URL) (contains bool, err error)

func (*Database) Liked

func (d *Database) Liked(c context.Context, actorIRI *url.URL) (followers vocab.ActivityStreamsCollection, err error)

func (*Database) OutboxForInbox

func (d *Database) OutboxForInbox(c context.Context, inboxIRI *url.URL) (outboxIRI *url.URL, err error)

func (*Database) Owns

func (d *Database) Owns(c context.Context, id *url.URL) (owns bool, err error)

func (*Database) SetInbox

NOTE: This only prepends the FIRST item in the orderedItems property.

func (*Database) SetOutbox

NOTE: This only prepends the FIRST item in the orderedItems property.

func (*Database) Update

func (d *Database) Update(c context.Context, asType vocab.Type) (err error)

type FederatingBehavior

type FederatingBehavior struct {
	// contains filtered or unexported fields
}

func (*FederatingBehavior) AuthenticatePostInbox

func (f *FederatingBehavior) AuthenticatePostInbox(c context.Context, w http.ResponseWriter, r *http.Request) (out context.Context, authenticated bool, err error)

func (*FederatingBehavior) Blocked

func (f *FederatingBehavior) Blocked(c context.Context, actorIRIs []*url.URL) (blocked bool, err error)

func (*FederatingBehavior) DefaultCallback

func (f *FederatingBehavior) DefaultCallback(c context.Context, activity pub.Activity) error

func (*FederatingBehavior) FederatingCallbacks

func (f *FederatingBehavior) FederatingCallbacks(c context.Context) (wrapped pub.FederatingWrappedCallbacks, other []interface{}, err error)

func (*FederatingBehavior) FilterForwarding

func (f *FederatingBehavior) FilterForwarding(c context.Context, potentialRecipients []*url.URL, a pub.Activity) (filteredRecipients []*url.URL, err error)

func (*FederatingBehavior) GetInbox

func (*FederatingBehavior) MaxDeliveryRecursionDepth

func (f *FederatingBehavior) MaxDeliveryRecursionDepth(c context.Context) int

func (*FederatingBehavior) MaxInboxForwardingRecursionDepth

func (f *FederatingBehavior) MaxInboxForwardingRecursionDepth(c context.Context) int

func (*FederatingBehavior) PostInboxRequestBodyHook

func (f *FederatingBehavior) PostInboxRequestBodyHook(c context.Context, r *http.Request, activity pub.Activity) (out context.Context, err error)

type SocialBehavior

type SocialBehavior struct {
	// contains filtered or unexported fields
}

func NewSocialBehavior

func NewSocialBehavior(app app.C2SApplication, o *oauth2.Server) *SocialBehavior

func (*SocialBehavior) AuthenticatePostOutbox

func (s *SocialBehavior) AuthenticatePostOutbox(c context.Context, w http.ResponseWriter, r *http.Request) (out context.Context, authenticated bool, err error)

func (*SocialBehavior) DefaultCallback

func (s *SocialBehavior) DefaultCallback(c context.Context, activity pub.Activity) error

func (*SocialBehavior) PostOutboxRequestBodyHook

func (s *SocialBehavior) PostOutboxRequestBodyHook(c context.Context, r *http.Request, data vocab.Type) (out context.Context, err error)

func (*SocialBehavior) SocialCallbacks

func (s *SocialBehavior) SocialCallbacks(c context.Context) (wrapped pub.SocialWrappedCallbacks, other []interface{}, err error)

Jump to

Keyboard shortcuts

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