summaryrefslogtreecommitdiff
path: root/internal
diff options
context:
space:
mode:
authorjwijenbergh <jeroenwijenbergh@protonmail.com>2023-03-20 13:59:06 +0100
committerJeroen Wijenbergh <46386452+jwijenbergh@users.noreply.github.com>2023-09-25 09:43:37 +0200
commit3618f2337bf0099d1fe8e4782cda3677ea4175be (patch)
tree638fa68f28c20178a729ef991e470d8d8aa9ee64 /internal
parent8ccb4486cdb03cd3b10606b4bd77b7bcb4107e6d (diff)
Types: Split discovery into its own package
Diffstat (limited to 'internal')
-rw-r--r--internal/discovery/discovery.go26
-rw-r--r--internal/server/secureinternet.go6
-rw-r--r--internal/server/servers.go14
3 files changed, 23 insertions, 23 deletions
diff --git a/internal/discovery/discovery.go b/internal/discovery/discovery.go
index 788bca2..ae7a307 100644
--- a/internal/discovery/discovery.go
+++ b/internal/discovery/discovery.go
@@ -8,7 +8,7 @@ import (
"github.com/eduvpn/eduvpn-common/internal/http"
"github.com/eduvpn/eduvpn-common/internal/verify"
- "github.com/eduvpn/eduvpn-common/types"
+ discotypes "github.com/eduvpn/eduvpn-common/types/discovery"
"github.com/go-errors/errors"
)
@@ -21,10 +21,10 @@ type Discovery struct {
httpClient *http.Client
// OrganizationList represents the organizations that are returned by the discovery server
- OrganizationList types.DiscoveryOrganizations `json:"organizations"`
+ OrganizationList discotypes.Organizations `json:"organizations"`
// ServerList represents the servers that are returned by the discovery server
- ServerList types.DiscoveryServers `json:"servers"`
+ ServerList discotypes.Servers `json:"servers"`
}
var DiscoURL = "https://disco.eduvpn.org/v2/"
@@ -115,7 +115,7 @@ func (discovery *Discovery) SecureLocationList() []string {
func (discovery *Discovery) ServerByURL(
baseURL string,
srvType string,
-) (*types.DiscoveryServer, error) {
+) (*discotypes.Server, error) {
for _, currentServer := range discovery.ServerList.List {
if currentServer.BaseURL == baseURL && currentServer.Type == srvType {
return &currentServer, nil
@@ -126,7 +126,7 @@ func (discovery *Discovery) ServerByURL(
// ServerByCountryCode returns the discovery server by the country code
// An error is returned if and only if nil is returned for the server.
-func (discovery *Discovery) ServerByCountryCode(countryCode string) (*types.DiscoveryServer, error) {
+func (discovery *Discovery) ServerByCountryCode(countryCode string) (*discotypes.Server, error) {
for _, srv := range discovery.ServerList.List {
if srv.CountryCode == countryCode && srv.Type == "secure_internet" {
return &srv, nil
@@ -137,7 +137,7 @@ func (discovery *Discovery) ServerByCountryCode(countryCode string) (*types.Disc
// orgByID returns the discovery organization by the organization ID
// An error is returned if and only if nil is returned for the organization.
-func (discovery *Discovery) orgByID(orgID string) (*types.DiscoveryOrganization, error) {
+func (discovery *Discovery) orgByID(orgID string) (*discotypes.Organization, error) {
for _, org := range discovery.OrganizationList.List {
if org.OrgID == orgID {
return &org, nil
@@ -150,7 +150,7 @@ func (discovery *Discovery) orgByID(orgID string) (*types.DiscoveryOrganization,
// - The organization it belongs to
// - The secure internet server itself
// An error is returned if and only if nil is returned for the organization.
-func (discovery *Discovery) SecureHomeArgs(orgID string) (*types.DiscoveryOrganization, *types.DiscoveryServer, error) {
+func (discovery *Discovery) SecureHomeArgs(orgID string) (*discotypes.Organization, *discotypes.Server, error) {
org, err := discovery.orgByID(orgID)
if err != nil {
return nil, nil, err
@@ -178,7 +178,7 @@ func (discovery *Discovery) DetermineServersUpdate() bool {
return !time.Now().Before(upd)
}
-func (discovery *Discovery) previousOrganizations() (*types.DiscoveryOrganizations, error) {
+func (discovery *Discovery) previousOrganizations() (*discotypes.Organizations, error) {
// If the version field is not zero then we have a cached struct
// We also immediately return this copy if we have no embedded JSON
if discovery.OrganizationList.Version != 0 || !HasCache {
@@ -186,7 +186,7 @@ func (discovery *Discovery) previousOrganizations() (*types.DiscoveryOrganizatio
}
// We do not have a cached struct, this we need to get it using the embedded JSON
- var eo types.DiscoveryOrganizations
+ var eo discotypes.Organizations
if err := json.Unmarshal(eOrganizations, &eo); err != nil {
return nil, errors.WrapPrefix(err, "failed parsing discovery organizations from the embedded cache", 0)
}
@@ -194,7 +194,7 @@ func (discovery *Discovery) previousOrganizations() (*types.DiscoveryOrganizatio
return &eo, nil
}
-func (discovery *Discovery) previousServers() (*types.DiscoveryServers, error) {
+func (discovery *Discovery) previousServers() (*discotypes.Servers, error) {
// If the version field is not zero then we have a cached struct
// We also immediately return this copy if we have no embedded JSON
if discovery.ServerList.Version != 0 || !HasCache {
@@ -202,7 +202,7 @@ func (discovery *Discovery) previousServers() (*types.DiscoveryServers, error) {
}
// We do not have a cached struct, this we need to get it using the embedded JSON
- var es types.DiscoveryServers
+ var es discotypes.Servers
if err := json.Unmarshal(eServers, &es); err != nil {
return nil, errors.WrapPrefix(err, "failed parsing discovery servers from the embedded cache", 0)
}
@@ -212,7 +212,7 @@ func (discovery *Discovery) previousServers() (*types.DiscoveryServers, error) {
// Organizations returns the discovery organizations
// If there was an error, a cached copy is returned if available.
-func (discovery *Discovery) Organizations() (*types.DiscoveryOrganizations, error) {
+func (discovery *Discovery) Organizations() (*discotypes.Organizations, error) {
if !discovery.DetermineOrganizationsUpdate() {
return &discovery.OrganizationList, nil
}
@@ -230,7 +230,7 @@ func (discovery *Discovery) Organizations() (*types.DiscoveryOrganizations, erro
// Servers returns the discovery servers
// If there was an error, a cached copy is returned if available.
-func (discovery *Discovery) Servers() (*types.DiscoveryServers, error) {
+func (discovery *Discovery) Servers() (*discotypes.Servers, error) {
if !discovery.DetermineServersUpdate() {
return &discovery.ServerList, nil
}
diff --git a/internal/server/secureinternet.go b/internal/server/secureinternet.go
index 3c40253..4b42303 100644
--- a/internal/server/secureinternet.go
+++ b/internal/server/secureinternet.go
@@ -4,7 +4,7 @@ import (
"github.com/eduvpn/eduvpn-common/internal/discovery"
"github.com/eduvpn/eduvpn-common/internal/oauth"
"github.com/eduvpn/eduvpn-common/internal/util"
- "github.com/eduvpn/eduvpn-common/types"
+ discotypes "github.com/eduvpn/eduvpn-common/types/discovery"
"github.com/go-errors/errors"
)
@@ -82,7 +82,7 @@ func (ss *Servers) HasSecureLocation() bool {
return ss.SecureInternetHomeServer.CurrentLocation != ""
}
-func (s *SecureInternetHomeServer) addLocation(locSrv *types.DiscoveryServer) (*Base, error) {
+func (s *SecureInternetHomeServer) addLocation(locSrv *discotypes.Server) (*Base, error) {
// Initialize the base map if it is non-nil
if s.BaseMap == nil {
s.BaseMap = make(map[string]*Base)
@@ -109,7 +109,7 @@ func (s *SecureInternetHomeServer) addLocation(locSrv *types.DiscoveryServer) (*
// Initializes the home server and adds its own location.
func (s *SecureInternetHomeServer) init(
- homeOrg *types.DiscoveryOrganization, homeLoc *types.DiscoveryServer,
+ homeOrg *discotypes.Organization, homeLoc *discotypes.Server,
) error {
if s.HomeOrganizationID != homeOrg.OrgID {
// New home organisation, clear everything
diff --git a/internal/server/servers.go b/internal/server/servers.go
index 9a9e413..60c993d 100644
--- a/internal/server/servers.go
+++ b/internal/server/servers.go
@@ -1,7 +1,7 @@
package server
import (
- "github.com/eduvpn/eduvpn-common/types"
+ discotypes "github.com/eduvpn/eduvpn-common/types/discovery"
"github.com/go-errors/errors"
)
@@ -20,8 +20,8 @@ func (ss *Servers) HasSecureInternet() bool {
}
func (ss *Servers) AddSecureInternet(
- secureOrg *types.DiscoveryOrganization,
- secureServer *types.DiscoveryServer,
+ secureOrg *discotypes.Organization,
+ secureServer *discotypes.Server,
) (Server, error) {
// If we have specified an organization ID
// We also need to get an authorization template
@@ -60,7 +60,7 @@ func (ss *Servers) GetCurrentServer() (Server, error) {
}
func (ss *Servers) addInstituteAndCustom(
- discoServer *types.DiscoveryServer,
+ discoServer *discotypes.Server,
isCustom bool,
) (Server, error) {
URL := discoServer.BaseURL
@@ -92,13 +92,13 @@ func (ss *Servers) addInstituteAndCustom(
}
func (ss *Servers) AddInstituteAccessServer(
- instituteServer *types.DiscoveryServer,
+ instituteServer *discotypes.Server,
) (Server, error) {
return ss.addInstituteAndCustom(instituteServer, false)
}
func (ss *Servers) AddCustomServer(
- customServer *types.DiscoveryServer,
+ customServer *discotypes.Server,
) (Server, error) {
return ss.addInstituteAndCustom(customServer, true)
}
@@ -108,7 +108,7 @@ func (ss *Servers) GetSecureLocation() string {
}
func (ss *Servers) SetSecureLocation(
- chosenLocationServer *types.DiscoveryServer,
+ chosenLocationServer *discotypes.Server,
) error {
// Make sure to add the current location