Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func PrintDiff ¶
func PrintDiff(rc1, rc2 *ResourceCollection, availableTypes []ResourceType)
PrintDiff prints the differences between two resource collections.
Types ¶
type GenericResource ¶
type GenericResource struct {
// contains filtered or unexported fields
}
GenericResource represents a generic implementation of a resource, providing methods to retrieve the ID, value, and resource type.
func NewGenericResource ¶
func NewGenericResource(id, value string, resourceType ResourceType) *GenericResource
func (*GenericResource) ID ¶
func (r *GenericResource) ID() string
func (*GenericResource) ResourceType ¶
func (r *GenericResource) ResourceType() ResourceType
func (*GenericResource) Value ¶
func (r *GenericResource) Value() string
type Relationship ¶
Relationship represents the relationship between two resources. It consists of a source and a target resource.
func FindDifferences ¶
func FindDifferences( rc1, rc2 *ResourceCollection, ) (addedResourcesByType, removedResourcesByType map[ResourceType][]Resource, addedRelationships, removedRelationships []Relationship, )
FindDifferences finds the differences between two resource collections.
type Resource ¶
type Resource interface {
ID() string
Value() string
ResourceType() ResourceType
}
Resource defines the basic contract for all resource types, specifying methods to retrieve the ID, value, and resource type of a resource.
type ResourceCollection ¶
type ResourceCollection struct {
Resources []Resource
Relationships []Relationship
}
ResourceCollection represents a collection of resources and their relationships. It includes slices to store resources and relationships.
func NewResourceCollection ¶
func NewResourceCollection() *ResourceCollection
NewResourceCollection creates a new ResourceCollection.
func (*ResourceCollection) AddRelationship ¶
func (rc *ResourceCollection) AddRelationship(source, target Resource)
AddRelationship adds a relationship to the collection.
func (*ResourceCollection) AddResource ¶
func (rc *ResourceCollection) AddResource(resource Resource)
AddResource adds a resource to the collection.