func (cm *StaticProjectConfigManager) GetConfig() (ProjectConfig, error) {
	cm.configLock.Lock()
	defer cm.configLock.Unlock()
	return cm.projectConfig, nil
}
******************* End of Old Constructors *********
GetConfig returns the project config
package config
import (
	"errors"
	"fmt"
	"sync"
	"github.com/optimizely/go-sdk/pkg/config/datafileprojectconfig"
	"github.com/optimizely/go-sdk/pkg/logging"
	"github.com/optimizely/go-sdk/pkg/notification"
	"github.com/optimizely/go-sdk/pkg/utils"
)
type StaticProjectConfigManager struct {
	projectConfig    ProjectConfig
	optimizelyConfig *OptimizelyConfig
	configLock       sync.Mutex
	logger           logging.OptimizelyLogProducer
}
func NewStaticProjectConfigManagerWithOptions(sdkKey string, configMangerOptions ...OptionFunc) *StaticProjectConfigManager {
	logger := logging.GetLogger(sdkKey, "StaticProjectConfigManager")
	staticProjectConfigManager := newConfigManager(sdkKey, logger, configMangerOptions...)
	if sdkKey != "" {
		staticProjectConfigManager.SyncConfig()
	} else if len(staticProjectConfigManager.initDatafile) > 0 {
		staticProjectConfigManager.setInitialDatafile(staticProjectConfigManager.initDatafile)
	}
	projectConfig, err := staticProjectConfigManager.GetConfig()
	if err != nil {
		logger.Error("unable to get project config, error returned:", err)
		return nil
	}
	return &StaticProjectConfigManager{
		projectConfig: projectConfig,
		logger:        logger,
	}
}
func NewStaticProjectConfigManager(config ProjectConfig, logger logging.OptimizelyLogProducer) *StaticProjectConfigManager {
	return &StaticProjectConfigManager{
		projectConfig: config,
		logger:        logger,
	}
}
func NewStaticProjectConfigManagerFromURL(sdkKey string) (*StaticProjectConfigManager, error) {
	requester := utils.NewHTTPRequester(logging.GetLogger(sdkKey, "HTTPRequester"))
	logger := logging.GetLogger(sdkKey, "StaticProjectConfigManager")
	url := fmt.Sprintf(DatafileURLTemplate, sdkKey)
	datafile, _, code, e := requester.Get(url)
	if e != nil {
		logger.Error(fmt.Sprintf("request returned with http code=%d", code), e)
		return nil, e
	}
	return NewStaticProjectConfigManagerFromPayload(datafile, logger)
}
func NewStaticProjectConfigManagerFromPayload(payload []byte, logger logging.OptimizelyLogProducer) (*StaticProjectConfigManager, error) {
	projectConfig, err := datafileprojectconfig.NewDatafileProjectConfig(payload, logger)
	if err != nil {
		return nil, err
	}
	return NewStaticProjectConfigManager(projectConfig, logger), nil
}