mirror of
				https://github.com/superseriousbusiness/gotosocial.git
				synced 2025-11-04 01:12:24 -06:00 
			
		
		
		
	Inbox POST from federated servers now working for statuses and follow requests.
    Follow request client API added.
    Start work on federating outgoing messages.
    Other fixes and changes/tidying up.
		
	
			
		
			
				
	
	
		
			38 lines
		
	
	
	
		
			1 KiB
		
	
	
	
		
			Go
		
	
	
	
	
	
			
		
		
	
	
			38 lines
		
	
	
	
		
			1 KiB
		
	
	
	
		
			Go
		
	
	
	
	
	
package instance
 | 
						|
 | 
						|
import (
 | 
						|
	"net/http"
 | 
						|
 | 
						|
	"github.com/sirupsen/logrus"
 | 
						|
	"github.com/superseriousbusiness/gotosocial/internal/api"
 | 
						|
	"github.com/superseriousbusiness/gotosocial/internal/config"
 | 
						|
	"github.com/superseriousbusiness/gotosocial/internal/message"
 | 
						|
	"github.com/superseriousbusiness/gotosocial/internal/router"
 | 
						|
)
 | 
						|
 | 
						|
const (
 | 
						|
	// InstanceInformationPath is for serving instance info requests
 | 
						|
	InstanceInformationPath = "api/v1/instance"
 | 
						|
)
 | 
						|
 | 
						|
// Module implements the ClientModule interface
 | 
						|
type Module struct {
 | 
						|
	config    *config.Config
 | 
						|
	processor message.Processor
 | 
						|
	log       *logrus.Logger
 | 
						|
}
 | 
						|
 | 
						|
// New returns a new instance information module
 | 
						|
func New(config *config.Config, processor message.Processor, log *logrus.Logger) api.ClientModule {
 | 
						|
	return &Module{
 | 
						|
		config:    config,
 | 
						|
		processor: processor,
 | 
						|
		log:       log,
 | 
						|
	}
 | 
						|
}
 | 
						|
 | 
						|
// Route satisfies the ClientModule interface
 | 
						|
func (m *Module) Route(s router.Router) error {
 | 
						|
	s.AttachHandler(http.MethodGet, InstanceInformationPath, m.InstanceInformationGETHandler)
 | 
						|
	return nil
 | 
						|
}
 |