Documentation ¶
Index ¶
- Constants
- func Compress(input string) (output string)
- func PutInventory(items string, resp *ApiResponse) error
- type ApiResponse
- type Impl
- type InventoryUploader
- func (u *InventoryUploader) ConvertToOOSInventoryItems(items []model.Item) (optimizedInventoryItems, nonOptimizedInventoryItems []*model.InventoryItem, ...)
- func (u InventoryUploader) GetDirtyOOSInventoryItems(items []model.Item) (dirtyInventoryItems []*model.InventoryItem, err error)
- func (u *InventoryUploader) SendDataToOOS(instanceID string, items []*model.InventoryItem) (err error)
- type OOSCaller
- type OOSCallerImpl
- type OOSResult
- type Optimizer
- type T
Constants ¶
const (
// Name represents name of this component that uploads data to OOS
Name = "InventoryUploader"
)
Variables ¶
This section is empty.
Functions ¶
func PutInventory ¶
func PutInventory(items string, resp *ApiResponse) error
Types ¶
type ApiResponse ¶
type Impl ¶
type Impl struct {
// contains filtered or unexported fields
}
func NewOptimizerImpl ¶
func (*Impl) GetContentHash ¶
func (*Impl) UpdateContentHash ¶
type InventoryUploader ¶
type InventoryUploader struct {
// contains filtered or unexported fields
}
InventoryUploader implements functionality to upload data to OOS Inventory.
func NewInventoryUploader ¶
func NewInventoryUploader(instanceID string) (*InventoryUploader, error)
NewInventoryUploader creates a new InventoryUploader (which sends data to OOS Inventory)
func (*InventoryUploader) ConvertToOOSInventoryItems ¶
func (u *InventoryUploader) ConvertToOOSInventoryItems(items []model.Item) (optimizedInventoryItems, nonOptimizedInventoryItems []*model.InventoryItem, err error)
ConvertToOOSInventoryItems converts given array of inventory.Item into an array of *model.InventoryItem. It returns 2 such arrays - one is optimized array which contains only contentHash for those inventory types where the dataset hasn't changed from previous collection. The other array is non-optimized array which contains both contentHash & content. This is done to avoid iterating over the inventory data twice. It throws error when it encounters error during conversion process.
func (InventoryUploader) GetDirtyOOSInventoryItems ¶
func (u InventoryUploader) GetDirtyOOSInventoryItems(items []model.Item) (dirtyInventoryItems []*model.InventoryItem, err error)
GetDirtyOOSInventoryItems get the inventory item data for items that have changes since last successful report to OOS.
func (*InventoryUploader) SendDataToOOS ¶
func (u *InventoryUploader) SendDataToOOS(instanceID string, items []*model.InventoryItem) (err error)
SendDataToOOS uploads given inventory items to OOS
type OOSCaller ¶
type OOSCaller interface {
PutInventory(input *model.PutInventoryInput) (err error)
}
type OOSCallerImpl ¶
type OOSCallerImpl struct { }
func NewOOSCallerImpl ¶
func NewOOSCallerImpl() (*OOSCallerImpl, error)
func (*OOSCallerImpl) PutInventory ¶
func (i *OOSCallerImpl) PutInventory(input *model.PutInventoryInput) (err error)
type Optimizer ¶
type Optimizer interface { UpdateContentHash(inventoryItemName, hash string) (err error) GetContentHash(inventoryItemName string) (hash string) }
Optimizer defines operations of content optimizer which inventory plugin makes use of
type T ¶
type T interface { SendDataToOOS(items []*model.InventoryItem) (err error) ConvertToOOSInventoryItems(items []model.InventoryItem) (optimizedInventoryItems, nonOptimizedInventoryItems []*model.InventoryItem, err error) GetDirtyOOSInventoryItems(items []model.InventoryItem) (dirtyInventoryItems []*model.InventoryItem, err error) }