@@ -124,20 +124,6 @@ function Page() {
124124 } }
125125 />
126126 </ Box >
127- < Button onClick = { async ( ) => {
128- try {
129- const { federationHostname, objectPrefix} = parseObjectUrl ( objectUrl )
130- setObjectList ( await list ( objectUrl , federations [ federationHostname ] , federations [ federationHostname ] ?. namespaces [ prefixToNamespace [ objectPrefix ] . namespace ] ) )
131- } catch ( e ) {
132- if ( e instanceof UnauthenticatedError ) {
133-
134- }
135- }
136- } } > List</ Button >
137- </ Box >
138- < Box pt = { 1 } mx = { "auto" } >
139- { /*<Button variant="contained" onClick={submit}>{object ? 'Upload' : 'Download'}</Button>*/ }
140- < Button onClick = { ( ) => setFederations ( { } ) } > Clear Federations</ Button >
141127 </ Box >
142128 </ Box >
143129 < Box mt = { 6 } mx = { "auto" } width = { "100%" } display = { "flex" } flexDirection = { "column" } >
@@ -164,7 +150,14 @@ function Page() {
164150 </ Box >
165151 </ Box >
166152 </ Grid >
167- < Grid size = { { xl : 7 , md : 8 , xs : 11 } } display = { "flex" } >
153+ < Grid size = { { xl : 7 , md : 8 , xs : 11 } } display = { "flex" } flexDirection = { "column" } >
154+ < Box pt = { 1 } mx = { "auto" } >
155+ { /*<Button variant="contained" onClick={submit}>{object ? 'Upload' : 'Download'}</Button>*/ }
156+ < Button onClick = { ( ) => {
157+ setFederations ( { } )
158+ setPrefixToNamespace ( { } )
159+ } } > Clear Federations</ Button >
160+ </ Box >
168161 < Box mt = { 6 } mx = { "auto" } width = { "100%" } display = { "flex" } flexDirection = { "column" } >
169162 < Typography variant = "h6" gutterBottom > Client Federations ( for debug only )</ Typography >
170163 < Box overflow = { 'auto' } >
@@ -241,15 +234,22 @@ const onObjectUrlChange = async (objectUrl: string, federations: Record<string,
241234
242235 // Check permissions
243236 try {
244- const perms = await permissions ( objectUrl , federations [ federationHostname ] . namespaces ?. [ prefixToNamespace [ objectPrefix ] ?. namespace ] )
245- setPermissions ( perms )
237+ if ( federations [ federationHostname ] . namespaces ?. [ prefixToNamespace [ objectPrefix ] ?. namespace ] ) {
238+ const perms = await permissions ( objectUrl , federations [ federationHostname ] . namespaces ?. [ prefixToNamespace [ objectPrefix ] ?. namespace ] )
239+ setPermissions ( perms )
240+ }
246241 } catch { }
247242
248243
249244 // Try to list
250245 try {
251- setObjectList ( await list ( objectUrl , federations [ federationHostname ] , federations [ federationHostname ] . namespaces ?. [ prefixToNamespace [ objectPrefix ] ?. namespace ] ) )
252- setLoginRequired ( false )
246+ try {
247+ setObjectList ( await list ( `pelican://${ objectPrefix } ` , federations [ federationHostname ] , federations [ federationHostname ] . namespaces ?. [ prefixToNamespace [ objectPrefix ] ?. namespace ] ) )
248+ setLoginRequired ( false )
249+ } catch ( e ) {
250+ setObjectList ( await list ( `pelican://${ objectPath } ` , federations [ federationHostname ] , federations [ federationHostname ] . namespaces ?. [ prefixToNamespace [ objectPrefix ] ?. namespace ] ) )
251+ setLoginRequired ( false )
252+ }
253253 } catch ( e ) {
254254 if ( e instanceof UnauthenticatedError ) {
255255 setLoginRequired ( true )
0 commit comments