// Code generated by go-swagger; DO NOT EDIT. package models // This file was generated by the swagger tool. // Editing this file might prove futile when you re-run the swagger generate command import ( "context" "encoding/json" "github.com/go-openapi/errors" "github.com/go-openapi/strfmt" "github.com/go-openapi/swag" "github.com/go-openapi/validate" ) // Repository Repository represents a repository // // swagger:model Repository type Repository struct { // allow fast forward only AllowFastForwardOnly bool `json:"allow_fast_forward_only_merge,omitempty"` // allow merge AllowMerge bool `json:"allow_merge_commits,omitempty"` // allow rebase AllowRebase bool `json:"allow_rebase,omitempty"` // allow rebase merge AllowRebaseMerge bool `json:"allow_rebase_explicit,omitempty"` // allow rebase update AllowRebaseUpdate bool `json:"allow_rebase_update,omitempty"` // allow squash AllowSquash bool `json:"allow_squash_merge,omitempty"` // archived Archived bool `json:"archived,omitempty"` // archived at // Format: date-time ArchivedAt strfmt.DateTime `json:"archived_at,omitempty"` // avatar URL AvatarURL string `json:"avatar_url,omitempty"` // clone URL CloneURL string `json:"clone_url,omitempty"` // created // Format: date-time Created strfmt.DateTime `json:"created_at,omitempty"` // default allow maintainer edit DefaultAllowMaintainerEdit bool `json:"default_allow_maintainer_edit,omitempty"` // default branch DefaultBranch string `json:"default_branch,omitempty"` // default delete branch after merge DefaultDeleteBranchAfterMerge bool `json:"default_delete_branch_after_merge,omitempty"` // default merge style DefaultMergeStyle string `json:"default_merge_style,omitempty"` // description Description string `json:"description,omitempty"` // empty Empty bool `json:"empty,omitempty"` // fork Fork bool `json:"fork,omitempty"` // forks Forks int64 `json:"forks_count,omitempty"` // full name FullName string `json:"full_name,omitempty"` // HTML URL HTMLURL string `json:"html_url,omitempty"` // has actions HasActions bool `json:"has_actions,omitempty"` // has issues HasIssues bool `json:"has_issues,omitempty"` // has packages HasPackages bool `json:"has_packages,omitempty"` // has projects HasProjects bool `json:"has_projects,omitempty"` // has pull requests HasPullRequests bool `json:"has_pull_requests,omitempty"` // has releases HasReleases bool `json:"has_releases,omitempty"` // has wiki HasWiki bool `json:"has_wiki,omitempty"` // ID ID int64 `json:"id,omitempty"` // ignore whitespace conflicts IgnoreWhitespaceConflicts bool `json:"ignore_whitespace_conflicts,omitempty"` // internal Internal bool `json:"internal,omitempty"` // language Language string `json:"language,omitempty"` // languages URL LanguagesURL string `json:"languages_url,omitempty"` // link Link string `json:"link,omitempty"` // mirror Mirror bool `json:"mirror,omitempty"` // mirror interval MirrorInterval string `json:"mirror_interval,omitempty"` // mirror updated // Format: date-time MirrorUpdated strfmt.DateTime `json:"mirror_updated,omitempty"` // name Name string `json:"name,omitempty"` // ObjectFormatName of the underlying git repository // Enum: ["sha1","sha256"] ObjectFormatName string `json:"object_format_name,omitempty"` // open issues OpenIssues int64 `json:"open_issues_count,omitempty"` // open pulls OpenPulls int64 `json:"open_pr_counter,omitempty"` // original URL OriginalURL string `json:"original_url,omitempty"` // private Private bool `json:"private,omitempty"` // projects mode ProjectsMode string `json:"projects_mode,omitempty"` // releases Releases int64 `json:"release_counter,omitempty"` // SSH URL SSHURL string `json:"ssh_url,omitempty"` // size Size int64 `json:"size,omitempty"` // stars Stars int64 `json:"stars_count,omitempty"` // template Template bool `json:"template,omitempty"` // URL URL string `json:"url,omitempty"` // updated // Format: date-time Updated strfmt.DateTime `json:"updated_at,omitempty"` // watchers Watchers int64 `json:"watchers_count,omitempty"` // website Website string `json:"website,omitempty"` // external tracker ExternalTracker *ExternalTracker `json:"external_tracker,omitempty"` // external wiki ExternalWiki *ExternalWiki `json:"external_wiki,omitempty"` // internal tracker InternalTracker *InternalTracker `json:"internal_tracker,omitempty"` // owner Owner *User `json:"owner,omitempty"` // parent Parent *Repository `json:"parent,omitempty"` // permissions Permissions *Permission `json:"permissions,omitempty"` // repo transfer RepoTransfer *RepoTransfer `json:"repo_transfer,omitempty"` } // Validate validates this repository func (m *Repository) Validate(formats strfmt.Registry) error { var res []error if err := m.validateArchivedAt(formats); err != nil { res = append(res, err) } if err := m.validateCreated(formats); err != nil { res = append(res, err) } if err := m.validateMirrorUpdated(formats); err != nil { res = append(res, err) } if err := m.validateObjectFormatName(formats); err != nil { res = append(res, err) } if err := m.validateUpdated(formats); err != nil { res = append(res, err) } if err := m.validateExternalTracker(formats); err != nil { res = append(res, err) } if err := m.validateExternalWiki(formats); err != nil { res = append(res, err) } if err := m.validateInternalTracker(formats); err != nil { res = append(res, err) } if err := m.validateOwner(formats); err != nil { res = append(res, err) } if err := m.validateParent(formats); err != nil { res = append(res, err) } if err := m.validatePermissions(formats); err != nil { res = append(res, err) } if err := m.validateRepoTransfer(formats); err != nil { res = append(res, err) } if len(res) > 0 { return errors.CompositeValidationError(res...) } return nil } func (m *Repository) validateArchivedAt(formats strfmt.Registry) error { if swag.IsZero(m.ArchivedAt) { // not required return nil } if err := validate.FormatOf("archived_at", "body", "date-time", m.ArchivedAt.String(), formats); err != nil { return err } return nil } func (m *Repository) validateCreated(formats strfmt.Registry) error { if swag.IsZero(m.Created) { // not required return nil } if err := validate.FormatOf("created_at", "body", "date-time", m.Created.String(), formats); err != nil { return err } return nil } func (m *Repository) validateMirrorUpdated(formats strfmt.Registry) error { if swag.IsZero(m.MirrorUpdated) { // not required return nil } if err := validate.FormatOf("mirror_updated", "body", "date-time", m.MirrorUpdated.String(), formats); err != nil { return err } return nil } var repositoryTypeObjectFormatNamePropEnum []interface{} func init() { var res []string if err := json.Unmarshal([]byte(`["sha1","sha256"]`), &res); err != nil { panic(err) } for _, v := range res { repositoryTypeObjectFormatNamePropEnum = append(repositoryTypeObjectFormatNamePropEnum, v) } } const ( // RepositoryObjectFormatNameSha1 captures enum value "sha1" RepositoryObjectFormatNameSha1 string = "sha1" // RepositoryObjectFormatNameSha256 captures enum value "sha256" RepositoryObjectFormatNameSha256 string = "sha256" ) // prop value enum func (m *Repository) validateObjectFormatNameEnum(path, location string, value string) error { if err := validate.EnumCase(path, location, value, repositoryTypeObjectFormatNamePropEnum, true); err != nil { return err } return nil } func (m *Repository) validateObjectFormatName(formats strfmt.Registry) error { if swag.IsZero(m.ObjectFormatName) { // not required return nil } // value enum if err := m.validateObjectFormatNameEnum("object_format_name", "body", m.ObjectFormatName); err != nil { return err } return nil } func (m *Repository) validateUpdated(formats strfmt.Registry) error { if swag.IsZero(m.Updated) { // not required return nil } if err := validate.FormatOf("updated_at", "body", "date-time", m.Updated.String(), formats); err != nil { return err } return nil } func (m *Repository) validateExternalTracker(formats strfmt.Registry) error { if swag.IsZero(m.ExternalTracker) { // not required return nil } if m.ExternalTracker != nil { if err := m.ExternalTracker.Validate(formats); err != nil { if ve, ok := err.(*errors.Validation); ok { return ve.ValidateName("external_tracker") } else if ce, ok := err.(*errors.CompositeError); ok { return ce.ValidateName("external_tracker") } return err } } return nil } func (m *Repository) validateExternalWiki(formats strfmt.Registry) error { if swag.IsZero(m.ExternalWiki) { // not required return nil } if m.ExternalWiki != nil { if err := m.ExternalWiki.Validate(formats); err != nil { if ve, ok := err.(*errors.Validation); ok { return ve.ValidateName("external_wiki") } else if ce, ok := err.(*errors.CompositeError); ok { return ce.ValidateName("external_wiki") } return err } } return nil } func (m *Repository) validateInternalTracker(formats strfmt.Registry) error { if swag.IsZero(m.InternalTracker) { // not required return nil } if m.InternalTracker != nil { if err := m.InternalTracker.Validate(formats); err != nil { if ve, ok := err.(*errors.Validation); ok { return ve.ValidateName("internal_tracker") } else if ce, ok := err.(*errors.CompositeError); ok { return ce.ValidateName("internal_tracker") } return err } } return nil } func (m *Repository) validateOwner(formats strfmt.Registry) error { if swag.IsZero(m.Owner) { // not required return nil } if m.Owner != nil { if err := m.Owner.Validate(formats); err != nil { if ve, ok := err.(*errors.Validation); ok { return ve.ValidateName("owner") } else if ce, ok := err.(*errors.CompositeError); ok { return ce.ValidateName("owner") } return err } } return nil } func (m *Repository) validateParent(formats strfmt.Registry) error { if swag.IsZero(m.Parent) { // not required return nil } if m.Parent != nil { if err := m.Parent.Validate(formats); err != nil { if ve, ok := err.(*errors.Validation); ok { return ve.ValidateName("parent") } else if ce, ok := err.(*errors.CompositeError); ok { return ce.ValidateName("parent") } return err } } return nil } func (m *Repository) validatePermissions(formats strfmt.Registry) error { if swag.IsZero(m.Permissions) { // not required return nil } if m.Permissions != nil { if err := m.Permissions.Validate(formats); err != nil { if ve, ok := err.(*errors.Validation); ok { return ve.ValidateName("permissions") } else if ce, ok := err.(*errors.CompositeError); ok { return ce.ValidateName("permissions") } return err } } return nil } func (m *Repository) validateRepoTransfer(formats strfmt.Registry) error { if swag.IsZero(m.RepoTransfer) { // not required return nil } if m.RepoTransfer != nil { if err := m.RepoTransfer.Validate(formats); err != nil { if ve, ok := err.(*errors.Validation); ok { return ve.ValidateName("repo_transfer") } else if ce, ok := err.(*errors.CompositeError); ok { return ce.ValidateName("repo_transfer") } return err } } return nil } // ContextValidate validate this repository based on the context it is used func (m *Repository) ContextValidate(ctx context.Context, formats strfmt.Registry) error { var res []error if err := m.contextValidateExternalTracker(ctx, formats); err != nil { res = append(res, err) } if err := m.contextValidateExternalWiki(ctx, formats); err != nil { res = append(res, err) } if err := m.contextValidateInternalTracker(ctx, formats); err != nil { res = append(res, err) } if err := m.contextValidateOwner(ctx, formats); err != nil { res = append(res, err) } if err := m.contextValidateParent(ctx, formats); err != nil { res = append(res, err) } if err := m.contextValidatePermissions(ctx, formats); err != nil { res = append(res, err) } if err := m.contextValidateRepoTransfer(ctx, formats); err != nil { res = append(res, err) } if len(res) > 0 { return errors.CompositeValidationError(res...) } return nil } func (m *Repository) contextValidateExternalTracker(ctx context.Context, formats strfmt.Registry) error { if m.ExternalTracker != nil { if swag.IsZero(m.ExternalTracker) { // not required return nil } if err := m.ExternalTracker.ContextValidate(ctx, formats); err != nil { if ve, ok := err.(*errors.Validation); ok { return ve.ValidateName("external_tracker") } else if ce, ok := err.(*errors.CompositeError); ok { return ce.ValidateName("external_tracker") } return err } } return nil } func (m *Repository) contextValidateExternalWiki(ctx context.Context, formats strfmt.Registry) error { if m.ExternalWiki != nil { if swag.IsZero(m.ExternalWiki) { // not required return nil } if err := m.ExternalWiki.ContextValidate(ctx, formats); err != nil { if ve, ok := err.(*errors.Validation); ok { return ve.ValidateName("external_wiki") } else if ce, ok := err.(*errors.CompositeError); ok { return ce.ValidateName("external_wiki") } return err } } return nil } func (m *Repository) contextValidateInternalTracker(ctx context.Context, formats strfmt.Registry) error { if m.InternalTracker != nil { if swag.IsZero(m.InternalTracker) { // not required return nil } if err := m.InternalTracker.ContextValidate(ctx, formats); err != nil { if ve, ok := err.(*errors.Validation); ok { return ve.ValidateName("internal_tracker") } else if ce, ok := err.(*errors.CompositeError); ok { return ce.ValidateName("internal_tracker") } return err } } return nil } func (m *Repository) contextValidateOwner(ctx context.Context, formats strfmt.Registry) error { if m.Owner != nil { if swag.IsZero(m.Owner) { // not required return nil } if err := m.Owner.ContextValidate(ctx, formats); err != nil { if ve, ok := err.(*errors.Validation); ok { return ve.ValidateName("owner") } else if ce, ok := err.(*errors.CompositeError); ok { return ce.ValidateName("owner") } return err } } return nil } func (m *Repository) contextValidateParent(ctx context.Context, formats strfmt.Registry) error { if m.Parent != nil { if swag.IsZero(m.Parent) { // not required return nil } if err := m.Parent.ContextValidate(ctx, formats); err != nil { if ve, ok := err.(*errors.Validation); ok { return ve.ValidateName("parent") } else if ce, ok := err.(*errors.CompositeError); ok { return ce.ValidateName("parent") } return err } } return nil } func (m *Repository) contextValidatePermissions(ctx context.Context, formats strfmt.Registry) error { if m.Permissions != nil { if swag.IsZero(m.Permissions) { // not required return nil } if err := m.Permissions.ContextValidate(ctx, formats); err != nil { if ve, ok := err.(*errors.Validation); ok { return ve.ValidateName("permissions") } else if ce, ok := err.(*errors.CompositeError); ok { return ce.ValidateName("permissions") } return err } } return nil } func (m *Repository) contextValidateRepoTransfer(ctx context.Context, formats strfmt.Registry) error { if m.RepoTransfer != nil { if swag.IsZero(m.RepoTransfer) { // not required return nil } if err := m.RepoTransfer.ContextValidate(ctx, formats); err != nil { if ve, ok := err.(*errors.Validation); ok { return ve.ValidateName("repo_transfer") } else if ce, ok := err.(*errors.CompositeError); ok { return ce.ValidateName("repo_transfer") } return err } } return nil } // MarshalBinary interface implementation func (m *Repository) MarshalBinary() ([]byte, error) { if m == nil { return nil, nil } return swag.WriteJSON(m) } // UnmarshalBinary interface implementation func (m *Repository) UnmarshalBinary(b []byte) error { var res Repository if err := swag.ReadJSON(b, &res); err != nil { return err } *m = res return nil }