Skip to content

Commit 9fec3f2

Browse files
committed
bin: support reading metadata from local file
Usage: pyodata THE_URL --metadata ./metadata.xml
1 parent 5a61f80 commit 9fec3f2

File tree

1 file changed

+11
-2
lines changed

1 file changed

+11
-2
lines changed

bin/pyodata

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -65,6 +65,8 @@ def _parse_args(argv):
6565
parser.add_argument('SERVICE_ROOT_URL', type=str)
6666
parser.add_argument('--user', default=None, type=str)
6767
parser.add_argument('--password', default=None, type=str)
68+
parser.add_argument('--metadata', default=None, type=str,
69+
help='Path to the XML file with service $metadata')
6870
parser.set_defaults(func=print_out_metadata_info)
6971

7072
subparsers = parser.add_subparsers()
@@ -103,8 +105,15 @@ def _main(argv):
103105
sys.stderr.write('\n')
104106
sys.exit(1)
105107

106-
print('[Fetching $metadata ...]')
107-
client = pyodata.Client(args.SERVICE_ROOT_URL, session)
108+
static_metadata = None
109+
if args.metadata:
110+
print(f'[Loading $metadata from: {args.metadata} ...]')
111+
with open(args.metadata, 'rb') as mtd_fl:
112+
static_metadata = mtd_fl.read()
113+
else:
114+
print('[Fetching $metadata ...]')
115+
116+
client = pyodata.Client(args.SERVICE_ROOT_URL, session, metadata=static_metadata)
108117

109118
args.func(args, client)
110119

0 commit comments

Comments
 (0)