Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type GroupMetaFactory ¶
type GroupMetaFactory struct { GroupArgs *GroupMetaFactoryArgs // map of version name to version factory VersionArgs map[string]*GroupVersionFactoryArgs // contains filtered or unexported fields }
GroupMetaFactory has the logic for actually assembling and registering a group.
Note that GroupMetaFactory actually does construct GroupMeta objects, but currently it does so in a way that's very entangled with an APIRegistrationManager. It's a TODO item to cleanly separate that interface.
func NewGroupMetaFactory ¶
func NewGroupMetaFactory(groupArgs *GroupMetaFactoryArgs, versions VersionToSchemeFunc) *GroupMetaFactory
NewGroupMetaFactory builds the args for you. This is for if you're constructing a factory all at once and not using the registry.
func (*GroupMetaFactory) Register ¶
func (gmf *GroupMetaFactory) Register(m *registered.APIRegistrationManager, scheme *runtime.Scheme) error
Register constructs the finalized prioritized version list and sanity checks the registered group & versions. Then it calls register.
type GroupMetaFactoryArgs ¶
type GroupMetaFactoryArgs struct { // GroupName is the name of the API-Group // // example: 'servicecatalog.k8s.io' GroupName string VersionPreferenceOrder []string // May be nil if there are no internal objects. AddInternalObjectsToScheme SchemeFunc }
GroupMetaFactoryArgs contains the group-level args of a GroupMetaFactory.
type GroupVersionFactoryArgs ¶
type GroupVersionFactoryArgs struct { GroupName string VersionName string AddToScheme SchemeFunc }
GroupVersionFactoryArgs contains all the per-version parts of a GroupMetaFactory.
type SchemeFunc ¶
type VersionToSchemeFunc ¶
type VersionToSchemeFunc map[string]SchemeFunc