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.