github.com/cjdelisle/matterfoss@v5.11.1+incompatible/model/bundle_info.go (about)

     1  // Copyright (c) 2015-present Mattermost, Inc. All Rights Reserved.
     2  // See License.txt for license information.
     3  
     4  package model
     5  
     6  import "github.com/mattermost/mattermost-server/mlog"
     7  
     8  type BundleInfo struct {
     9  	Path string
    10  
    11  	Manifest      *Manifest
    12  	ManifestPath  string
    13  	ManifestError error
    14  }
    15  
    16  func (b *BundleInfo) WrapLogger(logger *mlog.Logger) *mlog.Logger {
    17  	if b.Manifest != nil {
    18  		return logger.With(mlog.String("plugin_id", b.Manifest.Id))
    19  	}
    20  	return logger.With(mlog.String("plugin_path", b.Path))
    21  }
    22  
    23  // Returns bundle info for the given path. The return value is never nil.
    24  func BundleInfoForPath(path string) *BundleInfo {
    25  	m, mpath, err := FindManifest(path)
    26  	return &BundleInfo{
    27  		Path:          path,
    28  		Manifest:      m,
    29  		ManifestPath:  mpath,
    30  		ManifestError: err,
    31  	}
    32  }