Documentation
¶
Index ¶
- Constants
- Variables
- func Id2RegionZone(id string) (string, string)
- func RegionID(region, zone string) string
- func SplitVersionedURL(url string) (string, string)
- type Client
- func (this *Client) AuthVersion() string
- func (this *Client) Authenticate(uname, passwd, domainName, tenantName string) (TokenCredential, error)
- func (this *Client) NewAuthTokenCredential() TokenCredential
- func (this *Client) NewSession(region, zone, endpointType string, token TokenCredential, apiVersion string) *ClientSession
- func (this *Client) SetDebug(debug bool)
- func (this *Client) SetProject(tenantId, tenantName string, token TokenCredential) (TokenCredential, error)
- func (this *Client) SetTenant(tenantId, tenantName string, token TokenCredential) (TokenCredential, error)
- func (this *Client) Verify(adminToken, token string) (cred TokenCredential, err error)
- type ClientSession
- func (this *ClientSession) GetApiVersion() string
- func (this *ClientSession) GetClient() *Client
- func (this *ClientSession) GetRegion() string
- func (this *ClientSession) GetServiceURL(service, endpointType string) (string, error)
- func (this *ClientSession) GetServiceURLs(service, endpointType string) ([]string, error)
- func (this *ClientSession) GetTenantId() string
- func (this *ClientSession) GetTenantName() string
- func (this *ClientSession) GetUserId() string
- func (this *ClientSession) IsSystemAdmin() bool
- func (this *ClientSession) JSONRequest(service, endpointType, method, url string, headers http.Header, ...) (http.Header, jsonutils.JSONObject, error)
- func (this *ClientSession) ParseJSONResponse(resp *http.Response, err error) (http.Header, jsonutils.JSONObject, error)
- func (this *ClientSession) PrepareTask()
- func (this *ClientSession) RawRequest(service, endpointType, method, url string, headers http.Header, body io.Reader) (*http.Response, error)
- func (this *ClientSession) RemoveTaskNotifyUrl()
- func (this *ClientSession) SetTaskNotifyUrl(url string)
- func (this *ClientSession) ToJson() jsonutils.JSONObject
- func (this *ClientSession) WaitTaskNotify()
- type Endpoint
- type ExternalService
- type IServiceCatalog
- type KeystoneDomainV3
- type KeystoneEndpointV2
- type KeystoneEndpointV3
- type KeystoneMetadataV2
- type KeystoneProjectV3
- type KeystoneRoleV2
- type KeystoneRoleV3
- type KeystoneServiceCatalogV2
- type KeystoneServiceCatalogV3
- type KeystoneServiceV2
- type KeystoneServiceV3
- type KeystoneTenantV2
- type KeystoneTokenV2
- type KeystoneTokenV3
- type KeystoneUserV2
- type KeystoneUserV3
- type SSimpleToken
- func (self *SSimpleToken) GetDomainId() string
- func (self *SSimpleToken) GetDomainName() string
- func (this *SSimpleToken) GetEndpoints(region string, endpointType string) []Endpoint
- func (self *SSimpleToken) GetExpires() time.Time
- func (self *SSimpleToken) GetExternalServices(region string) []ExternalService
- func (self *SSimpleToken) GetInternalServices(region string) []string
- func (self *SSimpleToken) GetProjectId() string
- func (self *SSimpleToken) GetProjectName() string
- func (self *SSimpleToken) GetRegions() []string
- func (self *SSimpleToken) GetRoles() []string
- func (this *SSimpleToken) GetServiceCatalog() IServiceCatalog
- func (self *SSimpleToken) GetServiceURL(service, region, zone, endpointType string) (string, error)
- func (self *SSimpleToken) GetServiceURLs(service, region, zone, endpointType string) ([]string, error)
- func (self *SSimpleToken) GetTenantId() string
- func (self *SSimpleToken) GetTenantName() string
- func (self *SSimpleToken) GetTokenString() string
- func (self *SSimpleToken) GetUserId() string
- func (self *SSimpleToken) GetUserName() string
- func (self *SSimpleToken) IsAdmin() bool
- func (self *SSimpleToken) IsSystemAdmin() bool
- func (self *SSimpleToken) IsValid() bool
- func (self *SSimpleToken) IsZero() bool
- func (self *SSimpleToken) String() string
- func (self *SSimpleToken) ValidDuration() time.Duration
- type TokenCredential
- type TokenCredentialV2
- func (token *TokenCredentialV2) GetDomainId() string
- func (token *TokenCredentialV2) GetDomainName() string
- func (this *TokenCredentialV2) GetEndpoints(region string, endpointType string) []Endpoint
- func (this *TokenCredentialV2) GetExpires() time.Time
- func (this *TokenCredentialV2) GetExternalServices(region string) []ExternalService
- func (this *TokenCredentialV2) GetInternalServices(region string) []string
- func (token *TokenCredentialV2) GetProjectId() string
- func (token *TokenCredentialV2) GetProjectName() string
- func (this *TokenCredentialV2) GetRegions() []string
- func (token *TokenCredentialV2) GetRoles() []string
- func (this *TokenCredentialV2) GetServiceCatalog() IServiceCatalog
- func (this *TokenCredentialV2) GetServiceURL(service, region, zone, endpointType string) (string, error)
- func (this *TokenCredentialV2) GetServiceURLs(service, region, zone, endpointType string) ([]string, error)
- func (token *TokenCredentialV2) GetTenantId() string
- func (token *TokenCredentialV2) GetTenantName() string
- func (token *TokenCredentialV2) GetTokenString() string
- func (token *TokenCredentialV2) GetUserId() string
- func (token *TokenCredentialV2) GetUserName() string
- func (this *TokenCredentialV2) IsAdmin() bool
- func (this *TokenCredentialV2) IsSystemAdmin() bool
- func (this *TokenCredentialV2) IsValid() bool
- func (self *TokenCredentialV2) IsZero() bool
- func (self *TokenCredentialV2) String() string
- func (this *TokenCredentialV2) ValidDuration() time.Duration
- type TokenCredentialV3
- func (token *TokenCredentialV3) GetDomainId() string
- func (token *TokenCredentialV3) GetDomainName() string
- func (this *TokenCredentialV3) GetEndpoints(region string, endpointType string) []Endpoint
- func (this *TokenCredentialV3) GetExpires() time.Time
- func (this *TokenCredentialV3) GetExternalServices(region string) []ExternalService
- func (this *TokenCredentialV3) GetInternalServices(region string) []string
- func (token *TokenCredentialV3) GetProjectId() string
- func (token *TokenCredentialV3) GetProjectName() string
- func (this *TokenCredentialV3) GetRegions() []string
- func (token *TokenCredentialV3) GetRoles() []string
- func (this *TokenCredentialV3) GetServiceCatalog() IServiceCatalog
- func (this *TokenCredentialV3) GetServiceURL(service, region, zone, endpointType string) (string, error)
- func (this *TokenCredentialV3) GetServiceURLs(service, region, zone, endpointType string) ([]string, error)
- func (token *TokenCredentialV3) GetTenantId() string
- func (token *TokenCredentialV3) GetTenantName() string
- func (token *TokenCredentialV3) GetTokenString() string
- func (token *TokenCredentialV3) GetUserId() string
- func (token *TokenCredentialV3) GetUserName() string
- func (this *TokenCredentialV3) IsAdmin() bool
- func (this *TokenCredentialV3) IsSystemAdmin() bool
- func (this *TokenCredentialV3) IsValid() bool
- func (self *TokenCredentialV3) IsZero() bool
- func (self *TokenCredentialV3) String() string
- func (this *TokenCredentialV3) ValidDuration() time.Duration
- type TokenManager
Constants ¶
View Source
const ( TASK_ID = "X-Task-Id" TASK_NOTIFY_URL = "X-Task-Notify-Url" AUTH_TOKEN = "X-Auth-Token" DEFAULT_API_VERSION = "v1" )
View Source
const REGION_ZONE_SEP = '-'
Variables ¶
View Source
var (
MutilVersionService = []string{"compute"}
)
View Source
var TokenCredentialType reflect.Type
Functions ¶
func Id2RegionZone ¶
func SplitVersionedURL ¶
Types ¶
type Client ¶
type Client struct {
// contains filtered or unexported fields
}
func (*Client) AuthVersion ¶
func (*Client) Authenticate ¶
func (this *Client) Authenticate(uname, passwd, domainName, tenantName string) (TokenCredential, error)
func (*Client) NewAuthTokenCredential ¶
func (this *Client) NewAuthTokenCredential() TokenCredential
func (*Client) NewSession ¶
func (this *Client) NewSession(region, zone, endpointType string, token TokenCredential, apiVersion string) *ClientSession
func (*Client) SetProject ¶
func (this *Client) SetProject(tenantId, tenantName string, token TokenCredential) (TokenCredential, error)
func (*Client) SetTenant ¶
func (this *Client) SetTenant(tenantId, tenantName string, token TokenCredential) (TokenCredential, error)
type ClientSession ¶
type ClientSession struct {
Header http.Header /// headers for this session
// contains filtered or unexported fields
}
func (*ClientSession) GetApiVersion ¶
func (this *ClientSession) GetApiVersion() string
func (*ClientSession) GetClient ¶
func (this *ClientSession) GetClient() *Client
func (*ClientSession) GetRegion ¶
func (this *ClientSession) GetRegion() string
func (*ClientSession) GetServiceURL ¶
func (this *ClientSession) GetServiceURL(service, endpointType string) (string, error)
func (*ClientSession) GetServiceURLs ¶
func (this *ClientSession) GetServiceURLs(service, endpointType string) ([]string, error)
func (*ClientSession) GetTenantId ¶
func (this *ClientSession) GetTenantId() string
func (*ClientSession) GetTenantName ¶
func (this *ClientSession) GetTenantName() string
func (*ClientSession) GetUserId ¶
func (this *ClientSession) GetUserId() string
func (*ClientSession) IsSystemAdmin ¶
func (this *ClientSession) IsSystemAdmin() bool
func (*ClientSession) JSONRequest ¶
func (this *ClientSession) JSONRequest(service, endpointType, method, url string, headers http.Header, body jsonutils.JSONObject) (http.Header, jsonutils.JSONObject, error)
func (*ClientSession) ParseJSONResponse ¶
func (this *ClientSession) ParseJSONResponse(resp *http.Response, err error) (http.Header, jsonutils.JSONObject, error)
func (*ClientSession) PrepareTask ¶
func (this *ClientSession) PrepareTask()
func (*ClientSession) RawRequest ¶
func (*ClientSession) RemoveTaskNotifyUrl ¶
func (this *ClientSession) RemoveTaskNotifyUrl()
func (*ClientSession) SetTaskNotifyUrl ¶
func (this *ClientSession) SetTaskNotifyUrl(url string)
func (*ClientSession) ToJson ¶
func (this *ClientSession) ToJson() jsonutils.JSONObject
func (*ClientSession) WaitTaskNotify ¶
func (this *ClientSession) WaitTaskNotify()
type ExternalService ¶
type IServiceCatalog ¶
type KeystoneDomainV3 ¶
type KeystoneEndpointV2 ¶
type KeystoneEndpointV3 ¶
type KeystoneMetadataV2 ¶
type KeystoneProjectV3 ¶
type KeystoneProjectV3 struct {
Id string
Name string
Domain KeystoneDomainV3
}
type KeystoneRoleV2 ¶
type KeystoneRoleV2 struct {
Name string
}
type KeystoneRoleV3 ¶
type KeystoneServiceCatalogV2 ¶
type KeystoneServiceCatalogV2 []KeystoneServiceV2
func (KeystoneServiceCatalogV2) GetServiceURL ¶
func (catalog KeystoneServiceCatalogV2) GetServiceURL(service, region, zone, endpointType string) (string, error)
func (KeystoneServiceCatalogV2) GetServiceURLs ¶
func (catalog KeystoneServiceCatalogV2) GetServiceURLs(service, region, zone, endpointType string) ([]string, error)
type KeystoneServiceCatalogV3 ¶
type KeystoneServiceCatalogV3 []KeystoneServiceV3
func (KeystoneServiceCatalogV3) GetServiceURL ¶
func (catalog KeystoneServiceCatalogV3) GetServiceURL(service, region, zone, endpointType string) (string, error)
func (KeystoneServiceCatalogV3) GetServiceURLs ¶
func (catalog KeystoneServiceCatalogV3) GetServiceURLs(service, region, zone, endpointType string) ([]string, error)
type KeystoneServiceV2 ¶
type KeystoneServiceV2 struct {
Name string
Type string
Endpoints []KeystoneEndpointV2
}
type KeystoneServiceV3 ¶
type KeystoneServiceV3 struct {
Id string
Name string
Type string
Endpoints []KeystoneEndpointV3
}
type KeystoneTenantV2 ¶
type KeystoneTokenV2 ¶
type KeystoneTokenV2 struct {
Id string
Expires time.Time
Tenant KeystoneTenantV2
}
type KeystoneTokenV3 ¶
type KeystoneTokenV3 struct {
Audit_ids []string
Expires_at time.Time
Is_domain bool
Issued_at time.Time
Methods []string
Project KeystoneProjectV3
Roles []KeystoneRoleV3
User KeystoneUserV3
Catalog KeystoneServiceCatalogV3
}
type KeystoneUserV2 ¶
type KeystoneUserV2 struct {
Id string
Name string
Username string
Roles []KeystoneRoleV2
}
type KeystoneUserV3 ¶
type KeystoneUserV3 struct {
Id string
Name string
Domain KeystoneDomainV3
Password_expires_at time.Time
}
type SSimpleToken ¶
type SSimpleToken struct {
Token string
Domain string
DomainId string
User string
UserId string
Project string `json:"tenant"`
ProjectId string `json:"tenant_id"`
Roles string
Expires time.Time
}
func (*SSimpleToken) GetDomainId ¶
func (self *SSimpleToken) GetDomainId() string
func (*SSimpleToken) GetDomainName ¶
func (self *SSimpleToken) GetDomainName() string
func (*SSimpleToken) GetEndpoints ¶
func (this *SSimpleToken) GetEndpoints(region string, endpointType string) []Endpoint
func (*SSimpleToken) GetExpires ¶
func (self *SSimpleToken) GetExpires() time.Time
func (*SSimpleToken) GetExternalServices ¶
func (self *SSimpleToken) GetExternalServices(region string) []ExternalService
func (*SSimpleToken) GetInternalServices ¶
func (self *SSimpleToken) GetInternalServices(region string) []string
func (*SSimpleToken) GetProjectId ¶
func (self *SSimpleToken) GetProjectId() string
func (*SSimpleToken) GetProjectName ¶
func (self *SSimpleToken) GetProjectName() string
func (*SSimpleToken) GetRegions ¶
func (self *SSimpleToken) GetRegions() []string
func (*SSimpleToken) GetRoles ¶
func (self *SSimpleToken) GetRoles() []string
func (*SSimpleToken) GetServiceCatalog ¶
func (this *SSimpleToken) GetServiceCatalog() IServiceCatalog
func (*SSimpleToken) GetServiceURL ¶
func (self *SSimpleToken) GetServiceURL(service, region, zone, endpointType string) (string, error)
func (*SSimpleToken) GetServiceURLs ¶
func (self *SSimpleToken) GetServiceURLs(service, region, zone, endpointType string) ([]string, error)
func (*SSimpleToken) GetTenantId ¶
func (self *SSimpleToken) GetTenantId() string
func (*SSimpleToken) GetTenantName ¶
func (self *SSimpleToken) GetTenantName() string
func (*SSimpleToken) GetTokenString ¶
func (self *SSimpleToken) GetTokenString() string
func (*SSimpleToken) GetUserId ¶
func (self *SSimpleToken) GetUserId() string
func (*SSimpleToken) GetUserName ¶
func (self *SSimpleToken) GetUserName() string
func (*SSimpleToken) IsAdmin ¶
func (self *SSimpleToken) IsAdmin() bool
func (*SSimpleToken) IsSystemAdmin ¶
func (self *SSimpleToken) IsSystemAdmin() bool
func (*SSimpleToken) IsValid ¶
func (self *SSimpleToken) IsValid() bool
func (*SSimpleToken) IsZero ¶
func (self *SSimpleToken) IsZero() bool
func (*SSimpleToken) String ¶
func (self *SSimpleToken) String() string
func (*SSimpleToken) ValidDuration ¶
func (self *SSimpleToken) ValidDuration() time.Duration
type TokenCredential ¶
type TokenCredential interface {
gotypes.ISerializable
IServiceCatalog
GetTokenString() string
GetDomainId() string
GetDomainName() string
GetTenantId() string
GetTenantName() string
GetProjectId() string
GetProjectName() string
GetUserId() string
GetUserName() string
GetRoles() []string
GetExpires() time.Time
IsValid() bool
ValidDuration() time.Duration
IsAdmin() bool
IsSystemAdmin() bool
GetRegions() []string
GetServiceCatalog() IServiceCatalog
GetInternalServices(region string) []string
GetExternalServices(region string) []ExternalService
GetEndpoints(region string, endpointType string) []Endpoint
}
func SimplifyToken ¶
func SimplifyToken(token TokenCredential) TokenCredential
type TokenCredentialV2 ¶
type TokenCredentialV2 struct {
Token KeystoneTokenV2
ServiceCatalog KeystoneServiceCatalogV2
User KeystoneUserV2
Metadata KeystoneMetadataV2
}
func (*TokenCredentialV2) GetDomainId ¶
func (token *TokenCredentialV2) GetDomainId() string
func (*TokenCredentialV2) GetDomainName ¶
func (token *TokenCredentialV2) GetDomainName() string
func (*TokenCredentialV2) GetEndpoints ¶
func (this *TokenCredentialV2) GetEndpoints(region string, endpointType string) []Endpoint
func (*TokenCredentialV2) GetExpires ¶
func (this *TokenCredentialV2) GetExpires() time.Time
func (*TokenCredentialV2) GetExternalServices ¶
func (this *TokenCredentialV2) GetExternalServices(region string) []ExternalService
func (*TokenCredentialV2) GetInternalServices ¶
func (this *TokenCredentialV2) GetInternalServices(region string) []string
func (*TokenCredentialV2) GetProjectId ¶
func (token *TokenCredentialV2) GetProjectId() string
func (*TokenCredentialV2) GetProjectName ¶
func (token *TokenCredentialV2) GetProjectName() string
func (*TokenCredentialV2) GetRegions ¶
func (this *TokenCredentialV2) GetRegions() []string
func (*TokenCredentialV2) GetRoles ¶
func (token *TokenCredentialV2) GetRoles() []string
func (*TokenCredentialV2) GetServiceCatalog ¶
func (this *TokenCredentialV2) GetServiceCatalog() IServiceCatalog
func (*TokenCredentialV2) GetServiceURL ¶
func (this *TokenCredentialV2) GetServiceURL(service, region, zone, endpointType string) (string, error)
func (*TokenCredentialV2) GetServiceURLs ¶
func (this *TokenCredentialV2) GetServiceURLs(service, region, zone, endpointType string) ([]string, error)
func (*TokenCredentialV2) GetTenantId ¶
func (token *TokenCredentialV2) GetTenantId() string
func (*TokenCredentialV2) GetTenantName ¶
func (token *TokenCredentialV2) GetTenantName() string
func (*TokenCredentialV2) GetTokenString ¶
func (token *TokenCredentialV2) GetTokenString() string
func (*TokenCredentialV2) GetUserId ¶
func (token *TokenCredentialV2) GetUserId() string
func (*TokenCredentialV2) GetUserName ¶
func (token *TokenCredentialV2) GetUserName() string
func (*TokenCredentialV2) IsAdmin ¶
func (this *TokenCredentialV2) IsAdmin() bool
func (*TokenCredentialV2) IsSystemAdmin ¶
func (this *TokenCredentialV2) IsSystemAdmin() bool
func (*TokenCredentialV2) IsValid ¶
func (this *TokenCredentialV2) IsValid() bool
func (*TokenCredentialV2) IsZero ¶
func (self *TokenCredentialV2) IsZero() bool
func (*TokenCredentialV2) String ¶
func (self *TokenCredentialV2) String() string
func (*TokenCredentialV2) ValidDuration ¶
func (this *TokenCredentialV2) ValidDuration() time.Duration
type TokenCredentialV3 ¶
type TokenCredentialV3 struct {
Token KeystoneTokenV3
Id string
}
func (*TokenCredentialV3) GetDomainId ¶
func (token *TokenCredentialV3) GetDomainId() string
func (*TokenCredentialV3) GetDomainName ¶
func (token *TokenCredentialV3) GetDomainName() string
func (*TokenCredentialV3) GetEndpoints ¶
func (this *TokenCredentialV3) GetEndpoints(region string, endpointType string) []Endpoint
func (*TokenCredentialV3) GetExpires ¶
func (this *TokenCredentialV3) GetExpires() time.Time
func (*TokenCredentialV3) GetExternalServices ¶
func (this *TokenCredentialV3) GetExternalServices(region string) []ExternalService
func (*TokenCredentialV3) GetInternalServices ¶
func (this *TokenCredentialV3) GetInternalServices(region string) []string
func (*TokenCredentialV3) GetProjectId ¶
func (token *TokenCredentialV3) GetProjectId() string
func (*TokenCredentialV3) GetProjectName ¶
func (token *TokenCredentialV3) GetProjectName() string
func (*TokenCredentialV3) GetRegions ¶
func (this *TokenCredentialV3) GetRegions() []string
func (*TokenCredentialV3) GetRoles ¶
func (token *TokenCredentialV3) GetRoles() []string
func (*TokenCredentialV3) GetServiceCatalog ¶
func (this *TokenCredentialV3) GetServiceCatalog() IServiceCatalog
func (*TokenCredentialV3) GetServiceURL ¶
func (this *TokenCredentialV3) GetServiceURL(service, region, zone, endpointType string) (string, error)
func (*TokenCredentialV3) GetServiceURLs ¶
func (this *TokenCredentialV3) GetServiceURLs(service, region, zone, endpointType string) ([]string, error)
func (*TokenCredentialV3) GetTenantId ¶
func (token *TokenCredentialV3) GetTenantId() string
func (*TokenCredentialV3) GetTenantName ¶
func (token *TokenCredentialV3) GetTenantName() string
func (*TokenCredentialV3) GetTokenString ¶
func (token *TokenCredentialV3) GetTokenString() string
func (*TokenCredentialV3) GetUserId ¶
func (token *TokenCredentialV3) GetUserId() string
func (*TokenCredentialV3) GetUserName ¶
func (token *TokenCredentialV3) GetUserName() string
func (*TokenCredentialV3) IsAdmin ¶
func (this *TokenCredentialV3) IsAdmin() bool
func (*TokenCredentialV3) IsSystemAdmin ¶
func (this *TokenCredentialV3) IsSystemAdmin() bool
func (*TokenCredentialV3) IsValid ¶
func (this *TokenCredentialV3) IsValid() bool
func (*TokenCredentialV3) IsZero ¶
func (self *TokenCredentialV3) IsZero() bool
func (*TokenCredentialV3) String ¶
func (self *TokenCredentialV3) String() string
func (*TokenCredentialV3) ValidDuration ¶
func (this *TokenCredentialV3) ValidDuration() time.Duration
type TokenManager ¶
type TokenManager interface {
Save(token TokenCredential) string
Get(tid string) TokenCredential
Remove(tid string)
}
func NewMapTokenManager ¶
func NewMapTokenManager() TokenManager
Source Files
¶
Click to show internal directories.
Click to hide internal directories.