Skip to content
This repository was archived by the owner on Apr 25, 2025. It is now read-only.

Commit 096e8c6

Browse files
committed
[FAB-8616]: Resource Mgmt: Move resource from context
Change-Id: I5f095f81913863e310cd147c83ba0506c72cb375 Signed-off-by: Sandra Vrtikapa <sandra.vrtikapa@securekey.com>
1 parent c3bbc2c commit 096e8c6

File tree

4 files changed

+14
-22
lines changed

4 files changed

+14
-22
lines changed

pkg/client/resmgmt/resmgmt.go

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -122,7 +122,6 @@ type Context struct {
122122
DiscoveryProvider fab.DiscoveryProvider
123123
ChannelProvider fab.ChannelProvider
124124
FabricProvider sdkApi.FabricProvider
125-
Resource api.Resource
126125
}
127126

128127
type fabContext struct {
@@ -144,14 +143,17 @@ func WithDefaultTargetFilter(filter TargetFilter) ClientOption {
144143
// New returns a ResourceMgmtClient instance
145144
func New(ctx Context, opts ...ClientOption) (*Client, error) {
146145

146+
resource := resource.New(ctx)
147+
147148
resourceClient := &Client{
148149
provider: ctx,
149150
identity: ctx,
150151
discoveryProvider: ctx.DiscoveryProvider,
151152
channelProvider: ctx.ChannelProvider,
152153
fabricProvider: ctx.FabricProvider,
153-
resource: ctx.Resource,
154+
resource: resource,
154155
}
156+
155157
for _, opt := range opts {
156158
err := opt(resourceClient)
157159
if err != nil {

pkg/client/resmgmt/resmgmt_test.go

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -138,7 +138,6 @@ func TestNoSigningUserFailure(t *testing.T) {
138138
fabCtx := fcmocks.NewMockContext(user)
139139
config := getNetworkConfig(t)
140140
fabCtx.SetConfig(config)
141-
resource := fcmocks.NewMockResource()
142141

143142
discovery, err := setupTestDiscovery(nil, nil)
144143
if err != nil {
@@ -153,7 +152,6 @@ func TestNoSigningUserFailure(t *testing.T) {
153152
ctx := Context{
154153
ProviderContext: fabCtx,
155154
IdentityContext: fabCtx,
156-
Resource: resource,
157155
ChannelProvider: chProvider,
158156
DiscoveryProvider: discovery,
159157
}
@@ -1155,12 +1153,9 @@ func setupResMgmtClient(fabCtx context.Context, discErr error, t *testing.T, opt
11551153
}
11561154
chProvider.SetTransactor(&transactor)
11571155

1158-
resource := fcmocks.NewMockResource()
1159-
11601156
ctx := Context{
11611157
ProviderContext: fabCtx,
11621158
IdentityContext: fabCtx,
1163-
Resource: resource,
11641159
ChannelProvider: chProvider,
11651160
DiscoveryProvider: discovery,
11661161
FabricProvider: fabProvider,
@@ -1170,6 +1165,11 @@ func setupResMgmtClient(fabCtx context.Context, discErr error, t *testing.T, opt
11701165
if err != nil {
11711166
t.Fatalf("Failed to create new client with options: %s %v", err, opts)
11721167
}
1168+
1169+
// Set mock resource
1170+
resource := fcmocks.NewMockResource()
1171+
resClient.resource = resource
1172+
11731173
return resClient
11741174

11751175
}
@@ -1266,7 +1266,6 @@ func TestSaveChannelFailure(t *testing.T) {
12661266
ctx := Context{
12671267
ProviderContext: errCtx,
12681268
IdentityContext: fabCtx,
1269-
Resource: resource,
12701269
ChannelProvider: chProvider,
12711270
DiscoveryProvider: discovery,
12721271
}
@@ -1275,6 +1274,8 @@ func TestSaveChannelFailure(t *testing.T) {
12751274
t.Fatalf("Failed to create new channel management client: %s", err)
12761275
}
12771276

1277+
cc.resource = resource
1278+
12781279
// Test create channel failure
12791280
err = cc.SaveChannel(SaveChannelRequest{ChannelID: "mychannel", ChannelConfig: channelConfig})
12801281
if err == nil {

pkg/fabsdk/client.go

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -158,18 +158,13 @@ func (c *ClientContext) ResourceMgmt(opts ...ClientOption) (*resmgmt.Client, err
158158
session := newSession(p.identity, p.providers.ChannelProvider())
159159

160160
fabProvider := p.providers.FabricProvider()
161-
resource, err := fabProvider.CreateResourceClient(session)
162-
if err != nil {
163-
return nil, err
164-
}
165161

166162
discovery := p.providers.DiscoveryProvider()
167163
chProvider := p.providers.ChannelProvider()
168164

169165
ctx := resmgmt.Context{
170166
ProviderContext: p.providers,
171167
IdentityContext: session,
172-
Resource: resource,
173168
DiscoveryProvider: discovery,
174169
ChannelProvider: chProvider,
175170
FabricProvider: fabProvider,

test/integration/utils.go

Lines changed: 3 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,6 @@ import (
1414
"github.com/hyperledger/fabric-sdk-go/pkg/context/api/core"
1515
"github.com/hyperledger/fabric-sdk-go/pkg/context/api/fab"
1616
"github.com/hyperledger/fabric-sdk-go/pkg/fab/peer"
17-
"github.com/hyperledger/fabric-sdk-go/pkg/fab/resource/api"
1817
"github.com/hyperledger/fabric-sdk-go/pkg/fabsdk"
1918
"github.com/pkg/errors"
2019
)
@@ -58,19 +57,14 @@ func InitializeChannel(sdk *fabsdk.FabricSDK, orgID string, req resmgmt.SaveChan
5857
// FilterTargetsJoinedChannel filters targets to those that have joined the named channel.
5958
func FilterTargetsJoinedChannel(sdk *fabsdk.FabricSDK, orgID string, channelID string, targets []fab.ProposalProcessor) ([]fab.ProposalProcessor, error) {
6059
joinedTargets := []fab.ProposalProcessor{}
61-
session, err := sdk.NewClient(fabsdk.WithUser("Admin"), fabsdk.WithOrg(orgID)).Session()
60+
rc, err := sdk.NewClient(fabsdk.WithUser("Admin"), fabsdk.WithOrg(orgID)).ResourceMgmt()
6261
if err != nil {
6362
return nil, errors.WithMessage(err, "failed getting admin user session for org")
6463
}
6564

66-
sc, err := sdk.FabricProvider().CreateResourceClient(session)
67-
if err != nil {
68-
return nil, errors.WithMessage(err, "NewResourceClient failed")
69-
}
70-
7165
for _, target := range targets {
7266
// Check if primary peer has joined channel
73-
alreadyJoined, err := HasPeerJoinedChannel(sc, target, channelID)
67+
alreadyJoined, err := HasPeerJoinedChannel(rc, target, channelID)
7468
if err != nil {
7569
return nil, errors.WithMessage(err, "failed while checking if primary peer has already joined channel")
7670
}
@@ -137,7 +131,7 @@ func CreateProposalProcessors(config core.Config, orgs []string) ([]fab.Proposal
137131

138132
// HasPeerJoinedChannel checks whether the peer has already joined the channel.
139133
// It returns true if it has, false otherwise, or an error
140-
func HasPeerJoinedChannel(client api.Resource, peer fab.ProposalProcessor, channel string) (bool, error) {
134+
func HasPeerJoinedChannel(client *resmgmt.Client, peer fab.ProposalProcessor, channel string) (bool, error) {
141135
foundChannel := false
142136
response, err := client.QueryChannels(peer)
143137
if err != nil {

0 commit comments

Comments
 (0)