// Code generated by "make api"; DO NOT EDIT. package authtokens import ( "encoding/json" "strings" "time" "github.com/fatih/structs" "github.com/hashicorp/watchtower/api" "github.com/hashicorp/watchtower/api/internal/strutil" ) type AuthToken struct { Client *api.Client `json:"-"` defaultFields []string // The ID of the AuthToken // Output only. Id string `json:"id,omitempty"` // The token. This will only be populated after login and is only ever visible to the end user whose login // request resulted in this auth token being created. // Output only. Token string `json:"token,omitempty"` // The id of the user of this AuthToken. // Output only. UserId string `json:"user_id,omitempty"` // The id of the user of this AuthToken. // Output only. AuthMethodId string `json:"auth_method_id,omitempty"` // The time this resource was created // Output only. CreatedTime time.Time `json:"created_time,omitempty"` // The time this resource was last updated. // Output only. UpdatedTime time.Time `json:"updated_time,omitempty"` // The approximate time this AuthToken was last used. // Output only. ApproximateLastUsedTime time.Time `json:"approximate_last_used_time,omitempty"` // The time this AuthToken expires. // Output only. ExpirationTime time.Time `json:"expiration_time,omitempty"` } func (s *AuthToken) SetDefault(key string) { lowerKey := strings.ToLower(key) validMap := map[string]string{"approximatelastusedtime": "approximate_last_used_time", "authmethodid": "auth_method_id", "createdtime": "created_time", "expirationtime": "expiration_time", "id": "id", "token": "token", "updatedtime": "updated_time", "userid": "user_id"} for k, v := range validMap { if k == lowerKey || v == lowerKey { s.defaultFields = strutil.AppendIfMissing(s.defaultFields, v) return } } } func (s *AuthToken) UnsetDefault(key string) { lowerKey := strings.ToLower(key) validMap := map[string]string{"approximatelastusedtime": "approximate_last_used_time", "authmethodid": "auth_method_id", "createdtime": "created_time", "expirationtime": "expiration_time", "id": "id", "token": "token", "updatedtime": "updated_time", "userid": "user_id"} for k, v := range validMap { if k == lowerKey || v == lowerKey { s.defaultFields = strutil.StrListDelete(s.defaultFields, v) return } } } func (s AuthToken) MarshalJSON() ([]byte, error) { m := structs.Map(s) if m == nil { m = make(map[string]interface{}) } for _, k := range s.defaultFields { m[k] = nil } return json.Marshal(m) }