+ return loadInfo, err
+}
+
+func (w *rNibReaderInstance) GetE2TInstance(address string) (*entities.E2TInstance, error) {
+ key, rNibErr := common.ValidateAndBuildE2TInstanceKey(address)
+ if rNibErr != nil {
+ return nil, rNibErr
+ }
+ e2tInstance := &entities.E2TInstance{}
+ err := w.getByKeyAndUnmarshalJson(key, e2tInstance)
+ if err != nil {
+ return nil, err
+ }
+ return e2tInstance, err
+}
+
+func (w *rNibReaderInstance) GetE2TInstances(addresses []string) ([]*entities.E2TInstance, error) {
+ var data map[string]interface{}
+ var err error
+
+ keys := common.MapE2TAddressesToKeys(addresses)
+
+ e2tInstances := []*entities.E2TInstance{}
+
+ if w.sdlStorage != nil {
+ data, err = w.sdlStorage.Get(w.ns, keys)
+ } else {
+ data, err = w.sdl.Get(keys)
+ }
+
+ if err != nil {
+ return []*entities.E2TInstance{}, common.NewInternalError(err)
+ }
+
+ if len(data) == 0 {
+ return []*entities.E2TInstance{}, common.NewResourceNotFoundErrorf("#rNibReader.GetE2TInstances - e2t instances not found")
+ }
+
+ for _, v := range keys {
+
+ if data[v] != nil {
+ var e2tInstance entities.E2TInstance
+ err = json.Unmarshal([]byte(data[v].(string)), &e2tInstance)
+ if err != nil {
+ continue
+ }
+
+ e2tInstances = append(e2tInstances, &e2tInstance)
+ }
+ }
+
+ return e2tInstances, nil
+}
+
+func (w *rNibReaderInstance) GetE2TAddresses() ([]string, error) {
+ var e2tAddresses []string
+ err := w.getByKeyAndUnmarshalJson(E2TAddressesKey, &e2tAddresses)
+ if err != nil {
+ return nil, err
+ }
+ return e2tAddresses, err
+}
+
+func (w *rNibReaderInstance) GetGeneralConfiguration() (*entities.GeneralConfiguration, error) {
+ config := &entities.GeneralConfiguration{}
+ key := common.BuildGeneralConfigurationKey()
+
+ err := w.getByKeyAndUnmarshalJson(key, config)
+
+ return config, err
+}
+
+func (w *rNibReaderInstance) getByKeyAndUnmarshalJson(key string, entity interface{}) error {
+ var data map[string]interface{}
+ var err error
+ if w.sdlStorage != nil {
+ data, err = w.sdlStorage.Get(w.ns, []string{key})
+ } else {
+ data, err = w.sdl.Get([]string{key})
+ }
+
+ if err != nil {
+ return common.NewInternalError(err)
+ }
+