From f434f91c7dd411c573b82968f7b9cd44310519b2 Mon Sep 17 00:00:00 2001 From: Alex Date: Fri, 19 Apr 2024 10:57:25 -0500 Subject: [PATCH 01/62] feat(pyinstaller): GH Action to build --- .github/workflows/build.yaml | 51 ++++++++++++++++++++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100644 .github/workflows/build.yaml diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml new file mode 100644 index 000000000..29b87f145 --- /dev/null +++ b/.github/workflows/build.yaml @@ -0,0 +1,51 @@ +on: + # run on pushed commits to master and on new commits on pull requests + push: + pull_request: + types: [opened, synchronize] + + +name: Build + +jobs: + pypi: + runs-on: ${{ matrix.os }} + + strategy: + matrix: + os: [ubuntu-latest, windows-latest, macos-latest] + + steps: + - name: Check out code + uses: actions/checkout@v3 + with: + persist-credentials: false + + - name: Set up python + uses: actions/setup-python@v4 + with: + python-version: ${{ inputs.PYTHON_VERSION }} + + - name: Install poetry + # that is poetry's recommended way to install + run: | + pip install --upgrade pip + curl -sSL https://install.python-poetry.org | python - + pip list + poetry show + - name: Install dependencies + run: | + poetry install -vv --all-extras --no-interaction --no-cache + poetry show -vv + shell: bash + - name: Build using pyinstaller + run: | + pyinstaller --name gen3 --hidden-import gen3users --onefile ./gen3/cli/__main__.py + - name: Test build + run: | + cd ./dist + gen3 --help + + + + From afc99be31ca0cecd2f62a5810578dd88b33aa745 Mon Sep 17 00:00:00 2001 From: Avantol13 Date: Fri, 19 Apr 2024 15:58:30 +0000 Subject: [PATCH 02/62] Apply automatic documentation changes --- docs/_build/doctrees/auth.doctree | Bin 32158 -> 32186 bytes docs/_build/doctrees/environment.pickle | Bin 1578733 -> 1579407 bytes docs/_build/doctrees/file.doctree | Bin 41145 -> 41173 bytes docs/_build/doctrees/index.doctree | Bin 5418 -> 5436 bytes docs/_build/doctrees/indexing.doctree | Bin 161346 -> 161277 bytes docs/_build/doctrees/jobs.doctree | Bin 27660 -> 27688 bytes docs/_build/doctrees/metadata.doctree | Bin 145433 -> 145533 bytes docs/_build/doctrees/object.doctree | Bin 13146 -> 13054 bytes docs/_build/doctrees/query.doctree | Bin 41145 -> 41173 bytes docs/_build/doctrees/submission.doctree | Bin 108387 -> 108415 bytes docs/_build/doctrees/tools.doctree | Bin 5236 -> 5251 bytes docs/_build/doctrees/tools/drs_pull.doctree | Bin 130169 -> 130160 bytes docs/_build/doctrees/tools/indexing.doctree | Bin 100101 -> 100291 bytes docs/_build/doctrees/tools/metadata.doctree | Bin 35919 -> 35929 bytes docs/_build/doctrees/wss.doctree | Bin 33778 -> 33818 bytes docs/_build/html/.buildinfo | 2 +- docs/_build/html/_modules/gen3/auth.html | 6 +- docs/_build/html/_modules/gen3/file.html | 6 +- docs/_build/html/_modules/gen3/index.html | 6 +- docs/_build/html/_modules/gen3/jobs.html | 6 +- docs/_build/html/_modules/gen3/metadata.html | 6 +- docs/_build/html/_modules/gen3/object.html | 6 +- docs/_build/html/_modules/gen3/query.html | 6 +- .../_build/html/_modules/gen3/submission.html | 6 +- .../gen3/tools/download/drs_download.html | 6 +- .../tools/indexing/download_manifest.html | 6 +- .../gen3/tools/indexing/index_manifest.html | 6 +- .../gen3/tools/indexing/verify_manifest.html | 6 +- .../gen3/tools/metadata/ingest_manifest.html | 6 +- docs/_build/html/_modules/gen3/wss.html | 6 +- docs/_build/html/_modules/index.html | 6 +- docs/_build/html/_static/basic.css | 2 +- docs/_build/html/_static/doctools.js | 2 +- docs/_build/html/_static/language_data.js | 4 +- docs/_build/html/_static/searchtools.js | 165 +++++++++++------- docs/_build/html/auth.html | 6 +- docs/_build/html/file.html | 6 +- docs/_build/html/genindex.html | 6 +- docs/_build/html/index.html | 6 +- docs/_build/html/indexing.html | 12 +- docs/_build/html/jobs.html | 6 +- docs/_build/html/metadata.html | 6 +- docs/_build/html/object.html | 12 +- docs/_build/html/py-modindex.html | 6 +- docs/_build/html/query.html | 6 +- docs/_build/html/search.html | 12 +- docs/_build/html/searchindex.js | 2 +- docs/_build/html/submission.html | 6 +- docs/_build/html/tools.html | 6 +- docs/_build/html/tools/drs_pull.html | 8 +- docs/_build/html/tools/indexing.html | 8 +- docs/_build/html/tools/metadata.html | 8 +- docs/_build/html/wss.html | 6 +- 53 files changed, 218 insertions(+), 175 deletions(-) diff --git a/docs/_build/doctrees/auth.doctree b/docs/_build/doctrees/auth.doctree index 797c48e20ccf26236ba1dd1c72f5195d82cf7cb3..974418d02ff837fb10ce42f9fbaf89a558056cd0 100644 GIT binary patch delta 3571 zcmb7HZBUa}7Uo_cUnVHs8bM3~f`$lGB1~(c32G}vvP7tYRI5M;5?(F%$cwXRnG(2uRPowhjAaYuGqYd`Hd_stt(o3ZJi zcka2l=Q-zj&Uw#$^ZT#aD_^s;L+Q^PpG@0qfg875!Eag1zJwFY%Hh0a12?3?(F8`%jc}qoUfvl!PtKE?N=#}>A$3|w znUZ#9t zt(%b*<;OD!%ZfG31Y5-%`yB;g5xJ`JkBt49jPdLY$a8hESK$fQ8uoXns?36ES2KG< z{ZVo+WUs)myU+YKCKU3u1#C2X@^*#;`8&hXzs9SwqHfNrhuDnjcB+cp-l-Zfe|Bp( zd174#V;uUbE9IH>4U8?KC4}yMidn_VeIFvp-ur5pxma`S3@&UO$4S#yU5lY#t*$lK z-1@xy%lj8HzDEPWMay8Q#>zV3`I?LTQQ9cu2Q~29;Bq*(NymoaolOn=sMu%E!iOF^ z{}UM&c+F(y&uU=OP|Qziz?oS~RjGag$uq==out-CYSNCh)slftgbDstd_q!I{rp4a7o9>RKVDjE+9HQe^ z55p1fht1x1*>Z5!W1%&$bMqc%gHxM3*rPS3$@#C(srDR|K;TVen-!yu>aQVS}=7s48x;e&B+tx$q)V2$F zjTXLjtbkKno?|bH3?qp%j8KNF;lfr2`&%r_Nx~`OBU)JKEU}+VD$xkM-nfeWN5xC#y!*|vmzuHuR~E8*C-9G%`8$#P#@mhJ;dWf{Z0DNBTrLJ>U>HHm`_NXnN-&M%@|8(j&;N4ZZ{DE9J+I@%dQd|&t%3p3diyKk};l4?$N?M&$SK#ci=1S9O9+BRn zCw^WA+#<;w$xWhJq#4=T@d@LN7%)0!8(>}M=e(OX%6LEzZM7@;Fj>kx#T}Zbqk1t< z(TdGeKRg|D8XGW$s1EILCfEW7$;BJ=G!mHy4)wbi9FNKHGWrH|VsY#B59nXbi3AI}p0M%yfDFK(hfN-6h7^_y92_`UzMl5u%k)f>z0N z#AP@(uv=-Y|6`9RFo$9=v?3UtDyY0^(8Ct>_x297^!0b_?%E$7W2?h3zOVMS(J@n~ zqkUlSU{A~b-M#%i;ZgbOzFfvm%9;DGaW)G21D|d^LeP)nBQ&Pp+t$-T?^_7}K}qz( vkx(EHKWN170b}5vz(&c3Z?Hs{uJkcAI=y$22UU=$^Q24kxFXk#G_mgiD9}6* delta 3356 zcma)8dr*{B6!%7KK z2UBn|ovEh&a6&&VZN{c%n$+x}Gv#EKN@@9M#?-Qznw-wL-|n(9j_p5p&%NLM{eI`3 zd(OH0;XknZ9|&Ei+m8D~tId(h3Nd1YGKmKd4Y731RI_=KL!R&Nwk3u*QeIU zM1;_uJG5tGAVxiw_?v)Y+Lwb>`Fc?pf?I0GLgBVl2h5e|T1H#y?u#Zi_lsTbY{kJ= zyh7;qiP^AB0t@kCMkzce?H)<;e6S>g3!>SRn>ndah&vxy$dkQRD@-PuBs`TCib+#V zI4UazSEnC>gMRM^H17x4`x8?5GbwyBC}Bdg_k$8RAicjO?HiKhk6=mId*Wj62XIX0 zcAl{J`vSdJM`f7-GBG9J2I<(G9V6015mNK;o$MsA({c{hxF>a5MoH-X zE^zo2q@!oz1gP^75clAOQfTqb#S%ZEr8PLhP^1GfPeB@u(YgC*++($gRAx%`-$Ys7 zcd%O?r(YhYpN}&eRKN0oUpeDYP|E%CC?|ac&@YejgKsX*`Ux%PgCo?ALOgVoe$-j} zY2>5q2s}!%nr>SQVvG)(>#ZVE#|6PZbQ)pN;r;|G1)zOWy(LQ*%!Lq=vPzUlB=Zbr zl!#i5r%Lk736_TwiwHQeBGrwP?Z7k6EFf)~0#pDy954V=YsY?o91@W#9M^B%M zxkasT1a}q{zz6&de=eFYj%%N~?U8U8H`qNfXULllXR|x$xn7GqrJ>iI*3hebil*W? zFUnrLNLPlJ#_<1*lX%4Q4!3-69^<^PNZT)%tJ&;U#rX%>_}T z=R}4I+*}(YD)cgsUA)~2PW-qbiJFTMqs;jkEvy>wLd5Z$UzK}$d<9-yFqU~Z4J+{H zCzjDz+L(jM>3S$9!Zd0LdYFj=bB>DFHSIpB-N)K_cx`T`IH2jj=hZhs51y{e%{Um8 z2Yq;QUY7V=qv*rI`Qx#+&MeOHg6&>L`;Wmf(ylJ2@&lbUbA2x-zE1gq)^KoMw74B8 zwC~Ay5n|xri4g{GYxa6?*BOF|U*ChY;w3ee?%@1cB3sk34AaTT2~J1e6UChGsSn33 zoJXVYo?Z*Mr&9|zQzA6g+eD*5_B#6EUe~S3cMg-ctPV<^NVr|m59>GL)kO}TP`48G z%*YRiUd+^EO=}{*=!W;T)P0;h%Mu0tb=*VAl*jHGc4#}ybPAi%8CXH<8y}_&+SQnr z+(Xgbq+j7wI#+vKy~=U&b(3L{GA?h_n=aoYn$&5{{DM}L$t?3FTT|Hj%5Qy5)+@>>9x=Zw zaV-7&a@(cX@rs=TWL7Sbr)?$bGS`~`bI6H8sK&~cKS7ZWHMwKO(s1r?)brTG3m&;Z z?FwF&3(2jyuoSCXvxPHUrg&84L#Ar4RX%(kLCn@NDN)Ey%Yhmo&z;enx2x zV^kM*%>q=PDT{W%CR2xNap&@`wx?DtU9qyQ*8!@jI~m}Bn!D2Rk||CQg}M)x%L45f)GUEv3lN{|MwQl*@HRyZY<%RF3H Jm#nFS{{T$p$JYP= diff --git a/docs/_build/doctrees/environment.pickle b/docs/_build/doctrees/environment.pickle index 9f457f8fb389bf65d1278850f4bb352690cb6e8b..ef13d98d400bfc13799704499258d9200aa87cb5 100644 GIT binary patch literal 1579407 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¨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�!H}g`ha;wV*S?ZHzD$dp0UwJR1Eo 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�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 WKYik#l56g1y#HREr&r_gR{9TU?|qm6 literal 1578733 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 z�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
4t@D8P9VK5Tcf?!DPHy zy#y%O@RwW#E{RO60RK2yFO9j5%X2NP6SJZRJU}wSmBDe=Yi@3H2XU~H$oRd`2OJw@?x4$jMCOa0Nho-Xyh9D#2 zo*iHn?nriym1eQO#OnYi7*Jx@sfPKhWel%Mzgr3G|!b{;mB6?!`v5y3YuUI~XOi&qZtY zkSTtn%UgC|DwmLeveiRhlH3|s(E-D_I1gdQ4eP~L`4R4>WDxfNVugTfy)EPo2&0R^ zd+D4BqINeQ7Y_NUf?5IlJcuv{&IQvHT|x(R$>_gwe*zPG%}Tw4gbh8bro;e7Is`dg zkf(6xyX)BVM*-Whk#Y;e5^pB*=EG3pmVg3S0nHzBI|((y-Vut2>-UC8Nr5C%fyR=} zht*9Nh=LCdOftT$J|D4Owli-ecqCQ)Z(&wu+kVLtW-@``_ww~)i&f=v2@jVG4Ne5UCwnG^`VTUTLGuNd-X(6J531NQG_szGO2S6 zVn~W_Vs_F12J1kPEoI?i5I4+d7sEhn;BZacUhikJr+JBg=3(Cc_ zf&QrBN!RGJAZw__Bx$D1)!Sf#PDXb+;{wm}@rQ}hJ#Qb<6i&Mk>cZo6?Qt;R8fdHQ zr_P;$Kb0ID&m{*0B8;CPjxNd4#q(U~n=k#-G!Jo3g>xJ3sjRe%`-$lWBG;Qiu0wdM z+{YX#ZrMd6awoPPj+vmo#WQ=HZeGVul0vKM1y4OS6M1G*&Uj zWTj)%oLD+Y4h(^g zw1$tL0S~QCFU#MYHG-YhPRNn6maT;9opD}3d(w`fdrwQB&eXKw;oVX3}x6#4>o=S zRb%7r0#qY`ss_cxPa`38oIJCd<17 zs746YEKt)CDqrT^3X~T>mCq@L%C>t?2Fi+}%YxGeRLNBD`IrV27cmL}-|0DJVps{jB1 diff --git a/docs/_build/doctrees/file.doctree b/docs/_build/doctrees/file.doctree index 4c3eb53b526fc38d40abe13c489fec993632c965..94b5d49c31226b76582dacb1cd6c64bf25979951 100644 GIT binary patch delta 5401 zcma)Adr*|u70*2j?5?{j50UWN1>6ML1?07;7!@(GSkMK0qLBa!x_-uGK{Og;faW0@ zqu@a?b(*LR$(V+TvUzoqQAwL=(rSYf^K3h*G_85f7&DpX;e_;@`|XQhI{b5==bZby z_x|qh-tYVUAiOgOVeR3E{(L&DA_iv|E#8KhHUUP!)6rRC0-lbG_u6A;3rGa)&dI~g zk$OBa`ESCG_s8Xn4DacN~Oi@Fr6+HOKPDtV8C9F(HOd0O_Vzi3N61jg6_gC!j+_y zdM_ka3plF6sZQPkM*!=Jl5kq)A~+>s^qa@}R{ zA)6M6_Xu1HzU4MzR7`Hh-+A1B(YT$;$8vP8|C>s#2e!I0mHAvsQYb=mOe_bwSU-ic zq3jaQx|<8c85F5@=m)%(V-wHdM`=^>{!}Z(YIr>*uxL#Hm>qR#<#4NpR<;19Xz*gO z4Wcyx*CjAN=vEx+c4SH}tkmG~Lxtk%LF;Yi{{wa@hn<2^leAE&j!-N|fM*!v6uc{6 z%PZL3oQ1i!XicTOY=JFG>5Yf0fP?w*_I(izO`GdCx_gwXWU^1&v{q@|;c4tq_7bpt zx`xIr>wI2`RPvni4!K@a5> zTA4L>;qHtgaS{hJ65&aWq{n9zRHesPc&n}2^a>B6(&H%&{x#8#&)fRpdtTQ(?6L2H zZ!`glM27iyLT?O{J3*ryZ?)l3a|7HGhQd++sbP{Slrd9^*rNcZQ|7iyn%qW?p)~o5 z@r36Khx4BO|}HVc}9VA=9GvBu`9;` z9jdD*=voEGgKm$Ha=VmU1~1ZN4i$ovre@8?2lEnDw%i!=07qBZ@|-%*<2;biQ)*?d zh;L{k60j{l$@ElUYk8xHD#D59@)OPbc{QB8L1C^vND_yNHwX&p&5%zQB?QQ<$9Q;%hH+kVgrqkP3I&WugtthG+=Gf z263NkBRSFUU>~zWgB)*7!jxI3#8K7Wt%Y7{Bw?Y9=ps&0y94^e18f=K;X_2Fmg{5K zLf*_4%9t&^xN5e8(yDn3Nh^AAsMs2LkU=CV2PoURmZb4=Z3@QDX%L?TpnR-Cp^TyY zAfbHEP%`25a3VmKP5E(La3})9p^V{tj8HtEQa_x_3`ZY;!$P8aR0X$}y6mtcT&mbM zwv)7JAYX^^ddPNR_q+rKHJG2EQs#9ACMn~Lppv8vmqt+r%>~Q7H6`~7a7D;VrvYPc zABMJwfTHZAc2bmkBCvnuQs@nKU<6j(nGStwOQmkIMxmyQJF~#6Hhol`4b;-HQhGDJ z8fbVQy|zV2dUgDw5E`h+^tvlT((6M;E9o_iNu`yhZS16~QGJA@*NM_v_>7!#@*>Sj zU9kH~1Qt(>!&M7kfNy`&t)YFU?z*D&q!K0N*?e{A^;${7x(Fg+ve=K&Ws`);f}`e0 zTw1nVOqI4#L`ticNhz#&ZE-Tz?#>ajsmmdXu-lo6LvDivpDK*W@riHO&+-K+WrmPKwq5Add>jLx64z>m)nuu*8YI)NjTH zXO?)FV$C9=pLZ6B;e!>aM&Cl|XeB(DRbdexEU!obio-BGc%Y)0QiieF4@2jpq#5fg zt$s!(%HGse1F0A_~ zT5cd)8$MB`#C<}O+OoFZm9ncR!$XZ8 zJP}pAJ@Q2S$R&9qxWp&I>K9R#QhJ=Y=E@l)DTVw@ij~7?4#zL$P zQ{y*a&JF{nEPq<$ps030rjCycktbtCxhUl(aXVJtIaMqtHwWCV<5MEm;b3(+b+oU{ zB-3YCE+ctl)9uo9uQc7RnjVp++kK`*t5%EC(zIWio|UHks_6x3+V3+xzuGDOBTa{; z>DSV9SegRp*N6)scD2Fy?icIC)fE_Cp?_?d%8aGa&YqS>Km?{BGMYCF3zO4O6ua+VNj^6WY+u=nO%Yei(Kv)*TUsN1#Fpf-;j=Y9x85hQdWI#nSz(~XZ zo@-c5sUOI5KM$nh;iu_>zr3ChyR~$~^SX@q*G1e+Jq{6zr`%aSGzk;Nvo0elni07! zRO#q^n4?15X&QFtV?Cs zzG;}!u4V_6Qq#|D(5H8QCw?8ka#+Q3n6Q+K=Om72LvWlP7Y+)-I4ENrhw<*FO_aXh zv{Ssp1L@wTD8%T)xW`i&bC@eq@|-RU%iSgX+*2y9jJ9+&Po)q%6_iu)U-`9qzVh|H zD}N2Iw++g<(IysRb4wW{8UlyqW<%hx*zqi`gG__`;K?vZx0?+fvN(*3BYoaKZ8r%x$MaCXa9*Vj64#e;`n^@~ez5(LY=@T( z@}2T!u;UAZe5Z`4E%Z(S)S6?CB%cG)Ifs6sA;x~nbE)W=()-j6TQ-q9;Nt9=Ia zQL#B5lw;V|KG*OYBQ25?**<)ueVOSc_EAOlgh72|cl=iL%i-GXahUn59q^3NFRtP> z*^wF*r$0-9NLy*3(T|)x;vYVnNY)bgz$jncl<`ydt3Y3Fy%w$-148>X;|dYlKCX`u zT8hGFhcZ4pAK-z9inzkxYVT58@DRUE?g5o$akFFheg~wRq?n}RwY_;*=S~#G)SQis zWwuF*troBCo|aK!8V?$Z#%L&GH0jvhxtr4HM;&0Lrmo=o zjL}fGxk;IPhFnLh7|9y`(6mBa=dtuY$s_B%o{E^U)>89KC=P|1Zfs7c-#EP5ugGco zMel86sOSwbEo^X>8*T8a(fe^H5dL31bmV-$dWUZ2n{O3%%{vqJXrBSZlB}aZKqFS1oT5CNm zjq5jV@7X7EdhoHw%3?bAnYJ{pYjtnkT)TaJQ_JR_PVYC5r3&$#H~#2!;-tqqdz+Cre3{iG&Tw~cwkhUK?Cx%GNA=6ZbkAd+KF>B!IvRgdLgkJU@d1y!IKw2*5&f$4 zkBHAdkk3wa;RdKq3+Mi6w>wK&OeIDyY>kj;FW0Jb>lnNiUFx0!TXn%C7=ov}j(;XE;a|&sRM0 z(&iRd(fWs)Jy4$-4XZO|+K!VMRZcGkkepy7TF>oNx$ zcwde~UQQ;dNG2KJ+D2E59ozj#$ZjAB$=L>YWrj=SL!$G+^a32}D<9%DRX&I$`QQuX zBkb@u=VGdmdg2V4dVL9NJd0$@gp%l0BIwZ3DODbW}; z-kBMj(N9ZIM(gqT9JTac z18K>!0xhaqs)38M%WNT7_bTVQft6EtXT5AT;*#gVf9~8Y8;lr;;$UY%sq8Vbel`;% zUI~HebKaKE;y0jn_NqiDho8Mh*3J=P?UF-8xhnk_QSga9HB_Gxdk{+E!54{VFRY!L zPZbo8*aLr=n>>9t(TG!?6@{AF~P>iaqGenJ*RThXPRu-2gDGP3QRSqkQdW2jX$m(hU$CAr(TcD<{ zErFW4WOpE(SarYLtM?5ALf_U@Imit#`bd<-mKRoM%U9Hv+Eq?!sjp6ggR{(pN8MQ) zkdRk*U651ckqtOA9evessc63C1LDg^-zcOnU1sZ|;cBd^4P?a~U0N$Y3nayb#4BsY zyRSe+@!RrS?g`a<0&vr>1ZtwhGrqo(&l|JJ#JXIwrzAeAAD1gbJp_&JK)0#JldehR z%dAkSD_J3KV<4TK4g~rMd=3+zopX2`ot?8ytlzmf+*c)|^np|Ki)c~_zDOkwSWvc@ zDir+eCJKI}jh*@4UyBZ%S&M&WEyzrXgV^!}!{ayt+FPQ;P6Wk6dwI6}8PQCD zQ{}PfDIb=*#3T8Xr~Gh+`t4i9mnBp;YmSW z9Y=E?3E4#L8PdQFq~xe8w0CL*QfDjgZcu_Cr!o&S5ZoranNC{TzDeUsEjTa@ep{); zeu^K|*--CJpajNI<8dd~coY}n>S0k#c$|{@Lnf@yzAOM%&jue4;kb6FVO`LKEO(EqblTU9Wu%gl+_wL zpv$9v#>v%H=h?!{`u3%my*Y0Vtpy)6HZvbIX+gNU?DjdZyXJ0d3V~F&4~5a1-C{P{ ze@W&Cah_X-6*X(T2XVO6Xc+U{8~L%VP7&)EMn2q#Fh4%r7{osO6CQ^?EVjUmrYx8q zmYe>yz;*8VV#fQLL{+O9?RQFldfk!xS_}9%<+muj=%U z`KNab=_xsIsxe;tNvHS+G@LC5f-rA!roVMlEYS|JJjN`K!8=V=5}SzS;Ty9&(tJov zgZefn&?1icXE~-WVkD2FMGS+piq7zs;G0=Tv_TBVnBf>)TDL=D6EVDgLx#gw-BENg z^HPj1#@YPrb1^JaO3{~S7%^Pq!!WJ!rWh8(g4Re`9L(Xc7@pj4nJUDv5RKhnr@wvZ zx_Cw-7~}Cz&=br;JghVPjW5HaH^tDy4ABw=Y!7T{-GI+4ty{%k$*TD*8o}V|fqiYu z!ia_%ip$-03d8TgcWq0>m5C#}+tVc4qmLZWK2i(&HMr~J=}VQiOBDIb)KxqKPqtj2Yza>$i-LeMc#JiaXoXG)UzBL!40@t9Kn}-=)>BAJJs-F< z>3rZst7`K+Ar2u^_1ZT${Qko>Ax>cf-}_Ej^poIqSkhA|&TBpI={@pw3uR&AOK+F> z9D28=p`)M;PQgC6a0(V|r3{YZvBVZF1w-)C2Of~g+)0;*1S_X-dFp6N;jo2LxCJ_1 zBtZN2ESmSDs(a;X9lBhFt{sPB3qiZaq02QWT{s45-_+y&H4C2u1--MyAhh?!$^#ZY z1)j6w8uBSH2AxdI}u0sMn3YK{;gQ>&C1{x5}5TbRNjl$fed5^ajH5FhJ`+ zei+D)t$Y=^fEYg!;)0d0B45$Bxa3tUr*dBtJ)bjRkm^&;0EAL1hc9xx3$XvO0;-_b z$oH+jsoYtfS~~$Sw#sxHaf(i{`Q?-X%XXB?c{ZXX=D^t<+0tmEu%EU70Y6SG1w?LUp=i#BuzCjWMT}3 z;I@_WI?aHLbM=zR|u!(h@?Lx52?uYlaUx^WnT#Y zC1Kh5#9051u#G3+7~7-IwVvk^C$vxDJ1x2~h1!D?A_Rq6oJbF~M%pS4wXY&IHPmux zYN(BdQ%|o^Z^D-_7gtduI*Ln^P{WPS6bd-;Y;i=X=(lw?H+HpjZ>)WIZEMFyPpKG= z_+_H7e1jJHLz+7}T01~I7e0L7b011sDj@s77w$ik^*`dHvp=Y%eq%HJ>g&YcstR@N z>U2Bsg2Mf7t9!1yP+5W(6NP>U<8M2B(4Rg0>4FdXFQZh`C6R8*iVcq+g;Hqc039%c K!`q)5+r diff --git a/docs/_build/doctrees/index.doctree b/docs/_build/doctrees/index.doctree index 8179ccf0ba5f704a7db2486246125be8c8415585..b97c09ddb910dfc711f202b945d144b12f15c8d8 100644 GIT binary patch delta 142 zcmZ3bwMUDkfpx0kMwaQE{IVH38FJnN8PXZ^Gh{NDH?QQZWP}O|!UYYuyBUQbDurNz zrAeui{W&E!Kjn#H6e!BiFNrTGN=?hGn9{?jKV`BlpO;Wa4{vd5a!FokZhS>reo^j} Zj?J_A6c`z+Ht*s8#>CjMd5cgP69752F4+J8 delta 118 zcmdm^wMvVnfpx0DvS?#2*1!&AmMIfTzc t#GA2)w>UMqB(F3#z9KEZD0hlCrD&q) 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 delta 23936 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 delta 3158 zcma)8Yf#ix6z3lH_0L_&CSSZ?5i8IlpiU&PET96WfD%4f1Pt8%1wMc%O-jqcTFT~Z zj~RQQmWiVj?O67u(s68@rfHh^fITS7shM8d^qQ$=>YRJ`!2%!ra_8(l_nz}RzjJ=~ zzsJUecT5-_GCm_l40oo)=m$kql>QOW@&Z}-NJ^n7M`vmQ{+6;*)UyS3(KstB5g*Dk zV$u>b4yNYLZHT4|Wwi811n_^Kx>pD<-O91dBCjV-@5h(Z=Rkin?pjgt_@*?@aC%9#=tpNp0qo-psrY=x zi(+gdm{AF4l)*Ug-dhvI&l1oNQvqGMCP1Up0vbgEBu4Q}W)ZE7=aV2F8=jh(h%4$c(u`tU)eKpAS(-+!g=39mZ ze8@TD@#E!*@PPrZEZ>4T4l6#I+XdgSCjq}+F-MG3;3Q0*XBD5}#)Y-;ci8o3&;_4y z-b5TU8}Q56nYIropC{fE?Mcut8nC6(gFAC);Cp%VIZtWEylDNb0Z+yi%}6%Vu(k1= zW@1sk%XX13CRPjT{W$|3s*1zc^0z^*Q4)H!(1=w9J0Qo1hiZ!P-vT>SC=XGsxhRy% z=d6v#2Nw-Pvvg{KX>By(VESy)h&vZoLl3+1VTWFFclXc+baD^A=rrT|W%GfeNu3Osq)tW|kJQN*SX}P1y~-DrP7atzCw6?RyaO&P zW=SWr6ZEITM=k}@;Gwi+$-{xb2I+LTnE^ViH<&|oq+@gC0NuT`Di*9} z$-x@(Dh@VcU6sq4&ZiXzF*sO-u$gmY(@b#rGsE8IK-ggU)|kKs!A{3LYv*BqYrJA$ zCwUYDyV#NpNb4FH;Ec=w_N}}Kz7PS{1EFkQ4?f-G#&=iRP+L_r!J!|fayQ|~Du*~A zOMXI?{0@VVZ9jt*tIMs2Ig~1SfJ%VI9SsP<7$(XYWbWm zCQzD^+IqMWJZy%axB+(f+#D1seN>a{>cDD|RPt5L61e($-8x9IkUR@8u`w4r)>xH5 z&oIa-uVjKHB+ytk?VwqLNnlLovjhZs9!u92SO*xQ(!ybC%6xEG!pd|I2-TN*wq#$V zHK{MGOuW5*6gs&8DNLbb(;Xu=oy$<+AF#+zQsKJm@X3Z)(CH|DlG-eC%#agE&JUt( zoy+zBUsRlLvB*zS@45|eL=mJuNzLf3x8k<-CK#j>H7#&DM4xtwuP5k~(^+dr=Z1W^ z5WH%J^NN{MVP@X6Ait5{g#&yW5#aR3T=*y0gd){|gN%4e1O5s(;CGeg+lVw1UPwY6 zd?B}Rwh&G9LV~X0Zg;Gbho%MF;9yI(L0XgA;2(GQ3#inBJ%9=gA8YEuxy?&$6?8L@ zp+TcYG~v6=Ieb7ip+u8S=;ZLS3HM@6i__M?msAs6ntbohw>Y4W69ffc8a}cskRl{_ zS73u0(SX}p3sg1F(5@P)XW5d~NNZ9xH%{~1mEwP`?JCTXP?%RjVWc%FjQ_;u3W3pW zD{ib7URzh&=I+j(j!pNqZ{5-1s}_EDTe1*i{=W7<0jdS|-1XywCpq46TDrViXG=#L z|9R`8zs5Q{_IG(w=wGt*d#s+No(lac|B?EGm$Uro;(uZK0Keq?ozbnVQ+{IgCwSp! eiDsS_mWE!!xwtnyUR(Rtt=*klyZvA3mEwPCb#xK{ diff --git a/docs/_build/doctrees/metadata.doctree b/docs/_build/doctrees/metadata.doctree index 75b1f469430ccb9ad6f5ac123654d9ebdc9945e7..17fa5e908c6faf1cc759ecc6435bb0a23e533024 100644 GIT binary patch literal 145533 zcmdsg3!G#{bvL{0>|^%DF6JrrF>3sxNg(+8lJA_VQ@0*nx9+X( zo*DA_liAyK>v8IwQ>RY-PgUIm1MfKKpm_)3|Du)6sdA;ZZ=_Hv)#|07IUOx7)r;-P zpw^ncb9&=zr*D|fM@t%oz0G>NQ4FS|gCIw-T&b2CL2Y{XbhHAqw<^`<2$f&d42rEv zy%rZQ50n>{7ww+TmzP8XtxBsJD6gVJF9>Q|axV*7g;Jqa$emj)G@H|y9da+&73@PY z?3r$!=F}~mDgZ65>GG;*$!JV``QT_F(Y!NSP_5L0>7DJdLNr)twHlSNb_@E7eLJ{P zYGOYY6|rSVgy(@;VUj;BF14rRkFi4W+D0&rdD_vUR$&5PO_x`e*Oix*k18Kr9*VYa zF4rf6&5d@g7Bn{Rtv9aSJOLeSmag42wZB!a*UX*xgJaLnL5>u0V~ z%OPDOqUDX#(UDrhh+1m8yl`i0y3j74T;3!*yR&>WuoMVg0E$!Wpfe9|R^Xe_W(7Fa zYBw~&PpA##gIZ~-Ua7UV?X1^=;as8JDvwSz>U%1sph0QPps}Y?3`VQGaxYfR&ggbp-ZY%yl7VPs{{fk=pLO9M|== z5j@EnE>~+PXabMs?VT>DQb(b@0$Xj51zJuuQ?z8?WOXa+2aMmTMu5x=rm^fxpzL|1 zy=7nRMU|1-JGFl+sx#xe8;Fle>hGYtp(*)n!4co+#;j zt&7gZNGB(9F*cP<-%VEfRx|p*A_6yCL8Dp$gQ76?Dlts@KF(-3h#?j9J)leJW@aTJ?rX?YwQGRd|xk zJ?Lt#-r3v()ZCJ2VWr0AAw?bw(Am~=OH0bo3??zG7y!FR`bmTP%Lzl>Db z!M{)LVEO(IBZqSPTOjG9adQb0`mv+h&vaCa^1*5!iK}%Ae^vpP6|gRXX>mFlM0cb<7Q&KlTJw^kg}nXgXu0O60Rh|{ zE-#E0kGHE;Hl+hKgQKl_5qZ~YPKS3P4X=OWG%VOKmGa;Ob#8fxGZ098F`6Qi-F&UET4|M+;cv z(fq0X=)>>d#2KxL1qJ*utY%&K0Q>_B-sB~L(2wvo$O&tF)RxIYr8XUY4igqZLTmpN zs4Ph|S_&z_zNu=ZSOK+X8TJ+$HF#VC{3U&0vPJSZ!%-1cy%oJiLO+az4n?!O=m5^3 zd|i_-()N3dw(xQM2Yi1h^&Wg=3K{-BJjUL_ncH(r5V`Ss1D4e&a=<@e0kpT$D(70| zAcu>CT)Y6MdAT_vEMfN*NY(j!BCb5d2XwO7W#?v}@sfowJQgK)zzf3(WNcVaSnFyYKEZBvfk|cf1i}Y7v?segA{3jMYuBl_P$Lgj13UT0_w;D_wn)t&O z)&N2ZKhmKnVCYyON#p*^G^)-acRwwzAY%s`5}L!u8fC6yb1EoS#$m?4#qBSmFqvz( zF5Huu#7+%>s7%;^^6Ka|BPLjC3fth!Pjd>d#;mb`uz@Ryz_dnwn>QjfQW!^N-DSjb zkh1$gh|q=@|FUJUSbE8P_$Fu|S`yoCbFn5odzNhxtUS219>h`%XI6jL>YI4v34Ht- z1Z6M?b!)UjByYl5Wj~}WqnG0MD#$@=v}T-XWvwpKL_Vwu+iM0bbd>oD`fO&<$x|aQ zw(FVhbPb2hJl#2_#SyK>9_Bm)3}yC1PJG`)J>gc?$SB9{Ut^vwXTPt(mAp zqp-FEgDf-1Dr_%t29YHt_ts{nu$O5>wj4&#ms`Ty;4k;WZpYrf9t|eV8i!`42n*@U zk~JXDl~7(C6^>a0Ic*waQz-hZferi`DP~ZDd!0_RhR`psSwoB#sRuC9%~|7k=xO4t z5q<($j9J2m@aZCa`egj{C-8J@_%QqXDfai%?C)pT-#=x4{|x`)Q0}XBKdsQ*Un`En znhzH0`HfEV4z6ywUV^2}2FFrHt*-~uzFRkfDv=ZIN@+OuyJ62lwSvebMPciEg2vtk zpoQDc2b=)5Ka4h;ReE>QN!J3%HqjLO7%md#McuQ&I^eZuft64k)*=X3om9%Z;&$wN z6vAtb5{4?jN{fY|4!|ab5Sua8P#rH~r3RZ4!qK>as6AWz5=L}Y;8Fj0dWIQ95vo`Y z>50-X9*F6;O)KtIs_c7s6IR0sxg(azIlU_sBR{VMco$%uyi+owt0b(BbVYuR@~?WiT&E(rLU{s{}nHy$^Il@BO{dyG$ME#BoXVB6=${ zDgG@>?P3LV&2Gj)}9~mD@!?l}iyg$HYtBO?U}_x7?)w77OQs z_%E3=|D=-y_wiBkK5)}+XHS9iUK+lI+@}#uh@Y~Vrn?!th8=6~|A0sa9(Dsq48B}!9*x7WYLaBl zXT4ZM(8Oo3P%Lt=$Qm>e!|_YUVCzWGvcvUwkYEY!y%~ii)1(56^WqvL9vy*RZ7vUZ z`NrI)O*!@pRHWVH+b-EAb=s&g3YqGFN6PR3dAx+kneOjDdNJU8n0sCLUHAv)p|#Qc zTwbxOn5?e9YzY2A(IJA;U~;NlXjYmkt#M4C6YBpjqjtluFtqq-PU*ihN|Uqp0Oy3i zfVx#62Q5n20p!HInzzxxD(LP&?x_QJDjVn-msNH`o~5ejr52lvmp0P|`!KL*UHCUC ztU+7wIOG9&f0JbmzYYHgkJ+ZC*Tpfp{EkYo#dNg<4{*)_<8qCF?b(No1h}!J44V)3 zR;pDD^X1x8xkB!uS6s3)2Z8f3Jl;|$mSJ}RC^>FE5y89M1(&~MN3PJ+tztfWLLp39 zG?B{7WtHUE$bhb@$r^%eAhkaU3R%=1lT|rc)INMhrEmdqM;LVeLsE9GQJb4GQu7xx z%969HY920y%(i_{_TX1|9%N5f^O!f9nwzY#sktT3D`!}1B)84RGmV@LDctrSITyt1 zwp@O!Uat=4>QijkRM{ZfTLuI$XyjmX7RIt+RLK0nKA1#sMB&jhrc}mwP*#96Ae0oz ziC06XR4qJtGbt97N12<&t`BG?Z}*;|d;+?3IXh!|zbS$i1~Z-=_m zM+E1MKJw=e$7iMRQTFkJ-Sm-K=!}!=jV>0tBp56cBmob1L%>5b$mCCZFc}n3GdrgK z+02e5&&KTIOft@_CzAzfrZCRmf}Dn6LoUxx9twdc7!U9pa{`($jD-`k_?efE(4_gV ztg9U+0+anrgyWP^xL~1PTk^O^&XS3k2ZdZ9ZZ9TcA=I62A~}l?TzFXDM+b9K2vIc+IA({BBySCp|i};Cpdk6xbmxy?Y%JaAojYGh5 z5$wIoutw>@-uDC?8RnG-Lu7OFxY!%+(2~0oCJG?bnyBGJnDTwtk$E$Y?>$h zLHkQ-&pr|N%RdM#c@lmct1*MX>(dp9FKUzksuItYaJ-V(8RY$nvj+)5-bbO3%XX?k z-Y>Ac3XO3X)QIuw>2P#Qgij^ApX!F#Cwd{a+aT7jx}o&HIICow#(n}iT)fEX)7hgm zRC&fA)>?NHUO_D0vOY=K3e3m^bcsDiq*YZW-`lY7aISX1Kg0tN}VSD-`xP9Na+ zy}C{4#e1NT1@gyaKlB3oC;Y7i?1vP{!$xg}V`?ZZp%)J^%969H=!NHbm+;e2w~Ah% zdFhO7#k|q5H6ux2B$3c%_MBc-)rfTqML0(TwM&*h_JUOSr>qwp030T( zb){qU?4}4J4lbjEYa=9O1B>ozk0sAK z*GQEbV3y2eZhp*0pL;lXnwwcb`kP)dAwyGVTGwG{Fxk)0xRCx^jN06sB|~#FqbxaV zFNWsLP9rZCFi136CYfyLcna0_mQ?;Xgo!}4$w2VA7c_rV!1hYmXcV`PF< zh97w;1KENfus+&Yjc-(Q0C^5iB3Tk)mdeEFCw&?1u9ZS6@62G)DWrmnCKq^&lBST# z>sZ$GRo7H?~ee@k8+vqa}`vfab>X?=GT7D`*+X?F&l3|E&-!F4f#yaT2Y zfW|f11{GTDlWQzIDz7rKN2hr8h#dV*P{`$7V&_Rt*!e!oX(^Xej%}(UQ>&%P-o4DL zcOBrR>vXXuv zv%U1gZAd6IDgYm^(5S%Qr0gxBQMOicghuf_4~@P9dd5Se>}l>oqi6B}RVjcS(*ciT zWetpOnt-F=&cLWzYY$=3?H0^bty&F=&P7P{0T8A(wWgkb{iIRC7&!KjC^q974I(av zA<_He2BPa{IV7q|rZXVAx>Mi8BxQRgjo)K&kNkt7k{jVyuo^QM%205Ms#_I^k=WaL z*C(CyCxk-32Zda7sSr5^x4z5rDxuH;<^*u=%E*(N3Y*_~9?9lkc0=Yfy^z^$5Omd` zKI)7yWRH+7heCiWrv^cfaaV4S@=@g(gP@z-O?U-CdCSSOpHold;sgDqyuzHslYHm9 zX}7cI9L{^GiX!SsZkqThm2sE58M}yiGd{d<=hcItR#P%_LC|ATroQA5s3f!_1o{CO zu04i8Uk#GsA<);slNkcFS#l8owS{%nDMJZ=3R?}v?So{NvV=dMr-wgzs~B0BxZ0hiJtCo>_UbhuI-i6>mPjZjt3Ib?IjN(bj#$Unjk=7P)X-PLcE8H#O3tb- zL4D((--No=H7DAb&Nyhy84Y$c8Dqo3EP1+#gPPSO&m)L=(DL`=DSX4M6qtCBWlfEP zKA-t;@|bF&3in9EHa;H|;-xTj~(NbOOlEshR zAPqhk3RyH5ll!H?M;Udw=^_n2g3*@e9&b)8pwl#SYwH4-^X${R4s zlC$=rydl(`uDqN#`XrMWT0789AE|}Dgx22P4FR{$Ad~O(U@|D6W+6=dvsnmBo=l-N zvs@;V@X{1U`J03p4Xyo!mokto_!8@*jn()@H3yIv zkUTo!E)WtWO`)}WxcicNhiM#2BOD<9E$6BKF*uxT_pp6hFZ>1zrL7k{LTj{;WNwuF z%!E6%W|WaVI%JuyGwvRd@3| zGNjA07J?yZ$t(#zCo{o4OsqB%(&yQ;GYFmZ00ghln!t9X z>@A@+=6^dvYxtgr*4ofB9$I5ha~E2pQ-|CHh$CWIgKO!h4)uC_2(O)$f-we73b4gj z?hWU}#+MnsS@w32r8cvsM%LbGlrZe7J+g+)xCVoO&oQ$0=D2}bKfho~JmIjRnT=lw zPsdV>m(l|MQQR;8_?qNNct2KS#@EL`#H?-x-Rm)Cbq>ge$E+@b zCo^Vcw~r!fWjnT~n^GliC2Sx@RA|U#iCb;4#;xE?R)(NeS7oK~zs#++Mg)K&R_xub9=W9p8JMSGNf(xe*FkAb(6&-8sub zO~(`Yi9K3tn#cFq=K%*Lj*B7`3@6BjtUPQI?!lRo?K!kl7<*^+U*>uDqN#`XEgN{eROXUd)ui#%g?{nghs_0rWRZWn%O;Mub~=HQVd1l|cV?2JsPCh+d2fA3;eI=wD!2 z`*NPvtpG1(c$ z^aocO6K5)>zuG8a3=2D^kIlGrT>y-T=`V~Mh#IqeT87Ei1oD@}N+iz4C@B)P*$|WM z582BuhbLk+vkKX7a}u5a*}nh^x%_e=P=xHyV0rrh*iX&kf(* z@%^p5{{5d57$R@`N)(uF{bMMw{L7eI+V8IsDZ+6w<~0MrB-DMbCMaOtW0G}Oz{h#b z8|P9tda2jq(NaQ9l8pH$FUHVH;`>-=NX%w1RrCvLPx}g#zJuO*7v6t+b&N2GUqK-Y zn2yOR0FjDEI!=HbdWc?^TN4Q=I|K^3CS-Nd!K+Ia!f0^qTZmSeJ)b~?Anzsji1 z%~{gV-Hfv2tg3#7dC2U6mXAU9bp7PK$%vNk>!y#?LSNAGTe~6PjZi475%6X5TRfNy z3aA+YQ~zv6z>+5uT5guhWD<6yFiJtoxk+%>N+9mPXD~Db{^0!RS`aHB?)SJ&N}bT- zo!T^;$G_!N{xvV9qN)5bER;5tYas67@g22zu($JSEn+$V(3L6MGhS1jeBG)xA}#^l4&7tTnZoZm*XEH7;YO%sG{aMLt}Rv12Fw_E`d?P7_xRW7MpR60f8MM8hcgTK=kU_M`MLV zI{8tY%hG+P66gPe5rSDC9DsLePlP-ooTbr4 z((-0}c;U{gqqNq+IddrO(e4=}8LgFccA&MpfU7;CwX0Tx5AZH$wX@{mQkR# zId^{)^maeWo};(FO=^&3KlLy}Z{yFPAY_|<`;T8CY2}ZF&Z~HbF)P}!+_|3Kzy=>p zbkF$q>F0Sdh!!AQu+Wg0`(R?}7p6OF+ovz}>Na6&FM~oB#21rQ9kVR4bgap_eR|xe z&8@M7sTCPz$yrrQ%@^}6L*42c4ed!M<{R@ygL_QY*x(*Zo^G~Jo7E&w8On0;q7=R< z=+6Z#>vIASem9V!DqOPMk$zI%cQN`w06HLy$!cBc%In%b{c)oHPj8=;jK)PZe1t+cw>gFq#wv^Fa2V7b{>XdkcimoEHa# zkMB8z{|NMqL-_1z?jZcrIJ(-NDivBm*1gjkQqg-}Uk||jRTh|nh~zt{MdUI5D*HBc zT!&$MSYsmCc7CDSgdekib;@@^u-XKhy3P7Yql7Vt?7%)Y;~E(PZbV@J+i?R?dzOKH zp#~g4KOnZQMaxvJ6L7wsC}*Mnis|=9@@3z{XRsO*$v?X{W#V_aDp0zz4Nan~N@C}? z+Ls-sD~ut2JHomc3c0*}A%2AW7qGkvjf=(5;f$Ab8ZY4cSaD7%jpMtaH`fcj%gB>q z1DrT6iH^S;DmFt1zekdMRyQP{$=Q|~r?|*nxgCh7$}`3(u5>ry6{p}WC(n~k%~`4# z*A77pu$Nq?;0qW0mlVQv?oQbCd@`dDZgN*{7Xno-g)qQojkpK=m+Zl9?nb=Cz}xOp z4BcLY^at(^*hTPr8Ab33cja~wP~}nt&h3a_a5v#40N!$!0_Y-M_xEnv?d z#J4)g)`_1|M}O>Y#x7#sj1Mo|dG&ambqb!jc-;|+j$?ADPLkLWs{00b4LyeHR;~eG zpM~lUhbJ>sr+YmjO1Cbt7fOImcr-A{e~WyiECISa3((n)S8#W&NaLmHYnQYh*EhPl!!W7mh5c+v6Yid;OIa{{+f36Ws z0o;k7)TmA5_Ld8++};Y@&lc25x%O19kh|y=m+Z`qRqJDeg;uLjEC(h0+y;JUXsS`) z10Ulkl^&eKWVNnTC71hr zp)PY%?;jhrxhW$xe}GYzoK;oxa6e@B2+n;RvZt$g%o|P3P1e}d+>+;&Gpsdof-@V> zG;-dN!fpSNb0IBvbNOne*}57&rnGxFSD)fv#Af5@rI4PhkBfK!jtrXTae%OKvA5DH z^Yxs5s4m0W`bW?sRfUr^Nf{15U~K3Z4w$Ugl|CG>&tkAHU_YdQ{;yG+n=%>>zhaan zXYFM;{14QfJ{&l2v{-d`41PqM-zPlpY9*StX06V!WV(_0)J19_EmZB8PfzHk+4WG! z1zGjN*$q&4cbvUY;p}dOv)j7qqD6F3;x>bedT1d{c8i4p5Mx6o$nkM?Hw0V>g=R{M zyP@u^QUu$fO&6x=uuT`1JR7naN69v`mP~g4$rQ8VZ}+ce_*yPMRCXlGz>cDCwWm;pFWTFtf)sS`4liXQ*Z+2= zOdZnzCi_hT$ONJ43)l}SuMZlvWwMd)XOtyp?ZsIAA=I6&=A1X$G>~jdKG#hjsfE7S zl5ccFz+cTElfUJ`WYdr$bQ}$Jr<)GWn~bL8^lth{E%e27oYxHj z=gc6JFYsWpX*x{(vzZP{o=m$P&2pJc!a*sF@;3>Gi*L{%MzbSm78@0|+O#Q#Neo%*4>PFGJn6(yqpHGWdtICklaJ*Uk@= zDD7$-$xtipi4xei*PbX5bdb2TWlt2tj2wHS@IBuX^*LZI-xI~2=59|EeL;$&B;sId z*1b{bUy#!4?O~79Wr;zem}tJeg`E94-yHQFb8Mz=j{3e)!kAa>o1?H9*ANkV9B^~g z<8cGC{#_|k56n$c^l20`oAzBPiYutMko?vgr~`L7o^%8gG_H7STx!e_!vN7ihcOzc=LU`NBleSZ5y4{#F*R zaHG3&y9lUqDFWxloXFjTmjHOnT?#<@mk5{V%Thn*pLCKyi11Mk)(^O8x3lMcocGcy zh@Ciz8*@JHZpJQR-i!|~+3TH zH|RVGPv!<4`!p;z>e#+eruRzOup?$um~XyG^K+IBJDc?r^}PBFhw8n{$x-oRx4PQ5 z@67g>$#g!8FO&U{NVjg|$@g&|&wqRIi1zXP8Vd~xzY5%we(mF#wWIY%9N~1u4Ar3Z z`Wh%?!Rs(tU96`^e0N>-^7DitH@{3aV$^0hi3Vka*PYBLOU|m|b-w$2PJy~rybjGv z=RTj9H(Er?WQ`5$u;l6HXuVlY@+5-b0&N0Xox(Q-Sz5`mrfvc{t#c~_+rY4$hpKSn zLKDt4;!T6Na{(72Hqa?{$Z0N)e@p8&4g{%cmn?nk1*z~D>jj8G-@}8+YF+6n?Ao+& zy-}N+GE(7vjI!jcstSkaLS~OWJU2l0bQR{j(IDrtkxQ&H7mKtaFW3IsVL&nGDWoiY)vM&V@cPbYYzO z6fpl6FIkZZ`X|PM4ikjQekRBjF#nBFTe4k2j*|)cC8I1kYcB)kzoG7Q6U2F=nV{r= z`C&)u97`r#=_9p}W`pEj8=8P*f*b)SbVI;;C^S>nXam%pmC2xhnz1nT&t@zvc}6+| z=FUMTxo1|E$$or4MMeGX$81E$uklh8vJ+P_Md`2;nCxdKT+#9CjM_4dp&FwsIcqO= zq6u}Ut1#zHMmuq9H+`fQ`eG;E)eQl6%^;KS^R6h24%#T6SwhEe$Z7c6T!U=&}!FBY7a1+8|Y)>J^|#p`qqy9Gv2(Et`o zgNn3EflhW_3PiXe&9MSR@hT&y;3K?xM3})^DCBZrkohDh?0lc)Tkd^cUneC+?ZbL%bU<7t746C~k-R>`- zd?|a&Hkfn4L`9BmF!-KtgSioU#<#(+r@7k(bJ|#;RVK8hF{Y>VF$H1;+stzg@(MjNgJ5?j~Ar&bTh3u)A9glSx+B}&_O7f48*FLm9{ zm!tA+L0LhYMa=jni2K|bmz~ASc(i_WZ0FdJk!u`mRklbh*9vm3$&je+?b^sll}vpg zW{hpaO2W1G_d_Aqgd#YPJ3Rh?U>|z=@IZ>3Q2k zBk&|Ef81TUJvvR5E5UnIe^LJe_Cq%Dl)DM9;5~0S*=joF(M9n7*KXSF?0J^+UJ5!j zc)#Q**MLvZP2P+TFWh(E=1@HA+H8gvY7_^rpb_DHj2a!w=->-AeT)Ltk-dcjUG8E+%?$`YjCb}pMIS!fDpA3Sm^>?0gJZ`O+y zm_|!*avcs_Vf;#D!Z;Q`as}(I9&3@K`bBP)Rc0r2x|#nqG?z0HaQiGG*&4V{UxsDA ze`A*yYsk636blWBu?CY)zvA{^&c772b8^dCt>(>wG*25Kzh4ou= z*WYl%?u}bx{SitwSRV_6Vyl^})Zj{l=2TFuj8}>nE}bm2MsnxvgA{mMU>7TJHKg_m zaE}77d~m!HR7*{`V9%>vQ9L?f5=vD=u<0+fy}q`sR1~jAcZe_qov7C-Q9hgU|sac zHF8vSV^bs7hVMpjhmk62{fJS&?k1}aGMXR?B;5~%TppdeeD&Rq@lmK-1&DFt=-iIM z6%Dwh#W+l6!TXNOwJmu*`P6}XpE_{gFxCB*^d%H?TsH*dpiowG=F8+0pzf?pHqDu- ze>QVw$+I#0IFsYXtS6HNc_KwSJ1mI1Rtgl1WvG<^Ms)Zx0*pH|)Jg!O@NvBWMzIW$ z{-*_CWFyo8Fyea-Ft$){J~E6!#bYOe+LjUF?v7|EAg`$hQ1PXf>gemB zqDAwj@py(2w~Z&miwgyP{P33eDaXidPUGT+6mN~oM)g^{-&=IZJR8QgA>%>ARspBm z%sk`svVzVj$H630qa=2o5qp2k2M+}Cy->(ypjE``UY1v(QQi;7CT2;e@xp$S_Mdh` z@58;&+w)D@k9R}zH#pl;vCgO5mD|BQs$9W3U3*r3?ry>h>*OsbPdiS{S!oy#Qh%vI ziU;cQNtYb$^os1qiUyz%Y{pL&$l>nF?E<07r9e^+@15Xo#7iW+?Jh;q1^j%rn|3>c zwsP)EQK!PsFLgI#7cy_ghZpX=I{Yl>obY#XOwBO-e5hr1PQK1r64wDdzX6Et5qNHZ zG&u15YIrh%XEC)4$a#&0as_M_%!7sS8_70h0h@=zl6Hg5KyCL9>Gsxt(crY0hP%}HG{@KiqB~Mr2wpmXm3$i1HaUFB7yH*0X zKajyL5x9+xXhv}R?HOt%a9jA^Uf{M^_DH|j0&cT8%K>iVdk${@9qJ7Ox7pL&f!n8Z zgfza1ZDTG!k%(U-URth~Hcm$ylQWIzHTD2@pKe){#)RUMF@|kjduCUd^l)(7OqL7D z{{-2n^MY=k-5~eR;DCL+)^|hf(Y+Ac1z5M$O{5*HdmiVK2UvHZyBRxJ$D2vE@|}Wn z=heYFId;N%NZkyBb^0z#!$>6V7L`PHfObEDvEL(TSA%|Y&~6VrnV_9%vIKZHjdoq~j2f{!rDlC!GIJ6~My&!KL0d4~q06W5D*qpdtl*4S1amOR~D+GJLf zJR#s}f)3byFokc*!sGocYbxkBdzUu-8VFL=E?N563sT`{Sua2gI%bE-YF+6njJx$? z%#Qt#7Wa^2_1fH&5kj#X3b}kWRfWUv0KFcV-D;>iU4=PsG=w5?uXDbeE>Z(&0EGke zKeL-=&zM2ZZta@0NtZUgyqhk@YOPrxQ>$&($C4-GrA=nZOa|v^HvZfLg0Rwz24_ZZ zSa^+>Fv!O2WBO)eHoj5K4CKjhv4UAD6QkRV2oFZPYb8kOeHp|@kP`Yx86ldk_nyxpN*DEAS%Gdkzh6Tn|qS8fH&(2MxcFFp)~F6zm(lHrPKpRcMv7 zeqiL3bc9&1xCfv(Zv#N|+Ve8`rw*rx@sv7l;va)Ag^q}!+f`Yqxo;&h#YCVF zY!mJwbn>|{jDf|GWbqaAQ?a?v=f~WW6T+Ck#91_w(hj#S=A|CIVjEiZkLXH%8#Wm2vIolDN#2w z`jqd^P%HVAVmJy@;-;D|>k?*C4i$?}`A#{C<&wa|nj)N!WQ?jSI^C^c*K{aRv zS)EANSvp=*4_>4GO%x)GhsqsCz+CEWz9RxN@)G~F)Y#<=V(9+49rGLOiu z&{@IFtP+S<4!J4rAQlpHFwY@bvm@@FhdcOUD3sM5Jd5R3XzU{XevO+*d;I-M-mv6D z>S3AC-Hbi{&YMX#AgXK3dEw5hyT(%c!WSZSGwd4chh<0$6XWiZxDH?Vcp$b%U-)fM z1^0#Th9}b(UP#0V=T|>0!(S@iu3#RxVkaUWGkUwjJD6!??rb~@+HPc0hnQa>ITYVZ zgo#N>w^9lI?d%$00vGR-T%1vd_8~8(kVE@1EHorWOcsZ>kEdY1;zcpJvX4R` ziz|!C>crKHEBlW|U2gRvSN0zmUCCK{ab=%`x>Z*ehk2(f8*@f;WlhG|TvnatAt>yHn`&}mPlWopMv38Jabll_OfDxD-*YGS zgyZ3fIkD_%?wr`uxOw6mF0;C_8ytA3T3-(i?I{{4qgF~+M6f%xU3+DhsfC0arzgre z-KcF#${*mHb1>{roX#}`@05@`r!6n9{1J5?Y$HVWp#UB#_}p|?*Qur zm!I@W)l|3^jOUT!oa~0oN-tz~;ho>?CerSmzn1eyaw63`zti1}-8<*aBwI$+JLe*E z=heM)Iby<>B6TzDo$EKLY9lAnN0%ga_~>T<$vyh$pMom5kN$ahGJSO2NC{6}-{Y(H zLh;uHJHgX@K5{mrzkcEl?yom1wTWuLzjG?T`q!~JHfwe{Apeqx5p%9?UlV-v_N;}H zRBnoonm#J|*XgPEbARj;Uc4b!{qM2RkQhD*uKG6?n2>osb$8*c?T`JXSGUREe+CL! z{C!MTr|(pMpMS@cu6Z#(YP#YCy*9V9J`GHU;kFbCxhA<@JpMzVZq?&QqtWT{$Gp)z zev>sekKdA~oBgq7HOW(gvK;siCQ&zwALlIo8Oxfk!OR=T#Zi_*wG}jKg%+5xT%{D$ zT5w4(T&$aC**4;}x_tO^_ej6)HpS04-%C?ShtFY}0&>td$YQdW4m-jxR~vP?+50qS z@0EQ-G>Fn*Sk2cQZ8?`#flVQW9St=8w-{Q+?cdfMH@~0UL5Czq6(#?oR ze23erYvy;(zy&2O%CO<`FAWa61xEhCqgW`-KhR>+?#+|jMEY&GG|I?f_IF-AqTuJ> zW{^I~2|M3sIeBcjeAcUXB(JBjke9srx8ZWxiTV&uRra^_MCRkntRqO(;dy|_;J6!jA-mnK;_YQY6cDRl=lWcH0 zdEw5h!*x;%!*Qf;hT*zopetx5Z!ncab^vyl0MR`HcAtSNIAHfhcrpPy(#B`SI6~vS9(A-)n;NM?J z{>?0C_kAz!kdya4EHoqr5m+zVhSBFVX!mQcZqwrNStw)y?J!wgIrawH9kM~M&8@Bk zc`S!Qt~o^YcYSx9u7WCukS*MuR*|*4P%_mOR~nc4jrn6GJ@A*M(0riMm-# zkjKBXtf`>gj6xn4dg%sf?GC0JHqPT4RdKUH9%iXbjNZTrZSa#Gq4f3$h2%m*ETyv6QhCh=bE9nO^+e<&(hJ+vw;cf{Z z(Orlj58>lV*;^nF#%TxSf$urw@eDq(tyJu3?jVmBl7p`wNX&|SxXzebEA9aR(a)G# zYfn03YRxQmSFN$Xm1~L>d41;8?YbKa8H~%$;u%wWhdLk;<&0J@XG~9syXb*~91De9 z_Cj6z4`s-!ul*(0!=sS88D9JAXH4zfPu#O3Y3+aj27vY+A%Kga3Jw9h0-j6=AVKv7 z5}=v#O4t@7n)fs9Rn8qs8c4`^TKo*8V1AY%5Sp z9_MLOGr!wUqt(ZaDGWkKl)OvS&5YhG(d6&Xq%AsQME|oX)50bHGIaT};c&nNK zeJr}Y!Dr&KQFYd~iL$Pkd+qxl4m)I{i!TWmQ7?l+S>3?JEN^e&u)Lc{dpPWP-mphF z?0N2H?BOupOtQI9U1H7)cV68kmZ}#nLh5GNB|gL)a>+3;Nm+*j{BsyDJvzYGKxerF zT!JUl0cK-cxVx)Onic0(@C=;W|DZvfUz>EEba3lbp;4G**Ew%xe{qjz zyBQ2_ZS9{5C>`$L5X;t?s9IXNs#}BY-*TIMn+D>j5TziFPWLy%j`s|E*v9S0Z^-%GLG;YBIAOmBrkE+eeCOxUT6F4OfaYx?@b1F-$5 zSMNv;AI3sna^RoZVt4g)UP%j%t@$agFJ&gH2k)F(RsC}`Xr2D~BaoUVO%nW{Wyngt zGIG&N@X2!%suTIjV(fbP%EJCip;~<9Zvnk7Um4$XU-=jK#C&D;Gp-HhG0=FKGAq)uMA^Xk5}RKf5Vq;7_N z>)$f{)L0c0L1sx|hmXA&DDKh6Zb22?$9@ewnLf5Q=7q0)WKtg#pIh(}oV-C~Yeqo% zX!NC0ZHca?Ay`k(AUfm{0`9UaTfs`>>#gkGYW#=i-zcgxd>nefDk21=Vv-aS&hL1tr zs?&-VqSI-Od82{KCTnbVtR7Bz&}ACNz!ec zNIzN`vXXuvv%U1gZ9)jZ5RR5`4c&z(*e9G>DSHcm!8q;MN`~(_fbjtIi~|_#Y3=}w z7vO?l-$$1D2;E2ukYQBY1E8UA*0GYz?^Gxsh%eqh)RIj=8rFBx?tK}gqt24LUb~@< zFUDn~*UT!k(ZOvK;+PN1G01Pgnrj}}$IaO!8Xz|eDGYyhi&DOugsk~@PtxN6vCN=)XEld%E| z4T*sVQ=o0Jt+|6o;#UiE_3_ScJ~V~Rb7hgjT<=9MP3gx#p^Ppcb}i$SzLaH6cgj6n zz887*j-+uG7V?tD0^AR@HSqnzYV!{mU8OGmPSO z;ma~)C0`D?=p}f!TSmT|7{S8!xC@alCoHTKs>PQZ1A1M-D16U-xm)mw1*6#0-1%}W z7_}#8G%NL5zk*RzT@SunCu$s%$c9K>@!1&c95>0ga%pLD%)Ae{-mQ;zUtD&U!%uP7 zdh*RA`Qb;gCo}Aub%riPHxfe^lEMz3>~5gAN1yCbsDk@sUxO#pC)4yr_+l<46h4^X zB{&A}Lbhh~!B$@uwAu~+K_$T$@~&*Jqz3;DH6mct;ojjHYtT9Zz9=p-N}O_U_{4H>eMJA^FslDgZoA$Ld& zP+?Nsg~%Ne#!gDq;trh!^t#+3e9zsXF??d~5PO`5-Hhe^S-qhX9Eg^z ztp{gFzaUyxNzjby3k}M*VhN`v$FuYq&Xm4CLYR(#3rFN_*M@Uj1-ijTWVMpk2 zZU2MPi$p(264>DfHGtqA{h;?k72FT{5ImWFkg6=g4RWZT@PY&*VY+W2PcwQ!>&OeL zjOQxN91Xi1Y>BPa`AQg;z0N#RpC6=Vg%Qi-7tNXW0-ru2`7~2*(Vu(qgxsPpV4)!~ zG+??(g^^b7YP8|%;&CBBVR$;yrL_LWi!z!h{~8LV&8aj|Vka_Al%Hc+`|2M3r&sTY z??1;vUVL9LR8v@@L^(gL6+O`0V5c^R^j;E{`7 zf_FPR`hbgi@#$4{0rQ&E+BCd+s5fg-^^wVo!7DA)O2x1{#^2BiL0? z+cF}~JB((TLcwK^&q-*$eX+6;zs)yib0we8eXh5`B> zZw9Sx@C3(iMhg=Yqm!kk$d>$J$^jyrLrwHcj zN&I29ykbtYzm#2jLpNPJz{&k+9L1iuO|%D3vhq9JmD~4iQ{|7ul@G9CBpRS!vXS?? z8~JKMg$JTTo9(HodZRVkoGdh2*R|^{xJ2_-bSpmxa^P(zTU)2h7K?G-A)x{GChh_M zC42BGcMt69^-x9`eA!*OT?SOSl)?N{PZ8wfqon=Y?&`g`&s*)5`@*(%aDO3xBj^`D zWgq^{-3L4Wf0B{^zj0S?=RZ|0`9CjaKRijw2RFMcf7y%syv;7Tzp7(C>kz|IC5w=S zmL|J(oV#0gfgA&cU=wtzQ99LKxm_SsxfDo>QF@WP5ih~;w!0Ke7Z*EU>89Pzpk18% za#l+H4%@i98M}~qGd{d<=haW!NM|T4;;@}zq-J%eJDI$JNYd5;(!3OC?GdDjKo}gP znT975q#=h$;4_DH(yg4W5uAhRbSK$9Sku3IUgw8Dw7nt6UW#76exjWpR4(M0KQo?FnEJc?~-9pPHwF7=>R3U%ir zy!(F){|E~ZJ-jO(i7>E>Wi}8SL9yN_HDRE^ST7gg^KN38<%;!Ms{rPtHo z+X=@xuwpO`w73dNo#T9DY^1nt3yt&ePt?wA@3}KV?tQ39>d3Pw2?#6*5YAZj8&iiq z=9hrn{*%k?%Su?ziBTaliN!9|r2A_wZsR+(E-ym=!|HQQNP-a-8#vu8VpsWiaF^1}B95XYvv{yDi(rMo zHZ{R=SjG{!J0&oPr=vl%yx!t|zkbVlkpcb$MFnZU#m3wgwW~rCM2S zI$21qB^j;y`Yl@|JyLosyj!4dwGev_Sc9s9!BS0E zF~#n@&P!yv-B}AFyNQcTvpY?TcoM|YHw6|lc_>9Dj1IRP6pr!{l#rcE)|rJ*Q7EY` zrmT>VcqOd}t?^e-$Z{hLCaX(Y%RcAu8I`tpM>K4VGqykf(5TD3Jf{0# z{)y3*oVACIK;e&|Zgm?FBH5kWfMU*Q_raKqf$k1~5x+C13}{Q9d}g`Jxz()3J>r<5 zUKf5Pg>Q&A(S0yqW?573gSpJMYao}$EnKiqWeRcULUm(q(P}aF&KrG*&mYc-ITs%#_b=|IkJLiv?WTI8 zi-m@Xre%U8;F@j-xM~KO{7MfdgVJag#?(KXg|Xz>n0@p~#+mhGGBJmzFwWn^oW?e~ z}4blhQ0|E zX3tUxA2RAn9{0#uG7%qObR}o)#YEf>b*GyM&KZ5QCYp#xy6Gde&=(W&&29+z+6*%J zuRWM-ng~<-Y$n2z=ZNIdB(>2jm&qhVDU9+r2`BTtST>tLZ!ow7G3Ti^A6JGuAvSN3 z10jCOel9*uAHm5(NpTq#Kp~6EfXV%`217<&Zo0@C9LeZP&f1GLI0ouYw+5Uu8Lhz? z-Sm-K=!-QtzZ(M1ok1pF=)q*u8kpK=vj&ztt2)P#935u@=I&d(l!*X`Td+_X;Gkh_zo#vsIDm{XItDNd4qkE@uD@(+ zwQYC`YH)BzrP#V2mtR|R*Nbrf4L5AfVLGniU{4i`@Lh2EOLjnbuE_&#g&IcmoAqJ^ zgZqPnqGax(S6s3)H&(5WvAjHB#~hsS!zcS3sQv+?+D8+y6z{8#CL)KpCb~=Ma5n1iz0^b3!5thg1k2r%p+hu@ z;mpwINzCI)v7@%=uB=-IG?^WNg}f#+-z&vV%}iDguCC=uF*`K838={^_>(eZCBY*X zy#(*pSvnyq;x1xyn!6C45Ec8erBE#=L>chtxE>bY^An;a=ovpD%AV%#gy?X43N|4J zS?|v{b|U$RD6gr9Golx2o8yTv{y`gIjE7-wCHscNwwnKimzyAL@nP zWvT`f$0c(Y(Oce`wNdB5-w2;g?S^x{|Z1Yf{f^uES43-D>y+twHBzrI<6?RsxeT zw#a}b&r(&ea)6pSlMT57eEe<-YcT8Mu#pVL)ZHv=>VBl_VoQ`q;EwG)DoG5x5lq3i zgy6skV&i-9fEzo88UT*np2`&@Zar9NwF<>DY`+5)Mk6-Gj=jKdM8FXM7Y*5zTYA?N zVU!7yV?To)sfwAbA;<<&@_%J)08!~X4lr4*D^=8dN2CTnbJZprh?8P*!92WI1$M$V6z9=HXgjU0Ea6is_a zhFS@a!f7NU9`)J`wGtjBW==0WN;oZYRj{qbxaVF9YRVs5{*Rao%VqC`vpDc2zfhq!!X_kUSeIK>7Ies2l-dHv~+~ zAd{;eOa`UVjD@LxHe+GQGvYbOB=^k9GTDz4Qn=@DKaLaMK)`e7g;I%Ke_E*0)e2LE zMq$!=%3MbrfLk&__VImQ8bSu*KGsJY|M87#BOuS=NhC`m%u<;c{VrcdyKAMG!KE3@ zKgA4ijg>KGu#II+UleBeD)n~^4ksH!)HGTSej5v=EeEv|I4473ajIT}yY0ps^+~p# zYXq>sYqoHf;@GyBtb~{8RYpqx$6h_6P3Aw$AbpY(cD~PY^4Mg)5VmouBO;T$4#q-W z@>)gGX^vb*f@4y#EE8ZzS~5#<{1b*xyd*8IS$3r=DYf?vC^Q^yL?GZ7)|jYO9yY zb8KUvScQXj(}B9jB>V*2LKI$&BtL{t*TlrLr*4QZFYDxfbSMTCHwkcR6Q_iMwMY$r zEwL-{dc*GN^2XiMpkZaWycF)gWq06~hoO`6T`CzZY}VV2B5WEOjt*-z3bkgnz^*Tc z9T*c}W1G`AOy{G4R=riIPG5XbG$`@}CHUFK_U1(^itPs83pz@5?TnU*lxhXGihjcC?UAlkY6A+!-wajs%TDtKNW` zmf)d*W(%$vg&#{B^?GX*Hkpi9_Dx6gHcv-OISFw4dhJ@sFi1b!jVkVCVssxMhLh8`L@V$v<*CtPeR2{CHlf0G zJSC_GEM*i|MWak4@PQg=j|!kNv4mx?BL=@?Qw{b6z|Q&6U>QClDt-<`t6)V1Tx=Cu z?WRl}CPkN}ceY)wZiIp>vH23RfA(U9@Rs3N=r21K-i*DGld zrH|5I7=@!lun(Yn%`&j43VoW6mRAe4iFRQk0FIa7_xzv+>d!B>9W4b@pgGV?g)w#^ zT%|h>-2{$QN6mPN};?a8UpSS5k6ECH?s2^w&L5{hmmOJT~6 z(w9k7&7fVXkM5g9g*qhIHwE|Wj;bY@mK0l~dn(NeSJ{=LrAo6fR>h7Gm5ansfnm1{ zI)lq-HtwL(<&3S@b=y!*F;Rg?+T3K(1?Dk+-glVw{G4H$<2|e{qPBa+DN@I z0V8S+=41pw&QbVO0f?ss;#dsnn@%|8bl~TT#(2@F9#drXCyMIvvjeEI*9MJ|O3)f- zZGb`8Ty9NPp|K^c!WfLAQmZ_D@#1I*baHYu9-MIpMw?TpA-6_{H21?5>H9{@m5Fi{ z{saA8P_3itFJqsI8l`VV-2$JGlAn$mt=5YLV(n0|3=5PZ2%e8O;4)(&5~ z>ROc+@SmH3TS0r^1a@s4bb#!_YBUth_Lz~aGKsodtrz%UT)<2csLbS8P=XP>A1EjX zK?~YgQ-oaCjs}y3N_7;LBWQO)O1DI-ux2xKf%WLv7>nkA-Mb;c_s@ zz6cZfa~R;9HwJ&2(GpB@Rg@3+rDE#?0{`vah@aJ*- zbNf2@b0_|J!w~$r761I?82Ixu{PTkK@aJs&bNq4eXCwYO<9PV975`jvBK+Bfe+KgK zXAuAV9RECne-@tvf0pB)&z=l_zKDPB#t(Vlhkx)ZyCHssH^fi5g!rkK5cisgxEDRd z2y2KD*mksBRba-_<;4mN1C$A{nWvzg68X67)D)f%Bnk>YIaaU6V}fNp%t(xLFVSjT zB3fmIR%`Xcl+$QUg8^A%)c_7p)tffkIAyZh(A?dGJvd7@c4cU$XQ3OVBQ&CwB3I z*x_SeI>8mmeFFN2d-4z> zSy2JKvLb^Z3V!QrSw(!{^V3!I!&P>DqMz)itn9L`tA4BQf{L;azH_Qh-FkH0y0^M} zX4uc4Om5e$$EkBpojUbDRdx6G-+sUW^A5oOMJt+<B`nEp8NcH|tZ4VlW*Y06B`~O10DoYSTNXqve>rRjD?Isrzr3KlaOZTsyg2G_Ra(_Rc@-UUUQpYdds)yblnSjv?yPE|*__7gkh|~FU=NaE z&-BJ=PThjZ0?^W$F0YIhkHo~64~!NN&D*2CYNZxTZ=V`1L<5CZt5F%9YC&JIZwFRN zP3*_QBDM^P@Z4W3Oz@{grKw5zW3*7bx)F?Fo~dYIt1ynQrpqhJYsyQ@N0tvP4@TQI zmFpA1rp8pQ7Bn{Pt~ajUG!7kXmag77xwloW*UX*zS-aLnL5>u0V~ z%OPFEqU8#b8S=&XQYy`su)OrqipVepX_d)DhTo5!Z#7Juwq_MQXeAa$MI} zNAM(Tc!gR+K@)g1Z})UTl{yOL5^Qy9G|+OYnWDveCaPOlKVbY$HUea3FpXs|fU@V1 z_LhCM7ga`T@8sSssLr5+weehiOxG|&p^my}9@CwrTq*^@@WF||d z)svZ)kCuQAZiIfbR-$FtC=(m|9jL4-hvlo0FB6h4&dZMKB zPh4~^LOMB-i?FF=`mVRqcQB(5EFy5T6*Q_9FenOBuMoqe=i`iqgBbEL1#0WdwASMi zOd4n;Mohjg5(NZLWrF1Ady@GX&8xK!mb-y*?_|2Sk}(S#u1^MyLaW|Tshzh~v_iN! z?bBeJC=N3732C&yhy@ZJ1YV(|e^!}P?US?#Yn3&>=w!lM+39oKowkc@TSl>6;;!5-HmY2TZISTDM5kne>_@@f zl$Y>01(}8C&KMm&0k*a>g64Z9p4#9i%&yF?-U>#9oG9Te!0_iwD{w1^cU6MjMOa@= zM=QkRNTF6NYco!od%qag9<4%SJZMcvt4Aj4rKxJrWb2981%tH=%Qr*|;0fF@ z@b`q1kN#fxI%IN8Eq79t-k(;$Wd*E@U|O7x2GAX;kA|?Mo7TLfXaR43I$EarX+QvX zhsz71MPpOdDx1=Qnt_p4y@;oDZVPy(jI1qJ@y=XDLvVGpkg~`bK77BS zhDg99cp~7{j_d)Zsx2IxP&KSx7gj6affcGs_V8m^H7;&fM+=CpQvE+^w5vP*`KXUI z9?hTJi$46`jhxY%SWv*9z-rcn_rpK1;7wi<2>l4(3OQkokJ>U(sMMyzFJZz$NNDYy z1eGO;MoSrjX(L;4$_VPTiJcg2;{48?dZKkpun#3!vSVRyo%y z2RU3E{v(~*eEDpV5Xsd%n-lko7vT_gpHGuAkJP(i ze9iDyo3+cAqw-s|Sy3!%0Wt|sh|3B~utc3D!{gvRcY(rNLA}Gb!ym1(@Ew?p9!z*A z{3+iMz7zh5R-LDytdcq5T_Sg+<3UR2Z=4R_jk&f#(_o&_2a0I}iq{jxV6g6iY=TJy zs_RDV)ss`BFhA#naM+~O2ny)CY`SJDXzWG96c3Ayxq7X-H&+XaL9&;6O3C1j5{Z09GI7Zu}V-aahF{JFf@W7Fu`6c zR)^RtOPbhJA9Id~C4HBorzA-q^&Z4Bx&56nMTz)CPU73-$p&*hSkU@hw67RPlprUH{-Ix zHm+1vH~c!h?_|O|LYwe(UM0_ZMi<4@_Y)uj^k1F&R>C;=Yoa~N)VCB#$W0V#;5>8N z2qsTYlnnj9F;o1fmP3HBpGm?lhev%*4qx4tln)C^TI8HNo~62l#c;3XXzutAEEL-* zuz=w;YJ-bVSlfU>mPup9fm{LYlZGrQxpyd*NK{94V(w<e4F z%z3})QzA@>R!5A~; zOXGIz+Y-WxQNmE=tF-VJ>HzFZ2(cMc4OImei!<1V5blf{h^A(1E5fj@3OvvsPtP!e zC_)u0AU#nU#@EI4+ol!w!c_J>+=tb0Lf#(Bu0jPM=p05YuR^1YUNA37(rLU{t;9Jbz4vuO@4em7yHp+M#BoXV zLV7DSDgG@# zi{ojoO&ERnO7wvLkR2Fycfc-!6QB@)D5+!OG_1KV(l@V4-9V8VYDS=TIU{QNd_#>$O)tv=Pv zjZM|qPV-!=p5rTn*xeRtmc4*f#6Nc{qO#!{<-ns_bLp-E58qED0}nfaBL-eB_KU`m zS2anp<_lh|A!y=rSSS`bSY!>Fh!OZDqp({fXxR~ZJUg%$x7&=sl4(Lg!g+BG1&Ky;9xG?m4vPyDns9#srWDP+!klN>=kVWk=S(TGT?Zc;33j2^d!l3gXlCo_^ZEng) z%}-~PC1+LDJX{Q!ZCju0@viVJ$eym|F>f?AH(6s-b4#Ar%&^u-Zkvr~8acZ(AL~!2dBY*x-d^`#tWgkD#Ngt_&_RzTA=pvy@g26ID67cCx2zX!ynfzG~CW8WM zX2;Y&o7u7C*^qslNyeG=WU?UFq%h9kf}D(CLoUw`8w!CZ7!U9pa{`($jD-`k_@$SQ z(4_fu*3~u>fysU*!f~)DoWDS?EqUA{XURl7n<9j6Ohg|Llx`w8Z}iccXd;g2q>t1> zPfWy#oe+?RLN27d8zyh`V6tf_{YV5td%wo;i}dZ*21hT47?`%bcR|f?kg7ZUU6T6pvXlwoK@BPo9Axq0v;RH zw+iu~?_yvm5Bgq*dcuOf>}l?TzFXAL+Xw|tvIc+IxtREPySBwui};Cpy9ffGlZbeU z%JaAojYGh55$wI)utw>@-n)$w#w1}6_F^-p?%Cos80@_@ZXnt>C&6AJ9lUV?Pj~MZ ztM%wmo8}3B(Ed`|vrokR@(%(_o`fIAYRn+;+H^(Yiy9?>s>E|89Iqs{2YJ8l>_I}1 z_aP|cvYl#>_d%9dp)n4F8Zlly9ZqYB@Tp|?-*-anW8DzjX%Or8olyE4&MFzFu^)O4 z7c6x8boM9>Rh}`3b*Q@uuOJq0S)ZhAh5`e-ZQ9a75No5Gb~}4EKq0UTa@2^Z6(IxS zr&Pw5xSO#Dv3N5+ym05$gIHFRGIK$!V^Sx>$$sbs_D}d*ee8!6$fu3k49C<^T0$=#V3Z|iRTtKt zM_j_sLftBQf##(>vK8}2!`@8R*cR57Jo(IWmwYp;NuES-?Mh*qks@f$>AA3P6{0r8L zHUJKj)w|kY;LR?2jzDOpu!X(M|}sZw8tC zaStY=eNngCnEGck3YI*XkbbjVCX*1RFv{NpSts_u;_fiG__o6L4&>PRc({B6?oQvD1a>}ty zRb*M7;}see_?wiyB{a&`N{-MdzUQIQ+n{GWG|HalE;M>7 z4^Wi?*fAaOI9Arc=*Dq43hoSysN7-?WWz%o-;V_r7DW3C%I|jr&Pur?q=*F=FRxt#zUcZdvS=CUUy-kK{11a z8Shmn^o2YWDvtSOj)*aH=@AM2tXHoI(fK44vP42LS@k(B%Sj#ebi_KoY1C!Rq=vo{ zw)@wNuH>xh64W;i`faFNU2~$1X^(@(oY7!MlQA|d%#x>*IH*}o@;ri=2Q7a;p29cG zN`Z;{S=Q7z=!=*SCy%KXs&I8Qd?pF@cjVx!M{w>BuB2?_@+{j1JjKLKB6n(a{Y~)> z`Gs<1gRAx1qH2A-IuEDc$h~|&IRD@LbWlTjt0QxyQO!iV;=an8~Ms3L& ziGzxix5y|<&f1OgmZ9!+<>kE5Cz-_1+Uq*$Bel?z(AuANLO?WwOup5F$)JFmg)sHc zW+5zjGKJR6a+yrRg(-~kpVVeFwDwnC%0RZ@E3A(;R^uDh96+87p*6EqCPshBm(lK8 zDYW+C3>KXrd33^EAS6nfLTh)htUU>>{ingr^2-wL z(3(+3&b-T)>N?}@5&4cwppXj=#LknPu=72ZlNLsEht^K?>K(}|kA=MCWr>y{U6!>F z3`t97DULHT6WqnbY9k?io;@vt&`CdDoFOae2Qu4BKir0dLTds*@CvO7Y)8u85?W*a zwn$W4GaB9=9{mVW9`ueXcv+G!~mW6-1kTYTl-P)=-o znc525b!xh)^3U$nDxVkrod#ds+# z;9tc3@{g}co`m;eHD-K`-J>;AfweC=2~P;DeI5$AW>O(>46J>Ii+o^m(g6|v$iCr>I)0dx?tTDnZPB!*qEvu6<$0_4ggVs(VO z8GFQvH{-(#cV0bWWgVO|7qLo8TlaVud1F``04CQICEvo&r7XRoAR@ZZAX4=D6F>f?T&t#1aXR_q!By43? zlRTLqoy(xUdtQ5A|#j>V`t!4xC|0a;4DqOPMk$zI%hZ+4K03GzlWVNnz<#nB> zdBUj8O&KZgKM~9?{HuV+QGyoUrpfmXinQ|L0!4BYC|a3wg=Qg5!4x`hOua z!Clz=G|=DfBz~4j(yj5NAD_yQmGlFd?WG@XLqedxSb=$g{$gP)Wp4rfnG53p{qa2q z{eKNTc6F=WD9<;I|{l}&rqk+o0fcHV^PLn;=nY_BXMUzg7#&|KPfU@OK$TcCWizZ(v z{Sc^I1*d*^VO$LTj?$GLgBtNQljoEbDUuEx*7^ z3rIW9VOjt@*3oiI_R>!07Wvm0wYfP<`gtXzEIF&HpW*S4*#j-V3bLo`C+AH@w0u`5 zeWVt8f|lRd2?1|_LRpP~FOzTfU@|D6W&}+Avl#(Po=j-DSuT@FI5UM&3R=!hg1c4% zaetk`&=B~8^P_7)tbn*b;x_5k^V_eLEhuSGd;S4a7Yx zzM~co_O>7DO?)pY{W~v8$jB0|GljH1_hif#|ifkH!j#v|nAcvQ5dv%HQ%v&MSN3?)am$k`>`@ ztY%hG+FP82C!n-%hC(hADg=!v?VDKM9-y=z?1a+y^43#P+E2PGx5JQBc}A4>EAA$| zP+Hz{@@(J~KnE!8kKDA|+4Cspy$4GBb9Xa#l$JN+!wYv_9i_Dn&Y44Lk8;l-$!M*l zvkk4?0bK18tzB_2_yBi-dl4Q6PbOMxv5W$>&AI!dptrkG_8h&vl++*#dOO6>+xRmm z2-&9J{^M6jTKS`)^D5q9%!+m_cdn;5u)#+X-N4Y9#dJ^cVh}ArPQpTiV(x>9rB|5l ztZkpZ*sI%wsa*txEQl{At2$;`V(D0ubNh73sLidhgsBx6Wyx7pOwAYb9fP{nH5%HJ zcFZ^CjRyCatg*p8mOPzopEj#Wo-&l>;`u3jQ_!DtSk~tRApCA1MOC#`+jLB+U>B{TcKK*f{HaBIYy!SK8lC!GH8}5b79)R!zkUd>_IdAkqnz()X;ZFKU zE%XEs{$VEsJPL(e3xIBz{Fn!mK>;-jVd|gFLRj)-0))+SnM}g%DU9+r2{XEVdgUSd z_)Q*0iY-_Mh1f*apL=5eZ8_!ZGx$a|2Oy3N+o#P^nHW95h;Y+O!8mSv-L(?(er5*o z5der@j0^lghSB!vVV1Qg+o#VrIP7KsIb7#pp)`j}L*Dbw&k>;0ZCsd=y@2$tukh*% zVe^+|kUL2TyWL|6d0_Lqyn08HYGNTTN%d~y^jk6$+=aDI+c<4^4{v0Wbn80l#~U(a zCH+8Vd+CSUgb;);)?Qu^zE}ZE*;^od=Dau{e0+1rzzrq4j5RrTbwTL{%UuEBlj_VL?4{MAEThA?2oA6`yuTFUs1glN3 zsoSg{H%b_T$PVmdGp>;#;6?=YzZW+UP0cc}FVuho==;UTQlq7+)(JRYPn5IJZ({oW zk$l6z97uw*&E1 zdB!-!W$q@t;uO5)ZF5y9qA= z@RmCiKnL-<|Kq0J&Yu6xc`uEf_*MtmI`LEL=s&xgv5S~Db?bDLzkhtWvjr~XQ8@P@MMPSbgxH5>DDCnLJ80bj|L|B?~sp_B|w*F z0Xp093hu78ov_GWKq}%ObXE0(4Y$S~n43fQ6nJ<9k!+30rDH<_FUJp$!spx?@z*NV zB*~hSy;wuI!zL^=D4bYu{(2RX>)|nrmw9!J;uaS`AxqE=lU4mmjaxX5S&SNWxpk4E z79)(VtCqJPF4v%$&)F9nn%kaL!F(jRK*c z#j>VG)vgf>ja>fhO0l&8KkQqAhf2LxXza~3f=Pfo@sk?0@!almp_SWRf&1BlS}8X* znJeTjyyW8TxzTEUbfC~`6^iAcgrD1Jm4n=5qrMA1#!aP=ZzMt4hQig;`~10 zc~>gYyhB#&3`?dPnNMA$2GT;+j`?(5C(Y)dkPEWvhO@^(-JNmvT!phc70$k-lP+3B z7bR{pIKPV)(qy+t7yvOgWP%(YS9C(aWl(6Qq6Z1DNbL4ImSQs`s%UQeGc0YRhCJ z-^(aV&f1N!`g5o|UClXfv}qvOmi%QWeWVt8VoSc&2?2jIgG~O82a`=(V(OpGmRRy^ z>werxtu^b*t6y3(@5*)$!d{@F~2B~PZ^j%K+` zCgHz&ZW0a?-=IN^=Io$ZY*g54)8;hjaS~vLOpvDTwO$H9uEQ>-05duALu90PSiV%1|rqi4xei*PbX5bdb2T zWlt2tj2wHS@IBuX^_Rd}z9))3&E1|T`hpZkNyNd_tb3!-k37^Dj%uQ39Jhh5X4ayEA<+3gr+g1_*+r}moJZACpbgORYfjzF> z4~1M{h0p`sB{h%bRcO?)Pf4bpzB-D3OWq&T39*CS5ZlehoELXO?F%@&Qg=t4=dRqo z?SU$nyFyYn=Dfn)h}XUl-gfe&?bMl0H|Esb9k6S6m{A1RxhuDefGU?FaBj?bv%3i| z0q~YP6oB+E5iZY{rGCyo;RJyY;iDX^?{m{`XU}^$@1<1`J8=>>=6u}Uj9tXM86RG_ z^XeOOtY&`ZHs;vAP-aYDiC-v_q_%C)`6kRzU2f2M6lB9U=sXTj<^~=6G%Pmi*uGGv z_e$BYBW6>WZ@x|QbCwM|oAeX)y!s4>>b=X!QSr}ib+vEbne8u=>3kMnCi@AIZr#Sy z%j;7A!;43>kLM3qXi)f7;GXnqAJ42Etv~E=rz>Wt2Cdf*fkGC%4wKczdV0k7(kotm zjxglrm&t~V+6*Vrpp5Xk4UDqntSVmTyU%AB>Q?bOG%xM@d}7{c5iOH7Hmt*vr<0@g zW;Mx^2!ac=3Fx2{z9~S+GL|)U6VS=+TN&5}hHX4lg&P-|aIO(=8pNFoY=yw4dGAdN zB_K#uyJYEOFGz*2V!Z${=zDlDS*ijMjRrX7tdFVH zHtS=_v&J=6rFUVL%w%wOrpUtI;GFLhLl?%WM*;JH@{$#qpnqU2Xfr{W>}P^p0rO{! z+LG-Ga-2-i(~Pp@tlbQh|A4yFO%UgeW`dFf<_904b1a!~rH|A?nhlbBZD=tl6XXb3 z*9ieRC^S>n=s2i5E0aM1HDh7wpUqfU@(i~J%$x+T4RnfE??_%JVIePh_3mn*3o;Yj#SEKvHIN$(hs*Gp=~e%JNDWJBcOaKd&@SMZD67z$2J&z&$q!`2R-B4VA#{# zZG$;^w9qP+M~aQ0M^^)>^>wlBusD7%6hcXngg?{?;SX|RWPEzwR?!GN$;uybS8k6^Q{_tV9@Sse-^YH)CjQ>t zgjevMx14Nho$}})c>f1C?RNJ3mh)Z;IyHE|@JQEyPtZ-?j1Mo|dG+AEv?JmBkO^#$ z*31R(^;dkzW|=hpuKLoMX+AKRYUEC5~LUG1e0+K zsaKXD{noSCJjp^+IQ!s{TVWsJ;CZuNtiUu{f|KiT;0ohcA``~3;u|BntVNFMt!|Yy zmWa&%8l1}+3Anw5NVW#<)0biDWgD~-Q(% z#A^?(U5mP~HmAEWEC#xE?NDwlT+vuqyCrw+zI{74Y>D+pDA_=LGz^NZX0B3$D-oKL zL9sGcDPp*EqR<-7owEm0;BA3jtiaWf+AF|43cT`xu}V-aHQ|nhpb=17t^$SNAR!(p zj4xWiU~HijU$Zbl8f;vsFfT7A9e9!gnD7z+!50-M1YCctPktOP>Oet<5)j`H} zKLwKRg+eZmPF=qGZpZit)U5)i z8;37E_i_M3t!Of!Rv4lsr4fA~%f_<~W+_FpQ^`&WN|6@wV<}R^tdGD*2CH9WSyMNM zoEJOe)-%swu#7X$GJkx!83n+`mtm$9x1MxbNs*lRN1#+4FK&G%v-LRZUfbBiWVNo; zvB!@!6M5zt=ieK(xhbQO_FG0-a#nSug%3hzk6k0rK=$;J#(9%56m!s^&aq^|6>CB* z^duB>OeX{!1%fLA(bF zxeT<5Slz|)Dm2Rb;n>71=`>#0Z_@ssozVN~Zs_g$ChbQ$A^BUJZK+u2-@7ZfgLzcB zf_1v~to+K|gcsJyTTY&KoSL)3Fdn4-QiBu^)a8>dJj&@6*^d<+2!&uXeyTuLxhuB| zgesQ;Njbc?&fSQYNO;>FilhVh`7}4}b_Siwxi3YX3O`@yZpJQT-i!|~+-jA?cg!cdMTrN}dx>1h}}5h@EK=`F1a+5QzMCEHo%a z4A|gafyh0)#Q9@h9V3+EJ}6{4-i66tD2L|h;lCfUlj3(lQa2kYe637^GbG{az>zRS`u5{bJ-C6R5Q z-OqsNEEzNTvzp`y0ap{WFYf~>d{Y)4?`2t2LBH9%wCN8(kg9gc z(#Kwq3jdb%0>q$Wc9^Wzm9E0LTR+C^*bixOmmj0o=BA7giX~9U<*TVG9R2|4^}y^7 zg1XaHnDa(MC=&NNAKytAsev?r!U6ifu#;vt&md<{?U=Jkmo{zhq>HgyYu3lqYMb@3 z1QU>XhoUrpfmXpWD3XgmBj^yRrk)_Bs7UuMWk`hm>$(hs*GA!t~v@4TR4v6z;!w?M({~)gNE7D+(E-HAxxxFD+PN-t`7E&Ocq+@tREP8emX*|SKI|qoVNiWdhL0nz5POk zRn|TV+nDfHTER0wR_e^DYq=XLJ}oXAy>7OlVx2ebh;bisi*w=57)DkSCD5oO!d7Qi zOtRe76M5dSs^nq={J#6|Kd`=8wVDXzJi!Yxqk0F;A zpnsa~&Z?);$)i=1B#++f#UpZ(-h+h(#n^*^Zo?=wr}k(j?>u}moEZk;21=3z!xa#q#d^Mx3{1$C?V4BCly zh%x4jw#YXbV_SDx@~mtZuT(fQzuToFpYmfV3_=u+d`i^Kj6UVNGt^2xr5KLFl(?zB zdmbp1G?Q|uSbWNV03uwMb>VyNQy#nyo|sR`p61S{94ZCXpcQ0wB3)1cN~!u&C(G$`YDz4L}0aQ5%i(yb_v(VWoPk-oam5wL~gmx3T|eVK)iCuO>qaY zkeGwbucMtAchAEeJRJ&UbqBYwyb6sS#NS`#Cej{%zl=95`H*^8rtEIU9)IV}BpVRb zHRil<=ha5=q3z)*n6GqtZol%!t zy~vgQA)_lfYd5a!<50Ki%Hl9@cV%PFXs)cu7@I3=$&+vj#>|;)p_PF6ms41yII*aY z8J*aVWT=&#STO{Jy>L@aPVBKzKi4QRJS52$;r?zXa>{7LmaO3nuIftAE@=y(iK62fj?x}Iv zS-j0p@0{uHuHyc#!J{6yy_dv&^>BMHhC*50-iugX#qI59o#675KB=0zI-*}voL6^3 z=6E+`cHo`g;3m@UonO!SBRP@ko!{zi#_pZ-W|A$V>Ya0ux%2AYxg0U!g-G2Dd*}L1 zs@lj&^wA}WZ9e*DAh}B){WDMn_tC!uPo|Hq8!6$b>wA3FUMT*$U?+H*FF?*_^w*C+ zoBQj{N^QIv@b8?;ul}`dj?J1~4#=+&F=Ecu?Q4RMJ~eBhB$b=uqoxl@{hzuJ@AL1NQb@r3 zsOi$<^xE9Y`Xn$JhTCE&~S_ki}##9d?9Yt}yCyv-e5P-pd$W$yrqm4v&G%9@}HD zgzV`W9CJp~V3RR64YuR~`DT>6oTkibGHLME6uzOd`)TluZn%6KkgMuhvcQpW(%Fdh z(Z+dvqgDrbGHkdsOJ!p8&AyCw*Gd~Mf04leQBVyh-Hdp|54f#*_5Ai3xS*s(@dnG} z4VPatIP4Y}`3DbSp)~(Mi%q*XPjVCKx8c$#BZt}Fdi98cpZ`09^hr+G`5w#3W5eZd zy?RITdJ+qH$*Xr8E(ea+hj6ljbuk5`ZMd}iGz)+}zG_xX$uCw@hja^`i zCnjQxK&T!mZr^3O+$4jJ;2X)(*j?rvU2bS`M_hImkKh|U;pmKV1i$ye^oh8e9;jjk z3b{;!3Q+|tuYxLe0N1_IO{5*J`xD-<2V8fXyBRxN$D2tuIPJV}=hfjlsfA$)sheTA zE*ad2d{3^;_YLX|0c$lvVpJWnsvzQ={U$d;Kpxul@9_M=L z25Ie?OgC(t$2Y3tW`jJ;QkfY2M~ny$M!Rbz$m3r!h>w;^XtFXcmHw7Xx)+egK7+$< z29R}qEfz|%u5$%>+~Uqe?SIM*G@7=8U%XHyLAFfm-r7Pn(+g-F_OaKCVk) z5IUmdU7~Jg^e)R8Y9;Sd3`b!~+*FfyDGa6@Di-hZBS3^}qdvap-sO++iFudoY3{sB zh>W%J8E>>c%CSEms_DXW%xR%BBq=Rkb|7nz2g%s8oGP9M-l`@*AB%2p@Ts_LRGqbL zqO2?CUi;pM!H#Q})eT(0@^%*vJKjyCJsh@{H|!A(JH_3MJsifHNj4X% zOU!xU&a1n`QuV@qq;7^?;)Bc~mmC9=l(jj)zk>17r33sb=qz`DN8!nIfZ5mK)19Ls-a54*XMF z?5>{nD`~;8H9y7mmCR&y;hj^fs(+3Kt=&KWBBZ8ClLY_y3|YxnMlN~@K6!3Jbs}F` zj9o8ZS=e7GREw|t9iZ3cE8~0aEB_9kn6J#9=FV3>2^=-?36ZQm^YLz*tw%YOIQhAhV>f z&BtB<6nE)kH=qjcW4{)jOdnet^TO9YBB>9G&nqI*g$1Vo=!HDnbjnle`P1bhg0~5S!qMry)5h8ZYX;eXizmRS>Q-GY3;u=!fl+# zH)?f|C&L*!vs5NV|DF-yrdMOMyH?sz_JItw(((sQR>tMett@N$x;F#v@WK;y4!apZ z)^#%$O0%w7#4XJtpEY6RCz1rU}62nxJ-^8j7;0&)^P&#N!AKs_4@ zxm;M(Q<4yNyT=mpKqg9Fy(38#u#lIedbgEqZ)Sp3;~zc-%H6xIWcImWib>L~>!crz z3|UD(kl9}P;Wi-zUa+5 z5Ie6xj+SSLU|~=7(V{9CPW@~a7<>+l4Pf=tlGPn8xih$fD~4RA#AFUR8B4Lypcr^C z1=<$dnmc#|ezh=HA8Y^SLsQs1R~9MEoEN<`r4K@(j4mH`E#s8Fm}O0O$~|1ZtzNw& zX>7qlUef5p?U9V{7GMB_QS7~B`i{(Gsg9lJRxxT-UDu;YYhTxIXME2vir0h}Wyngt z9CFc1@NTz^d^s_Kh3#<{B418eSSeJCFLxEt>k3BUd+y7<37=RniapJpFUNvWyMjiu zQm^$Y7)8}};k&h?#xaR(h~yQYjls@wlYA?emL|u{dw}bm`e^Tp%g%E6DehWVzL_LH z{0R1BhJCa4(1qwmV(3Cr*yfYH11Rp&CwmC0;6B+m;K}sKG<^}im`e$T4<>jCj=`PC z){H*b!8?N1RD*v|Nic@IE88on!QZDwgzd^;aR=v6Ux6*(m287iK2i{J5< zdb>l!UQ3n_WhSZ{e~2}zxngVKvc zKS&bT<_Apz!Cm@6_dpfg5BeZHnSPL}EW!T*3#yFeD$N`X zyButZt=0KT7?!=xJW`+Ur)Gr_%j6f$nf3yoJ}mh(Q*P1!^5O}(MGs=3K`}I7x=DqR zR$SVcf~$+igaC!%X-k*V`o0%sG*NyR3Z>1dG*MzFGES6#$+Gs;J^DAV-Vxt_g@wHM z-ZxsWS6zS+doP*3V3?20^dZuXgT$#)JtVX~l zArDE6RlzxTA@Y!fA(TS3cu0o=7hE0^zULm&7JOnJ5__6E59vhMFwn^C9Ko)F+U8+# z-eFjq3|U28_(fywwdGlzL%9Z9UXP4TRjVVS@vY|;s?A_1SFKD`T3b(g{t!UlW6hwo z6`tVu%}8Nf*R;RGT%|in?QZRXcjmOTzBt zB@`+v<5~i&VIejlpA3$YpOt9Ph(ZI8GO}Uxm^ZSxs<{Dlb$cg$45!~_uSQcai6!^DffkKZR7p|{zlL*e#$=l zi@OhY{{Ji^|DSPJZs$K$F8Mz%Wlk;p>;f5tLa+%s)hKOpS8f*wRW1dRVwASJ8}SkhZ@WXmba1irWp3K-4BElDFK4CH z@358J&De#^oAKd=JFkA)Mmj@b0f+4jBQ*!NyOYTqh$L-oAkBq9YnLF+n?V>HqnU?Os6j;+Xrj zVK6cC`ha6(ok;gDExc!zJW_I!d$4rk&IlS5kS7(g}qQ&BPg`MD8N7#Ll`fP;C2A&8_sQq zGaOhk*aKQo1*P`EJv=&G+`5?tclar_GuyiEj1YDYYLbfaTa*Mu69n>REcK1~LLcbM zKyLrW<@QyjtJcB&nwgb^;LX^zPwanp;feisGoi!tD0}X;;FZC?;Q2lb)CcM=%X`E`E1beXwH#IM^wKr4IO49tuv=%W$OQ zND~8Hj%qQSuVsVz+O@L^g$QCmTxLX%1;jS3g!b}gEi`riOB{w6(xii6IAd>=xOO>&)paEZ* zL=u|0i7C30lT|aEI~UAKu%|FFSp}cN^bNS2k1z0lH?xP*)>EwZkJ!WY*`uvyLj3?kq1Q(JkFUpd@E- zCDAP1@rGNIFaiXlvu2l?{l{GpjhfAgb{jadg?tdWv+A}G8%VN+2MSvVrUwjC6U>EW z@PK1e0xNh5T0zU}&F=SWH?I{L;NJi$dI46125on}w!Xz}pJ?9JKtj7zE2~W>3#qjv zqbXmzd9$PkE5`KzlYCxxrIs_(7xP6ZhnXyupzfsvx_LVqWOOyx+*I@SI=!!Kei95$ z;8ZUqBpC786mv9`1JhJurim*K{Nz59)p`MmKKUWbUS$A9c>iKe8tNry;w-w zRz8k}1_eHgONDEc?+5d>R@l)MFAQarpGk+vJfT>y3TCJcEQm)9gt9PMA&dMNd^9{> zsi(w~zwOm=x-R2yppfN~7fet^g|{)thSd+|$Gy!->BD>-Wy zdwas4Lfz`l9t5Y`clN}b(XMzg83Wzz2g7|^P8r0OJo(IWm-DGvjeEc`#nsVE>6wqN3`%B5HBTv%RHCb=4|D^iQgF+V7$7C$ ziNc;-ZE7Nhso;JeZc?oCqkBWltzKF}M&hlkvmk@{xxAwCnCxXF4url56=u&;2p=@+ zN*?#fSuzptV{|2F?Z!mh3w5WP2+kROv?iK}FLu&LYN014;@h1N@QoQ{@^?L$Y?=sD z`)nq{lIQT`(ImCeESJe7yg7wY{wCo>zP-w36X*?wjv$OYImO47;ZBJCSmZ#6pR%6| zPS!_o@=#J-hWSv);xb@zudKluqb@gHWDTCj=t|DojWrmAy3?%z=S)Uxu(^{yQVTt? z24{Cdz_uA=^0^*NHm!lFeKu=g$+NP39LdpP=FemWp7pf??po>A!>?pm(a^C8T*YTR zHgP{+{Pf~8x;J|%69Eoy!a`|)gNCcUS6f1H&=`Yp3}6@-xOfMyziex@t$46$VBqXZ zv2`sjzqaJA6~X*{`?lmT9oKNMO^Su`&U?iLXG0vW$s=op8pi9J^_X7i>WbVRC zF5aFSt=30bULKia4o>(XOO#p-Kt`uIdy>)-a{RQY|B>+@> z{tU_ke$)(S?ddZ-1;v6z5v*rp#wBiq51FeOyzME*b$p`f7Q)%nz0VU zLS8eL?^R%%GLzMXKWn)P%#Qz_2-LVvTA?*0&^4bSD+wOC=p}f!y3)x`vBy{JFLM{7 zlbvE8wG^u5WG6!x9oM?zdw#NW6ne%_cCx3rJJ~rjH3^%CgRJ*n95bGLw3FA=#o5mD zwN33r82=EBFup^uJ(7L?&WaQgpW_X;_ zyafumtcQB$@69Z)LgON#8z!B`i`9`#ko1126M8?`4ZTZM4JM9D<}ReSyfdq#__rka zE1i)1Mb5U=qgmf^S8hLfM3u{jzaHr-hQLIOsAo|%$ z(Fgh^JMpx;6ZWH1Ph}KB|0ynORJIF&Dwje?IUje3yAdxj@U}Y?LkH*MhTOE<8I*@Y zfJe%)mU=#Ji@O=Ska;scym05$&&SEhCcGI{aE8yv9b%c1lMl#A;@S?#HGtSI56E2w z(%=W=%J5_!kP~ydI3c&nLb-B8PB0HvIxQN?fJ3AnksEpibC=kDY%%XBkPioi*kdg+g$fFp` zCm3DHS=BYE=k?U#XP|C1#)8(MeMeHv8EwCS$ru~_Z^^Sn6|5YfX3k_ouB?CGnZg>( z`Uvb6gE93EmNj+L(KWFp$|F$6wilHoP~8Y7;Tu43`~v~--FQZg9UlzGsi%;|+k38zKQ zY8E_-X`BO(!uK4Hx&)Pt-89CY<_?cKg##Pnqo-MMsST;Pl&G-_d}^D;r4-fXafXP| zsm#FCa=p7^xoIZLfm3ywDK}76j>|^7XBnsxY?|f^mh#)dWrR?Mr>CJTn&ZZFeJHSO{-BdFoLisWzSI01Nqce!{sgl`<6z`JKBNI~Ky5 z@!^F#ua1RCdltSHsheReWR1i8Cu1U#$Tm!*2t;>@i5&Stn78kObD80>@MK~l<}@O( zkwHgK6pTbL6;>hvNk0olatvW4>0jy2kWFeOp}FC1B3*w5stMO_1&ht8GOCJ0D@GtOO`(Nf>ihetQT#N2qvp_ zrK>RZE>>aoL#pr>joRFlkqUpFQI?!lRpIbWkl6zgc@VOvt1#z{w!1nUTm+2a!T)(z zDo0a(&`B4mfwaxlj#HjL?WEa%ghH;xNH?7QS;w3`SK;hVg|q+FNf%?a)~t`I)i z$+N~aR;8AkB{LbE_om3g-{73j;?35hqL-Hgm?_}^2m43{g0sRnu|3Ga9vH)j?JE0< zjRPJj!R!-Y(}-#|l1Hy%f{uqmmRS^&)w)kgItj^pA|%+?0_CI*n15oVA;Q zvJL7^H$j{?nhA;$k9%F-Ngt_&G#exjfC^APJ|ZedK)DkFf*E9T=)q)A8qHXk`e!p1 zmOR6rgG_SItSpoLSeL>*fBUgce7gV-mlsMUc5P{)O7|yB78->K>rrwYaR6?~1lh;; zcxedvDDPr@wDBL`s5S!f9F|0~B*H9}iP3lZGTL1$#SAXaVE!p)fNQLbF@u+|tm%uw z3}2J}fx+QqV~CnY%fatqp|s_ocFg8P2rN$4Yj9KDSff6{)^m*j7I<)d0Y<_3UJ074 zgqP`6MoRymy?R7@jen9s`Xndpe2?YivB|veRDDEblGi*e&Vm!FIpPx^6ihODF?$ZRkDa2pbe{Rw=?EA}VAI4OHe z?2j$29I-!q&trctg`V-)AA9OL_UG<6-%npYgWLadm7}(LnLNif`ioUKO*b8=drZPl zz*R%x6-e>}`1Gonc=pr@@#UrM+>Z{yfZ|30PHp6rFt8S>;jbljC0?)JIbGhca~d?P z3>T@w6}Ide+wu@}a=uF?qXo_SRHF!6W{09fTa7}kSuL<@$6*J?IM~?c^uFnQ)ZePN z3f1Y04u}Rso}dIjr?9)(OjNL*UUy2RZ0M(7+pBziYUyXSOh<#p8>5Qw78n50a$c{bL6kmHe_<4k4#GZwt~JZRqAK)hI$BmO)W)X@ z;{kBI1i$A8HBfhcE$v7tm;_CMW-5%a3*aK$G3X|6q*5AzT}ES-JrG}ymKUa4^%0pA z%?ETWT2`8xm>h{!5E#o6;I5CL0k2L*d3;da~+ zwItJ$VryhqrCH%Bx?-eMX%tE+t4`}M_yWzTje{ccdsSX`(E4ckWH31bOu@T%i(C^i z1@HeK!NCzduiR=)Hn(ir1j)_e$-QvZe{Hzl7~eD%di*>9s_fN4W4IEu##kF*05+9d6IEzzajP&2qo~v>PhYes z8U&r37>S2x+<}qiBx=ab(Lv3hT&i| z70szpBVT0#mA6_i@X^@EtP<$V#Ar~0A-oqzCtN?dIsfptfroZsdy=adQIW7gVuQD^*}{v_@J5IEe)22^41~5Cy8$ z0{aSez`b>7zN3S+)Ee9f&61(EvG~UV971sA7i3?EiTpV%;v{z!{AosuF}byOk`-nz zZf=&3f!Tq*hpFte@;TvgI5VDrf4+`?zKMTcc_94RiGQL6@aIyzF@RvjhJen1?@$@XxRC&r|qk!3pqZ3I6%QiSXyk z_~#w?#qD?DAN(9{h@Z<1@tZ3lev>7{&E+9(J`XXZ8e+(GDq5y$Fk|VmVg<$l$^_WV zQ_xU}d|Y;F3eN`;1&yB=tykkg!LlA|B*wWHYc(zwt+GM~YxTpN(`ex&x5})G-oR83 zX0%wJLL)gHEh*NkRj!*bl`cGs(r*KWdE@jBFbS~E2jc>&)r3KS4Z;^nmN)k{!GMU= zczQ4Q(^ZYyk}h~f4a_UF0oy*o$~G%t^Kxv6fB;fp_cSI|UFmDZ^A8e@JG0##)1$T-EmE%H=mOj#Ti$ zz0{(G!oNWwrvukd&c!_VdJ2qAu!t9IKlfrZjOcn@)E9er?2{z81o<`6AwFYKhz^ct oJs~KjFH7QNW^a~MYQ^eQ3GLfBni}|)34D8k<}mEl)ada41A$*F3;+NC diff --git a/docs/_build/doctrees/object.doctree b/docs/_build/doctrees/object.doctree index 8b3d30b62179b4375cdb185a4e900c70f4839629..45456f19fe497007482dedf0139a6dbcc2331993 100644 GIT binary patch delta 1160 zcma)4T}V@581DV1Zl-g`<#C&Ho1Urr@oz3O#DXY;G9r?+=pu1CIew%wr(o7f=^{lh zjCX|)hS!3B?J^1_$jFO~h@h^-EW(Q{F_0+wzB5mH(SObzyDR5D^Kk7nlhZa4V}!H^ke&D5Bqb zI@QG!`x%g})QESjtME|aUNQ*iNK3-;>|Pi}t4)R(wQgtvHe#ide3C27*;>JcUb_qH z?1$j>_J1Z=#5sE=StK|wm7>;B3ZGO8EGf{E<@oVOoT<1V6uUk%Iy%Lu2k10Iiaej; zQg^!LLaL98F5;TQ2fud{F`e@{b&!ToP!1`0%~=Fn_{dr47BqWeB>3H#!ELS=93(Hf zDar7HpUq02vrl(`F5ta92S}JLNqAf;gQJ+6Urs7DIByrB66d5FP^+k)+fjF2*pqrC zt~)u$H|D*9O*?QzNcgY3A7}IY_$99r`W5*|Tt33&eK?li1P>GoxXZ%mo-9NZ3lYUa zuWCW3-T>P#XYzdfI-V()gJUi&O!B(!O8ikKaLH8zZ<(!Pbvc%p^!9ROqh3nGez%jo zKl_8NRieg9msKTBN0u~L=8<;zd>$_u z4Fzb|^^Rba>JwP1YYv8+wsYL{d_9rQs&s;Hm61nz91i@8GFUW7MFlezG%09S(4t^g zEVuA12%Vu&S3^fTdOE$G}Ox=Je=I#*cRmW!qG^S^2T6T&W%LfN?%TukH{yfz|KX*Sc1PE{sO)g BOauS` delta 1196 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 Bk7)n^ delta 6431 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 delta 17397 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 delta 83 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 Xp_v7P1^!U%K|jNv@S4Qmp+Ec&B3)OW delta 17306 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 XaHAbUpVcV#XrW|sw))6lVJQ3`_n~F8 diff --git a/docs/_build/doctrees/tools/indexing.doctree b/docs/_build/doctrees/tools/indexing.doctree index 2aededbb03f914c8964dbca67882cebc4e62027d..7067de4ddb4952edaa5611a14c00691cb389043d 100644 GIT binary patch delta 8359 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 g-vs#@dpEX0@A{5FOMlll%{DZLY9qxY8j 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 diff --git a/docs/_build/doctrees/tools/metadata.doctree b/docs/_build/doctrees/tools/metadata.doctree index 2aeec7339eeb036dc82cfeb6c19605dd4450aa84..ca617fecc74e2a1facd41b282f1181957a283f43 100644 GIT binary patch delta 482 zcmX>N`0UQT|x`s9N-!Vp;*EV5HF*kh+;i1mQA zquIOpzD2dOKv8~vNqj+3YFcK+lpaR?DU%~=yo5S>c#Bh$OY%x{<15ngi*l!QY~EI* zz{vP@^Yz+qOpG0y&o@kGWVGI#-lWaMm@)Z6yCG95_vAn|xykD7f|I|tC`c!BGcaUG zXSFc_DVYrB4B3qM3^{M9(xj}E$p)><8C$@b8X=lA+l(2LC&#u)Fs4i{Xpd)H0G6B! zGf{}KZn9OoG!8Qrz-EH9?FMVx0oSHb2XsUaTXBAAQF7{(EF)GRk0mEFFLjEyXlaIa tR`TZH4p&CT%adnzYCvs%3^w8c+z6n}ZC!F4P~TkHyrxSZq~T6?F#rNOorVAa delta 442 zcmcaPgX#PXCYA=)sV*B?mT0idWn^HOJTY8u^C=BmMt(yRGecuDV?ARFb4wEgqsi&| zHk$*rjx#gXZwdZuHVYR=rQ@Nxe10=eG3VQj4Ya=dO7*&>QgegXslqCv~n<)tNx@^WlO`L*X}jrT+iFv~Sz?3fX5+3Uwz}yit*vE4x=Gord(Qo4#v%N} zKi~Q8z2~0u`_B2DbMN=>U-OrSxO!0i8}l>c>QZ~=u&!%hT}S7>zV_gV{Cl31G%Vpn zYkPA~&q(A6`_CEM09PHw+?x#cYzy;($yv>6aH>#BN=`}&Wyn8+>YRF49S-CSd<@B% z^h%~=D{1_)FO)Bvn9%jYRE~vgo#=OCzQQL>sWh-v zG7L2WU{)9WP#ESNxWVXwS626NSq0mC`}s)~jQc#gbWYJnyL?Ynwu-~F7CuCP^ zIUty_)BJ12{a1>66y*NFJoo<E^Vkuwy0lzNaSOQeU#L+V8O1D`6UZt}Cn#Ozw$x830LzIBRRl_~ zqDqadI0pAhud+56Uu%Uw)!KMa4b!zUZ18EJVQn27#D!vhL=88xZGs{FxIK{}?3~aT ziEHqFb(|qVRF0xKq!tYE?=-`nb*bbAS&}R_sli`ZD7{aLbMgdyyv}PnL<5B;Eo!7m zE_l}WvQN>E4g4lE3>q|WYkfPLgsr{<7^B$yv`;I2L3^$8A-LxoWB-dUedo~fAJu|6 zC@6I+G>Obv3V}^oK+Lgd=I3kz4K8F38o`{ANvgpgA+yXw1I!u!j~c=Q4x$d5h0A4U zc%?=Vw?ZS_qagQ9^W5(d?vXhx7s>+pu9iiCsDS4K7LEoH0|_Dy3L?&CH0b8Dl!-h( zLx}SD7iwY+pH}b@Z6*mZ(ZiOMcri9kBbvr=;jh@j0ly$RZkYeX}#Z@$I< zqM>HOCo~Xlmf`X?16zEi%bP zWXV>^aiIhP+np&Mny@C$+q4)X$BN8(3uGx>Y)D%$pQ05#YOhxGsNKpsehl@f0WGDP z^}&gsrt&_m$n+V3G}fY?L#qnW&f?C*7Gs#|&-xRK?J&kEadzxMp0<=X4P!IwXL^BkG;DZP_u9aKd*kE#Hk; zus_v{2_hQCEZUzwN+19%t4Sv;*qjK(f ziGjTbXZO0<+hXj`HBjuL9cUxPP3b@wJM2INiI|}xNP-!s=}okt(~)rFHO61liMz}g zbT!{*??Y8fF?$DnJK?fdVsGKwYSS3*iJE;A?cp88Tw#W9oA7jNO<`k*`6v85emkB) z|0LBp`5s(rEjPYN110mLux#HsK1+csS|VR~xGS(sFmRh5 z#)E!1((yI>E1DOfFiyn{4a+dItO=HMwz6-;2mUMmfzn;nnpf}12I>g>L0pC3eHep> zHsw1QgWX^b7xJlS943`Gf0RC)%FB|eX7(}&S zUla~BL^!Sp95|q2zmkCCQX&p2_XeDB^GZa6hrm{`iiZG(Zf0PO>3TfP6gR4K1VcAe zATXlNGmSC2WE%0Ru^IA;tS{84;Lb0~QuAm{Xu0EBZqj-@a`5n0wzRvmv$wIUJGj5C ze`J_FIs$JTd1Cp{u&F25+Iz6Cqp^Q~XLrZQP-OYhY{r@*o?}07HU#-6zRB^By~ps; zGpsw<+!5>@=nD3X937Eq;n|*${pd)p{22I7+BQ9)A1nI%!RsqN=$0#ArTYOfd?_@IiEC+RU2dFA9z_J4&D3F80& delta 3775 zcma)9dr+0f70)jB4cCtHFrXJMkILo31uqCxuu&nTQq+K9us*5~RBk?m3KvXbf?}E0 z*iaL4$ivz?(u_0hOfpJuW}2kZUst}jAC+UsPz;6 zG?*EvUJWr-m`(RmZDIwRN};oPCOVXFr7tsHmPaDsJsO+^z<;d4k1Oz#^8)Wt;Jlu} zMGq~`ER@^{V|UNR4!xD>6EQbnHWs^aBZ>ygyXeWRe@Tmp4!4%XND~LNG!PYV_3oux z3+w6LVjB(nOytPkB3&llG8a|vOAv{)CMR3Qo5;QLQCS$#`@{OFSf4Xu%!o6QDA`KF zmnS6oeM#ajt@q{Hw*hY2Xf)ABb+PoCZ>2L1n&c|MyLvB*ge#Mxa@%Ax5DMt$xt$_F zDS1t@8;Tqn4_fVASm6S~)!0Zyhc{u<}?7%0=0q!udxD$3@a@K)~vNW2=w8~@9q|r+?R@r5uiLxwtKxTQ@6a{6`Of8F$Qz87y!>3oVKn3oMEmu@(+`PR5V0kq4Op3mI`Rgp_9iYTV%n zG&TOserIHf+cdQLn5?uYj~G}~(BU-+vcjTpcWB&gz-3}AvnXQJ&kLVT0G|c$S)k;w zm`QtC#zvI`<7MfJ88_jPVurXv<7HlXSt~${(HXyE7b#-YW7{+_cRYa~iahaPrUin9eG#XwK9W%l< zW?(MS`NzJ8#ocv@@&k)vfZ58!(}vTkO2b><$a7x80?mN)7G^+VNUU2XWSSM*YjX2^ zdbwd2gGZYs^Lr`%zOqFYVKje%u^i@-t1wW&CNt7(erPal@SEvzN$9xd&RVQyCC2Mn ziy-u#XiFPuZLnT$SJ)^+wk_HMhf?*Xd|KvlNbgFs{e}O%uutf{4t?^0&9Zjw+*iQR-E+4$Nby^ROE#g%Anrdt1R$G{5qKpe{kIrbBf}vcv}R+1>!gv~h|i>Q*{y(9yhG#q;?}`ugS? z`7>BYlCZ=mz)r#c`dTOrhcQ z80zlyd2aIBx#T#7{sZKIAwD1$r~@px4nc&k|BsZ-nWu*wvni&0)vi2*BdK=f2n#q; z!ab&Ev0YO|+7(q++2`X4EU_mn;0X&4aUCq`zU#v~isy;n&K|#yn>T8cmIp zyvp@3?TlYQHM`p6ZGdsz`AKBPO*_4`*XulaACj+VG5vLKYJ%Mnj>LhMip1gINFFgO z8#Gn^NXW5glMory-C8Q#bi8RwmO5rbD&{6%x&`!kph`Xw(LWy6zwuP9Y>w!glwKA% za2Y$@3_25jzC(rocOy%>9SC0}QCnNCy$@5SjpGg#eS5RdnGcPQ-o=Y%qW`%0IXM8F ze5bKAGUFs2+neol-G>tn{$1AUV|))S75sZM!NUZCr&n99i;q?8V|1={Onw%LJF7>GV-f6YIz~^MPmbvrM^%iO(JIEgXcgnH+6tZ5ut>*v5iw>` zMth4WW(Xg3M_cGZdxu;Rjl>u0l@fPBCCs>tYjh>}rf6dI3fUN~5{(5Xns{DKUB1C8 zpJgb%3J&s$x!InF{sY+#Bb;L_kYg;6?JUAMR?o&b$G#nnG#BqE;IkT-1%O9qfqw&F zF5P|Pem`EPnVwx)mDzAg$z8{2+ZyYmnW%Z^-V8_nix8 zx9FpW11Sl8@JS_iQcRc?Nim!fkJ4Wb)F)&@sfInX!yXJ5hmJhAPSE7@>*A_JuQRy2 zv7@!KW#=<{zSG{)UnN4NU2Y+^hqfR5Ldq&ZPaOXIkRKLu`4jB5w>Grw?s#_J?qGjc zzkz|H!9Z$PzekM+VgjoI6~_1RL)nW@CLYQ;_}s;B6@Gb)9e6V0d24)tcM={tMhVI{ dZXV+V=f8n+V - + @@ -720,7 +720,7 @@

Related Topics

- + diff --git a/docs/_build/html/_modules/gen3/file.html b/docs/_build/html/_modules/gen3/file.html index e7a6c5036..3a7945131 100644 --- a/docs/_build/html/_modules/gen3/file.html +++ b/docs/_build/html/_modules/gen3/file.html @@ -8,7 +8,7 @@ - + @@ -359,7 +359,7 @@

Related Topics

- + diff --git a/docs/_build/html/_modules/gen3/index.html b/docs/_build/html/_modules/gen3/index.html index 2ac12ffd6..55c89c086 100644 --- a/docs/_build/html/_modules/gen3/index.html +++ b/docs/_build/html/_modules/gen3/index.html @@ -8,7 +8,7 @@ - + @@ -1100,7 +1100,7 @@

Related Topics

- + diff --git a/docs/_build/html/_modules/gen3/jobs.html b/docs/_build/html/_modules/gen3/jobs.html index 4584edd42..b3f266ef7 100644 --- a/docs/_build/html/_modules/gen3/jobs.html +++ b/docs/_build/html/_modules/gen3/jobs.html @@ -8,7 +8,7 @@ - + @@ -331,7 +331,7 @@

Related Topics

- + diff --git a/docs/_build/html/_modules/gen3/metadata.html b/docs/_build/html/_modules/gen3/metadata.html index 733e14789..0dc385551 100644 --- a/docs/_build/html/_modules/gen3/metadata.html +++ b/docs/_build/html/_modules/gen3/metadata.html @@ -8,7 +8,7 @@ - + @@ -1118,7 +1118,7 @@

Related Topics

- + diff --git a/docs/_build/html/_modules/gen3/object.html b/docs/_build/html/_modules/gen3/object.html index a531e5a3d..ec15a5180 100644 --- a/docs/_build/html/_modules/gen3/object.html +++ b/docs/_build/html/_modules/gen3/object.html @@ -8,7 +8,7 @@ - + @@ -150,7 +150,7 @@

Related Topics

- + diff --git a/docs/_build/html/_modules/gen3/query.html b/docs/_build/html/_modules/gen3/query.html index 45c3491f8..090d4c48f 100644 --- a/docs/_build/html/_modules/gen3/query.html +++ b/docs/_build/html/_modules/gen3/query.html @@ -8,7 +8,7 @@ - + @@ -306,7 +306,7 @@

Related Topics

- + diff --git a/docs/_build/html/_modules/gen3/submission.html b/docs/_build/html/_modules/gen3/submission.html index 7f760de51..982c67c80 100644 --- a/docs/_build/html/_modules/gen3/submission.html +++ b/docs/_build/html/_modules/gen3/submission.html @@ -8,7 +8,7 @@ - + @@ -857,7 +857,7 @@

Related Topics

- + diff --git a/docs/_build/html/_modules/gen3/tools/download/drs_download.html b/docs/_build/html/_modules/gen3/tools/download/drs_download.html index a38140eb2..7fe0f1c3a 100644 --- a/docs/_build/html/_modules/gen3/tools/download/drs_download.html +++ b/docs/_build/html/_modules/gen3/tools/download/drs_download.html @@ -8,7 +8,7 @@ - + @@ -1527,7 +1527,7 @@

Related Topics

- + diff --git a/docs/_build/html/_modules/gen3/tools/indexing/download_manifest.html b/docs/_build/html/_modules/gen3/tools/indexing/download_manifest.html index 0804272be..5d84308c7 100644 --- a/docs/_build/html/_modules/gen3/tools/indexing/download_manifest.html +++ b/docs/_build/html/_modules/gen3/tools/indexing/download_manifest.html @@ -8,7 +8,7 @@ - + @@ -607,7 +607,7 @@

Related Topics

- + diff --git a/docs/_build/html/_modules/gen3/tools/indexing/index_manifest.html b/docs/_build/html/_modules/gen3/tools/indexing/index_manifest.html index 95d5e273a..a43fad6bf 100644 --- a/docs/_build/html/_modules/gen3/tools/indexing/index_manifest.html +++ b/docs/_build/html/_modules/gen3/tools/indexing/index_manifest.html @@ -8,7 +8,7 @@ - + @@ -715,7 +715,7 @@

Related Topics

- + diff --git a/docs/_build/html/_modules/gen3/tools/indexing/verify_manifest.html b/docs/_build/html/_modules/gen3/tools/indexing/verify_manifest.html index e18deccb3..04f9b5602 100644 --- a/docs/_build/html/_modules/gen3/tools/indexing/verify_manifest.html +++ b/docs/_build/html/_modules/gen3/tools/indexing/verify_manifest.html @@ -8,7 +8,7 @@ - + @@ -513,7 +513,7 @@

Related Topics

- + diff --git a/docs/_build/html/_modules/gen3/tools/metadata/ingest_manifest.html b/docs/_build/html/_modules/gen3/tools/metadata/ingest_manifest.html index 4cf4e71d9..b4f1bc9fd 100644 --- a/docs/_build/html/_modules/gen3/tools/metadata/ingest_manifest.html +++ b/docs/_build/html/_modules/gen3/tools/metadata/ingest_manifest.html @@ -8,7 +8,7 @@ - + @@ -617,7 +617,7 @@

Related Topics

- + diff --git a/docs/_build/html/_modules/gen3/wss.html b/docs/_build/html/_modules/gen3/wss.html index deb8d058f..815b18805 100644 --- a/docs/_build/html/_modules/gen3/wss.html +++ b/docs/_build/html/_modules/gen3/wss.html @@ -8,7 +8,7 @@ - + @@ -289,7 +289,7 @@

Related Topics

- + diff --git a/docs/_build/html/_modules/index.html b/docs/_build/html/_modules/index.html index 233fbb291..6ddccd2a7 100644 --- a/docs/_build/html/_modules/index.html +++ b/docs/_build/html/_modules/index.html @@ -8,7 +8,7 @@ - + @@ -89,7 +89,7 @@

Related Topics

- + diff --git a/docs/_build/html/_static/basic.css b/docs/_build/html/_static/basic.css index 4157edf27..e5179b7a9 100644 --- a/docs/_build/html/_static/basic.css +++ b/docs/_build/html/_static/basic.css @@ -4,7 +4,7 @@ * * Sphinx stylesheet -- basic theme. * - * :copyright: Copyright 2007-2023 by the Sphinx team, see AUTHORS. + * :copyright: Copyright 2007-2024 by the Sphinx team, see AUTHORS. * :license: BSD, see LICENSE for details. * */ diff --git a/docs/_build/html/_static/doctools.js b/docs/_build/html/_static/doctools.js index d06a71d75..4d67807d1 100644 --- a/docs/_build/html/_static/doctools.js +++ b/docs/_build/html/_static/doctools.js @@ -4,7 +4,7 @@ * * Base JavaScript utilities for all Sphinx HTML documentation. * - * :copyright: Copyright 2007-2023 by the Sphinx team, see AUTHORS. + * :copyright: Copyright 2007-2024 by the Sphinx team, see AUTHORS. * :license: BSD, see LICENSE for details. * */ diff --git a/docs/_build/html/_static/language_data.js b/docs/_build/html/_static/language_data.js index 250f5665f..367b8ed81 100644 --- a/docs/_build/html/_static/language_data.js +++ b/docs/_build/html/_static/language_data.js @@ -5,7 +5,7 @@ * This script contains the language-specific data used by searchtools.js, * namely the list of stopwords, stemmer, scorer and splitter. * - * :copyright: Copyright 2007-2023 by the Sphinx team, see AUTHORS. + * :copyright: Copyright 2007-2024 by the Sphinx team, see AUTHORS. * :license: BSD, see LICENSE for details. * */ @@ -13,7 +13,7 @@ var stopwords = ["a", "and", "are", "as", "at", "be", "but", "by", "for", "if", "in", "into", "is", "it", "near", "no", "not", "of", "on", "or", "such", "that", "the", "their", "then", "there", "these", "they", "this", "to", "was", "will", "with"]; -/* Non-minified version is copied as a separate JS file, is available */ +/* Non-minified version is copied as a separate JS file, if available */ /** * Porter Stemmer diff --git a/docs/_build/html/_static/searchtools.js b/docs/_build/html/_static/searchtools.js index 7918c3fab..92da3f8b2 100644 --- a/docs/_build/html/_static/searchtools.js +++ b/docs/_build/html/_static/searchtools.js @@ -4,7 +4,7 @@ * * Sphinx JavaScript utilities for the full-text search. * - * :copyright: Copyright 2007-2023 by the Sphinx team, see AUTHORS. + * :copyright: Copyright 2007-2024 by the Sphinx team, see AUTHORS. * :license: BSD, see LICENSE for details. * */ @@ -99,7 +99,7 @@ const _displayItem = (item, searchTerms, highlightTerms) => { .then((data) => { if (data) listItem.appendChild( - Search.makeSearchSummary(data, searchTerms) + Search.makeSearchSummary(data, searchTerms, anchor) ); // highlight search terms in the summary if (SPHINX_HIGHLIGHT_ENABLED) // set in sphinx_highlight.js @@ -116,8 +116,8 @@ const _finishSearch = (resultCount) => { ); else Search.status.innerText = _( - `Search finished, found ${resultCount} page(s) matching the search query.` - ); + "Search finished, found ${resultCount} page(s) matching the search query." + ).replace('${resultCount}', resultCount); }; const _displayNextItem = ( results, @@ -137,6 +137,22 @@ const _displayNextItem = ( // search finished, update title and status message else _finishSearch(resultCount); }; +// Helper function used by query() to order search results. +// Each input is an array of [docname, title, anchor, descr, score, filename]. +// Order the results by score (in opposite order of appearance, since the +// `_displayNextItem` function uses pop() to retrieve items) and then alphabetically. +const _orderResultsByScoreThenName = (a, b) => { + const leftScore = a[4]; + const rightScore = b[4]; + if (leftScore === rightScore) { + // same score: sort alphabetically + const leftTitle = a[1].toLowerCase(); + const rightTitle = b[1].toLowerCase(); + if (leftTitle === rightTitle) return 0; + return leftTitle > rightTitle ? -1 : 1; // inverted is intentional + } + return leftScore > rightScore ? 1 : -1; +}; /** * Default splitQuery function. Can be overridden in ``sphinx.search`` with a @@ -160,13 +176,26 @@ const Search = { _queued_query: null, _pulse_status: -1, - htmlToText: (htmlString) => { + htmlToText: (htmlString, anchor) => { const htmlElement = new DOMParser().parseFromString(htmlString, 'text/html'); - htmlElement.querySelectorAll(".headerlink").forEach((el) => { el.remove() }); + for (const removalQuery of [".headerlinks", "script", "style"]) { + htmlElement.querySelectorAll(removalQuery).forEach((el) => { el.remove() }); + } + if (anchor) { + const anchorContent = htmlElement.querySelector(`[role="main"] ${anchor}`); + if (anchorContent) return anchorContent.textContent; + + console.warn( + `Anchored content block not found. Sphinx search tries to obtain it via DOM query '[role=main] ${anchor}'. Check your theme or template.` + ); + } + + // if anchor not specified or not found, fall back to main content const docContent = htmlElement.querySelector('[role="main"]'); - if (docContent !== undefined) return docContent.textContent; + if (docContent) return docContent.textContent; + console.warn( - "Content block not found. Sphinx search tries to obtain it via '[role=main]'. Could you check your theme or template." + "Content block not found. Sphinx search tries to obtain it via DOM query '[role=main]'. Check your theme or template." ); return ""; }, @@ -239,16 +268,7 @@ const Search = { else Search.deferQuery(query); }, - /** - * execute search (requires search index to be loaded) - */ - query: (query) => { - const filenames = Search._index.filenames; - const docNames = Search._index.docnames; - const titles = Search._index.titles; - const allTitles = Search._index.alltitles; - const indexEntries = Search._index.indexentries; - + _parseQuery: (query) => { // stem the search terms and add them to the correct list const stemmer = new Stemmer(); const searchTerms = new Set(); @@ -284,16 +304,32 @@ const Search = { // console.info("required: ", [...searchTerms]); // console.info("excluded: ", [...excludedTerms]); - // array of [docname, title, anchor, descr, score, filename] - let results = []; + return [query, searchTerms, excludedTerms, highlightTerms, objectTerms]; + }, + + /** + * execute search (requires search index to be loaded) + */ + _performSearch: (query, searchTerms, excludedTerms, highlightTerms, objectTerms) => { + const filenames = Search._index.filenames; + const docNames = Search._index.docnames; + const titles = Search._index.titles; + const allTitles = Search._index.alltitles; + const indexEntries = Search._index.indexentries; + + // Collect multiple result groups to be sorted separately and then ordered. + // Each is an array of [docname, title, anchor, descr, score, filename]. + const normalResults = []; + const nonMainIndexResults = []; + _removeChildren(document.getElementById("search-progress")); - const queryLower = query.toLowerCase(); + const queryLower = query.toLowerCase().trim(); for (const [title, foundTitles] of Object.entries(allTitles)) { - if (title.toLowerCase().includes(queryLower) && (queryLower.length >= title.length/2)) { + if (title.toLowerCase().trim().includes(queryLower) && (queryLower.length >= title.length/2)) { for (const [file, id] of foundTitles) { let score = Math.round(100 * queryLower.length / title.length) - results.push([ + normalResults.push([ docNames[file], titles[file] !== title ? `${titles[file]} > ${title}` : title, id !== null ? "#" + id : "", @@ -308,46 +344,47 @@ const Search = { // search for explicit entries in index directives for (const [entry, foundEntries] of Object.entries(indexEntries)) { if (entry.includes(queryLower) && (queryLower.length >= entry.length/2)) { - for (const [file, id] of foundEntries) { - let score = Math.round(100 * queryLower.length / entry.length) - results.push([ + for (const [file, id, isMain] of foundEntries) { + const score = Math.round(100 * queryLower.length / entry.length); + const result = [ docNames[file], titles[file], id ? "#" + id : "", null, score, filenames[file], - ]); + ]; + if (isMain) { + normalResults.push(result); + } else { + nonMainIndexResults.push(result); + } } } } // lookup as object objectTerms.forEach((term) => - results.push(...Search.performObjectSearch(term, objectTerms)) + normalResults.push(...Search.performObjectSearch(term, objectTerms)) ); // lookup as search terms in fulltext - results.push(...Search.performTermsSearch(searchTerms, excludedTerms)); + normalResults.push(...Search.performTermsSearch(searchTerms, excludedTerms)); // let the scorer override scores with a custom scoring function - if (Scorer.score) results.forEach((item) => (item[4] = Scorer.score(item))); - - // now sort the results by score (in opposite order of appearance, since the - // display function below uses pop() to retrieve items) and then - // alphabetically - results.sort((a, b) => { - const leftScore = a[4]; - const rightScore = b[4]; - if (leftScore === rightScore) { - // same score: sort alphabetically - const leftTitle = a[1].toLowerCase(); - const rightTitle = b[1].toLowerCase(); - if (leftTitle === rightTitle) return 0; - return leftTitle > rightTitle ? -1 : 1; // inverted is intentional - } - return leftScore > rightScore ? 1 : -1; - }); + if (Scorer.score) { + normalResults.forEach((item) => (item[4] = Scorer.score(item))); + nonMainIndexResults.forEach((item) => (item[4] = Scorer.score(item))); + } + + // Sort each group of results by score and then alphabetically by name. + normalResults.sort(_orderResultsByScoreThenName); + nonMainIndexResults.sort(_orderResultsByScoreThenName); + + // Combine the result groups in (reverse) order. + // Non-main index entries are typically arbitrary cross-references, + // so display them after other results. + let results = [...nonMainIndexResults, ...normalResults]; // remove duplicate search results // note the reversing of results, so that in the case of duplicates, the highest-scoring entry is kept @@ -361,7 +398,12 @@ const Search = { return acc; }, []); - results = results.reverse(); + return results.reverse(); + }, + + query: (query) => { + const [searchQuery, searchTerms, excludedTerms, highlightTerms, objectTerms] = Search._parseQuery(query); + const results = Search._performSearch(searchQuery, searchTerms, excludedTerms, highlightTerms, objectTerms); // for debugging //Search.lastresults = results.slice(); // a copy @@ -466,14 +508,18 @@ const Search = { // add support for partial matches if (word.length > 2) { const escapedWord = _escapeRegExp(word); - Object.keys(terms).forEach((term) => { - if (term.match(escapedWord) && !terms[word]) - arr.push({ files: terms[term], score: Scorer.partialTerm }); - }); - Object.keys(titleTerms).forEach((term) => { - if (term.match(escapedWord) && !titleTerms[word]) - arr.push({ files: titleTerms[word], score: Scorer.partialTitle }); - }); + if (!terms.hasOwnProperty(word)) { + Object.keys(terms).forEach((term) => { + if (term.match(escapedWord)) + arr.push({ files: terms[term], score: Scorer.partialTerm }); + }); + } + if (!titleTerms.hasOwnProperty(word)) { + Object.keys(titleTerms).forEach((term) => { + if (term.match(escapedWord)) + arr.push({ files: titleTerms[term], score: Scorer.partialTitle }); + }); + } } // no match but word was a required one @@ -496,9 +542,8 @@ const Search = { // create the mapping files.forEach((file) => { - if (fileMap.has(file) && fileMap.get(file).indexOf(word) === -1) - fileMap.get(file).push(word); - else fileMap.set(file, [word]); + if (!fileMap.has(file)) fileMap.set(file, [word]); + else if (fileMap.get(file).indexOf(word) === -1) fileMap.get(file).push(word); }); }); @@ -549,8 +594,8 @@ const Search = { * search summary for a given text. keywords is a list * of stemmed words. */ - makeSearchSummary: (htmlText, keywords) => { - const text = Search.htmlToText(htmlText); + makeSearchSummary: (htmlText, keywords, anchor) => { + const text = Search.htmlToText(htmlText, anchor); if (text === "") return null; const textLower = text.toLowerCase(); diff --git a/docs/_build/html/auth.html b/docs/_build/html/auth.html index 26971e2c5..a95a7d956 100644 --- a/docs/_build/html/auth.html +++ b/docs/_build/html/auth.html @@ -9,7 +9,7 @@ - + @@ -188,7 +188,7 @@

Related Topics

- + diff --git a/docs/_build/html/file.html b/docs/_build/html/file.html index f7927b4ae..98b162de3 100644 --- a/docs/_build/html/file.html +++ b/docs/_build/html/file.html @@ -9,7 +9,7 @@ - + @@ -237,7 +237,7 @@

Related Topics

- + diff --git a/docs/_build/html/genindex.html b/docs/_build/html/genindex.html index 5b481505e..d7372298c 100644 --- a/docs/_build/html/genindex.html +++ b/docs/_build/html/genindex.html @@ -8,7 +8,7 @@ - + @@ -678,7 +678,7 @@

Related Topics

- + diff --git a/docs/_build/html/index.html b/docs/_build/html/index.html index 016cb7fc6..36787eb40 100644 --- a/docs/_build/html/index.html +++ b/docs/_build/html/index.html @@ -9,7 +9,7 @@ - + @@ -347,7 +347,7 @@

Related Topics

- + diff --git a/docs/_build/html/indexing.html b/docs/_build/html/indexing.html index 0db7bc49a..1df22043b 100644 --- a/docs/_build/html/indexing.html +++ b/docs/_build/html/indexing.html @@ -9,7 +9,7 @@ - + @@ -206,10 +206,10 @@

Gen3 Index Class
Parameters:
    -
  • format (json - json in the) –

  • +
  • format (json - json in the)

  • { – ‘uploader’: type(string) ‘file_name’: type(string) (optional*)

  • -
  • }

  • +
  • }

@@ -307,7 +307,7 @@

Gen3 Index Class

Parameters:
    -
  • delete (guid -- GUID of the object to) –

  • -
  • True (delete_file_locations -- if) –

  • -
  • location (removes the object from existing bucket) –

  • +
  • delete (guid -- GUID of the object to)

  • +
  • True (delete_file_locations -- if)

  • +
  • location (removes the object from existing bucket)

Returns:
@@ -127,7 +127,7 @@

Related Topics

- + diff --git a/docs/_build/html/py-modindex.html b/docs/_build/html/py-modindex.html index 78808627d..30c6e7322 100644 --- a/docs/_build/html/py-modindex.html +++ b/docs/_build/html/py-modindex.html @@ -8,7 +8,7 @@ - + @@ -125,7 +125,7 @@

Related Topics

- + diff --git a/docs/_build/html/query.html b/docs/_build/html/query.html index 2946ab0c5..9acf1a925 100644 --- a/docs/_build/html/query.html +++ b/docs/_build/html/query.html @@ -9,7 +9,7 @@ - + @@ -212,7 +212,7 @@

Related Topics

- + diff --git a/docs/_build/html/search.html b/docs/_build/html/search.html index d78a97984..5b922a554 100644 --- a/docs/_build/html/search.html +++ b/docs/_build/html/search.html @@ -9,14 +9,15 @@ - + - - + + + @@ -60,10 +61,7 @@

Search

- -
- -
+
diff --git a/docs/_build/html/searchindex.js b/docs/_build/html/searchindex.js index e4b41225c..e593ce3f0 100644 --- a/docs/_build/html/searchindex.js +++ b/docs/_build/html/searchindex.js @@ -1 +1 @@ -Search.setIndex({"docnames": ["auth", "file", "index", "indexing", "jobs", "metadata", "object", "query", "submission", "tools", "tools/drs_pull", "tools/indexing", "tools/metadata", "wss"], "filenames": ["auth.rst", "file.rst", "index.rst", "indexing.rst", "jobs.rst", "metadata.rst", "object.rst", "query.rst", "submission.rst", "tools.rst", "tools/drs_pull.rst", "tools/indexing.rst", "tools/metadata.rst", "wss.rst"], "titles": ["Gen3 Auth Helper", "Gen3 File Class", "Welcome to Gen3 SDK\u2019s documentation!", "Gen3 Index Class", "Gen3 Jobs Class", "Gen3 Metadata Class", "Gen3 Object Class", "Gen3 Query Class", "Gen3 Submission Class", "Gen3 Tools", "DRS Download Tools", "Indexing Tools", "Metadata Tools", "Gen3 Workspace Storage"], "terms": {"class": [0, 2, 10, 11, 13], "gen3auth": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "endpoint": [0, 1, 2, 3, 4, 5, 7, 8, 13], "none": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "refresh_fil": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "refresh_token": 0, "idp": 0, "client_credenti": 0, "client_scop": 0, "sourc": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "base": [0, 1, 3, 4, 5, 6, 7, 8, 9, 11, 13], "authbas": 0, "us": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "request": [0, 1, 3, 5, 8, 11, 12], "implement": 0, "order": [0, 8], "support": [0, 1, 5, 8, 11], "jwt": 0, "authent": 0, "gener": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 13], "access": [0, 1, 3, 7, 10], "token": [0, 10], "from": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13], "provid": [0, 1, 3, 5, 7, 8, 12], "refresh": [0, 10], "file": [0, 2, 3, 4, 8, 9, 10, 11, 12, 13], "string": [0, 3, 5, 11, 13], "automat": 0, "when": [0, 3, 7, 10, 12], "thei": [0, 10], "expir": [0, 1], "paramet": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "str": [0, 1, 3, 4, 5, 7, 8, 10, 11, 12], "opt": 0, "The": [0, 1, 2, 3, 5, 8, 10, 11], "contain": [0, 2, 5, 8, 9, 10, 11, 12], "download": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 13], "json": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "web": 0, "option": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11], "work": [0, 10], "workspac": [0, 2], "default": [0, 1, 3, 7, 8, 11, 12], "env": 0, "gen3_api_kei": 0, "credenti": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "set": [0, 1, 5, 10], "includ": [0, 3], "search": [0, 2, 3], "path": [0, 1, 5, 10, 11, 13], "valu": [0, 1, 3, 5, 7, 10, 11], "doe": [0, 12], "interpret": 0, "wt": [0, 10], "an": [0, 3, 6, 8, 10, 11], "accesstoken": 0, "If": [0, 1, 7, 11, 12], "can": [0, 3, 4, 8, 11, 12], "specifi": [0, 1, 3, 11, 13], "local": [0, 13], "indic": [0, 11], "environ": 0, "fenc": [0, 1], "tupl": [0, 3, 11, 12], "client_id": 0, "client_secret": 0, "oidc": 0, "client": [0, 3], "ha": [0, 11], "grant": 0, "allow": [0, 6, 8, 10, 11, 12], "obtain": [0, 10], "space": [0, 11], "separ": [0, 11], "list": [0, 1, 3, 4, 5, 7, 8, 10, 11, 13], "scope": [0, 1], "user": [0, 10, 12], "data": [0, 1, 3, 5, 7, 8, 10, 11], "openid": 0, "exampl": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "thi": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "point": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "sandbox": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "common": [0, 1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13], "while": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "profil": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "page": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 13], "instal": [0, 2, 11], "crdc": 0, "some": [0, 2], "arbitrari": 0, "kei": [0, 3, 5, 13], "variabl": [0, 7, 8], "rather": 0, "than": [0, 5], "pass": [0, 7, 8, 10], "argument": [0, 13], "constructor": 0, "id": [0, 1, 3, 5, 10, 11], "secret": 0, "note": [0, 3, 11, 12], "should": [0, 8, 11], "never": 0, "hardcod": 0, "http": [0, 7, 11, 12], "datacommon": 0, "o": 0, "gen3_oidc_client_creds_secret": 0, "initi": [0, 10], "follow": [0, 11], "curl": [0, 2], "given": [0, 3, 4, 5, 8, 10, 12, 13], "ex": [0, 11, 12], "return": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11], "respons": [0, 1, 3, 4, 5], "under": [0, 8, 13], "index": [0, 2, 5, 9], "authz": [0, 1, 2, 3, 9, 10, 11], "map": [0, 11], "get": [0, 1, 2, 3, 4, 5, 8, 10, 11, 12, 13], "post": [0, 11], "put": 0, "delet": [0, 1, 2, 3, 5, 6, 8, 10, 11], "i": [0, 1, 2, 3, 4, 5, 8, 10, 11, 12], "els": [0, 12], "filenam": [0, 8, 10, 11, 12], "get_access_token": [0, 2], "auto": [0, 2], "within": [0, 2, 9], "5": [0, 5], "minut": 0, "get_access_token_from_wt": [0, 2], "try": 0, "fetch": 0, "namespac": [0, 12], "refresh_access_token": [0, 2], "new": [0, 3], "gen3fil": [1, 2], "auth_provid": [1, 2, 3, 4, 5, 6, 7, 8, 13], "object": [1, 2, 3, 4, 5, 7, 8, 9, 10, 11, 13], "For": [1, 5, 6, 7, 8, 9, 11], "interact": [1, 3, 4, 5, 6, 8, 13], "manag": [1, 5, 10], "featur": [1, 6], "A": [1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "servic": [1, 3, 4, 5, 6, 8, 11, 12, 13], "presign": 1, "url": [1, 2, 3, 9, 10, 11, 12, 13], "right": 1, "now": [1, 8], "instanc": [1, 3, 6, 7, 8, 9, 10], "auth": [1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "delete_fil": [1, 2], "guid": [1, 2, 3, 5, 6, 9, 11, 12], "method": [1, 7, 10], "deprec": 1, "delete_file_loc": [1, 2, 6], "instead": [1, 7, 11], "all": [1, 3, 4, 5, 6, 7, 8, 10, 11, 12], "locat": [1, 6], "store": [1, 3, 10], "remov": [1, 6, 11, 13], "its": [1, 3], "record": [1, 3, 5, 7, 8, 11, 12], "indexd": [1, 3, 6, 10, 11, 12], "uuid": [1, 3, 8], "text": [1, 7, 8], "result": [1, 8, 10, 11], "type": [1, 3, 4, 5, 7, 8, 10, 11, 12], "download_singl": [1, 2], "object_id": [1, 2, 9, 10], "singl": [1, 5, 8], "": [1, 4, 8, 10, 11], "uniqu": [1, 5], "get_presigned_url": [1, 2], "protocol": 1, "retriev": [1, 8, 10, 12], "give": 1, "limit": [1, 3, 5, 12], "time": [1, 3, 8, 10, 11], "pick": 1, "avail": [1, 2, 10, 11], "queri": [1, 2, 3, 5, 8, 11, 12], "upload_fil": [1, 2], "file_nam": [1, 2, 3, 9, 10, 11], "expires_in": 1, "bucket": [1, 6], "upload": [1, 2, 3, 8, 13], "author": 1, "storag": [1, 2, 6], "s3": [1, 10, 11], "az": 1, "isn": 1, "t": [1, 5, 11], "int": [1, 3, 5, 7, 8, 10, 11, 12], "amount": [1, 9], "second": [1, 4], "sign": 1, "datetim": [1, 3, 10], "utcnow": 1, "Be": 1, "sure": 1, "posit": [1, 7], "integ": [1, 3, 8], "also": 1, "treat": [1, 5], "max_presigned_url_ttl": 1, "configur": 1, "must": [1, 5], "allowed_data_upload_bucket": 1, "data_upload_bucket": 1, "represent": [1, 3], "document": [1, 3], "upload_file_to_guid": [1, 2], "exist": [1, 3, 5, 6, 9, 12], "readm": 2, "python": [2, 9, 11], "github": [2, 7], "repo": 2, "setup": 2, "inform": [2, 3, 10], "along": 2, "quickstart": 2, "script": 2, "more": [2, 5, 7, 9, 10], "detail": [2, 7, 10], "about": [2, 3], "variou": 2, "function": [2, 3, 4, 5, 9, 10, 11, 12], "mostli": 2, "docstr": 2, "code": [2, 8], "helper": 2, "gen3index": [2, 3], "async_create_record": [2, 3], "async_get_record": [2, 3], "async_get_records_from_checksum": [2, 3], "async_get_records_on_pag": [2, 3], "async_get_with_param": [2, 3], "async_query_url": [2, 3], "async_update_record": [2, 3], "create_blank": [2, 3], "create_new_vers": [2, 3], "create_record": [2, 3], "delete_record": [2, 3, 8], "get_all_record": [2, 3], "get_guids_prefix": [2, 3], "get_latest_vers": [2, 3], "get_record": [2, 3], "get_record_doc": [2, 3], "get_records_on_pag": [2, 3], "get_stat": [2, 3], "get_url": [2, 3], "get_valid_guid": [2, 3], "get_vers": [2, 3, 4, 5], "get_with_param": [2, 3], "is_healthi": [2, 3, 4, 5], "query_url": [2, 3], "update_blank": [2, 3], "update_record": [2, 3], "job": 2, "gen3job": [2, 4, 10], "async_run_job_and_wait": [2, 4], "create_job": [2, 4], "get_output": [2, 4], "get_statu": [2, 4], "list_job": [2, 4], "metadata": [2, 3, 6, 9, 11], "gen3metadata": [2, 5], "async_cr": [2, 5], "async_create_alias": [2, 5], "async_delete_alia": [2, 5], "async_delete_alias": [2, 5], "async_get": [2, 5], "async_get_alias": [2, 5], "async_upd": [2, 5], "async_update_alias": [2, 5], "batch_creat": [2, 5], "creat": [2, 3, 4, 5, 6, 8, 10, 11], "create_alias": [2, 5], "create_index_key_path": [2, 5], "delete_alia": [2, 5], "delete_alias": [2, 5], "delete_index_key_path": [2, 5], "get_alias": [2, 5], "get_index_key_path": [2, 5], "updat": [2, 3, 5, 10, 11], "update_alias": [2, 5], "gen3object": [2, 6], "delete_object": [2, 6], "gen3queri": [2, 7], "graphql_queri": [2, 7], "raw_data_download": [2, 7], "submiss": 2, "gen3submiss": [2, 8], "create_program": [2, 8], "create_project": [2, 8], "delete_nod": [2, 8], "delete_program": [2, 8], "delete_project": [2, 8], "export_nod": [2, 8], "export_record": [2, 8], "get_dictionary_al": [2, 8], "get_dictionary_nod": [2, 8], "get_graphql_schema": [2, 8], "get_program": [2, 8], "get_project_dictionari": [2, 8], "get_project_manifest": [2, 8], "get_project": [2, 8], "open_project": [2, 8], "submit_fil": [2, 8], "submit_record": [2, 8], "tool": 2, "dr": [2, 9], "downloadmanag": [2, 9, 10], "cache_hosts_wts_token": [2, 9, 10], "get_fresh_token": [2, 9, 10], "resolve_object": [2, 9, 10], "user_access": [2, 9, 10], "downloadstatu": [2, 9, 10], "statu": [2, 4, 9, 10], "start_tim": [2, 9, 10], "end_tim": [2, 9, 10], "object_typ": [2, 9, 10], "hostnam": [2, 9, 10], "file_s": [2, 9, 10, 11], "updated_tim": [2, 9, 10], "created_tim": [2, 9, 10], "access_method": [2, 9, 10], "children": [2, 9, 10], "_manag": [2, 9, 10], "pprint": [2, 9, 10], "manifest": [2, 8, 9, 10, 11, 12], "md5sum": [2, 9, 10], "commons_url": [2, 9, 10, 11, 12], "create_object_list": [2, 9, 10], "load": [2, 9, 10], "load_manifest": [2, 9, 10], "download_drs_object": [], "download_files_in_drs_manifest": [2, 9, 10], "list_access_in_drs_manifest": [2, 9, 10], "list_drs_object": [2, 9, 10], "list_files_in_drs_manifest": [2, 9, 10], "current_dir": [2, 9, 11], "indexd_record_page_s": [2, 9, 11], "max_concurrent_request": [2, 9, 11, 12], "tmp_folder": [2, 9, 11], "async_download_object_manifest": [2, 9, 11], "size": [2, 3, 9, 10, 11], "md5": [2, 3, 9, 11], "acl": [2, 3, 9, 11], "prev_guid": [2, 9, 11], "threadcontrol": [2, 9, 11], "delete_all_guid": [2, 9, 11], "index_object_manifest": [2, 9, 11], "verifi": [2, 9], "async_verify_object_manifest": [2, 9, 11], "ingest": [2, 9], "column_to_use_as_guid": [2, 9, 12], "guid_type_for_indexed_file_object": [2, 9, 12], "guid_type_for_non_indexed_file_object": [2, 9, 12], "async_ingest_metadata_manifest": [2, 9, 12], "async_query_urls_from_indexd": [2, 9, 12], "gen3wsstorag": [2, 13], "copi": [2, 13], "download_url": [2, 13], "l": [2, 13], "ls_path": [2, 13], "rm": [2, 13], "rm_path": [2, 13], "upload_url": [2, 13], "modul": [2, 10, 11], "service_loc": [3, 4, 5], "public": [3, 5], "read": [3, 5, 11], "onli": [3, 5, 7, 8, 10, 11], "necessari": [3, 5], "basic": [3, 11, 12], "cred": 3, "async": [3, 4, 5, 9, 11, 12], "hash": [3, 11], "did": 3, "baseid": 3, "urls_metadata": 3, "version": [3, 4, 5], "_ssl": [3, 4, 5], "asynchron": [3, 4, 5], "dict": [3, 4, 5, 10, 11, 12], "eg": 3, "ab167e49d25b488939b1ede42752458b": 3, "associ": [3, 5], "made": 3, "where": [0, 3, 5, 11, 12], "you": [0, 3, 8, 11], "control": 3, "rbac": 3, "name": [3, 4, 8, 10, 11, 12, 13], "addit": [3, 5, 10, 11], "entri": [3, 11], "attach": [3, 5], "each": [3, 8, 10, 11], "group": 3, "previou": [3, 11], "checksum": [3, 10], "checksum_typ": 3, "match": [3, 5, 12], "param": [3, 5, 8, 10], "correspond": 3, "suppli": 3, "need": [3, 7, 10, 11], "handl": [3, 10], "hash_typ": 3, "whether": [3, 4, 5, 8, 11, 12], "ssl": [3, 4, 5], "pattern": [3, 12], "against": [3, 7, 8, 11, 12], "kwarg": [3, 4, 5], "bodi": 3, "dictionari": [3, 4, 5, 7, 8], "format": [3, 5, 8, 11], "blank": 3, "add": [3, 5], "sinc": 3, "content": [3, 13], "immut": 3, "want": [0, 3, 8], "chang": [3, 11], "That": 3, "field": [3, 5, 7, 11, 12], "old": 3, "ad": 3, "least": 3, "one": [3, 5, 10, 11], "suffici": 3, "good": 3, "idea": 3, "number": [3, 7, 8, 11, 12], "noth": [3, 6], "dist_resolut": 3, "true": [3, 4, 5, 6, 7, 8, 10, 11, 12], "alia": [3, 5], "distribut": 3, "identifi": [3, 5, 9, 11], "boolean": 3, "we": [3, 11], "pagin": 3, "fals": [3, 5, 6, 10, 11], "start": [3, 4, 7, 8, 10], "prefix": 3, "rtype": 3, "has_vers": 3, "latest": 3, "exclud": 3, "without": [3, 5], "repres": [3, 5, 10], "info": [3, 11], "algorithm": 3, "count": 3, "valid": [3, 7], "file_st": 3, "like": [3, 5, 9, 11, 12], "signpost": 3, "healthi": [3, 4, 5], "rev": 3, "revis": 3, "simpl": 3, "consist": 3, "mechan": 3, "dispatch": 4, "job_nam": 4, "job_input": 4, "wait": 4, "output": [4, 5, 11, 12], "Will": [4, 7, 10], "sleep": 4, "linear": 4, "delai": 4, "until": [4, 10], "done": 4, "1": [4, 5, 8, 10, 11], "global": [4, 5], "input": [4, 10, 11], "job_id": 4, "previous": 4, "complet": [4, 11], "bool": [4, 5, 8, 10, 11, 12], "md": [5, 7, 10, 12], "admin_endpoint_suffix": 5, "admin": [5, 11], "alias": 5, "overwrit": 5, "what": 5, "end": [5, 10], "up": [5, 9], "blob": [5, 7], "asyncron": 5, "altern": [5, 11], "merg": 5, "AND": 5, "descript": [3, 5], "metadata_list": 5, "specif": [5, 8, 11, 12], "expect": [5, 9, 11], "anoth": 5, "databas": 5, "return_full_metadata": 5, "10": [5, 7, 11], "offset": [5, 7], "0": [5, 7, 8, 11], "use_agg_md": 5, "off": 5, "logic": [5, 12], "filter": [5, 7], "b": [5, 11], "2": [5, 11], "have": [5, 11], "ar": [5, 7, 8, 9, 10, 11], "alwai": 5, "nest": 5, "c": [5, 11], "3": [5, 11], "same": [5, 11, 13], "whose": 5, "ani": [0, 5, 10, 11], "But": 5, "differ": 5, "33": 5, "d": 5, "4": [5, 11], "e": [5, 10], "won": 5, "333": 5, "defin": [5, 8, 10], "api": [0, 5, 8, 11], "just": [5, 11, 12], "max": 5, "num": 5, "OR": 5, "level": 6, "current": [6, 8, 10], "system": [6, 7, 8, 9], "elasticsearch": 7, "query_str": 7, "execut": [7, 8, 11], "graphql": [7, 8], "query_txt": [7, 8], "syntax": 7, "see": [7, 10, 11], "com": 7, "uc": 7, "cdi": 7, "guppi": 7, "master": 7, "doc": [7, 10], "data_typ": 7, "my_index": 7, "my_field": 7, "first": [7, 8], "filter_object": 7, "sort_object": 7, "verbos": [7, 8], "row": [7, 8, 11, 12], "sort": 7, "equal": 7, "respect": 7, "complex": 7, "appli": 7, "One": 7, "unaccess": 7, "regular": 7, "tier": 7, "mode": 7, "subject": [7, 8], "50": 7, "vital_statu": 7, "submitter_id": 7, "aliv": 7, "asc": 7, "sort_field": 7, "raw": [7, 11], "project_id": [7, 8], "my_program": 7, "my_project": 7, "submit": [8, 11], "export": [8, 10], "sheepdog": 8, "through": [8, 11], "peregrin": 8, "sub": 8, "program": [8, 11], "project": [8, 11], "dcf": 8, "node_nam": 8, "batch_siz": 8, "100": [8, 11], "node": 8, "how": [8, 11], "mani": [8, 11], "print": [8, 10], "progress": [8, 10], "log": [8, 10, 11, 12], "ccle": 8, "demograph": 8, "ordered_node_list": 8, "revers": 8, "graph": 8, "experi": 8, "empti": [8, 11], "uuid1": 8, "uuid2": 8, "node_typ": 8, "fileformat": 8, "which": [8, 10], "belong": 8, "either": 8, "tsv": [8, 11, 12], "screen": 8, "sampl": [8, 10], "ccle_sample_nod": 8, "d70b41b9": 8, "6f90": 8, "4714": 8, "8420": 8, "e043ab8b77b9": 8, "ccle_one_record": 8, "entir": 8, "schema": 8, "run": [8, 11], "introspect": 8, "regist": 8, "mark": 8, "open": [8, 10, 11], "mean": 8, "etc": 8, "max_tri": 8, "retri": 8, "fail": [8, 10], "chunk_siz": 8, "30": 8, "row_offset": 8, "spreadsheet": 8, "multipl": [8, 11], "csv": [8, 11, 12], "xlsx": 8, "worksheet": 8, "skip": 8, "data_spreadsheet": 8, "arrai": 8, "action": [9, 11], "These": 9, "broken": 9, "broad": 9, "categori": 9, "task": 9, "relat": 9, "persist": 9, "Such": 9, "mai": [0, 9, 11], "involv": 9, "assign": 9, "everi": [9, 11], "alreadi": 9, "larg": 9, "most": 9, "util": 9, "capabl": 9, "make": [9, 11], "effici": 9, "main": 10, "datafil": 10, "manifest_1": 10, "my_common": 10, "org": 10, "gen3": [10, 11, 12], "my_credenti": 10, "howto": 10, "drsdownload": 10, "drs_download": 10, "download_list": 10, "show_progress": 10, "assist": 10, "minimum": 10, "interest": 10, "object_list": 10, "host": 10, "It": 10, "possibl": 10, "save_directori": 10, "unpack_packag": 10, "delete_unpacked_packag": 10, "directori": [10, 11], "call": [10, 13], "case": [0, 10], "error": [10, 11, 12], "continu": 10, "save": 10, "show": 10, "bar": 10, "disabl": 10, "unpack": 10, "packag": 10, "after": 10, "them": [10, 11], "drs_hostnam": 10, "known": 10, "otherwis": 10, "success": 10, "resolv": 10, "permiss": 10, "wai": 10, "determin": [10, 11, 12], "reason": 10, "pend": 10, "objectid": 10, "datamanag": 10, "occur": 10, "attribut": [10, 11], "drsobjecttyp": 10, "unknown": 10, "factori": 10, "popul": [10, 12], "server": 10, "requir": 10, "byte": 10, "timestamp": 10, "last": 10, "g": 10, "child": 10, "bundl": 10, "self": 10, "indent": 10, "pretti": 10, "In": 10, "similar": 10, "linux": 10, "tree": 10, "command": [10, 11], "typic": 10, "discoveri": 10, "cach": 10, "files": 10, "static": 10, "bownload": 10, "successfulli": 10, "pars": [10, 11, 12, 13], "output_dir": 10, "conveni": 10, "infil": 10, "wrapper": 10, "cli": 10, "process": 11, "coroutin": 11, "asyncio": [11, 12], "librari": 11, "comma": 11, "header": 11, "download_manifest": 11, "per": [11, 12], "maximum": [11, 12], "desir": 11, "concurr": [11, 12], "across": 11, "thread": 11, "folder": 11, "place": 11, "temporari": 11, "write": 11, "safe": 11, "so": 11, "To": 11, "workaround": 11, "concat": 11, "output_filenam": [11, 12], "num_process": 11, "24": [11, 12], "input_manifest": 11, "python_subprocess_command": 11, "root": [11, 12], "domain": [11, 12], "live": [11, 12], "parallel": 11, "hit": 11, "total": 11, "help": 11, "everyth": 11, "attempt": 11, "By": 11, "someth": 11, "maco": 11, "x": 11, "python3": 11, "tab": 11, "session": 11, "column": [11, 12], "shown": 11, "below": 11, "255e396f": 11, "f1f8": 11, "11e9": 11, "9a07": 11, "0a80fada099c": 11, "473d83400bc1bc9dc635e334faddf33c": 11, "363455714": 11, "pdcdatastor": 11, "test1": 11, "0a80fada098c": 11, "473d83400bc1bc9dc635e334faddd33c": 11, "343434344": 11, "test2": 11, "0a80fada097c": 11, "473d83400bc1bc9dc635e334fadd433c": 11, "543434443": 11, "phs0001": 11, "phs0002": 11, "test3": 11, "0a80fada096c": 11, "test4": 11, "0a80fada010c": 11, "473d83400bc1bc9dc635e334fadde33c": 11, "test5": 11, "index_manifest": 11, "usag": 11, "py": 11, "giangb": 11, "planx": 11, "pla": 11, "net": 11, "manifest_fil": [11, 12], "path_to_manifest": 11, "replace_url": 11, "thread_num": 11, "api_kei": 11, "processed_fil": 11, "num_total_fil": 11, "synchron": 11, "warn": 11, "IF": 11, "know": 11, "THE": 11, "implic": 11, "manifest_file_delimit": [11, 12], "submit_additional_metadata_column": 11, "force_metadata_columns_even_if_empti": 11, "loop": 11, "password": [11, 12], "flag": 11, "replac": 11, "delimit": 11, "forc": 11, "creation": [3, 11], "even": 11, "enabl": 11, "illustr": 11, "columna": 11, "columnb": 11, "columnc": 11, "dataa": 11, "datab": 11, "guid_exampl": 11, "md5_hash": 11, "fieldnam": 11, "There": 11, "those": 11, "abov": 11, "overrid": [0, 11, 12], "assum": 11, "behavior": 11, "simpli": 11, "manifest_row_pars": [11, 12], "custom": 11, "import": 11, "verify_manifest": 11, "def": 11, "_get_authz_from_row": 11, "strip": 11, "parser": [11, 12], "verify_object_manifest": 11, "verif": 11, "error_nam": 11, "value_from_manifest": 11, "actual": 11, "value_from_indexd": 11, "93d9af72": 11, "b0f1": 11, "450c": 11, "a5c6": 11, "7d3d8d2083b4": 11, "dev": 11, "test": 11, "_get_acl_from_row": 11, "_get_file_name_from_row": 11, "_get_file_size_from_row": 11, "_get_guid_from_row": 11, "_get_md5_from_row": 11, "_get_urls_from_row": 11, "1692675811": [], "9771066": [], "indexd_field": [11, 12], "func_to_parse_row": [11, 12], "delimet": [11, 12], "metdata": 12, "ingest_manifest": 12, "NOT": 12, "guid_from_fil": 12, "_get_guid_for_row": 12, "indexed_file_object_guid": 12, "_query_for_associated_indexd_record_guid": 12, "guid_for_row": 12, "elsewher": 12, "metadata_sourc": 12, "1692675812": [], "3144128": [], "get_guid_from_fil": 12, "metadata_typ": 12, "dbgap": 12, "usual": 12, "fill": 12, "_guid_typ": 12, "is_indexed_file_object": 12, "lock": 12, "semaphor": 12, "semaphon": 12, "ammount": 12, "connect": 12, "wss": 13, "src_urlstr": 13, "dest_urlstr": 13, "appropri": 13, "src_w": 13, "src_wskei": 13, "dest_path": 13, "disk": 13, "w": 13, "wskei": 13, "ws_urlstr": 13, "form": 13, "src_path": 13, "dest_w": 13, "dest_wskei": 13, "1692676927": [], "2291234": [], "6143494": [], "1692716275": [], "1734753": [], "577429": [], "1692716527": [], "4222114": [], "9511294": [], "1692717039": [], "3338752": [], "744264": [], "1692741377": [], "0982177": [], "4559627": [], "1692743380": [], "4060478": [], "7860734": [], "1692743691": [], "983341": [], "1692743692": [], "4543839": [], "1692825679": [], "249731": [], "5510318": [], "1692886743": [], "381985": [], "8074749": [], "1693592991": [], "493957": [], "9576306": [], "1693593902": [], "1950202": [], "507454": [], "1696860505": [], "0205865": [], "4065857": [], "1696863250": [], "490177": [], "780603": [], "1696863654": [], "490772": [], "8764913": [], "1696866574": [], "146243": [], "4969604": [], "1696867172": [], "15485": [], "4488156": [], "1696870997": [], "41439": [], "7891934": [], "1696874363": [], "5903769": [], "1696874364": [], "0760994": [], "1696874786": [], "0779042": [], "4368396": [], "1696875823": [], "7846825": [], "1696875824": [], "2559378": [], "1696877990": [], "9968846": [], "1696877991": [], "3616166": [], "1696878184": [], "6719804": [], "1696878185": [], "1095488": [], "1696878605": [], "0427673": [], "4048421": [], "1696885653": [], "7007155": [], "1696885654": [], "1520922": [], "1697467909": [], "0874708": [], "51657": [], "1697484656": [], "68711": [], "1697484657": [], "1308327": [], "1700001291": [], "6339526": [], "9630976": [], "1700002025": [], "294231": [], "5915642": [], "1700004267": [], "4130003": [], "8317993": [], "1700005111": [], "074543": [], "4001298": [], "1700005642": [], "8724742": [], "1700005643": [], "1597712": [], "1700499325": [], "4715705": [], "7661629": [], "1700591014": [], "4958894": [], "8457959": [], "1700592493": [], "8351357": [], "1700592494": [], "1116993": [], "1700678708": [], "9883742": [], "1700678709": [], "2699912": [], "1700678999": [], "9725351": [], "1700679000": [], "272037": [], "1701839488": [], "6993823": [], "1701839489": [], "0258799": [], "1701900364": [], "6706986": [], "9645383": [], "1701992223": [], "1760724": [], "50045": [], "1703187722": [], "008161": [], "3511112": [], "1707152739": [], "444163": [], "7294014": [], "1707153921": [], "9775102": [], "1707153922": [], "2934358": [], "1707755283": [], "0218701": [], "3274062": [], "1707755397": [], "8761852": [], "1707755398": [], "2227244": [], "1707775436": [], "8775291": [], "1707775437": [], "2080507": [], "1708924717": [], "6038976": [], "9058018": [], "1708924776": [], "1099105": [], "3872406": [], "content_created_d": 3, "content_updated_d": 3, "date": 3, "being": 3, "1708971147": [], "0555665": [], "3980484": [], "1709071889": [], "1303432": [], "4402523": [], "1709222307": [], "153123": [], "5054574": [], "access_token": 0, "directli": [], "design": [], "wa": 0, "issu": 0, "particular": 0, "act": 0, "your": 0, "own": 0, "direct": 0, "behalf": 0, "1710357281": [], "37721": [], "670295": [], "1710358911": [], "2385933": [], "539238": [], "1710361757": [], "187703": [], "5156744": [], "1710361836": [], "033443": [], "3437986": [], "1710444685": [], "0181236": [], "3370197": [], "1710771090": [], "8173654": [], "1710771091": [], "1734996": [], "1710774411": [], "2418032": [], "5350568": [], "intend": 0, "1711461363": [11, 12], "0524344": 11, "3879402": 12}, "objects": {"gen3.auth": [[0, 0, 1, "", "Gen3Auth"]], "gen3.auth.Gen3Auth": [[0, 1, 1, "", "curl"], [0, 1, 1, "", "get_access_token"], [0, 1, 1, "", "get_access_token_from_wts"], [0, 1, 1, "", "refresh_access_token"]], "gen3.file": [[1, 0, 1, "", "Gen3File"]], "gen3.file.Gen3File": [[1, 1, 1, "", "delete_file"], [1, 1, 1, "", "delete_file_locations"], [1, 1, 1, "", "download_single"], [1, 1, 1, "", "get_presigned_url"], [1, 1, 1, "", "upload_file"], [1, 1, 1, "", "upload_file_to_guid"]], "gen3.index": [[3, 0, 1, "", "Gen3Index"]], "gen3.index.Gen3Index": [[3, 1, 1, "", "async_create_record"], [3, 1, 1, "", "async_get_record"], [3, 1, 1, "", "async_get_records_from_checksum"], [3, 1, 1, "", "async_get_records_on_page"], [3, 1, 1, "", "async_get_with_params"], [3, 1, 1, "", "async_query_urls"], [3, 1, 1, "", "async_update_record"], [3, 1, 1, "", "create_blank"], [3, 1, 1, "", "create_new_version"], [3, 1, 1, "", "create_record"], [3, 1, 1, "", "delete_record"], [3, 1, 1, "", "get"], [3, 1, 1, "", "get_all_records"], [3, 1, 1, "", "get_guids_prefix"], [3, 1, 1, "", "get_latest_version"], [3, 1, 1, "", "get_record"], [3, 1, 1, "", "get_record_doc"], [3, 1, 1, "", "get_records"], [3, 1, 1, "", "get_records_on_page"], [3, 1, 1, "", "get_stats"], [3, 1, 1, "", "get_urls"], [3, 1, 1, "", "get_valid_guids"], [3, 1, 1, "", "get_version"], [3, 1, 1, "", "get_versions"], [3, 1, 1, "", "get_with_params"], [3, 1, 1, "", "is_healthy"], [3, 1, 1, "", "query_urls"], [3, 1, 1, "", "update_blank"], [3, 1, 1, "", "update_record"]], "gen3.jobs": [[4, 0, 1, "", "Gen3Jobs"]], "gen3.jobs.Gen3Jobs": [[4, 1, 1, "", "async_run_job_and_wait"], [4, 1, 1, "", "create_job"], [4, 1, 1, "", "get_output"], [4, 1, 1, "", "get_status"], [4, 1, 1, "", "get_version"], [4, 1, 1, "", "is_healthy"], [4, 1, 1, "", "list_jobs"]], "gen3.metadata": [[5, 0, 1, "", "Gen3Metadata"]], "gen3.metadata.Gen3Metadata": [[5, 1, 1, "", "async_create"], [5, 1, 1, "", "async_create_aliases"], [5, 1, 1, "", "async_delete_alias"], [5, 1, 1, "", "async_delete_aliases"], [5, 1, 1, "", "async_get"], [5, 1, 1, "", "async_get_aliases"], [5, 1, 1, "", "async_update"], [5, 1, 1, "", "async_update_aliases"], [5, 2, 1, "", "auth_provider"], [5, 1, 1, "", "batch_create"], [5, 1, 1, "", "create"], [5, 1, 1, "", "create_aliases"], [5, 1, 1, "", "create_index_key_path"], [5, 1, 1, "", "delete"], [5, 1, 1, "", "delete_alias"], [5, 1, 1, "", "delete_aliases"], [5, 1, 1, "", "delete_index_key_path"], [5, 2, 1, "", "endpoint"], [5, 1, 1, "", "get"], [5, 1, 1, "", "get_aliases"], [5, 1, 1, "", "get_index_key_paths"], [5, 1, 1, "", "get_version"], [5, 1, 1, "", "is_healthy"], [5, 1, 1, "", "query"], [5, 1, 1, "", "update"], [5, 1, 1, "", "update_aliases"]], "gen3.object": [[6, 0, 1, "", "Gen3Object"]], "gen3.object.Gen3Object": [[6, 1, 1, "", "delete_object"]], "gen3.query": [[7, 0, 1, "", "Gen3Query"]], "gen3.query.Gen3Query": [[7, 1, 1, "", "graphql_query"], [7, 1, 1, "", "query"], [7, 1, 1, "", "raw_data_download"]], "gen3.submission": [[8, 0, 1, "", "Gen3Submission"]], "gen3.submission.Gen3Submission": [[8, 1, 1, "", "create_program"], [8, 1, 1, "", "create_project"], [8, 1, 1, "", "delete_node"], [8, 1, 1, "", "delete_nodes"], [8, 1, 1, "", "delete_program"], [8, 1, 1, "", "delete_project"], [8, 1, 1, "", "delete_record"], [8, 1, 1, "", "delete_records"], [8, 1, 1, "", "export_node"], [8, 1, 1, "", "export_record"], [8, 1, 1, "", "get_dictionary_all"], [8, 1, 1, "", "get_dictionary_node"], [8, 1, 1, "", "get_graphql_schema"], [8, 1, 1, "", "get_programs"], [8, 1, 1, "", "get_project_dictionary"], [8, 1, 1, "", "get_project_manifest"], [8, 1, 1, "", "get_projects"], [8, 1, 1, "", "open_project"], [8, 1, 1, "", "query"], [8, 1, 1, "", "submit_file"], [8, 1, 1, "", "submit_record"]], "gen3": [[9, 3, 0, "-", "tools"]], "gen3.tools.download": [[10, 3, 0, "-", "drs_download"]], "gen3.tools.download.drs_download": [[10, 0, 1, "", "DownloadManager"], [10, 0, 1, "", "DownloadStatus"], [10, 0, 1, "", "Downloadable"], [10, 0, 1, "", "Manifest"], [10, 4, 1, "", "download_files_in_drs_manifest"], [10, 4, 1, "", "list_access_in_drs_manifest"], [10, 4, 1, "", "list_drs_object"], [10, 4, 1, "", "list_files_in_drs_manifest"]], "gen3.tools.download.drs_download.DownloadManager": [[10, 1, 1, "", "cache_hosts_wts_tokens"], [10, 1, 1, "", "download"], [10, 1, 1, "", "get_fresh_token"], [10, 1, 1, "", "resolve_objects"], [10, 1, 1, "", "user_access"]], "gen3.tools.download.drs_download.DownloadStatus": [[10, 2, 1, "", "end_time"], [10, 2, 1, "", "start_time"], [10, 2, 1, "", "status"]], "gen3.tools.download.drs_download.Downloadable": [[10, 2, 1, "", "_manager"], [10, 2, 1, "", "access_methods"], [10, 2, 1, "", "children"], [10, 2, 1, "", "created_time"], [10, 1, 1, "", "download"], [10, 2, 1, "", "file_name"], [10, 2, 1, "", "file_size"], [10, 2, 1, "", "hostname"], [10, 2, 1, "", "object_id"], [10, 2, 1, "", "object_type"], [10, 1, 1, "", "pprint"], [10, 2, 1, "", "updated_time"]], "gen3.tools.download.drs_download.Manifest": [[10, 2, 1, "", "commons_url"], [10, 1, 1, "", "create_object_list"], [10, 2, 1, "", "file_name"], [10, 2, 1, "", "file_size"], [10, 1, 1, "", "load"], [10, 1, 1, "", "load_manifest"], [10, 2, 1, "", "md5sum"], [10, 2, 1, "", "object_id"]], "gen3.tools.indexing": [[11, 3, 0, "-", "download_manifest"], [11, 3, 0, "-", "index_manifest"], [11, 3, 0, "-", "verify_manifest"]], "gen3.tools.indexing.download_manifest": [[11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "INDEXD_RECORD_PAGE_SIZE"], [11, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [11, 2, 1, "", "TMP_FOLDER"], [11, 4, 1, "", "async_download_object_manifest"]], "gen3.tools.indexing.index_manifest": [[11, 2, 1, "", "ACLS"], [11, 2, 1, "", "AUTHZ"], [11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "GUID"], [11, 2, 1, "", "MD5"], [11, 2, 1, "", "PREV_GUID"], [11, 2, 1, "", "SIZE"], [11, 0, 1, "", "ThreadControl"], [11, 2, 1, "", "URLS"], [11, 4, 1, "", "delete_all_guids"], [11, 4, 1, "", "index_object_manifest"]], "gen3.tools.indexing.verify_manifest": [[11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [11, 4, 1, "", "async_verify_object_manifest"]], "gen3.tools.metadata": [[12, 3, 0, "-", "ingest_manifest"]], "gen3.tools.metadata.ingest_manifest": [[12, 2, 1, "", "COLUMN_TO_USE_AS_GUID"], [12, 2, 1, "", "GUID_TYPE_FOR_INDEXED_FILE_OBJECT"], [12, 2, 1, "", "GUID_TYPE_FOR_NON_INDEXED_FILE_OBJECT"], [12, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [12, 4, 1, "", "async_ingest_metadata_manifest"], [12, 4, 1, "", "async_query_urls_from_indexd"]], "gen3.wss": [[13, 0, 1, "", "Gen3WsStorage"]], "gen3.wss.Gen3WsStorage": [[13, 1, 1, "", "copy"], [13, 1, 1, "", "download"], [13, 1, 1, "", "download_url"], [13, 1, 1, "", "ls"], [13, 1, 1, "", "ls_path"], [13, 1, 1, "", "rm"], [13, 1, 1, "", "rm_path"], [13, 1, 1, "", "upload"], [13, 1, 1, "", "upload_url"]]}, "objtypes": {"0": "py:class", "1": "py:method", "2": "py:attribute", "3": "py:module", "4": "py:function"}, "objnames": {"0": ["py", "class", "Python class"], "1": ["py", "method", "Python method"], "2": ["py", "attribute", "Python attribute"], "3": ["py", "module", "Python module"], "4": ["py", "function", "Python function"]}, "titleterms": {"gen3": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 13], "auth": 0, "helper": 0, "file": 1, "class": [1, 3, 4, 5, 6, 7, 8], "welcom": 2, "sdk": 2, "": 2, "document": 2, "indic": 2, "tabl": 2, "index": [3, 11], "job": 4, "metadata": [5, 12], "object": 6, "queri": 7, "submiss": 8, "tool": [9, 10, 11, 12], "dr": 10, "download": [10, 11], "verifi": 11, "ingest": 12, "workspac": 13, "storag": 13}, "envversion": {"sphinx.domains.c": 3, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 9, "sphinx.domains.index": 1, "sphinx.domains.javascript": 3, "sphinx.domains.math": 2, "sphinx.domains.python": 4, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx.ext.viewcode": 1, "sphinx": 60}, "alltitles": {"Gen3 Auth Helper": [[0, "gen3-auth-helper"]], "Gen3 File Class": [[1, "gen3-file-class"]], "Welcome to Gen3 SDK\u2019s documentation!": [[2, "welcome-to-gen3-sdk-s-documentation"]], "Indices and tables": [[2, "indices-and-tables"]], "Gen3 Index Class": [[3, "gen3-index-class"]], "Gen3 Jobs Class": [[4, "gen3-jobs-class"]], "Gen3 Metadata Class": [[5, "gen3-metadata-class"]], "Gen3 Object Class": [[6, "gen3-object-class"]], "Gen3 Query Class": [[7, "gen3-query-class"]], "Gen3 Submission Class": [[8, "gen3-submission-class"]], "Gen3 Tools": [[9, "gen3-tools"]], "DRS Download Tools": [[10, "module-gen3.tools.download.drs_download"]], "Indexing Tools": [[11, "indexing-tools"]], "Download": [[11, "module-gen3.tools.indexing.download_manifest"]], "Index": [[11, "module-gen3.tools.indexing.index_manifest"]], "Verify": [[11, "module-gen3.tools.indexing.verify_manifest"]], "Metadata Tools": [[12, "metadata-tools"]], "Ingest": [[12, "module-gen3.tools.metadata.ingest_manifest"]], "Gen3 Workspace Storage": [[13, "gen3-workspace-storage"]]}, "indexentries": {"gen3auth (class in gen3.auth)": [[0, "gen3.auth.Gen3Auth"]], "curl() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.curl"]], "get_access_token() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.get_access_token"]], "get_access_token_from_wts() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.get_access_token_from_wts"]], "refresh_access_token() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.refresh_access_token"]], "gen3file (class in gen3.file)": [[1, "gen3.file.Gen3File"]], "delete_file() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.delete_file"]], "delete_file_locations() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.delete_file_locations"]], "download_single() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.download_single"]], "get_presigned_url() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.get_presigned_url"]], "upload_file() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.upload_file"]], "upload_file_to_guid() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.upload_file_to_guid"]], "gen3index (class in gen3.index)": [[3, "gen3.index.Gen3Index"]], "async_create_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_create_record"]], "async_get_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_record"]], "async_get_records_from_checksum() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_records_from_checksum"]], "async_get_records_on_page() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_records_on_page"]], "async_get_with_params() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_with_params"]], "async_query_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_query_urls"]], "async_update_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_update_record"]], "create_blank() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_blank"]], "create_new_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_new_version"]], "create_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_record"]], "delete_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.delete_record"]], "get() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get"]], "get_all_records() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_all_records"]], "get_guids_prefix() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_guids_prefix"]], "get_latest_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_latest_version"]], "get_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_record"]], "get_record_doc() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_record_doc"]], "get_records() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_records"]], "get_records_on_page() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_records_on_page"]], "get_stats() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_stats"]], "get_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_urls"]], "get_valid_guids() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_valid_guids"]], "get_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_version"]], "get_versions() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_versions"]], "get_with_params() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_with_params"]], "is_healthy() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.is_healthy"]], "query_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.query_urls"]], "update_blank() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.update_blank"]], "update_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.update_record"]], "gen3jobs (class in gen3.jobs)": [[4, "gen3.jobs.Gen3Jobs"]], "async_run_job_and_wait() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.async_run_job_and_wait"]], "create_job() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.create_job"]], "get_output() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_output"]], "get_status() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_status"]], "get_version() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_version"]], "is_healthy() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.is_healthy"]], "list_jobs() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.list_jobs"]], "gen3metadata (class in gen3.metadata)": [[5, "gen3.metadata.Gen3Metadata"]], "async_create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_create"]], "async_create_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_create_aliases"]], "async_delete_alias() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_delete_alias"]], "async_delete_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_delete_aliases"]], "async_get() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_get"]], "async_get_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_get_aliases"]], "async_update() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_update"]], "async_update_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_update_aliases"]], "auth_provider (gen3.metadata.gen3metadata attribute)": [[5, "gen3.metadata.Gen3Metadata.auth_provider"]], "batch_create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.batch_create"]], "create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create"]], "create_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create_aliases"]], "create_index_key_path() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create_index_key_path"]], "delete() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete"]], "delete_alias() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_alias"]], "delete_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_aliases"]], "delete_index_key_path() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_index_key_path"]], "endpoint (gen3.metadata.gen3metadata attribute)": [[5, "gen3.metadata.Gen3Metadata.endpoint"]], "get() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get"]], "get_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_aliases"]], "get_index_key_paths() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_index_key_paths"]], "get_version() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_version"]], "is_healthy() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.is_healthy"]], "query() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.query"]], "update() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.update"]], "update_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.update_aliases"]], "gen3object (class in gen3.object)": [[6, "gen3.object.Gen3Object"]], "delete_object() (gen3.object.gen3object method)": [[6, "gen3.object.Gen3Object.delete_object"]], "gen3query (class in gen3.query)": [[7, "gen3.query.Gen3Query"]], "graphql_query() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.graphql_query"]], "query() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.query"]], "raw_data_download() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.raw_data_download"]], "gen3submission (class in gen3.submission)": [[8, "gen3.submission.Gen3Submission"]], "create_program() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.create_program"]], "create_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.create_project"]], "delete_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_node"]], "delete_nodes() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_nodes"]], "delete_program() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_program"]], "delete_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_project"]], "delete_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_record"]], "delete_records() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_records"]], "export_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.export_node"]], "export_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.export_record"]], "get_dictionary_all() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_dictionary_all"]], "get_dictionary_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_dictionary_node"]], "get_graphql_schema() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_graphql_schema"]], "get_programs() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_programs"]], "get_project_dictionary() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_project_dictionary"]], "get_project_manifest() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_project_manifest"]], "get_projects() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_projects"]], "open_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.open_project"]], "query() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.query"]], "submit_file() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.submit_file"]], "submit_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.submit_record"]], "gen3.tools": [[9, "module-gen3.tools"]], "module": [[9, "module-gen3.tools"], [10, "module-gen3.tools.download.drs_download"], [11, "module-gen3.tools.indexing.download_manifest"], [11, "module-gen3.tools.indexing.index_manifest"], [11, "module-gen3.tools.indexing.verify_manifest"], [12, "module-gen3.tools.metadata.ingest_manifest"]], "downloadmanager (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.DownloadManager"]], "downloadstatus (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.DownloadStatus"]], "downloadable (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.Downloadable"]], "manifest (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.Manifest"]], "_manager (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable._manager"]], "access_methods (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.access_methods"]], "cache_hosts_wts_tokens() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.cache_hosts_wts_tokens"]], "children (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.children"]], "commons_url (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.commons_url"]], "create_object_list() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.create_object_list"]], "created_time (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.created_time"]], "download() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.download"]], "download() (gen3.tools.download.drs_download.downloadable method)": [[10, "gen3.tools.download.drs_download.Downloadable.download"]], "download_files_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.download_files_in_drs_manifest"]], "end_time (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.end_time"]], "file_name (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.file_name"]], "file_name (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.file_name"]], "file_size (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.file_size"]], "file_size (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.file_size"]], "gen3.tools.download.drs_download": [[10, "module-gen3.tools.download.drs_download"]], "get_fresh_token() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.get_fresh_token"]], "hostname (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.hostname"]], "list_access_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_access_in_drs_manifest"]], "list_drs_object() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_drs_object"]], "list_files_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_files_in_drs_manifest"]], "load() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.load"]], "load_manifest() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.load_manifest"]], "md5sum (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.md5sum"]], "object_id (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.object_id"]], "object_id (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.object_id"]], "object_type (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.object_type"]], "pprint() (gen3.tools.download.drs_download.downloadable method)": [[10, "gen3.tools.download.drs_download.Downloadable.pprint"]], "resolve_objects() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.resolve_objects"]], "start_time (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.start_time"]], "status (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.status"]], "updated_time (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.updated_time"]], "user_access() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.user_access"]], "acls (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.ACLS"]], "authz (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.AUTHZ"]], "current_dir (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.CURRENT_DIR"]], "current_dir (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.CURRENT_DIR"]], "current_dir (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.CURRENT_DIR"]], "guid (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.GUID"]], "indexd_record_page_size (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.INDEXD_RECORD_PAGE_SIZE"]], "max_concurrent_requests (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.MAX_CONCURRENT_REQUESTS"]], "max_concurrent_requests (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.MAX_CONCURRENT_REQUESTS"]], "md5 (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.MD5"]], "prev_guid (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.PREV_GUID"]], "size (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.SIZE"]], "tmp_folder (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.TMP_FOLDER"]], "threadcontrol (class in gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.ThreadControl"]], "urls (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.URLS"]], "async_download_object_manifest() (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.async_download_object_manifest"]], "async_verify_object_manifest() (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.async_verify_object_manifest"]], "delete_all_guids() (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.delete_all_guids"]], "gen3.tools.indexing.download_manifest": [[11, "module-gen3.tools.indexing.download_manifest"]], "gen3.tools.indexing.index_manifest": [[11, "module-gen3.tools.indexing.index_manifest"]], "gen3.tools.indexing.verify_manifest": [[11, "module-gen3.tools.indexing.verify_manifest"]], "index_object_manifest() (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.index_object_manifest"]], "column_to_use_as_guid (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.COLUMN_TO_USE_AS_GUID"]], "guid_type_for_indexed_file_object (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.GUID_TYPE_FOR_INDEXED_FILE_OBJECT"]], "guid_type_for_non_indexed_file_object (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.GUID_TYPE_FOR_NON_INDEXED_FILE_OBJECT"]], "max_concurrent_requests (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.MAX_CONCURRENT_REQUESTS"]], "async_ingest_metadata_manifest() (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.async_ingest_metadata_manifest"]], "async_query_urls_from_indexd() (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.async_query_urls_from_indexd"]], "gen3.tools.metadata.ingest_manifest": [[12, "module-gen3.tools.metadata.ingest_manifest"]], "gen3wsstorage (class in gen3.wss)": [[13, "gen3.wss.Gen3WsStorage"]], "copy() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.copy"]], "download() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.download"]], "download_url() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.download_url"]], "ls() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.ls"]], "ls_path() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.ls_path"]], "rm() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.rm"]], "rm_path() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.rm_path"]], "upload() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.upload"]], "upload_url() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.upload_url"]]}}) \ No newline at end of file +Search.setIndex({"alltitles": {"DRS Download Tools": [[10, "module-gen3.tools.download.drs_download"]], "Download": [[11, "module-gen3.tools.indexing.download_manifest"]], "Gen3 Auth Helper": [[0, "gen3-auth-helper"]], "Gen3 File Class": [[1, "gen3-file-class"]], "Gen3 Index Class": [[3, "gen3-index-class"]], "Gen3 Jobs Class": [[4, "gen3-jobs-class"]], "Gen3 Metadata Class": [[5, "gen3-metadata-class"]], "Gen3 Object Class": [[6, "gen3-object-class"]], "Gen3 Query Class": [[7, "gen3-query-class"]], "Gen3 Submission Class": [[8, "gen3-submission-class"]], "Gen3 Tools": [[9, "gen3-tools"]], "Gen3 Workspace Storage": [[13, "gen3-workspace-storage"]], "Index": [[11, "module-gen3.tools.indexing.index_manifest"]], "Indexing Tools": [[11, "indexing-tools"]], "Indices and tables": [[2, "indices-and-tables"]], "Ingest": [[12, "module-gen3.tools.metadata.ingest_manifest"]], "Metadata Tools": [[12, "metadata-tools"]], "Verify": [[11, "module-gen3.tools.indexing.verify_manifest"]], "Welcome to Gen3 SDK\u2019s documentation!": [[2, "welcome-to-gen3-sdk-s-documentation"]]}, "docnames": ["auth", "file", "index", "indexing", "jobs", "metadata", "object", "query", "submission", "tools", "tools/drs_pull", "tools/indexing", "tools/metadata", "wss"], "envversion": {"sphinx": 61, "sphinx.domains.c": 3, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 9, "sphinx.domains.index": 1, "sphinx.domains.javascript": 3, "sphinx.domains.math": 2, "sphinx.domains.python": 4, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx.ext.viewcode": 1}, "filenames": ["auth.rst", "file.rst", "index.rst", "indexing.rst", "jobs.rst", "metadata.rst", "object.rst", "query.rst", "submission.rst", "tools.rst", "tools/drs_pull.rst", "tools/indexing.rst", "tools/metadata.rst", "wss.rst"], "indexentries": {"_manager (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable._manager", false]], "access_methods (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.access_methods", false]], "acls (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.ACLS", false]], "async_create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_create", false]], "async_create_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_create_aliases", false]], "async_create_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_create_record", false]], "async_delete_alias() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_delete_alias", false]], "async_delete_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_delete_aliases", false]], "async_download_object_manifest() (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.async_download_object_manifest", false]], "async_get() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_get", false]], "async_get_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_get_aliases", false]], "async_get_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_record", false]], "async_get_records_from_checksum() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_records_from_checksum", false]], "async_get_records_on_page() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_records_on_page", false]], "async_get_with_params() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_with_params", false]], "async_ingest_metadata_manifest() (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.async_ingest_metadata_manifest", false]], "async_query_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_query_urls", false]], "async_query_urls_from_indexd() (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.async_query_urls_from_indexd", false]], "async_run_job_and_wait() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.async_run_job_and_wait", false]], "async_update() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_update", false]], "async_update_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_update_aliases", false]], "async_update_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_update_record", false]], "async_verify_object_manifest() (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.async_verify_object_manifest", false]], "auth_provider (gen3.metadata.gen3metadata attribute)": [[5, "gen3.metadata.Gen3Metadata.auth_provider", false]], "authz (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.AUTHZ", false]], "batch_create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.batch_create", false]], "cache_hosts_wts_tokens() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.cache_hosts_wts_tokens", false]], "children (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.children", false]], "column_to_use_as_guid (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.COLUMN_TO_USE_AS_GUID", false]], "commons_url (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.commons_url", false]], "copy() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.copy", false]], "create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create", false]], "create_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create_aliases", false]], "create_blank() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_blank", false]], "create_index_key_path() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create_index_key_path", false]], "create_job() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.create_job", false]], "create_new_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_new_version", false]], "create_object_list() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.create_object_list", false]], "create_program() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.create_program", false]], "create_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.create_project", false]], "create_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_record", false]], "created_time (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.created_time", false]], "curl() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.curl", false]], "current_dir (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.CURRENT_DIR", false]], "current_dir (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.CURRENT_DIR", false]], "current_dir (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.CURRENT_DIR", false]], "delete() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete", false]], "delete_alias() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_alias", false]], "delete_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_aliases", false]], "delete_all_guids() (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.delete_all_guids", false]], "delete_file() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.delete_file", false]], "delete_file_locations() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.delete_file_locations", false]], "delete_index_key_path() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_index_key_path", false]], "delete_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_node", false]], "delete_nodes() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_nodes", false]], "delete_object() (gen3.object.gen3object method)": [[6, "gen3.object.Gen3Object.delete_object", false]], "delete_program() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_program", false]], "delete_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_project", false]], "delete_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.delete_record", false]], "delete_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_record", false]], "delete_records() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_records", false]], "download() (gen3.tools.download.drs_download.downloadable method)": [[10, "gen3.tools.download.drs_download.Downloadable.download", false]], "download() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.download", false]], "download() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.download", false]], "download_files_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.download_files_in_drs_manifest", false]], "download_single() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.download_single", false]], "download_url() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.download_url", false]], "downloadable (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.Downloadable", false]], "downloadmanager (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.DownloadManager", false]], "downloadstatus (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.DownloadStatus", false]], "end_time (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.end_time", false]], "endpoint (gen3.metadata.gen3metadata attribute)": [[5, "gen3.metadata.Gen3Metadata.endpoint", false]], "export_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.export_node", false]], "export_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.export_record", false]], "file_name (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.file_name", false]], "file_name (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.file_name", false]], "file_size (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.file_size", false]], "file_size (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.file_size", false]], "gen3.tools": [[9, "module-gen3.tools", false]], "gen3.tools.download.drs_download": [[10, "module-gen3.tools.download.drs_download", false]], "gen3.tools.indexing.download_manifest": [[11, "module-gen3.tools.indexing.download_manifest", false]], "gen3.tools.indexing.index_manifest": [[11, "module-gen3.tools.indexing.index_manifest", false]], "gen3.tools.indexing.verify_manifest": [[11, "module-gen3.tools.indexing.verify_manifest", false]], "gen3.tools.metadata.ingest_manifest": [[12, "module-gen3.tools.metadata.ingest_manifest", false]], "gen3auth (class in gen3.auth)": [[0, "gen3.auth.Gen3Auth", false]], "gen3file (class in gen3.file)": [[1, "gen3.file.Gen3File", false]], "gen3index (class in gen3.index)": [[3, "gen3.index.Gen3Index", false]], "gen3jobs (class in gen3.jobs)": [[4, "gen3.jobs.Gen3Jobs", false]], "gen3metadata (class in gen3.metadata)": [[5, "gen3.metadata.Gen3Metadata", false]], "gen3object (class in gen3.object)": [[6, "gen3.object.Gen3Object", false]], "gen3query (class in gen3.query)": [[7, "gen3.query.Gen3Query", false]], "gen3submission (class in gen3.submission)": [[8, "gen3.submission.Gen3Submission", false]], "gen3wsstorage (class in gen3.wss)": [[13, "gen3.wss.Gen3WsStorage", false]], "get() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get", false]], "get() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get", false]], "get_access_token() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.get_access_token", false]], "get_access_token_from_wts() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.get_access_token_from_wts", false]], "get_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_aliases", false]], "get_all_records() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_all_records", false]], "get_dictionary_all() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_dictionary_all", false]], "get_dictionary_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_dictionary_node", false]], "get_fresh_token() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.get_fresh_token", false]], "get_graphql_schema() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_graphql_schema", false]], "get_guids_prefix() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_guids_prefix", false]], "get_index_key_paths() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_index_key_paths", false]], "get_latest_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_latest_version", false]], "get_output() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_output", false]], "get_presigned_url() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.get_presigned_url", false]], "get_programs() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_programs", false]], "get_project_dictionary() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_project_dictionary", false]], "get_project_manifest() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_project_manifest", false]], "get_projects() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_projects", false]], "get_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_record", false]], "get_record_doc() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_record_doc", false]], "get_records() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_records", false]], "get_records_on_page() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_records_on_page", false]], "get_stats() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_stats", false]], "get_status() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_status", false]], "get_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_urls", false]], "get_valid_guids() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_valid_guids", false]], "get_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_version", false]], "get_version() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_version", false]], "get_version() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_version", false]], "get_versions() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_versions", false]], "get_with_params() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_with_params", false]], "graphql_query() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.graphql_query", false]], "guid (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.GUID", false]], "guid_type_for_indexed_file_object (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.GUID_TYPE_FOR_INDEXED_FILE_OBJECT", false]], "guid_type_for_non_indexed_file_object (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.GUID_TYPE_FOR_NON_INDEXED_FILE_OBJECT", false]], "hostname (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.hostname", false]], "index_object_manifest() (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.index_object_manifest", false]], "indexd_record_page_size (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.INDEXD_RECORD_PAGE_SIZE", false]], "is_healthy() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.is_healthy", false]], "is_healthy() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.is_healthy", false]], "is_healthy() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.is_healthy", false]], "list_access_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_access_in_drs_manifest", false]], "list_drs_object() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_drs_object", false]], "list_files_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_files_in_drs_manifest", false]], "list_jobs() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.list_jobs", false]], "load() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.load", false]], "load_manifest() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.load_manifest", false]], "ls() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.ls", false]], "ls_path() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.ls_path", false]], "manifest (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.Manifest", false]], "max_concurrent_requests (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.MAX_CONCURRENT_REQUESTS", false]], "max_concurrent_requests (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.MAX_CONCURRENT_REQUESTS", false]], "max_concurrent_requests (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.MAX_CONCURRENT_REQUESTS", false]], "md5 (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.MD5", false]], "md5sum (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.md5sum", false]], "module": [[9, "module-gen3.tools", false], [10, "module-gen3.tools.download.drs_download", false], [11, "module-gen3.tools.indexing.download_manifest", false], [11, "module-gen3.tools.indexing.index_manifest", false], [11, "module-gen3.tools.indexing.verify_manifest", false], [12, "module-gen3.tools.metadata.ingest_manifest", false]], "object_id (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.object_id", false]], "object_id (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.object_id", false]], "object_type (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.object_type", false]], "open_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.open_project", false]], "pprint() (gen3.tools.download.drs_download.downloadable method)": [[10, "gen3.tools.download.drs_download.Downloadable.pprint", false]], "prev_guid (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.PREV_GUID", false]], "query() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.query", false]], "query() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.query", false]], "query() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.query", false]], "query_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.query_urls", false]], "raw_data_download() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.raw_data_download", false]], "refresh_access_token() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.refresh_access_token", false]], "resolve_objects() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.resolve_objects", false]], "rm() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.rm", false]], "rm_path() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.rm_path", false]], "size (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.SIZE", false]], "start_time (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.start_time", false]], "status (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.status", false]], "submit_file() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.submit_file", false]], "submit_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.submit_record", false]], "threadcontrol (class in gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.ThreadControl", false]], "tmp_folder (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.TMP_FOLDER", false]], "update() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.update", false]], "update_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.update_aliases", false]], "update_blank() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.update_blank", false]], "update_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.update_record", false]], "updated_time (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.updated_time", false]], "upload() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.upload", false]], "upload_file() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.upload_file", false]], "upload_file_to_guid() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.upload_file_to_guid", false]], "upload_url() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.upload_url", false]], "urls (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.URLS", false]], "user_access() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.user_access", false]]}, "objects": {"gen3": [[9, 3, 0, "-", "tools"]], "gen3.auth": [[0, 0, 1, "", "Gen3Auth"]], "gen3.auth.Gen3Auth": [[0, 1, 1, "", "curl"], [0, 1, 1, "", "get_access_token"], [0, 1, 1, "", "get_access_token_from_wts"], [0, 1, 1, "", "refresh_access_token"]], "gen3.file": [[1, 0, 1, "", "Gen3File"]], "gen3.file.Gen3File": [[1, 1, 1, "", "delete_file"], [1, 1, 1, "", "delete_file_locations"], [1, 1, 1, "", "download_single"], [1, 1, 1, "", "get_presigned_url"], [1, 1, 1, "", "upload_file"], [1, 1, 1, "", "upload_file_to_guid"]], "gen3.index": [[3, 0, 1, "", "Gen3Index"]], "gen3.index.Gen3Index": [[3, 1, 1, "", "async_create_record"], [3, 1, 1, "", "async_get_record"], [3, 1, 1, "", "async_get_records_from_checksum"], [3, 1, 1, "", "async_get_records_on_page"], [3, 1, 1, "", "async_get_with_params"], [3, 1, 1, "", "async_query_urls"], [3, 1, 1, "", "async_update_record"], [3, 1, 1, "", "create_blank"], [3, 1, 1, "", "create_new_version"], [3, 1, 1, "", "create_record"], [3, 1, 1, "", "delete_record"], [3, 1, 1, "", "get"], [3, 1, 1, "", "get_all_records"], [3, 1, 1, "", "get_guids_prefix"], [3, 1, 1, "", "get_latest_version"], [3, 1, 1, "", "get_record"], [3, 1, 1, "", "get_record_doc"], [3, 1, 1, "", "get_records"], [3, 1, 1, "", "get_records_on_page"], [3, 1, 1, "", "get_stats"], [3, 1, 1, "", "get_urls"], [3, 1, 1, "", "get_valid_guids"], [3, 1, 1, "", "get_version"], [3, 1, 1, "", "get_versions"], [3, 1, 1, "", "get_with_params"], [3, 1, 1, "", "is_healthy"], [3, 1, 1, "", "query_urls"], [3, 1, 1, "", "update_blank"], [3, 1, 1, "", "update_record"]], "gen3.jobs": [[4, 0, 1, "", "Gen3Jobs"]], "gen3.jobs.Gen3Jobs": [[4, 1, 1, "", "async_run_job_and_wait"], [4, 1, 1, "", "create_job"], [4, 1, 1, "", "get_output"], [4, 1, 1, "", "get_status"], [4, 1, 1, "", "get_version"], [4, 1, 1, "", "is_healthy"], [4, 1, 1, "", "list_jobs"]], "gen3.metadata": [[5, 0, 1, "", "Gen3Metadata"]], "gen3.metadata.Gen3Metadata": [[5, 1, 1, "", "async_create"], [5, 1, 1, "", "async_create_aliases"], [5, 1, 1, "", "async_delete_alias"], [5, 1, 1, "", "async_delete_aliases"], [5, 1, 1, "", "async_get"], [5, 1, 1, "", "async_get_aliases"], [5, 1, 1, "", "async_update"], [5, 1, 1, "", "async_update_aliases"], [5, 2, 1, "", "auth_provider"], [5, 1, 1, "", "batch_create"], [5, 1, 1, "", "create"], [5, 1, 1, "", "create_aliases"], [5, 1, 1, "", "create_index_key_path"], [5, 1, 1, "", "delete"], [5, 1, 1, "", "delete_alias"], [5, 1, 1, "", "delete_aliases"], [5, 1, 1, "", "delete_index_key_path"], [5, 2, 1, "", "endpoint"], [5, 1, 1, "", "get"], [5, 1, 1, "", "get_aliases"], [5, 1, 1, "", "get_index_key_paths"], [5, 1, 1, "", "get_version"], [5, 1, 1, "", "is_healthy"], [5, 1, 1, "", "query"], [5, 1, 1, "", "update"], [5, 1, 1, "", "update_aliases"]], "gen3.object": [[6, 0, 1, "", "Gen3Object"]], "gen3.object.Gen3Object": [[6, 1, 1, "", "delete_object"]], "gen3.query": [[7, 0, 1, "", "Gen3Query"]], "gen3.query.Gen3Query": [[7, 1, 1, "", "graphql_query"], [7, 1, 1, "", "query"], [7, 1, 1, "", "raw_data_download"]], "gen3.submission": [[8, 0, 1, "", "Gen3Submission"]], "gen3.submission.Gen3Submission": [[8, 1, 1, "", "create_program"], [8, 1, 1, "", "create_project"], [8, 1, 1, "", "delete_node"], [8, 1, 1, "", "delete_nodes"], [8, 1, 1, "", "delete_program"], [8, 1, 1, "", "delete_project"], [8, 1, 1, "", "delete_record"], [8, 1, 1, "", "delete_records"], [8, 1, 1, "", "export_node"], [8, 1, 1, "", "export_record"], [8, 1, 1, "", "get_dictionary_all"], [8, 1, 1, "", "get_dictionary_node"], [8, 1, 1, "", "get_graphql_schema"], [8, 1, 1, "", "get_programs"], [8, 1, 1, "", "get_project_dictionary"], [8, 1, 1, "", "get_project_manifest"], [8, 1, 1, "", "get_projects"], [8, 1, 1, "", "open_project"], [8, 1, 1, "", "query"], [8, 1, 1, "", "submit_file"], [8, 1, 1, "", "submit_record"]], "gen3.tools.download": [[10, 3, 0, "-", "drs_download"]], "gen3.tools.download.drs_download": [[10, 0, 1, "", "DownloadManager"], [10, 0, 1, "", "DownloadStatus"], [10, 0, 1, "", "Downloadable"], [10, 0, 1, "", "Manifest"], [10, 4, 1, "", "download_files_in_drs_manifest"], [10, 4, 1, "", "list_access_in_drs_manifest"], [10, 4, 1, "", "list_drs_object"], [10, 4, 1, "", "list_files_in_drs_manifest"]], "gen3.tools.download.drs_download.DownloadManager": [[10, 1, 1, "", "cache_hosts_wts_tokens"], [10, 1, 1, "", "download"], [10, 1, 1, "", "get_fresh_token"], [10, 1, 1, "", "resolve_objects"], [10, 1, 1, "", "user_access"]], "gen3.tools.download.drs_download.DownloadStatus": [[10, 2, 1, "", "end_time"], [10, 2, 1, "", "start_time"], [10, 2, 1, "", "status"]], "gen3.tools.download.drs_download.Downloadable": [[10, 2, 1, "", "_manager"], [10, 2, 1, "", "access_methods"], [10, 2, 1, "", "children"], [10, 2, 1, "", "created_time"], [10, 1, 1, "", "download"], [10, 2, 1, "", "file_name"], [10, 2, 1, "", "file_size"], [10, 2, 1, "", "hostname"], [10, 2, 1, "", "object_id"], [10, 2, 1, "", "object_type"], [10, 1, 1, "", "pprint"], [10, 2, 1, "", "updated_time"]], "gen3.tools.download.drs_download.Manifest": [[10, 2, 1, "", "commons_url"], [10, 1, 1, "", "create_object_list"], [10, 2, 1, "", "file_name"], [10, 2, 1, "", "file_size"], [10, 1, 1, "", "load"], [10, 1, 1, "", "load_manifest"], [10, 2, 1, "", "md5sum"], [10, 2, 1, "", "object_id"]], "gen3.tools.indexing": [[11, 3, 0, "-", "download_manifest"], [11, 3, 0, "-", "index_manifest"], [11, 3, 0, "-", "verify_manifest"]], "gen3.tools.indexing.download_manifest": [[11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "INDEXD_RECORD_PAGE_SIZE"], [11, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [11, 2, 1, "", "TMP_FOLDER"], [11, 4, 1, "", "async_download_object_manifest"]], "gen3.tools.indexing.index_manifest": [[11, 2, 1, "", "ACLS"], [11, 2, 1, "", "AUTHZ"], [11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "GUID"], [11, 2, 1, "", "MD5"], [11, 2, 1, "", "PREV_GUID"], [11, 2, 1, "", "SIZE"], [11, 0, 1, "", "ThreadControl"], [11, 2, 1, "", "URLS"], [11, 4, 1, "", "delete_all_guids"], [11, 4, 1, "", "index_object_manifest"]], "gen3.tools.indexing.verify_manifest": [[11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [11, 4, 1, "", "async_verify_object_manifest"]], "gen3.tools.metadata": [[12, 3, 0, "-", "ingest_manifest"]], "gen3.tools.metadata.ingest_manifest": [[12, 2, 1, "", "COLUMN_TO_USE_AS_GUID"], [12, 2, 1, "", "GUID_TYPE_FOR_INDEXED_FILE_OBJECT"], [12, 2, 1, "", "GUID_TYPE_FOR_NON_INDEXED_FILE_OBJECT"], [12, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [12, 4, 1, "", "async_ingest_metadata_manifest"], [12, 4, 1, "", "async_query_urls_from_indexd"]], "gen3.wss": [[13, 0, 1, "", "Gen3WsStorage"]], "gen3.wss.Gen3WsStorage": [[13, 1, 1, "", "copy"], [13, 1, 1, "", "download"], [13, 1, 1, "", "download_url"], [13, 1, 1, "", "ls"], [13, 1, 1, "", "ls_path"], [13, 1, 1, "", "rm"], [13, 1, 1, "", "rm_path"], [13, 1, 1, "", "upload"], [13, 1, 1, "", "upload_url"]]}, "objnames": {"0": ["py", "class", "Python class"], "1": ["py", "method", "Python method"], "2": ["py", "attribute", "Python attribute"], "3": ["py", "module", "Python module"], "4": ["py", "function", "Python function"]}, "objtypes": {"0": "py:class", "1": "py:method", "2": "py:attribute", "3": "py:module", "4": "py:function"}, "terms": {"": [1, 4, 8, 10, 11], "0": [5, 7, 8, 11], "0a80fada010c": 11, "0a80fada096c": 11, "0a80fada097c": 11, "0a80fada098c": 11, "0a80fada099c": 11, "1": [4, 5, 8, 10, 11], "10": [5, 7, 11], "100": [8, 11], "11e9": 11, "1713542306": [11, 12], "2": [5, 11], "24": [11, 12], "255e396f": 11, "3": [5, 11], "30": 8, "33": 5, "333": 5, "343434344": 11, "363455714": 11, "4": [5, 11], "450c": 11, "4649727": 11, "4714": 8, "473d83400bc1bc9dc635e334fadd433c": 11, "473d83400bc1bc9dc635e334faddd33c": 11, "473d83400bc1bc9dc635e334fadde33c": 11, "473d83400bc1bc9dc635e334faddf33c": 11, "5": [0, 5], "50": 7, "543434443": 11, "6f90": 8, "760149": 12, "7d3d8d2083b4": 11, "8420": 8, "93d9af72": 11, "9a07": 11, "A": [1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "AND": 5, "Be": 1, "But": 5, "By": 11, "For": [1, 5, 6, 7, 8, 9, 11], "IF": 11, "If": [0, 1, 7, 11, 12], "In": 10, "It": 10, "NOT": 12, "OR": 5, "One": 7, "Such": 9, "THE": 11, "That": 3, "The": [0, 1, 2, 3, 5, 8, 10, 11], "There": 11, "These": 9, "To": 11, "Will": [4, 7, 10], "_get_acl_from_row": 11, "_get_authz_from_row": 11, "_get_file_name_from_row": 11, "_get_file_size_from_row": 11, "_get_guid_for_row": 12, "_get_guid_from_row": 11, "_get_md5_from_row": 11, "_get_urls_from_row": 11, "_guid_typ": 12, "_manag": [2, 9, 10], "_query_for_associated_indexd_record_guid": 12, "_ssl": [3, 4, 5], "a5c6": 11, "ab167e49d25b488939b1ede42752458b": 3, "about": [2, 3], "abov": 11, "access": [0, 1, 3, 7, 10], "access_method": [2, 9, 10], "access_token": 0, "accesstoken": 0, "acl": [2, 3, 9, 11], "across": 11, "act": 0, "action": [9, 11], "actual": 11, "ad": 3, "add": [3, 5], "addit": [3, 5, 10, 11], "admin": [5, 11], "admin_endpoint_suffix": 5, "after": 10, "against": [3, 7, 8, 11, 12], "algorithm": 3, "alia": [3, 5], "alias": 5, "aliv": 7, "all": [1, 3, 4, 5, 6, 7, 8, 10, 11, 12], "allow": [0, 6, 8, 10, 11, 12], "allowed_data_upload_bucket": 1, "along": 2, "alreadi": 9, "also": 1, "altern": [5, 11], "alwai": 5, "ammount": 12, "amount": [1, 9], "an": [0, 3, 6, 8, 10, 11], "ani": [0, 5, 10, 11], "anoth": 5, "api": [0, 5, 8, 11], "api_kei": 11, "appli": 7, "appropri": 13, "ar": [5, 7, 8, 9, 10, 11], "arbitrari": 0, "argument": [0, 13], "arrai": 8, "asc": 7, "assign": 9, "assist": 10, "associ": [3, 5], "assum": 11, "async": [3, 4, 5, 9, 11, 12], "async_cr": [2, 5], "async_create_alias": [2, 5], "async_create_record": [2, 3], "async_delete_alia": [2, 5], "async_delete_alias": [2, 5], "async_download_object_manifest": [2, 9, 11], "async_get": [2, 5], "async_get_alias": [2, 5], "async_get_record": [2, 3], "async_get_records_from_checksum": [2, 3], "async_get_records_on_pag": [2, 3], "async_get_with_param": [2, 3], "async_ingest_metadata_manifest": [2, 9, 12], "async_query_url": [2, 3], "async_query_urls_from_indexd": [2, 9, 12], "async_run_job_and_wait": [2, 4], "async_upd": [2, 5], "async_update_alias": [2, 5], "async_update_record": [2, 3], "async_verify_object_manifest": [2, 9, 11], "asynchron": [3, 4, 5], "asyncio": [11, 12], "asyncron": 5, "attach": [3, 5], "attempt": 11, "attribut": [10, 11], "auth": [1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "auth_provid": [1, 2, 3, 4, 5, 6, 7, 8, 13], "authbas": 0, "authent": 0, "author": 1, "authz": [0, 1, 2, 3, 9, 10, 11], "auto": [0, 2], "automat": 0, "avail": [1, 2, 10, 11], "az": 1, "b": [5, 11], "b0f1": 11, "bar": 10, "base": [0, 1, 3, 4, 5, 6, 7, 8, 9, 11, 13], "baseid": 3, "basic": [3, 11, 12], "batch_creat": [2, 5], "batch_siz": 8, "behalf": 0, "behavior": 11, "being": 3, "belong": 8, "below": 11, "blank": 3, "blob": [5, 7], "bodi": 3, "bool": [4, 5, 8, 10, 11, 12], "boolean": 3, "bownload": 10, "broad": 9, "broken": 9, "bucket": [1, 6], "bundl": 10, "byte": 10, "c": [5, 11], "cach": 10, "cache_hosts_wts_token": [2, 9, 10], "call": [10, 13], "can": [0, 3, 4, 8, 11, 12], "capabl": 9, "case": [0, 10], "categori": 9, "ccle": 8, "ccle_one_record": 8, "ccle_sample_nod": 8, "cdi": 7, "chang": [3, 11], "checksum": [3, 10], "checksum_typ": 3, "child": 10, "children": [2, 9, 10], "chunk_siz": 8, "class": [0, 2, 10, 11, 13], "cli": 10, "client": [0, 3], "client_credenti": 0, "client_id": 0, "client_scop": 0, "client_secret": 0, "code": [2, 8], "column": [11, 12], "column_to_use_as_guid": [2, 9, 12], "columna": 11, "columnb": 11, "columnc": 11, "com": 7, "comma": 11, "command": [10, 11], "common": [0, 1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13], "commons_url": [2, 9, 10, 11, 12], "complet": [4, 11], "complex": 7, "concat": 11, "concurr": [11, 12], "configur": 1, "connect": 12, "consist": 3, "constructor": 0, "contain": [0, 2, 5, 8, 9, 10, 11, 12], "content": [3, 13], "content_created_d": 3, "content_updated_d": 3, "continu": 10, "control": 3, "conveni": 10, "copi": [2, 13], "coroutin": 11, "correspond": 3, "count": 3, "crdc": 0, "creat": [2, 3, 4, 5, 6, 8, 10, 11], "create_alias": [2, 5], "create_blank": [2, 3], "create_index_key_path": [2, 5], "create_job": [2, 4], "create_new_vers": [2, 3], "create_object_list": [2, 9, 10], "create_program": [2, 8], "create_project": [2, 8], "create_record": [2, 3], "created_tim": [2, 9, 10], "creation": [3, 11], "cred": 3, "credenti": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "csv": [8, 11, 12], "curl": [0, 2], "current": [6, 8, 10], "current_dir": [2, 9, 11], "custom": 11, "d": 5, "d70b41b9": 8, "data": [0, 1, 3, 5, 7, 8, 10, 11], "data_spreadsheet": 8, "data_typ": 7, "data_upload_bucket": 1, "dataa": 11, "datab": 11, "databas": 5, "datacommon": 0, "datafil": 10, "datamanag": 10, "date": 3, "datetim": [1, 3, 10], "dbgap": 12, "dcf": 8, "def": 11, "default": [0, 1, 3, 7, 8, 11, 12], "defin": [5, 8, 10], "delai": 4, "delet": [0, 1, 2, 3, 5, 6, 8, 10, 11], "delete_alia": [2, 5], "delete_alias": [2, 5], "delete_all_guid": [2, 9, 11], "delete_fil": [1, 2], "delete_file_loc": [1, 2, 6], "delete_index_key_path": [2, 5], "delete_nod": [2, 8], "delete_object": [2, 6], "delete_program": [2, 8], "delete_project": [2, 8], "delete_record": [2, 3, 8], "delete_unpacked_packag": 10, "delimet": [11, 12], "delimit": 11, "demograph": 8, "deprec": 1, "descript": [3, 5], "desir": 11, "dest_path": 13, "dest_urlstr": 13, "dest_w": 13, "dest_wskei": 13, "detail": [2, 7, 10], "determin": [10, 11, 12], "dev": 11, "dict": [3, 4, 5, 10, 11, 12], "dictionari": [3, 4, 5, 7, 8], "did": 3, "differ": 5, "direct": 0, "directori": [10, 11], "disabl": 10, "discoveri": 10, "disk": 13, "dispatch": 4, "dist_resolut": 3, "distribut": 3, "doc": [7, 10], "docstr": 2, "document": [1, 3], "doe": [0, 12], "domain": [11, 12], "done": 4, "download": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 13], "download_files_in_drs_manifest": [2, 9, 10], "download_list": 10, "download_manifest": 11, "download_singl": [1, 2], "download_url": [2, 13], "downloadmanag": [2, 9, 10], "downloadstatu": [2, 9, 10], "dr": [2, 9], "drs_download": 10, "drs_hostnam": 10, "drsdownload": 10, "drsobjecttyp": 10, "e": [5, 10], "e043ab8b77b9": 8, "each": [3, 8, 10, 11], "effici": 9, "eg": 3, "either": 8, "elasticsearch": 7, "els": [0, 12], "elsewher": 12, "empti": [8, 11], "enabl": 11, "end": [5, 10], "end_tim": [2, 9, 10], "endpoint": [0, 1, 2, 3, 4, 5, 7, 8, 13], "entir": 8, "entri": [3, 11], "env": 0, "environ": 0, "equal": 7, "error": [10, 11, 12], "error_nam": 11, "etc": 8, "even": 11, "everi": [9, 11], "everyth": 11, "ex": [0, 11, 12], "exampl": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "exclud": 3, "execut": [7, 8, 11], "exist": [1, 3, 5, 6, 9, 12], "expect": [5, 9, 11], "experi": 8, "expir": [0, 1], "expires_in": 1, "export": [8, 10], "export_nod": [2, 8], "export_record": [2, 8], "f1f8": 11, "factori": 10, "fail": [8, 10], "fals": [3, 5, 6, 10, 11], "featur": [1, 6], "fenc": [0, 1], "fetch": 0, "field": [3, 5, 7, 11, 12], "fieldnam": 11, "file": [0, 2, 3, 4, 8, 9, 10, 11, 12, 13], "file_nam": [1, 2, 3, 9, 10, 11], "file_s": [2, 9, 10, 11], "file_st": 3, "fileformat": 8, "filenam": [0, 8, 10, 11, 12], "files": 10, "fill": 12, "filter": [5, 7], "filter_object": 7, "first": [7, 8], "flag": 11, "folder": 11, "follow": [0, 11], "forc": 11, "force_metadata_columns_even_if_empti": 11, "form": 13, "format": [3, 5, 8, 11], "from": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13], "func_to_parse_row": [11, 12], "function": [2, 3, 4, 5, 9, 10, 11, 12], "g": 10, "gen3": [10, 11, 12], "gen3_api_kei": 0, "gen3_oidc_client_creds_secret": 0, "gen3auth": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "gen3fil": [1, 2], "gen3index": [2, 3], "gen3job": [2, 4, 10], "gen3metadata": [2, 5], "gen3object": [2, 6], "gen3queri": [2, 7], "gen3submiss": [2, 8], "gen3wsstorag": [2, 13], "gener": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 13], "get": [0, 1, 2, 3, 4, 5, 8, 10, 11, 12, 13], "get_access_token": [0, 2], "get_access_token_from_wt": [0, 2], "get_alias": [2, 5], "get_all_record": [2, 3], "get_dictionary_al": [2, 8], "get_dictionary_nod": [2, 8], "get_fresh_token": [2, 9, 10], "get_graphql_schema": [2, 8], "get_guid_from_fil": 12, "get_guids_prefix": [2, 3], "get_index_key_path": [2, 5], "get_latest_vers": [2, 3], "get_output": [2, 4], "get_presigned_url": [1, 2], "get_program": [2, 8], "get_project": [2, 8], "get_project_dictionari": [2, 8], "get_project_manifest": [2, 8], "get_record": [2, 3], "get_record_doc": [2, 3], "get_records_on_pag": [2, 3], "get_stat": [2, 3], "get_statu": [2, 4], "get_url": [2, 3], "get_valid_guid": [2, 3], "get_vers": [2, 3, 4, 5], "get_with_param": [2, 3], "giangb": 11, "github": [2, 7], "give": 1, "given": [0, 3, 4, 5, 8, 10, 12, 13], "global": [4, 5], "good": 3, "grant": 0, "graph": 8, "graphql": [7, 8], "graphql_queri": [2, 7], "group": 3, "guid": [1, 2, 3, 5, 6, 9, 11, 12], "guid_exampl": 11, "guid_for_row": 12, "guid_from_fil": 12, "guid_type_for_indexed_file_object": [2, 9, 12], "guid_type_for_non_indexed_file_object": [2, 9, 12], "guppi": 7, "ha": [0, 11], "handl": [3, 10], "hardcod": 0, "has_vers": 3, "hash": [3, 11], "hash_typ": 3, "have": [5, 11], "header": 11, "healthi": [3, 4, 5], "help": 11, "helper": 2, "hit": 11, "host": 10, "hostnam": [2, 9, 10], "how": [8, 11], "howto": 10, "http": [0, 7, 11, 12], "i": [0, 1, 2, 3, 4, 5, 8, 10, 11, 12], "id": [0, 1, 3, 5, 10, 11], "idea": 3, "identifi": [3, 5, 9, 11], "idp": 0, "illustr": 11, "immut": 3, "implement": 0, "implic": 11, "import": 11, "includ": [0, 3], "indent": 10, "index": [0, 2, 5, 9], "index_manifest": 11, "index_object_manifest": [2, 9, 11], "indexd": [1, 3, 6, 10, 11, 12], "indexd_field": [11, 12], "indexd_record_page_s": [2, 9, 11], "indexed_file_object_guid": 12, "indic": [0, 11], "infil": 10, "info": [3, 11], "inform": [2, 3, 10], "ingest": [2, 9], "ingest_manifest": 12, "initi": [0, 10], "input": [4, 10, 11], "input_manifest": 11, "instal": [0, 2, 11], "instanc": [1, 3, 6, 7, 8, 9, 10], "instead": [1, 7, 11], "int": [1, 3, 5, 7, 8, 10, 11, 12], "integ": [1, 3, 8], "intend": 0, "interact": [1, 3, 4, 5, 6, 8, 13], "interest": 10, "interpret": 0, "introspect": 8, "involv": 9, "is_healthi": [2, 3, 4, 5], "is_indexed_file_object": 12, "isn": 1, "issu": 0, "its": [1, 3], "job": 2, "job_id": 4, "job_input": 4, "job_nam": 4, "json": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "just": [5, 11, 12], "jwt": 0, "kei": [0, 3, 5, 13], "know": 11, "known": 10, "kwarg": [3, 4, 5], "l": [2, 13], "larg": 9, "last": 10, "latest": 3, "least": 3, "level": 6, "librari": 11, "like": [3, 5, 9, 11, 12], "limit": [1, 3, 5, 12], "linear": 4, "linux": 10, "list": [0, 1, 3, 4, 5, 7, 8, 10, 11, 13], "list_access_in_drs_manifest": [2, 9, 10], "list_drs_object": [2, 9, 10], "list_files_in_drs_manifest": [2, 9, 10], "list_job": [2, 4], "live": [11, 12], "load": [2, 9, 10], "load_manifest": [2, 9, 10], "local": [0, 13], "locat": [1, 6], "lock": 12, "log": [8, 10, 11, 12], "logic": [5, 12], "loop": 11, "ls_path": [2, 13], "maco": 11, "made": 3, "mai": [0, 9, 11], "main": 10, "make": [9, 11], "manag": [1, 5, 10], "mani": [8, 11], "manifest": [2, 8, 9, 10, 11, 12], "manifest_1": 10, "manifest_fil": [11, 12], "manifest_file_delimit": [11, 12], "manifest_row_pars": [11, 12], "map": [0, 11], "mark": 8, "master": 7, "match": [3, 5, 12], "max": 5, "max_concurrent_request": [2, 9, 11, 12], "max_presigned_url_ttl": 1, "max_tri": 8, "maximum": [11, 12], "md": [5, 7, 10, 12], "md5": [2, 3, 9, 11], "md5_hash": 11, "md5sum": [2, 9, 10], "mean": 8, "mechan": 3, "merg": 5, "metadata": [2, 3, 6, 9, 11], "metadata_list": 5, "metadata_sourc": 12, "metadata_typ": 12, "metdata": 12, "method": [1, 7, 10], "minimum": 10, "minut": 0, "mode": 7, "modul": [2, 10, 11], "more": [2, 5, 7, 9, 10], "most": 9, "mostli": 2, "multipl": [8, 11], "must": [1, 5], "my_common": 10, "my_credenti": 10, "my_field": 7, "my_index": 7, "my_program": 7, "my_project": 7, "name": [3, 4, 8, 10, 11, 12, 13], "namespac": [0, 12], "necessari": [3, 5], "need": [3, 7, 10, 11], "nest": 5, "net": 11, "never": 0, "new": [0, 3], "node": 8, "node_nam": 8, "node_typ": 8, "none": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "note": [0, 3, 11, 12], "noth": [3, 6], "now": [1, 8], "num": 5, "num_process": 11, "num_total_fil": 11, "number": [3, 7, 8, 11, 12], "o": 0, "object": [1, 2, 3, 4, 5, 7, 8, 9, 10, 11, 13], "object_id": [1, 2, 9, 10], "object_list": 10, "object_typ": [2, 9, 10], "objectid": 10, "obtain": [0, 10], "occur": 10, "off": 5, "offset": [5, 7], "oidc": 0, "old": 3, "one": [3, 5, 10, 11], "onli": [3, 5, 7, 8, 10, 11], "open": [8, 10, 11], "open_project": [2, 8], "openid": 0, "opt": 0, "option": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11], "order": [0, 8], "ordered_node_list": 8, "org": 10, "otherwis": 10, "output": [4, 5, 11, 12], "output_dir": 10, "output_filenam": [11, 12], "overrid": [0, 11, 12], "overwrit": 5, "own": 0, "packag": 10, "page": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 13], "pagin": 3, "parallel": 11, "param": [3, 5, 8, 10], "paramet": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "pars": [10, 11, 12, 13], "parser": [11, 12], "particular": 0, "pass": [0, 7, 8, 10], "password": [11, 12], "path": [0, 1, 5, 10, 11, 13], "path_to_manifest": 11, "pattern": [3, 12], "pdcdatastor": 11, "pend": 10, "per": [11, 12], "peregrin": 8, "permiss": 10, "persist": 9, "phs0001": 11, "phs0002": 11, "pick": 1, "pla": 11, "place": 11, "planx": 11, "point": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "popul": [10, 12], "posit": [1, 7], "possibl": 10, "post": [0, 11], "pprint": [2, 9, 10], "prefix": 3, "presign": 1, "pretti": 10, "prev_guid": [2, 9, 11], "previou": [3, 11], "previous": 4, "print": [8, 10], "process": 11, "processed_fil": 11, "profil": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "program": [8, 11], "progress": [8, 10], "project": [8, 11], "project_id": [7, 8], "protocol": 1, "provid": [0, 1, 3, 5, 7, 8, 12], "public": [3, 5], "put": 0, "py": 11, "python": [2, 9, 11], "python3": 11, "python_subprocess_command": 11, "queri": [1, 2, 3, 5, 8, 11, 12], "query_str": 7, "query_txt": [7, 8], "query_url": [2, 3], "quickstart": 2, "rather": 0, "raw": [7, 11], "raw_data_download": [2, 7], "rbac": 3, "read": [3, 5, 11], "readm": 2, "reason": 10, "record": [1, 3, 5, 7, 8, 11, 12], "refresh": [0, 10], "refresh_access_token": [0, 2], "refresh_fil": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "refresh_token": 0, "regist": 8, "regular": 7, "relat": 9, "remov": [1, 6, 11, 13], "replac": 11, "replace_url": 11, "repo": 2, "repres": [3, 5, 10], "represent": [1, 3], "request": [0, 1, 3, 5, 8, 11, 12], "requir": 10, "resolv": 10, "resolve_object": [2, 9, 10], "respect": 7, "respons": [0, 1, 3, 4, 5], "result": [1, 8, 10, 11], "retri": 8, "retriev": [1, 8, 10, 12], "return": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11], "return_full_metadata": 5, "rev": 3, "revers": 8, "revis": 3, "right": 1, "rm": [2, 13], "rm_path": [2, 13], "root": [11, 12], "row": [7, 8, 11, 12], "row_offset": 8, "rtype": 3, "run": [8, 11], "s3": [1, 10, 11], "safe": 11, "same": [5, 11, 13], "sampl": [8, 10], "sandbox": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "save": 10, "save_directori": 10, "schema": 8, "scope": [0, 1], "screen": 8, "script": 2, "search": [0, 2, 3], "second": [1, 4], "secret": 0, "see": [7, 10, 11], "self": 10, "semaphon": 12, "semaphor": 12, "separ": [0, 11], "server": 10, "servic": [1, 3, 4, 5, 6, 8, 11, 12, 13], "service_loc": [3, 4, 5], "session": 11, "set": [0, 1, 5, 10], "setup": 2, "sheepdog": 8, "should": [0, 8, 11], "show": 10, "show_progress": 10, "shown": 11, "sign": 1, "signpost": 3, "similar": 10, "simpl": 3, "simpli": 11, "sinc": 3, "singl": [1, 5, 8], "size": [2, 3, 9, 10, 11], "skip": 8, "sleep": 4, "so": 11, "some": [0, 2], "someth": 11, "sort": 7, "sort_field": 7, "sort_object": 7, "sourc": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "space": [0, 11], "specif": [5, 8, 11, 12], "specifi": [0, 1, 3, 11, 13], "spreadsheet": 8, "src_path": 13, "src_urlstr": 13, "src_w": 13, "src_wskei": 13, "ssl": [3, 4, 5], "start": [3, 4, 7, 8, 10], "start_tim": [2, 9, 10], "static": 10, "statu": [2, 4, 9, 10], "storag": [1, 2, 6], "store": [1, 3, 10], "str": [0, 1, 3, 4, 5, 7, 8, 10, 11, 12], "string": [0, 3, 5, 11, 13], "strip": 11, "sub": 8, "subject": [7, 8], "submiss": 2, "submit": [8, 11], "submit_additional_metadata_column": 11, "submit_fil": [2, 8], "submit_record": [2, 8], "submitter_id": 7, "success": 10, "successfulli": 10, "suffici": 3, "suppli": 3, "support": [0, 1, 5, 8, 11], "sure": 1, "synchron": 11, "syntax": 7, "system": [6, 7, 8, 9], "t": [1, 5, 11], "tab": 11, "task": 9, "temporari": 11, "test": 11, "test1": 11, "test2": 11, "test3": 11, "test4": 11, "test5": 11, "text": [1, 7, 8], "than": [0, 5], "thei": [0, 10], "them": [10, 11], "thi": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "those": 11, "thread": 11, "thread_num": 11, "threadcontrol": [2, 9, 11], "through": [8, 11], "tier": 7, "time": [1, 3, 8, 10, 11], "timestamp": 10, "tmp_folder": [2, 9, 11], "token": [0, 10], "tool": 2, "total": 11, "treat": [1, 5], "tree": 10, "true": [3, 4, 5, 6, 7, 8, 10, 11, 12], "try": 0, "tsv": [8, 11, 12], "tupl": [0, 3, 11, 12], "type": [1, 3, 4, 5, 7, 8, 10, 11, 12], "typic": 10, "uc": 7, "unaccess": 7, "under": [0, 8, 13], "uniqu": [1, 5], "unknown": 10, "unpack": 10, "unpack_packag": 10, "until": [4, 10], "up": [5, 9], "updat": [2, 3, 5, 10, 11], "update_alias": [2, 5], "update_blank": [2, 3], "update_record": [2, 3], "updated_tim": [2, 9, 10], "upload": [1, 2, 3, 8, 13], "upload_fil": [1, 2], "upload_file_to_guid": [1, 2], "upload_url": [2, 13], "url": [1, 2, 3, 9, 10, 11, 12, 13], "urls_metadata": 3, "us": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "usag": 11, "use_agg_md": 5, "user": [0, 10, 12], "user_access": [2, 9, 10], "usual": 12, "utcnow": 1, "util": 9, "uuid": [1, 3, 8], "uuid1": 8, "uuid2": 8, "valid": [3, 7], "valu": [0, 1, 3, 5, 7, 10, 11], "value_from_indexd": 11, "value_from_manifest": 11, "variabl": [0, 7, 8], "variou": 2, "verbos": [7, 8], "verif": 11, "verifi": [2, 9], "verify_manifest": 11, "verify_object_manifest": 11, "version": [3, 4, 5], "vital_statu": 7, "w": 13, "wa": 0, "wai": 10, "wait": 4, "want": [0, 3, 8], "warn": 11, "we": [3, 11], "web": 0, "what": 5, "when": [0, 3, 7, 10, 12], "where": [0, 3, 5, 11, 12], "whether": [3, 4, 5, 8, 11, 12], "which": [8, 10], "while": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "whose": 5, "within": [0, 2, 9], "without": [3, 5], "won": 5, "work": [0, 10], "workaround": 11, "worksheet": 8, "workspac": [0, 2], "wrapper": 10, "write": 11, "ws_urlstr": 13, "wskei": 13, "wss": 13, "wt": [0, 10], "x": 11, "xlsx": 8, "you": [0, 3, 8, 11], "your": 0}, "titles": ["Gen3 Auth Helper", "Gen3 File Class", "Welcome to Gen3 SDK\u2019s documentation!", "Gen3 Index Class", "Gen3 Jobs Class", "Gen3 Metadata Class", "Gen3 Object Class", "Gen3 Query Class", "Gen3 Submission Class", "Gen3 Tools", "DRS Download Tools", "Indexing Tools", "Metadata Tools", "Gen3 Workspace Storage"], "titleterms": {"": 2, "auth": 0, "class": [1, 3, 4, 5, 6, 7, 8], "document": 2, "download": [10, 11], "dr": 10, "file": 1, "gen3": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 13], "helper": 0, "index": [3, 11], "indic": 2, "ingest": 12, "job": 4, "metadata": [5, 12], "object": 6, "queri": 7, "sdk": 2, "storag": 13, "submiss": 8, "tabl": 2, "tool": [9, 10, 11, 12], "verifi": 11, "welcom": 2, "workspac": 13}}) \ No newline at end of file diff --git a/docs/_build/html/submission.html b/docs/_build/html/submission.html index edc7b38db..69a9f5e5d 100644 --- a/docs/_build/html/submission.html +++ b/docs/_build/html/submission.html @@ -9,7 +9,7 @@ - + @@ -514,7 +514,7 @@

Related Topics

- + diff --git a/docs/_build/html/tools.html b/docs/_build/html/tools.html index 49e7af7d0..0dddee8a4 100644 --- a/docs/_build/html/tools.html +++ b/docs/_build/html/tools.html @@ -9,7 +9,7 @@ - + @@ -185,7 +185,7 @@

Related Topics

- + diff --git a/docs/_build/html/tools/drs_pull.html b/docs/_build/html/tools/drs_pull.html index eb16ffd32..8148d1361 100644 --- a/docs/_build/html/tools/drs_pull.html +++ b/docs/_build/html/tools/drs_pull.html @@ -9,7 +9,7 @@ - + @@ -76,7 +76,7 @@
Parameters:
    -
  • object_list (List[Downloadable]) –

  • +
  • object_list (List[Downloadable])

  • save_directory (str) – directory to save to (will be created)

  • show_progress (bool) – show a download progress bar

  • unpack_packages (bool) – set to False to disable the unpacking of downloaded packages

  • @@ -573,7 +573,7 @@

    Related Topics

- + diff --git a/docs/_build/html/tools/indexing.html b/docs/_build/html/tools/indexing.html index 4647d50ac..11632e1f5 100644 --- a/docs/_build/html/tools/indexing.html +++ b/docs/_build/html/tools/indexing.html @@ -9,7 +9,7 @@ - + @@ -381,7 +381,7 @@

Indexing Tools
-async gen3.tools.indexing.verify_manifest.async_verify_object_manifest(commons_url, manifest_file, max_concurrent_requests=24, manifest_row_parsers={'acl': <function _get_acl_from_row>, 'authz': <function _get_authz_from_row>, 'file_name': <function _get_file_name_from_row>, 'file_size': <function _get_file_size_from_row>, 'guid': <function _get_guid_from_row>, 'md5': <function _get_md5_from_row>, 'urls': <function _get_urls_from_row>}, manifest_file_delimiter=None, output_filename='verify-manifest-errors-1711461363.0524344.log')[source]
+async gen3.tools.indexing.verify_manifest.async_verify_object_manifest(commons_url, manifest_file, max_concurrent_requests=24, manifest_row_parsers={'acl': <function _get_acl_from_row>, 'authz': <function _get_authz_from_row>, 'file_name': <function _get_file_name_from_row>, 'file_size': <function _get_file_size_from_row>, 'guid': <function _get_guid_from_row>, 'md5': <function _get_md5_from_row>, 'urls': <function _get_urls_from_row>}, manifest_file_delimiter=None, output_filename='verify-manifest-errors-1713542306.4649727.log')[source]

Verify all file object records into a manifest csv

Parameters:
@@ -483,7 +483,7 @@

Related Topics

- + diff --git a/docs/_build/html/tools/metadata.html b/docs/_build/html/tools/metadata.html index 5d5f99763..e2cec6ac5 100644 --- a/docs/_build/html/tools/metadata.html +++ b/docs/_build/html/tools/metadata.html @@ -9,7 +9,7 @@ - + @@ -102,7 +102,7 @@

Metadata Tools
-async gen3.tools.metadata.ingest_manifest.async_ingest_metadata_manifest(commons_url, manifest_file, metadata_source, auth=None, max_concurrent_requests=24, manifest_row_parsers={'guid_for_row': <function _get_guid_for_row>, 'indexed_file_object_guid': <function _query_for_associated_indexd_record_guid>}, manifest_file_delimiter=None, output_filename='ingest-metadata-manifest-errors-1711461363.3879402.log', get_guid_from_file=True, metadata_type=None)[source]
+async gen3.tools.metadata.ingest_manifest.async_ingest_metadata_manifest(commons_url, manifest_file, metadata_source, auth=None, max_concurrent_requests=24, manifest_row_parsers={'guid_for_row': <function _get_guid_for_row>, 'indexed_file_object_guid': <function _query_for_associated_indexd_record_guid>}, manifest_file_delimiter=None, output_filename='ingest-metadata-manifest-errors-1713542306.760149.log', get_guid_from_file=True, metadata_type=None)[source]

Ingest all metadata records into a manifest csv

Parameters:
@@ -218,7 +218,7 @@

Related Topics

- + diff --git a/docs/_build/html/wss.html b/docs/_build/html/wss.html index e2d7abfc5..e3daccc57 100644 --- a/docs/_build/html/wss.html +++ b/docs/_build/html/wss.html @@ -9,7 +9,7 @@ - + @@ -215,7 +215,7 @@

Related Topics

- + From d359aff78eabd799db4ac5622683c9af5ca2e08a Mon Sep 17 00:00:00 2001 From: Alex Date: Fri, 19 Apr 2024 11:04:50 -0500 Subject: [PATCH 03/62] feat(pyinstaller): actually install pyinstaller --- .github/workflows/build.yaml | 10 ++++------ 1 file changed, 4 insertions(+), 6 deletions(-) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index 29b87f145..1b563bcb7 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -1,9 +1,6 @@ -on: - # run on pushed commits to master and on new commits on pull requests - push: - pull_request: - types: [opened, synchronize] - +# push will run on every pushed commit to any branch (so this will rerun the tests +# once a branch gets merged to main in addition to any new commits on any branch) +on: push name: Build @@ -40,6 +37,7 @@ jobs: shell: bash - name: Build using pyinstaller run: | + pip install pyinstaller==6.6.0 pyinstaller --name gen3 --hidden-import gen3users --onefile ./gen3/cli/__main__.py - name: Test build run: | From 29389b1725802f212c165dbb40e32b9aba576245 Mon Sep 17 00:00:00 2001 From: Avantol13 Date: Fri, 19 Apr 2024 16:06:09 +0000 Subject: [PATCH 04/62] Apply automatic documentation changes --- docs/_build/doctrees/environment.pickle | Bin 1579407 -> 1579893 bytes docs/_build/doctrees/tools/indexing.doctree | Bin 100291 -> 100291 bytes docs/_build/doctrees/tools/metadata.doctree | Bin 35929 -> 35934 bytes docs/_build/html/searchindex.js | 2 +- docs/_build/html/tools/indexing.html | 2 +- docs/_build/html/tools/metadata.html | 2 +- 6 files changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/_build/doctrees/environment.pickle b/docs/_build/doctrees/environment.pickle index ef13d98d400bfc13799704499258d9200aa87cb5..476664b58d0f159232a4c2554c00300ac1cf3f97 100644 GIT binary patch literal 1579893 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

YV}2_UQBys@&3GvkC+t+!H{RmoR!XvtbiL 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¨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�!H}g`ha;wV*S?ZHzD$dp0UwJR1Eo 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�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 WKYik#l56g1y#HREr&r_gR{9TU?|qm6 diff --git a/docs/_build/doctrees/tools/indexing.doctree b/docs/_build/doctrees/tools/indexing.doctree index 7067de4ddb4952edaa5611a14c00691cb389043d..88d547397a4a75b08f6c71a1ba0f86e1e13a16f4 100644 GIT binary patch delta 99 zcmX@y&vv+(Ug}J%0spuHVYR=rQ@NxdndO7*&>QgeL IZ&4o%0OS=cM*si- diff --git a/docs/_build/html/searchindex.js b/docs/_build/html/searchindex.js index e593ce3f0..a024a8c00 100644 --- a/docs/_build/html/searchindex.js +++ b/docs/_build/html/searchindex.js @@ -1 +1 @@ -Search.setIndex({"alltitles": {"DRS Download Tools": [[10, "module-gen3.tools.download.drs_download"]], "Download": [[11, "module-gen3.tools.indexing.download_manifest"]], "Gen3 Auth Helper": [[0, "gen3-auth-helper"]], "Gen3 File Class": [[1, "gen3-file-class"]], "Gen3 Index Class": [[3, "gen3-index-class"]], "Gen3 Jobs Class": [[4, "gen3-jobs-class"]], "Gen3 Metadata Class": [[5, "gen3-metadata-class"]], "Gen3 Object Class": [[6, "gen3-object-class"]], "Gen3 Query Class": [[7, "gen3-query-class"]], "Gen3 Submission Class": [[8, "gen3-submission-class"]], "Gen3 Tools": [[9, "gen3-tools"]], "Gen3 Workspace Storage": [[13, "gen3-workspace-storage"]], "Index": [[11, "module-gen3.tools.indexing.index_manifest"]], "Indexing Tools": [[11, "indexing-tools"]], "Indices and tables": [[2, "indices-and-tables"]], "Ingest": [[12, "module-gen3.tools.metadata.ingest_manifest"]], "Metadata Tools": [[12, "metadata-tools"]], "Verify": [[11, "module-gen3.tools.indexing.verify_manifest"]], "Welcome to Gen3 SDK\u2019s documentation!": [[2, "welcome-to-gen3-sdk-s-documentation"]]}, "docnames": ["auth", "file", "index", "indexing", "jobs", "metadata", "object", "query", "submission", "tools", "tools/drs_pull", "tools/indexing", "tools/metadata", "wss"], "envversion": {"sphinx": 61, "sphinx.domains.c": 3, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 9, "sphinx.domains.index": 1, "sphinx.domains.javascript": 3, "sphinx.domains.math": 2, "sphinx.domains.python": 4, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx.ext.viewcode": 1}, "filenames": ["auth.rst", "file.rst", "index.rst", "indexing.rst", "jobs.rst", "metadata.rst", "object.rst", "query.rst", "submission.rst", "tools.rst", "tools/drs_pull.rst", "tools/indexing.rst", "tools/metadata.rst", "wss.rst"], "indexentries": {"_manager (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable._manager", false]], "access_methods (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.access_methods", false]], "acls (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.ACLS", false]], "async_create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_create", false]], "async_create_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_create_aliases", false]], "async_create_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_create_record", false]], "async_delete_alias() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_delete_alias", false]], "async_delete_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_delete_aliases", false]], "async_download_object_manifest() (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.async_download_object_manifest", false]], "async_get() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_get", false]], "async_get_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_get_aliases", false]], "async_get_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_record", false]], "async_get_records_from_checksum() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_records_from_checksum", false]], "async_get_records_on_page() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_records_on_page", false]], "async_get_with_params() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_with_params", false]], "async_ingest_metadata_manifest() (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.async_ingest_metadata_manifest", false]], "async_query_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_query_urls", false]], "async_query_urls_from_indexd() (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.async_query_urls_from_indexd", false]], "async_run_job_and_wait() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.async_run_job_and_wait", false]], "async_update() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_update", false]], "async_update_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_update_aliases", false]], "async_update_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_update_record", false]], "async_verify_object_manifest() (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.async_verify_object_manifest", false]], "auth_provider (gen3.metadata.gen3metadata attribute)": [[5, "gen3.metadata.Gen3Metadata.auth_provider", false]], "authz (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.AUTHZ", false]], "batch_create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.batch_create", false]], "cache_hosts_wts_tokens() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.cache_hosts_wts_tokens", false]], "children (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.children", false]], "column_to_use_as_guid (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.COLUMN_TO_USE_AS_GUID", false]], "commons_url (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.commons_url", false]], "copy() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.copy", false]], "create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create", false]], "create_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create_aliases", false]], "create_blank() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_blank", false]], "create_index_key_path() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create_index_key_path", false]], "create_job() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.create_job", false]], "create_new_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_new_version", false]], "create_object_list() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.create_object_list", false]], "create_program() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.create_program", false]], "create_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.create_project", false]], "create_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_record", false]], "created_time (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.created_time", false]], "curl() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.curl", false]], "current_dir (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.CURRENT_DIR", false]], "current_dir (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.CURRENT_DIR", false]], "current_dir (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.CURRENT_DIR", false]], "delete() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete", false]], "delete_alias() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_alias", false]], "delete_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_aliases", false]], "delete_all_guids() (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.delete_all_guids", false]], "delete_file() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.delete_file", false]], "delete_file_locations() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.delete_file_locations", false]], "delete_index_key_path() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_index_key_path", false]], "delete_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_node", false]], "delete_nodes() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_nodes", false]], "delete_object() (gen3.object.gen3object method)": [[6, "gen3.object.Gen3Object.delete_object", false]], "delete_program() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_program", false]], "delete_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_project", false]], "delete_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.delete_record", false]], "delete_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_record", false]], "delete_records() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_records", false]], "download() (gen3.tools.download.drs_download.downloadable method)": [[10, "gen3.tools.download.drs_download.Downloadable.download", false]], "download() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.download", false]], "download() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.download", false]], "download_files_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.download_files_in_drs_manifest", false]], "download_single() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.download_single", false]], "download_url() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.download_url", false]], "downloadable (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.Downloadable", false]], "downloadmanager (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.DownloadManager", false]], "downloadstatus (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.DownloadStatus", false]], "end_time (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.end_time", false]], "endpoint (gen3.metadata.gen3metadata attribute)": [[5, "gen3.metadata.Gen3Metadata.endpoint", false]], "export_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.export_node", false]], "export_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.export_record", false]], "file_name (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.file_name", false]], "file_name (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.file_name", false]], "file_size (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.file_size", false]], "file_size (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.file_size", false]], "gen3.tools": [[9, "module-gen3.tools", false]], "gen3.tools.download.drs_download": [[10, "module-gen3.tools.download.drs_download", false]], "gen3.tools.indexing.download_manifest": [[11, "module-gen3.tools.indexing.download_manifest", false]], "gen3.tools.indexing.index_manifest": [[11, "module-gen3.tools.indexing.index_manifest", false]], "gen3.tools.indexing.verify_manifest": [[11, "module-gen3.tools.indexing.verify_manifest", false]], "gen3.tools.metadata.ingest_manifest": [[12, "module-gen3.tools.metadata.ingest_manifest", false]], "gen3auth (class in gen3.auth)": [[0, "gen3.auth.Gen3Auth", false]], "gen3file (class in gen3.file)": [[1, "gen3.file.Gen3File", false]], "gen3index (class in gen3.index)": [[3, "gen3.index.Gen3Index", false]], "gen3jobs (class in gen3.jobs)": [[4, "gen3.jobs.Gen3Jobs", false]], "gen3metadata (class in gen3.metadata)": [[5, "gen3.metadata.Gen3Metadata", false]], "gen3object (class in gen3.object)": [[6, "gen3.object.Gen3Object", false]], "gen3query (class in gen3.query)": [[7, "gen3.query.Gen3Query", false]], "gen3submission (class in gen3.submission)": [[8, "gen3.submission.Gen3Submission", false]], "gen3wsstorage (class in gen3.wss)": [[13, "gen3.wss.Gen3WsStorage", false]], "get() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get", false]], "get() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get", false]], "get_access_token() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.get_access_token", false]], "get_access_token_from_wts() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.get_access_token_from_wts", false]], "get_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_aliases", false]], "get_all_records() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_all_records", false]], "get_dictionary_all() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_dictionary_all", false]], "get_dictionary_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_dictionary_node", false]], "get_fresh_token() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.get_fresh_token", false]], "get_graphql_schema() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_graphql_schema", false]], "get_guids_prefix() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_guids_prefix", false]], "get_index_key_paths() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_index_key_paths", false]], "get_latest_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_latest_version", false]], "get_output() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_output", false]], "get_presigned_url() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.get_presigned_url", false]], "get_programs() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_programs", false]], "get_project_dictionary() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_project_dictionary", false]], "get_project_manifest() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_project_manifest", false]], "get_projects() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_projects", false]], "get_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_record", false]], "get_record_doc() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_record_doc", false]], "get_records() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_records", false]], "get_records_on_page() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_records_on_page", false]], "get_stats() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_stats", false]], "get_status() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_status", false]], "get_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_urls", false]], "get_valid_guids() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_valid_guids", false]], "get_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_version", false]], "get_version() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_version", false]], "get_version() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_version", false]], "get_versions() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_versions", false]], "get_with_params() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_with_params", false]], "graphql_query() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.graphql_query", false]], "guid (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.GUID", false]], "guid_type_for_indexed_file_object (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.GUID_TYPE_FOR_INDEXED_FILE_OBJECT", false]], "guid_type_for_non_indexed_file_object (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.GUID_TYPE_FOR_NON_INDEXED_FILE_OBJECT", false]], "hostname (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.hostname", false]], "index_object_manifest() (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.index_object_manifest", false]], "indexd_record_page_size (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.INDEXD_RECORD_PAGE_SIZE", false]], "is_healthy() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.is_healthy", false]], "is_healthy() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.is_healthy", false]], "is_healthy() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.is_healthy", false]], "list_access_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_access_in_drs_manifest", false]], "list_drs_object() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_drs_object", false]], "list_files_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_files_in_drs_manifest", false]], "list_jobs() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.list_jobs", false]], "load() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.load", false]], "load_manifest() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.load_manifest", false]], "ls() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.ls", false]], "ls_path() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.ls_path", false]], "manifest (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.Manifest", false]], "max_concurrent_requests (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.MAX_CONCURRENT_REQUESTS", false]], "max_concurrent_requests (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.MAX_CONCURRENT_REQUESTS", false]], "max_concurrent_requests (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.MAX_CONCURRENT_REQUESTS", false]], "md5 (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.MD5", false]], "md5sum (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.md5sum", false]], "module": [[9, "module-gen3.tools", false], [10, "module-gen3.tools.download.drs_download", false], [11, "module-gen3.tools.indexing.download_manifest", false], [11, "module-gen3.tools.indexing.index_manifest", false], [11, "module-gen3.tools.indexing.verify_manifest", false], [12, "module-gen3.tools.metadata.ingest_manifest", false]], "object_id (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.object_id", false]], "object_id (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.object_id", false]], "object_type (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.object_type", false]], "open_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.open_project", false]], "pprint() (gen3.tools.download.drs_download.downloadable method)": [[10, "gen3.tools.download.drs_download.Downloadable.pprint", false]], "prev_guid (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.PREV_GUID", false]], "query() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.query", false]], "query() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.query", false]], "query() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.query", false]], "query_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.query_urls", false]], "raw_data_download() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.raw_data_download", false]], "refresh_access_token() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.refresh_access_token", false]], "resolve_objects() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.resolve_objects", false]], "rm() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.rm", false]], "rm_path() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.rm_path", false]], "size (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.SIZE", false]], "start_time (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.start_time", false]], "status (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.status", false]], "submit_file() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.submit_file", false]], "submit_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.submit_record", false]], "threadcontrol (class in gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.ThreadControl", false]], "tmp_folder (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.TMP_FOLDER", false]], "update() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.update", false]], "update_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.update_aliases", false]], "update_blank() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.update_blank", false]], "update_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.update_record", false]], "updated_time (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.updated_time", false]], "upload() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.upload", false]], "upload_file() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.upload_file", false]], "upload_file_to_guid() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.upload_file_to_guid", false]], "upload_url() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.upload_url", false]], "urls (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.URLS", false]], "user_access() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.user_access", false]]}, "objects": {"gen3": [[9, 3, 0, "-", "tools"]], "gen3.auth": [[0, 0, 1, "", "Gen3Auth"]], "gen3.auth.Gen3Auth": [[0, 1, 1, "", "curl"], [0, 1, 1, "", "get_access_token"], [0, 1, 1, "", "get_access_token_from_wts"], [0, 1, 1, "", "refresh_access_token"]], "gen3.file": [[1, 0, 1, "", "Gen3File"]], "gen3.file.Gen3File": [[1, 1, 1, "", "delete_file"], [1, 1, 1, "", "delete_file_locations"], [1, 1, 1, "", "download_single"], [1, 1, 1, "", "get_presigned_url"], [1, 1, 1, "", "upload_file"], [1, 1, 1, "", "upload_file_to_guid"]], "gen3.index": [[3, 0, 1, "", "Gen3Index"]], "gen3.index.Gen3Index": [[3, 1, 1, "", "async_create_record"], [3, 1, 1, "", "async_get_record"], [3, 1, 1, "", "async_get_records_from_checksum"], [3, 1, 1, "", "async_get_records_on_page"], [3, 1, 1, "", "async_get_with_params"], [3, 1, 1, "", "async_query_urls"], [3, 1, 1, "", "async_update_record"], [3, 1, 1, "", "create_blank"], [3, 1, 1, "", "create_new_version"], [3, 1, 1, "", "create_record"], [3, 1, 1, "", "delete_record"], [3, 1, 1, "", "get"], [3, 1, 1, "", "get_all_records"], [3, 1, 1, "", "get_guids_prefix"], [3, 1, 1, "", "get_latest_version"], [3, 1, 1, "", "get_record"], [3, 1, 1, "", "get_record_doc"], [3, 1, 1, "", "get_records"], [3, 1, 1, "", "get_records_on_page"], [3, 1, 1, "", "get_stats"], [3, 1, 1, "", "get_urls"], [3, 1, 1, "", "get_valid_guids"], [3, 1, 1, "", "get_version"], [3, 1, 1, "", "get_versions"], [3, 1, 1, "", "get_with_params"], [3, 1, 1, "", "is_healthy"], [3, 1, 1, "", "query_urls"], [3, 1, 1, "", "update_blank"], [3, 1, 1, "", "update_record"]], "gen3.jobs": [[4, 0, 1, "", "Gen3Jobs"]], "gen3.jobs.Gen3Jobs": [[4, 1, 1, "", "async_run_job_and_wait"], [4, 1, 1, "", "create_job"], [4, 1, 1, "", "get_output"], [4, 1, 1, "", "get_status"], [4, 1, 1, "", "get_version"], [4, 1, 1, "", "is_healthy"], [4, 1, 1, "", "list_jobs"]], "gen3.metadata": [[5, 0, 1, "", "Gen3Metadata"]], "gen3.metadata.Gen3Metadata": [[5, 1, 1, "", "async_create"], [5, 1, 1, "", "async_create_aliases"], [5, 1, 1, "", "async_delete_alias"], [5, 1, 1, "", "async_delete_aliases"], [5, 1, 1, "", "async_get"], [5, 1, 1, "", "async_get_aliases"], [5, 1, 1, "", "async_update"], [5, 1, 1, "", "async_update_aliases"], [5, 2, 1, "", "auth_provider"], [5, 1, 1, "", "batch_create"], [5, 1, 1, "", "create"], [5, 1, 1, "", "create_aliases"], [5, 1, 1, "", "create_index_key_path"], [5, 1, 1, "", "delete"], [5, 1, 1, "", "delete_alias"], [5, 1, 1, "", "delete_aliases"], [5, 1, 1, "", "delete_index_key_path"], [5, 2, 1, "", "endpoint"], [5, 1, 1, "", "get"], [5, 1, 1, "", "get_aliases"], [5, 1, 1, "", "get_index_key_paths"], [5, 1, 1, "", "get_version"], [5, 1, 1, "", "is_healthy"], [5, 1, 1, "", "query"], [5, 1, 1, "", "update"], [5, 1, 1, "", "update_aliases"]], "gen3.object": [[6, 0, 1, "", "Gen3Object"]], "gen3.object.Gen3Object": [[6, 1, 1, "", "delete_object"]], "gen3.query": [[7, 0, 1, "", "Gen3Query"]], "gen3.query.Gen3Query": [[7, 1, 1, "", "graphql_query"], [7, 1, 1, "", "query"], [7, 1, 1, "", "raw_data_download"]], "gen3.submission": [[8, 0, 1, "", "Gen3Submission"]], "gen3.submission.Gen3Submission": [[8, 1, 1, "", "create_program"], [8, 1, 1, "", "create_project"], [8, 1, 1, "", "delete_node"], [8, 1, 1, "", "delete_nodes"], [8, 1, 1, "", "delete_program"], [8, 1, 1, "", "delete_project"], [8, 1, 1, "", "delete_record"], [8, 1, 1, "", "delete_records"], [8, 1, 1, "", "export_node"], [8, 1, 1, "", "export_record"], [8, 1, 1, "", "get_dictionary_all"], [8, 1, 1, "", "get_dictionary_node"], [8, 1, 1, "", "get_graphql_schema"], [8, 1, 1, "", "get_programs"], [8, 1, 1, "", "get_project_dictionary"], [8, 1, 1, "", "get_project_manifest"], [8, 1, 1, "", "get_projects"], [8, 1, 1, "", "open_project"], [8, 1, 1, "", "query"], [8, 1, 1, "", "submit_file"], [8, 1, 1, "", "submit_record"]], "gen3.tools.download": [[10, 3, 0, "-", "drs_download"]], "gen3.tools.download.drs_download": [[10, 0, 1, "", "DownloadManager"], [10, 0, 1, "", "DownloadStatus"], [10, 0, 1, "", "Downloadable"], [10, 0, 1, "", "Manifest"], [10, 4, 1, "", "download_files_in_drs_manifest"], [10, 4, 1, "", "list_access_in_drs_manifest"], [10, 4, 1, "", "list_drs_object"], [10, 4, 1, "", "list_files_in_drs_manifest"]], "gen3.tools.download.drs_download.DownloadManager": [[10, 1, 1, "", "cache_hosts_wts_tokens"], [10, 1, 1, "", "download"], [10, 1, 1, "", "get_fresh_token"], [10, 1, 1, "", "resolve_objects"], [10, 1, 1, "", "user_access"]], "gen3.tools.download.drs_download.DownloadStatus": [[10, 2, 1, "", "end_time"], [10, 2, 1, "", "start_time"], [10, 2, 1, "", "status"]], "gen3.tools.download.drs_download.Downloadable": [[10, 2, 1, "", "_manager"], [10, 2, 1, "", "access_methods"], [10, 2, 1, "", "children"], [10, 2, 1, "", "created_time"], [10, 1, 1, "", "download"], [10, 2, 1, "", "file_name"], [10, 2, 1, "", "file_size"], [10, 2, 1, "", "hostname"], [10, 2, 1, "", "object_id"], [10, 2, 1, "", "object_type"], [10, 1, 1, "", "pprint"], [10, 2, 1, "", "updated_time"]], "gen3.tools.download.drs_download.Manifest": [[10, 2, 1, "", "commons_url"], [10, 1, 1, "", "create_object_list"], [10, 2, 1, "", "file_name"], [10, 2, 1, "", "file_size"], [10, 1, 1, "", "load"], [10, 1, 1, "", "load_manifest"], [10, 2, 1, "", "md5sum"], [10, 2, 1, "", "object_id"]], "gen3.tools.indexing": [[11, 3, 0, "-", "download_manifest"], [11, 3, 0, "-", "index_manifest"], [11, 3, 0, "-", "verify_manifest"]], "gen3.tools.indexing.download_manifest": [[11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "INDEXD_RECORD_PAGE_SIZE"], [11, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [11, 2, 1, "", "TMP_FOLDER"], [11, 4, 1, "", "async_download_object_manifest"]], "gen3.tools.indexing.index_manifest": [[11, 2, 1, "", "ACLS"], [11, 2, 1, "", "AUTHZ"], [11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "GUID"], [11, 2, 1, "", "MD5"], [11, 2, 1, "", "PREV_GUID"], [11, 2, 1, "", "SIZE"], [11, 0, 1, "", "ThreadControl"], [11, 2, 1, "", "URLS"], [11, 4, 1, "", "delete_all_guids"], [11, 4, 1, "", "index_object_manifest"]], "gen3.tools.indexing.verify_manifest": [[11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [11, 4, 1, "", "async_verify_object_manifest"]], "gen3.tools.metadata": [[12, 3, 0, "-", "ingest_manifest"]], "gen3.tools.metadata.ingest_manifest": [[12, 2, 1, "", "COLUMN_TO_USE_AS_GUID"], [12, 2, 1, "", "GUID_TYPE_FOR_INDEXED_FILE_OBJECT"], [12, 2, 1, "", "GUID_TYPE_FOR_NON_INDEXED_FILE_OBJECT"], [12, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [12, 4, 1, "", "async_ingest_metadata_manifest"], [12, 4, 1, "", "async_query_urls_from_indexd"]], "gen3.wss": [[13, 0, 1, "", "Gen3WsStorage"]], "gen3.wss.Gen3WsStorage": [[13, 1, 1, "", "copy"], [13, 1, 1, "", "download"], [13, 1, 1, "", "download_url"], [13, 1, 1, "", "ls"], [13, 1, 1, "", "ls_path"], [13, 1, 1, "", "rm"], [13, 1, 1, "", "rm_path"], [13, 1, 1, "", "upload"], [13, 1, 1, "", "upload_url"]]}, "objnames": {"0": ["py", "class", "Python class"], "1": ["py", "method", "Python method"], "2": ["py", "attribute", "Python attribute"], "3": ["py", "module", "Python module"], "4": ["py", "function", "Python function"]}, "objtypes": {"0": "py:class", "1": "py:method", "2": "py:attribute", "3": "py:module", "4": "py:function"}, "terms": {"": [1, 4, 8, 10, 11], "0": [5, 7, 8, 11], "0a80fada010c": 11, "0a80fada096c": 11, "0a80fada097c": 11, "0a80fada098c": 11, "0a80fada099c": 11, "1": [4, 5, 8, 10, 11], "10": [5, 7, 11], "100": [8, 11], "11e9": 11, "1713542306": [11, 12], "2": [5, 11], "24": [11, 12], "255e396f": 11, "3": [5, 11], "30": 8, "33": 5, "333": 5, "343434344": 11, "363455714": 11, "4": [5, 11], "450c": 11, "4649727": 11, "4714": 8, "473d83400bc1bc9dc635e334fadd433c": 11, "473d83400bc1bc9dc635e334faddd33c": 11, "473d83400bc1bc9dc635e334fadde33c": 11, "473d83400bc1bc9dc635e334faddf33c": 11, "5": [0, 5], "50": 7, "543434443": 11, "6f90": 8, "760149": 12, "7d3d8d2083b4": 11, "8420": 8, "93d9af72": 11, "9a07": 11, "A": [1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "AND": 5, "Be": 1, "But": 5, "By": 11, "For": [1, 5, 6, 7, 8, 9, 11], "IF": 11, "If": [0, 1, 7, 11, 12], "In": 10, "It": 10, "NOT": 12, "OR": 5, "One": 7, "Such": 9, "THE": 11, "That": 3, "The": [0, 1, 2, 3, 5, 8, 10, 11], "There": 11, "These": 9, "To": 11, "Will": [4, 7, 10], "_get_acl_from_row": 11, "_get_authz_from_row": 11, "_get_file_name_from_row": 11, "_get_file_size_from_row": 11, "_get_guid_for_row": 12, "_get_guid_from_row": 11, "_get_md5_from_row": 11, "_get_urls_from_row": 11, "_guid_typ": 12, "_manag": [2, 9, 10], "_query_for_associated_indexd_record_guid": 12, "_ssl": [3, 4, 5], "a5c6": 11, "ab167e49d25b488939b1ede42752458b": 3, "about": [2, 3], "abov": 11, "access": [0, 1, 3, 7, 10], "access_method": [2, 9, 10], "access_token": 0, "accesstoken": 0, "acl": [2, 3, 9, 11], "across": 11, "act": 0, "action": [9, 11], "actual": 11, "ad": 3, "add": [3, 5], "addit": [3, 5, 10, 11], "admin": [5, 11], "admin_endpoint_suffix": 5, "after": 10, "against": [3, 7, 8, 11, 12], "algorithm": 3, "alia": [3, 5], "alias": 5, "aliv": 7, "all": [1, 3, 4, 5, 6, 7, 8, 10, 11, 12], "allow": [0, 6, 8, 10, 11, 12], "allowed_data_upload_bucket": 1, "along": 2, "alreadi": 9, "also": 1, "altern": [5, 11], "alwai": 5, "ammount": 12, "amount": [1, 9], "an": [0, 3, 6, 8, 10, 11], "ani": [0, 5, 10, 11], "anoth": 5, "api": [0, 5, 8, 11], "api_kei": 11, "appli": 7, "appropri": 13, "ar": [5, 7, 8, 9, 10, 11], "arbitrari": 0, "argument": [0, 13], "arrai": 8, "asc": 7, "assign": 9, "assist": 10, "associ": [3, 5], "assum": 11, "async": [3, 4, 5, 9, 11, 12], "async_cr": [2, 5], "async_create_alias": [2, 5], "async_create_record": [2, 3], "async_delete_alia": [2, 5], "async_delete_alias": [2, 5], "async_download_object_manifest": [2, 9, 11], "async_get": [2, 5], "async_get_alias": [2, 5], "async_get_record": [2, 3], "async_get_records_from_checksum": [2, 3], "async_get_records_on_pag": [2, 3], "async_get_with_param": [2, 3], "async_ingest_metadata_manifest": [2, 9, 12], "async_query_url": [2, 3], "async_query_urls_from_indexd": [2, 9, 12], "async_run_job_and_wait": [2, 4], "async_upd": [2, 5], "async_update_alias": [2, 5], "async_update_record": [2, 3], "async_verify_object_manifest": [2, 9, 11], "asynchron": [3, 4, 5], "asyncio": [11, 12], "asyncron": 5, "attach": [3, 5], "attempt": 11, "attribut": [10, 11], "auth": [1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "auth_provid": [1, 2, 3, 4, 5, 6, 7, 8, 13], "authbas": 0, "authent": 0, "author": 1, "authz": [0, 1, 2, 3, 9, 10, 11], "auto": [0, 2], "automat": 0, "avail": [1, 2, 10, 11], "az": 1, "b": [5, 11], "b0f1": 11, "bar": 10, "base": [0, 1, 3, 4, 5, 6, 7, 8, 9, 11, 13], "baseid": 3, "basic": [3, 11, 12], "batch_creat": [2, 5], "batch_siz": 8, "behalf": 0, "behavior": 11, "being": 3, "belong": 8, "below": 11, "blank": 3, "blob": [5, 7], "bodi": 3, "bool": [4, 5, 8, 10, 11, 12], "boolean": 3, "bownload": 10, "broad": 9, "broken": 9, "bucket": [1, 6], "bundl": 10, "byte": 10, "c": [5, 11], "cach": 10, "cache_hosts_wts_token": [2, 9, 10], "call": [10, 13], "can": [0, 3, 4, 8, 11, 12], "capabl": 9, "case": [0, 10], "categori": 9, "ccle": 8, "ccle_one_record": 8, "ccle_sample_nod": 8, "cdi": 7, "chang": [3, 11], "checksum": [3, 10], "checksum_typ": 3, "child": 10, "children": [2, 9, 10], "chunk_siz": 8, "class": [0, 2, 10, 11, 13], "cli": 10, "client": [0, 3], "client_credenti": 0, "client_id": 0, "client_scop": 0, "client_secret": 0, "code": [2, 8], "column": [11, 12], "column_to_use_as_guid": [2, 9, 12], "columna": 11, "columnb": 11, "columnc": 11, "com": 7, "comma": 11, "command": [10, 11], "common": [0, 1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13], "commons_url": [2, 9, 10, 11, 12], "complet": [4, 11], "complex": 7, "concat": 11, "concurr": [11, 12], "configur": 1, "connect": 12, "consist": 3, "constructor": 0, "contain": [0, 2, 5, 8, 9, 10, 11, 12], "content": [3, 13], "content_created_d": 3, "content_updated_d": 3, "continu": 10, "control": 3, "conveni": 10, "copi": [2, 13], "coroutin": 11, "correspond": 3, "count": 3, "crdc": 0, "creat": [2, 3, 4, 5, 6, 8, 10, 11], "create_alias": [2, 5], "create_blank": [2, 3], "create_index_key_path": [2, 5], "create_job": [2, 4], "create_new_vers": [2, 3], "create_object_list": [2, 9, 10], "create_program": [2, 8], "create_project": [2, 8], "create_record": [2, 3], "created_tim": [2, 9, 10], "creation": [3, 11], "cred": 3, "credenti": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "csv": [8, 11, 12], "curl": [0, 2], "current": [6, 8, 10], "current_dir": [2, 9, 11], "custom": 11, "d": 5, "d70b41b9": 8, "data": [0, 1, 3, 5, 7, 8, 10, 11], "data_spreadsheet": 8, "data_typ": 7, "data_upload_bucket": 1, "dataa": 11, "datab": 11, "databas": 5, "datacommon": 0, "datafil": 10, "datamanag": 10, "date": 3, "datetim": [1, 3, 10], "dbgap": 12, "dcf": 8, "def": 11, "default": [0, 1, 3, 7, 8, 11, 12], "defin": [5, 8, 10], "delai": 4, "delet": [0, 1, 2, 3, 5, 6, 8, 10, 11], "delete_alia": [2, 5], "delete_alias": [2, 5], "delete_all_guid": [2, 9, 11], "delete_fil": [1, 2], "delete_file_loc": [1, 2, 6], "delete_index_key_path": [2, 5], "delete_nod": [2, 8], "delete_object": [2, 6], "delete_program": [2, 8], "delete_project": [2, 8], "delete_record": [2, 3, 8], "delete_unpacked_packag": 10, "delimet": [11, 12], "delimit": 11, "demograph": 8, "deprec": 1, "descript": [3, 5], "desir": 11, "dest_path": 13, "dest_urlstr": 13, "dest_w": 13, "dest_wskei": 13, "detail": [2, 7, 10], "determin": [10, 11, 12], "dev": 11, "dict": [3, 4, 5, 10, 11, 12], "dictionari": [3, 4, 5, 7, 8], "did": 3, "differ": 5, "direct": 0, "directori": [10, 11], "disabl": 10, "discoveri": 10, "disk": 13, "dispatch": 4, "dist_resolut": 3, "distribut": 3, "doc": [7, 10], "docstr": 2, "document": [1, 3], "doe": [0, 12], "domain": [11, 12], "done": 4, "download": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 13], "download_files_in_drs_manifest": [2, 9, 10], "download_list": 10, "download_manifest": 11, "download_singl": [1, 2], "download_url": [2, 13], "downloadmanag": [2, 9, 10], "downloadstatu": [2, 9, 10], "dr": [2, 9], "drs_download": 10, "drs_hostnam": 10, "drsdownload": 10, "drsobjecttyp": 10, "e": [5, 10], "e043ab8b77b9": 8, "each": [3, 8, 10, 11], "effici": 9, "eg": 3, "either": 8, "elasticsearch": 7, "els": [0, 12], "elsewher": 12, "empti": [8, 11], "enabl": 11, "end": [5, 10], "end_tim": [2, 9, 10], "endpoint": [0, 1, 2, 3, 4, 5, 7, 8, 13], "entir": 8, "entri": [3, 11], "env": 0, "environ": 0, "equal": 7, "error": [10, 11, 12], "error_nam": 11, "etc": 8, "even": 11, "everi": [9, 11], "everyth": 11, "ex": [0, 11, 12], "exampl": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "exclud": 3, "execut": [7, 8, 11], "exist": [1, 3, 5, 6, 9, 12], "expect": [5, 9, 11], "experi": 8, "expir": [0, 1], "expires_in": 1, "export": [8, 10], "export_nod": [2, 8], "export_record": [2, 8], "f1f8": 11, "factori": 10, "fail": [8, 10], "fals": [3, 5, 6, 10, 11], "featur": [1, 6], "fenc": [0, 1], "fetch": 0, "field": [3, 5, 7, 11, 12], "fieldnam": 11, "file": [0, 2, 3, 4, 8, 9, 10, 11, 12, 13], "file_nam": [1, 2, 3, 9, 10, 11], "file_s": [2, 9, 10, 11], "file_st": 3, "fileformat": 8, "filenam": [0, 8, 10, 11, 12], "files": 10, "fill": 12, "filter": [5, 7], "filter_object": 7, "first": [7, 8], "flag": 11, "folder": 11, "follow": [0, 11], "forc": 11, "force_metadata_columns_even_if_empti": 11, "form": 13, "format": [3, 5, 8, 11], "from": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13], "func_to_parse_row": [11, 12], "function": [2, 3, 4, 5, 9, 10, 11, 12], "g": 10, "gen3": [10, 11, 12], "gen3_api_kei": 0, "gen3_oidc_client_creds_secret": 0, "gen3auth": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "gen3fil": [1, 2], "gen3index": [2, 3], "gen3job": [2, 4, 10], "gen3metadata": [2, 5], "gen3object": [2, 6], "gen3queri": [2, 7], "gen3submiss": [2, 8], "gen3wsstorag": [2, 13], "gener": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 13], "get": [0, 1, 2, 3, 4, 5, 8, 10, 11, 12, 13], "get_access_token": [0, 2], "get_access_token_from_wt": [0, 2], "get_alias": [2, 5], "get_all_record": [2, 3], "get_dictionary_al": [2, 8], "get_dictionary_nod": [2, 8], "get_fresh_token": [2, 9, 10], "get_graphql_schema": [2, 8], "get_guid_from_fil": 12, "get_guids_prefix": [2, 3], "get_index_key_path": [2, 5], "get_latest_vers": [2, 3], "get_output": [2, 4], "get_presigned_url": [1, 2], "get_program": [2, 8], "get_project": [2, 8], "get_project_dictionari": [2, 8], "get_project_manifest": [2, 8], "get_record": [2, 3], "get_record_doc": [2, 3], "get_records_on_pag": [2, 3], "get_stat": [2, 3], "get_statu": [2, 4], "get_url": [2, 3], "get_valid_guid": [2, 3], "get_vers": [2, 3, 4, 5], "get_with_param": [2, 3], "giangb": 11, "github": [2, 7], "give": 1, "given": [0, 3, 4, 5, 8, 10, 12, 13], "global": [4, 5], "good": 3, "grant": 0, "graph": 8, "graphql": [7, 8], "graphql_queri": [2, 7], "group": 3, "guid": [1, 2, 3, 5, 6, 9, 11, 12], "guid_exampl": 11, "guid_for_row": 12, "guid_from_fil": 12, "guid_type_for_indexed_file_object": [2, 9, 12], "guid_type_for_non_indexed_file_object": [2, 9, 12], "guppi": 7, "ha": [0, 11], "handl": [3, 10], "hardcod": 0, "has_vers": 3, "hash": [3, 11], "hash_typ": 3, "have": [5, 11], "header": 11, "healthi": [3, 4, 5], "help": 11, "helper": 2, "hit": 11, "host": 10, "hostnam": [2, 9, 10], "how": [8, 11], "howto": 10, "http": [0, 7, 11, 12], "i": [0, 1, 2, 3, 4, 5, 8, 10, 11, 12], "id": [0, 1, 3, 5, 10, 11], "idea": 3, "identifi": [3, 5, 9, 11], "idp": 0, "illustr": 11, "immut": 3, "implement": 0, "implic": 11, "import": 11, "includ": [0, 3], "indent": 10, "index": [0, 2, 5, 9], "index_manifest": 11, "index_object_manifest": [2, 9, 11], "indexd": [1, 3, 6, 10, 11, 12], "indexd_field": [11, 12], "indexd_record_page_s": [2, 9, 11], "indexed_file_object_guid": 12, "indic": [0, 11], "infil": 10, "info": [3, 11], "inform": [2, 3, 10], "ingest": [2, 9], "ingest_manifest": 12, "initi": [0, 10], "input": [4, 10, 11], "input_manifest": 11, "instal": [0, 2, 11], "instanc": [1, 3, 6, 7, 8, 9, 10], "instead": [1, 7, 11], "int": [1, 3, 5, 7, 8, 10, 11, 12], "integ": [1, 3, 8], "intend": 0, "interact": [1, 3, 4, 5, 6, 8, 13], "interest": 10, "interpret": 0, "introspect": 8, "involv": 9, "is_healthi": [2, 3, 4, 5], "is_indexed_file_object": 12, "isn": 1, "issu": 0, "its": [1, 3], "job": 2, "job_id": 4, "job_input": 4, "job_nam": 4, "json": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "just": [5, 11, 12], "jwt": 0, "kei": [0, 3, 5, 13], "know": 11, "known": 10, "kwarg": [3, 4, 5], "l": [2, 13], "larg": 9, "last": 10, "latest": 3, "least": 3, "level": 6, "librari": 11, "like": [3, 5, 9, 11, 12], "limit": [1, 3, 5, 12], "linear": 4, "linux": 10, "list": [0, 1, 3, 4, 5, 7, 8, 10, 11, 13], "list_access_in_drs_manifest": [2, 9, 10], "list_drs_object": [2, 9, 10], "list_files_in_drs_manifest": [2, 9, 10], "list_job": [2, 4], "live": [11, 12], "load": [2, 9, 10], "load_manifest": [2, 9, 10], "local": [0, 13], "locat": [1, 6], "lock": 12, "log": [8, 10, 11, 12], "logic": [5, 12], "loop": 11, "ls_path": [2, 13], "maco": 11, "made": 3, "mai": [0, 9, 11], "main": 10, "make": [9, 11], "manag": [1, 5, 10], "mani": [8, 11], "manifest": [2, 8, 9, 10, 11, 12], "manifest_1": 10, "manifest_fil": [11, 12], "manifest_file_delimit": [11, 12], "manifest_row_pars": [11, 12], "map": [0, 11], "mark": 8, "master": 7, "match": [3, 5, 12], "max": 5, "max_concurrent_request": [2, 9, 11, 12], "max_presigned_url_ttl": 1, "max_tri": 8, "maximum": [11, 12], "md": [5, 7, 10, 12], "md5": [2, 3, 9, 11], "md5_hash": 11, "md5sum": [2, 9, 10], "mean": 8, "mechan": 3, "merg": 5, "metadata": [2, 3, 6, 9, 11], "metadata_list": 5, "metadata_sourc": 12, "metadata_typ": 12, "metdata": 12, "method": [1, 7, 10], "minimum": 10, "minut": 0, "mode": 7, "modul": [2, 10, 11], "more": [2, 5, 7, 9, 10], "most": 9, "mostli": 2, "multipl": [8, 11], "must": [1, 5], "my_common": 10, "my_credenti": 10, "my_field": 7, "my_index": 7, "my_program": 7, "my_project": 7, "name": [3, 4, 8, 10, 11, 12, 13], "namespac": [0, 12], "necessari": [3, 5], "need": [3, 7, 10, 11], "nest": 5, "net": 11, "never": 0, "new": [0, 3], "node": 8, "node_nam": 8, "node_typ": 8, "none": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "note": [0, 3, 11, 12], "noth": [3, 6], "now": [1, 8], "num": 5, "num_process": 11, "num_total_fil": 11, "number": [3, 7, 8, 11, 12], "o": 0, "object": [1, 2, 3, 4, 5, 7, 8, 9, 10, 11, 13], "object_id": [1, 2, 9, 10], "object_list": 10, "object_typ": [2, 9, 10], "objectid": 10, "obtain": [0, 10], "occur": 10, "off": 5, "offset": [5, 7], "oidc": 0, "old": 3, "one": [3, 5, 10, 11], "onli": [3, 5, 7, 8, 10, 11], "open": [8, 10, 11], "open_project": [2, 8], "openid": 0, "opt": 0, "option": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11], "order": [0, 8], "ordered_node_list": 8, "org": 10, "otherwis": 10, "output": [4, 5, 11, 12], "output_dir": 10, "output_filenam": [11, 12], "overrid": [0, 11, 12], "overwrit": 5, "own": 0, "packag": 10, "page": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 13], "pagin": 3, "parallel": 11, "param": [3, 5, 8, 10], "paramet": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "pars": [10, 11, 12, 13], "parser": [11, 12], "particular": 0, "pass": [0, 7, 8, 10], "password": [11, 12], "path": [0, 1, 5, 10, 11, 13], "path_to_manifest": 11, "pattern": [3, 12], "pdcdatastor": 11, "pend": 10, "per": [11, 12], "peregrin": 8, "permiss": 10, "persist": 9, "phs0001": 11, "phs0002": 11, "pick": 1, "pla": 11, "place": 11, "planx": 11, "point": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "popul": [10, 12], "posit": [1, 7], "possibl": 10, "post": [0, 11], "pprint": [2, 9, 10], "prefix": 3, "presign": 1, "pretti": 10, "prev_guid": [2, 9, 11], "previou": [3, 11], "previous": 4, "print": [8, 10], "process": 11, "processed_fil": 11, "profil": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "program": [8, 11], "progress": [8, 10], "project": [8, 11], "project_id": [7, 8], "protocol": 1, "provid": [0, 1, 3, 5, 7, 8, 12], "public": [3, 5], "put": 0, "py": 11, "python": [2, 9, 11], "python3": 11, "python_subprocess_command": 11, "queri": [1, 2, 3, 5, 8, 11, 12], "query_str": 7, "query_txt": [7, 8], "query_url": [2, 3], "quickstart": 2, "rather": 0, "raw": [7, 11], "raw_data_download": [2, 7], "rbac": 3, "read": [3, 5, 11], "readm": 2, "reason": 10, "record": [1, 3, 5, 7, 8, 11, 12], "refresh": [0, 10], "refresh_access_token": [0, 2], "refresh_fil": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "refresh_token": 0, "regist": 8, "regular": 7, "relat": 9, "remov": [1, 6, 11, 13], "replac": 11, "replace_url": 11, "repo": 2, "repres": [3, 5, 10], "represent": [1, 3], "request": [0, 1, 3, 5, 8, 11, 12], "requir": 10, "resolv": 10, "resolve_object": [2, 9, 10], "respect": 7, "respons": [0, 1, 3, 4, 5], "result": [1, 8, 10, 11], "retri": 8, "retriev": [1, 8, 10, 12], "return": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11], "return_full_metadata": 5, "rev": 3, "revers": 8, "revis": 3, "right": 1, "rm": [2, 13], "rm_path": [2, 13], "root": [11, 12], "row": [7, 8, 11, 12], "row_offset": 8, "rtype": 3, "run": [8, 11], "s3": [1, 10, 11], "safe": 11, "same": [5, 11, 13], "sampl": [8, 10], "sandbox": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "save": 10, "save_directori": 10, "schema": 8, "scope": [0, 1], "screen": 8, "script": 2, "search": [0, 2, 3], "second": [1, 4], "secret": 0, "see": [7, 10, 11], "self": 10, "semaphon": 12, "semaphor": 12, "separ": [0, 11], "server": 10, "servic": [1, 3, 4, 5, 6, 8, 11, 12, 13], "service_loc": [3, 4, 5], "session": 11, "set": [0, 1, 5, 10], "setup": 2, "sheepdog": 8, "should": [0, 8, 11], "show": 10, "show_progress": 10, "shown": 11, "sign": 1, "signpost": 3, "similar": 10, "simpl": 3, "simpli": 11, "sinc": 3, "singl": [1, 5, 8], "size": [2, 3, 9, 10, 11], "skip": 8, "sleep": 4, "so": 11, "some": [0, 2], "someth": 11, "sort": 7, "sort_field": 7, "sort_object": 7, "sourc": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "space": [0, 11], "specif": [5, 8, 11, 12], "specifi": [0, 1, 3, 11, 13], "spreadsheet": 8, "src_path": 13, "src_urlstr": 13, "src_w": 13, "src_wskei": 13, "ssl": [3, 4, 5], "start": [3, 4, 7, 8, 10], "start_tim": [2, 9, 10], "static": 10, "statu": [2, 4, 9, 10], "storag": [1, 2, 6], "store": [1, 3, 10], "str": [0, 1, 3, 4, 5, 7, 8, 10, 11, 12], "string": [0, 3, 5, 11, 13], "strip": 11, "sub": 8, "subject": [7, 8], "submiss": 2, "submit": [8, 11], "submit_additional_metadata_column": 11, "submit_fil": [2, 8], "submit_record": [2, 8], "submitter_id": 7, "success": 10, "successfulli": 10, "suffici": 3, "suppli": 3, "support": [0, 1, 5, 8, 11], "sure": 1, "synchron": 11, "syntax": 7, "system": [6, 7, 8, 9], "t": [1, 5, 11], "tab": 11, "task": 9, "temporari": 11, "test": 11, "test1": 11, "test2": 11, "test3": 11, "test4": 11, "test5": 11, "text": [1, 7, 8], "than": [0, 5], "thei": [0, 10], "them": [10, 11], "thi": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "those": 11, "thread": 11, "thread_num": 11, "threadcontrol": [2, 9, 11], "through": [8, 11], "tier": 7, "time": [1, 3, 8, 10, 11], "timestamp": 10, "tmp_folder": [2, 9, 11], "token": [0, 10], "tool": 2, "total": 11, "treat": [1, 5], "tree": 10, "true": [3, 4, 5, 6, 7, 8, 10, 11, 12], "try": 0, "tsv": [8, 11, 12], "tupl": [0, 3, 11, 12], "type": [1, 3, 4, 5, 7, 8, 10, 11, 12], "typic": 10, "uc": 7, "unaccess": 7, "under": [0, 8, 13], "uniqu": [1, 5], "unknown": 10, "unpack": 10, "unpack_packag": 10, "until": [4, 10], "up": [5, 9], "updat": [2, 3, 5, 10, 11], "update_alias": [2, 5], "update_blank": [2, 3], "update_record": [2, 3], "updated_tim": [2, 9, 10], "upload": [1, 2, 3, 8, 13], "upload_fil": [1, 2], "upload_file_to_guid": [1, 2], "upload_url": [2, 13], "url": [1, 2, 3, 9, 10, 11, 12, 13], "urls_metadata": 3, "us": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "usag": 11, "use_agg_md": 5, "user": [0, 10, 12], "user_access": [2, 9, 10], "usual": 12, "utcnow": 1, "util": 9, "uuid": [1, 3, 8], "uuid1": 8, "uuid2": 8, "valid": [3, 7], "valu": [0, 1, 3, 5, 7, 10, 11], "value_from_indexd": 11, "value_from_manifest": 11, "variabl": [0, 7, 8], "variou": 2, "verbos": [7, 8], "verif": 11, "verifi": [2, 9], "verify_manifest": 11, "verify_object_manifest": 11, "version": [3, 4, 5], "vital_statu": 7, "w": 13, "wa": 0, "wai": 10, "wait": 4, "want": [0, 3, 8], "warn": 11, "we": [3, 11], "web": 0, "what": 5, "when": [0, 3, 7, 10, 12], "where": [0, 3, 5, 11, 12], "whether": [3, 4, 5, 8, 11, 12], "which": [8, 10], "while": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "whose": 5, "within": [0, 2, 9], "without": [3, 5], "won": 5, "work": [0, 10], "workaround": 11, "worksheet": 8, "workspac": [0, 2], "wrapper": 10, "write": 11, "ws_urlstr": 13, "wskei": 13, "wss": 13, "wt": [0, 10], "x": 11, "xlsx": 8, "you": [0, 3, 8, 11], "your": 0}, "titles": ["Gen3 Auth Helper", "Gen3 File Class", "Welcome to Gen3 SDK\u2019s documentation!", "Gen3 Index Class", "Gen3 Jobs Class", "Gen3 Metadata Class", "Gen3 Object Class", "Gen3 Query Class", "Gen3 Submission Class", "Gen3 Tools", "DRS Download Tools", "Indexing Tools", "Metadata Tools", "Gen3 Workspace Storage"], "titleterms": {"": 2, "auth": 0, "class": [1, 3, 4, 5, 6, 7, 8], "document": 2, "download": [10, 11], "dr": 10, "file": 1, "gen3": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 13], "helper": 0, "index": [3, 11], "indic": 2, "ingest": 12, "job": 4, "metadata": [5, 12], "object": 6, "queri": 7, "sdk": 2, "storag": 13, "submiss": 8, "tabl": 2, "tool": [9, 10, 11, 12], "verifi": 11, "welcom": 2, "workspac": 13}}) \ No newline at end of file +Search.setIndex({"alltitles": {"DRS Download Tools": [[10, "module-gen3.tools.download.drs_download"]], "Download": [[11, "module-gen3.tools.indexing.download_manifest"]], "Gen3 Auth Helper": [[0, "gen3-auth-helper"]], "Gen3 File Class": [[1, "gen3-file-class"]], "Gen3 Index Class": [[3, "gen3-index-class"]], "Gen3 Jobs Class": [[4, "gen3-jobs-class"]], "Gen3 Metadata Class": [[5, "gen3-metadata-class"]], "Gen3 Object Class": [[6, "gen3-object-class"]], "Gen3 Query Class": [[7, "gen3-query-class"]], "Gen3 Submission Class": [[8, "gen3-submission-class"]], "Gen3 Tools": [[9, "gen3-tools"]], "Gen3 Workspace Storage": [[13, "gen3-workspace-storage"]], "Index": [[11, "module-gen3.tools.indexing.index_manifest"]], "Indexing Tools": [[11, "indexing-tools"]], "Indices and tables": [[2, "indices-and-tables"]], "Ingest": [[12, "module-gen3.tools.metadata.ingest_manifest"]], "Metadata Tools": [[12, "metadata-tools"]], "Verify": [[11, "module-gen3.tools.indexing.verify_manifest"]], "Welcome to Gen3 SDK\u2019s documentation!": [[2, "welcome-to-gen3-sdk-s-documentation"]]}, "docnames": ["auth", "file", "index", "indexing", "jobs", "metadata", "object", "query", "submission", "tools", "tools/drs_pull", "tools/indexing", "tools/metadata", "wss"], "envversion": {"sphinx": 61, "sphinx.domains.c": 3, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 9, "sphinx.domains.index": 1, "sphinx.domains.javascript": 3, "sphinx.domains.math": 2, "sphinx.domains.python": 4, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx.ext.viewcode": 1}, "filenames": ["auth.rst", "file.rst", "index.rst", "indexing.rst", "jobs.rst", "metadata.rst", "object.rst", "query.rst", "submission.rst", "tools.rst", "tools/drs_pull.rst", "tools/indexing.rst", "tools/metadata.rst", "wss.rst"], "indexentries": {"_manager (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable._manager", false]], "access_methods (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.access_methods", false]], "acls (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.ACLS", false]], "async_create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_create", false]], "async_create_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_create_aliases", false]], "async_create_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_create_record", false]], "async_delete_alias() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_delete_alias", false]], "async_delete_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_delete_aliases", false]], "async_download_object_manifest() (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.async_download_object_manifest", false]], "async_get() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_get", false]], "async_get_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_get_aliases", false]], "async_get_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_record", false]], "async_get_records_from_checksum() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_records_from_checksum", false]], "async_get_records_on_page() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_records_on_page", false]], "async_get_with_params() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_with_params", false]], "async_ingest_metadata_manifest() (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.async_ingest_metadata_manifest", false]], "async_query_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_query_urls", false]], "async_query_urls_from_indexd() (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.async_query_urls_from_indexd", false]], "async_run_job_and_wait() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.async_run_job_and_wait", false]], "async_update() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_update", false]], "async_update_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_update_aliases", false]], "async_update_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_update_record", false]], "async_verify_object_manifest() (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.async_verify_object_manifest", false]], "auth_provider (gen3.metadata.gen3metadata attribute)": [[5, "gen3.metadata.Gen3Metadata.auth_provider", false]], "authz (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.AUTHZ", false]], "batch_create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.batch_create", false]], "cache_hosts_wts_tokens() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.cache_hosts_wts_tokens", false]], "children (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.children", false]], "column_to_use_as_guid (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.COLUMN_TO_USE_AS_GUID", false]], "commons_url (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.commons_url", false]], "copy() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.copy", false]], "create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create", false]], "create_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create_aliases", false]], "create_blank() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_blank", false]], "create_index_key_path() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create_index_key_path", false]], "create_job() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.create_job", false]], "create_new_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_new_version", false]], "create_object_list() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.create_object_list", false]], "create_program() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.create_program", false]], "create_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.create_project", false]], "create_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_record", false]], "created_time (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.created_time", false]], "curl() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.curl", false]], "current_dir (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.CURRENT_DIR", false]], "current_dir (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.CURRENT_DIR", false]], "current_dir (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.CURRENT_DIR", false]], "delete() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete", false]], "delete_alias() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_alias", false]], "delete_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_aliases", false]], "delete_all_guids() (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.delete_all_guids", false]], "delete_file() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.delete_file", false]], "delete_file_locations() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.delete_file_locations", false]], "delete_index_key_path() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_index_key_path", false]], "delete_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_node", false]], "delete_nodes() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_nodes", false]], "delete_object() (gen3.object.gen3object method)": [[6, "gen3.object.Gen3Object.delete_object", false]], "delete_program() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_program", false]], "delete_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_project", false]], "delete_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.delete_record", false]], "delete_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_record", false]], "delete_records() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_records", false]], "download() (gen3.tools.download.drs_download.downloadable method)": [[10, "gen3.tools.download.drs_download.Downloadable.download", false]], "download() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.download", false]], "download() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.download", false]], "download_files_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.download_files_in_drs_manifest", false]], "download_single() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.download_single", false]], "download_url() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.download_url", false]], "downloadable (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.Downloadable", false]], "downloadmanager (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.DownloadManager", false]], "downloadstatus (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.DownloadStatus", false]], "end_time (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.end_time", false]], "endpoint (gen3.metadata.gen3metadata attribute)": [[5, "gen3.metadata.Gen3Metadata.endpoint", false]], "export_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.export_node", false]], "export_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.export_record", false]], "file_name (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.file_name", false]], "file_name (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.file_name", false]], "file_size (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.file_size", false]], "file_size (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.file_size", false]], "gen3.tools": [[9, "module-gen3.tools", false]], "gen3.tools.download.drs_download": [[10, "module-gen3.tools.download.drs_download", false]], "gen3.tools.indexing.download_manifest": [[11, "module-gen3.tools.indexing.download_manifest", false]], "gen3.tools.indexing.index_manifest": [[11, "module-gen3.tools.indexing.index_manifest", false]], "gen3.tools.indexing.verify_manifest": [[11, "module-gen3.tools.indexing.verify_manifest", false]], "gen3.tools.metadata.ingest_manifest": [[12, "module-gen3.tools.metadata.ingest_manifest", false]], "gen3auth (class in gen3.auth)": [[0, "gen3.auth.Gen3Auth", false]], "gen3file (class in gen3.file)": [[1, "gen3.file.Gen3File", false]], "gen3index (class in gen3.index)": [[3, "gen3.index.Gen3Index", false]], "gen3jobs (class in gen3.jobs)": [[4, "gen3.jobs.Gen3Jobs", false]], "gen3metadata (class in gen3.metadata)": [[5, "gen3.metadata.Gen3Metadata", false]], "gen3object (class in gen3.object)": [[6, "gen3.object.Gen3Object", false]], "gen3query (class in gen3.query)": [[7, "gen3.query.Gen3Query", false]], "gen3submission (class in gen3.submission)": [[8, "gen3.submission.Gen3Submission", false]], "gen3wsstorage (class in gen3.wss)": [[13, "gen3.wss.Gen3WsStorage", false]], "get() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get", false]], "get() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get", false]], "get_access_token() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.get_access_token", false]], "get_access_token_from_wts() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.get_access_token_from_wts", false]], "get_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_aliases", false]], "get_all_records() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_all_records", false]], "get_dictionary_all() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_dictionary_all", false]], "get_dictionary_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_dictionary_node", false]], "get_fresh_token() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.get_fresh_token", false]], "get_graphql_schema() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_graphql_schema", false]], "get_guids_prefix() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_guids_prefix", false]], "get_index_key_paths() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_index_key_paths", false]], "get_latest_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_latest_version", false]], "get_output() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_output", false]], "get_presigned_url() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.get_presigned_url", false]], "get_programs() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_programs", false]], "get_project_dictionary() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_project_dictionary", false]], "get_project_manifest() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_project_manifest", false]], "get_projects() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_projects", false]], "get_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_record", false]], "get_record_doc() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_record_doc", false]], "get_records() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_records", false]], "get_records_on_page() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_records_on_page", false]], "get_stats() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_stats", false]], "get_status() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_status", false]], "get_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_urls", false]], "get_valid_guids() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_valid_guids", false]], "get_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_version", false]], "get_version() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_version", false]], "get_version() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_version", false]], "get_versions() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_versions", false]], "get_with_params() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_with_params", false]], "graphql_query() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.graphql_query", false]], "guid (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.GUID", false]], "guid_type_for_indexed_file_object (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.GUID_TYPE_FOR_INDEXED_FILE_OBJECT", false]], "guid_type_for_non_indexed_file_object (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.GUID_TYPE_FOR_NON_INDEXED_FILE_OBJECT", false]], "hostname (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.hostname", false]], "index_object_manifest() (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.index_object_manifest", false]], "indexd_record_page_size (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.INDEXD_RECORD_PAGE_SIZE", false]], "is_healthy() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.is_healthy", false]], "is_healthy() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.is_healthy", false]], "is_healthy() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.is_healthy", false]], "list_access_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_access_in_drs_manifest", false]], "list_drs_object() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_drs_object", false]], "list_files_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_files_in_drs_manifest", false]], "list_jobs() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.list_jobs", false]], "load() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.load", false]], "load_manifest() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.load_manifest", false]], "ls() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.ls", false]], "ls_path() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.ls_path", false]], "manifest (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.Manifest", false]], "max_concurrent_requests (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.MAX_CONCURRENT_REQUESTS", false]], "max_concurrent_requests (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.MAX_CONCURRENT_REQUESTS", false]], "max_concurrent_requests (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.MAX_CONCURRENT_REQUESTS", false]], "md5 (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.MD5", false]], "md5sum (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.md5sum", false]], "module": [[9, "module-gen3.tools", false], [10, "module-gen3.tools.download.drs_download", false], [11, "module-gen3.tools.indexing.download_manifest", false], [11, "module-gen3.tools.indexing.index_manifest", false], [11, "module-gen3.tools.indexing.verify_manifest", false], [12, "module-gen3.tools.metadata.ingest_manifest", false]], "object_id (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.object_id", false]], "object_id (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.object_id", false]], "object_type (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.object_type", false]], "open_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.open_project", false]], "pprint() (gen3.tools.download.drs_download.downloadable method)": [[10, "gen3.tools.download.drs_download.Downloadable.pprint", false]], "prev_guid (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.PREV_GUID", false]], "query() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.query", false]], "query() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.query", false]], "query() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.query", false]], "query_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.query_urls", false]], "raw_data_download() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.raw_data_download", false]], "refresh_access_token() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.refresh_access_token", false]], "resolve_objects() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.resolve_objects", false]], "rm() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.rm", false]], "rm_path() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.rm_path", false]], "size (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.SIZE", false]], "start_time (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.start_time", false]], "status (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.status", false]], "submit_file() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.submit_file", false]], "submit_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.submit_record", false]], "threadcontrol (class in gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.ThreadControl", false]], "tmp_folder (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.TMP_FOLDER", false]], "update() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.update", false]], "update_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.update_aliases", false]], "update_blank() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.update_blank", false]], "update_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.update_record", false]], "updated_time (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.updated_time", false]], "upload() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.upload", false]], "upload_file() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.upload_file", false]], "upload_file_to_guid() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.upload_file_to_guid", false]], "upload_url() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.upload_url", false]], "urls (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.URLS", false]], "user_access() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.user_access", false]]}, "objects": {"gen3": [[9, 3, 0, "-", "tools"]], "gen3.auth": [[0, 0, 1, "", "Gen3Auth"]], "gen3.auth.Gen3Auth": [[0, 1, 1, "", "curl"], [0, 1, 1, "", "get_access_token"], [0, 1, 1, "", "get_access_token_from_wts"], [0, 1, 1, "", "refresh_access_token"]], "gen3.file": [[1, 0, 1, "", "Gen3File"]], "gen3.file.Gen3File": [[1, 1, 1, "", "delete_file"], [1, 1, 1, "", "delete_file_locations"], [1, 1, 1, "", "download_single"], [1, 1, 1, "", "get_presigned_url"], [1, 1, 1, "", "upload_file"], [1, 1, 1, "", "upload_file_to_guid"]], "gen3.index": [[3, 0, 1, "", "Gen3Index"]], "gen3.index.Gen3Index": [[3, 1, 1, "", "async_create_record"], [3, 1, 1, "", "async_get_record"], [3, 1, 1, "", "async_get_records_from_checksum"], [3, 1, 1, "", "async_get_records_on_page"], [3, 1, 1, "", "async_get_with_params"], [3, 1, 1, "", "async_query_urls"], [3, 1, 1, "", "async_update_record"], [3, 1, 1, "", "create_blank"], [3, 1, 1, "", "create_new_version"], [3, 1, 1, "", "create_record"], [3, 1, 1, "", "delete_record"], [3, 1, 1, "", "get"], [3, 1, 1, "", "get_all_records"], [3, 1, 1, "", "get_guids_prefix"], [3, 1, 1, "", "get_latest_version"], [3, 1, 1, "", "get_record"], [3, 1, 1, "", "get_record_doc"], [3, 1, 1, "", "get_records"], [3, 1, 1, "", "get_records_on_page"], [3, 1, 1, "", "get_stats"], [3, 1, 1, "", "get_urls"], [3, 1, 1, "", "get_valid_guids"], [3, 1, 1, "", "get_version"], [3, 1, 1, "", "get_versions"], [3, 1, 1, "", "get_with_params"], [3, 1, 1, "", "is_healthy"], [3, 1, 1, "", "query_urls"], [3, 1, 1, "", "update_blank"], [3, 1, 1, "", "update_record"]], "gen3.jobs": [[4, 0, 1, "", "Gen3Jobs"]], "gen3.jobs.Gen3Jobs": [[4, 1, 1, "", "async_run_job_and_wait"], [4, 1, 1, "", "create_job"], [4, 1, 1, "", "get_output"], [4, 1, 1, "", "get_status"], [4, 1, 1, "", "get_version"], [4, 1, 1, "", "is_healthy"], [4, 1, 1, "", "list_jobs"]], "gen3.metadata": [[5, 0, 1, "", "Gen3Metadata"]], "gen3.metadata.Gen3Metadata": [[5, 1, 1, "", "async_create"], [5, 1, 1, "", "async_create_aliases"], [5, 1, 1, "", "async_delete_alias"], [5, 1, 1, "", "async_delete_aliases"], [5, 1, 1, "", "async_get"], [5, 1, 1, "", "async_get_aliases"], [5, 1, 1, "", "async_update"], [5, 1, 1, "", "async_update_aliases"], [5, 2, 1, "", "auth_provider"], [5, 1, 1, "", "batch_create"], [5, 1, 1, "", "create"], [5, 1, 1, "", "create_aliases"], [5, 1, 1, "", "create_index_key_path"], [5, 1, 1, "", "delete"], [5, 1, 1, "", "delete_alias"], [5, 1, 1, "", "delete_aliases"], [5, 1, 1, "", "delete_index_key_path"], [5, 2, 1, "", "endpoint"], [5, 1, 1, "", "get"], [5, 1, 1, "", "get_aliases"], [5, 1, 1, "", "get_index_key_paths"], [5, 1, 1, "", "get_version"], [5, 1, 1, "", "is_healthy"], [5, 1, 1, "", "query"], [5, 1, 1, "", "update"], [5, 1, 1, "", "update_aliases"]], "gen3.object": [[6, 0, 1, "", "Gen3Object"]], "gen3.object.Gen3Object": [[6, 1, 1, "", "delete_object"]], "gen3.query": [[7, 0, 1, "", "Gen3Query"]], "gen3.query.Gen3Query": [[7, 1, 1, "", "graphql_query"], [7, 1, 1, "", "query"], [7, 1, 1, "", "raw_data_download"]], "gen3.submission": [[8, 0, 1, "", "Gen3Submission"]], "gen3.submission.Gen3Submission": [[8, 1, 1, "", "create_program"], [8, 1, 1, "", "create_project"], [8, 1, 1, "", "delete_node"], [8, 1, 1, "", "delete_nodes"], [8, 1, 1, "", "delete_program"], [8, 1, 1, "", "delete_project"], [8, 1, 1, "", "delete_record"], [8, 1, 1, "", "delete_records"], [8, 1, 1, "", "export_node"], [8, 1, 1, "", "export_record"], [8, 1, 1, "", "get_dictionary_all"], [8, 1, 1, "", "get_dictionary_node"], [8, 1, 1, "", "get_graphql_schema"], [8, 1, 1, "", "get_programs"], [8, 1, 1, "", "get_project_dictionary"], [8, 1, 1, "", "get_project_manifest"], [8, 1, 1, "", "get_projects"], [8, 1, 1, "", "open_project"], [8, 1, 1, "", "query"], [8, 1, 1, "", "submit_file"], [8, 1, 1, "", "submit_record"]], "gen3.tools.download": [[10, 3, 0, "-", "drs_download"]], "gen3.tools.download.drs_download": [[10, 0, 1, "", "DownloadManager"], [10, 0, 1, "", "DownloadStatus"], [10, 0, 1, "", "Downloadable"], [10, 0, 1, "", "Manifest"], [10, 4, 1, "", "download_files_in_drs_manifest"], [10, 4, 1, "", "list_access_in_drs_manifest"], [10, 4, 1, "", "list_drs_object"], [10, 4, 1, "", "list_files_in_drs_manifest"]], "gen3.tools.download.drs_download.DownloadManager": [[10, 1, 1, "", "cache_hosts_wts_tokens"], [10, 1, 1, "", "download"], [10, 1, 1, "", "get_fresh_token"], [10, 1, 1, "", "resolve_objects"], [10, 1, 1, "", "user_access"]], "gen3.tools.download.drs_download.DownloadStatus": [[10, 2, 1, "", "end_time"], [10, 2, 1, "", "start_time"], [10, 2, 1, "", "status"]], "gen3.tools.download.drs_download.Downloadable": [[10, 2, 1, "", "_manager"], [10, 2, 1, "", "access_methods"], [10, 2, 1, "", "children"], [10, 2, 1, "", "created_time"], [10, 1, 1, "", "download"], [10, 2, 1, "", "file_name"], [10, 2, 1, "", "file_size"], [10, 2, 1, "", "hostname"], [10, 2, 1, "", "object_id"], [10, 2, 1, "", "object_type"], [10, 1, 1, "", "pprint"], [10, 2, 1, "", "updated_time"]], "gen3.tools.download.drs_download.Manifest": [[10, 2, 1, "", "commons_url"], [10, 1, 1, "", "create_object_list"], [10, 2, 1, "", "file_name"], [10, 2, 1, "", "file_size"], [10, 1, 1, "", "load"], [10, 1, 1, "", "load_manifest"], [10, 2, 1, "", "md5sum"], [10, 2, 1, "", "object_id"]], "gen3.tools.indexing": [[11, 3, 0, "-", "download_manifest"], [11, 3, 0, "-", "index_manifest"], [11, 3, 0, "-", "verify_manifest"]], "gen3.tools.indexing.download_manifest": [[11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "INDEXD_RECORD_PAGE_SIZE"], [11, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [11, 2, 1, "", "TMP_FOLDER"], [11, 4, 1, "", "async_download_object_manifest"]], "gen3.tools.indexing.index_manifest": [[11, 2, 1, "", "ACLS"], [11, 2, 1, "", "AUTHZ"], [11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "GUID"], [11, 2, 1, "", "MD5"], [11, 2, 1, "", "PREV_GUID"], [11, 2, 1, "", "SIZE"], [11, 0, 1, "", "ThreadControl"], [11, 2, 1, "", "URLS"], [11, 4, 1, "", "delete_all_guids"], [11, 4, 1, "", "index_object_manifest"]], "gen3.tools.indexing.verify_manifest": [[11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [11, 4, 1, "", "async_verify_object_manifest"]], "gen3.tools.metadata": [[12, 3, 0, "-", "ingest_manifest"]], "gen3.tools.metadata.ingest_manifest": [[12, 2, 1, "", "COLUMN_TO_USE_AS_GUID"], [12, 2, 1, "", "GUID_TYPE_FOR_INDEXED_FILE_OBJECT"], [12, 2, 1, "", "GUID_TYPE_FOR_NON_INDEXED_FILE_OBJECT"], [12, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [12, 4, 1, "", "async_ingest_metadata_manifest"], [12, 4, 1, "", "async_query_urls_from_indexd"]], "gen3.wss": [[13, 0, 1, "", "Gen3WsStorage"]], "gen3.wss.Gen3WsStorage": [[13, 1, 1, "", "copy"], [13, 1, 1, "", "download"], [13, 1, 1, "", "download_url"], [13, 1, 1, "", "ls"], [13, 1, 1, "", "ls_path"], [13, 1, 1, "", "rm"], [13, 1, 1, "", "rm_path"], [13, 1, 1, "", "upload"], [13, 1, 1, "", "upload_url"]]}, "objnames": {"0": ["py", "class", "Python class"], "1": ["py", "method", "Python method"], "2": ["py", "attribute", "Python attribute"], "3": ["py", "module", "Python module"], "4": ["py", "function", "Python function"]}, "objtypes": {"0": "py:class", "1": "py:method", "2": "py:attribute", "3": "py:module", "4": "py:function"}, "terms": {"": [1, 4, 8, 10, 11], "0": [5, 7, 8, 11], "0a80fada010c": 11, "0a80fada096c": 11, "0a80fada097c": 11, "0a80fada098c": 11, "0a80fada099c": 11, "1": [4, 5, 8, 10, 11], "10": [5, 7, 11], "100": [8, 11], "11e9": 11, "1713542306": [], "1713542765": [11, 12], "2": [5, 11], "24": [11, 12], "255e396f": 11, "2877355": 11, "3": [5, 11], "30": 8, "33": 5, "333": 5, "343434344": 11, "363455714": 11, "4": [5, 11], "450c": 11, "4649727": [], "4714": 8, "473d83400bc1bc9dc635e334fadd433c": 11, "473d83400bc1bc9dc635e334faddd33c": 11, "473d83400bc1bc9dc635e334fadde33c": 11, "473d83400bc1bc9dc635e334faddf33c": 11, "5": [0, 5], "50": 7, "543434443": 11, "6692646": 12, "6f90": 8, "760149": [], "7d3d8d2083b4": 11, "8420": 8, "93d9af72": 11, "9a07": 11, "A": [1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "AND": 5, "Be": 1, "But": 5, "By": 11, "For": [1, 5, 6, 7, 8, 9, 11], "IF": 11, "If": [0, 1, 7, 11, 12], "In": 10, "It": 10, "NOT": 12, "OR": 5, "One": 7, "Such": 9, "THE": 11, "That": 3, "The": [0, 1, 2, 3, 5, 8, 10, 11], "There": 11, "These": 9, "To": 11, "Will": [4, 7, 10], "_get_acl_from_row": 11, "_get_authz_from_row": 11, "_get_file_name_from_row": 11, "_get_file_size_from_row": 11, "_get_guid_for_row": 12, "_get_guid_from_row": 11, "_get_md5_from_row": 11, "_get_urls_from_row": 11, "_guid_typ": 12, "_manag": [2, 9, 10], "_query_for_associated_indexd_record_guid": 12, "_ssl": [3, 4, 5], "a5c6": 11, "ab167e49d25b488939b1ede42752458b": 3, "about": [2, 3], "abov": 11, "access": [0, 1, 3, 7, 10], "access_method": [2, 9, 10], "access_token": 0, "accesstoken": 0, "acl": [2, 3, 9, 11], "across": 11, "act": 0, "action": [9, 11], "actual": 11, "ad": 3, "add": [3, 5], "addit": [3, 5, 10, 11], "admin": [5, 11], "admin_endpoint_suffix": 5, "after": 10, "against": [3, 7, 8, 11, 12], "algorithm": 3, "alia": [3, 5], "alias": 5, "aliv": 7, "all": [1, 3, 4, 5, 6, 7, 8, 10, 11, 12], "allow": [0, 6, 8, 10, 11, 12], "allowed_data_upload_bucket": 1, "along": 2, "alreadi": 9, "also": 1, "altern": [5, 11], "alwai": 5, "ammount": 12, "amount": [1, 9], "an": [0, 3, 6, 8, 10, 11], "ani": [0, 5, 10, 11], "anoth": 5, "api": [0, 5, 8, 11], "api_kei": 11, "appli": 7, "appropri": 13, "ar": [5, 7, 8, 9, 10, 11], "arbitrari": 0, "argument": [0, 13], "arrai": 8, "asc": 7, "assign": 9, "assist": 10, "associ": [3, 5], "assum": 11, "async": [3, 4, 5, 9, 11, 12], "async_cr": [2, 5], "async_create_alias": [2, 5], "async_create_record": [2, 3], "async_delete_alia": [2, 5], "async_delete_alias": [2, 5], "async_download_object_manifest": [2, 9, 11], "async_get": [2, 5], "async_get_alias": [2, 5], "async_get_record": [2, 3], "async_get_records_from_checksum": [2, 3], "async_get_records_on_pag": [2, 3], "async_get_with_param": [2, 3], "async_ingest_metadata_manifest": [2, 9, 12], "async_query_url": [2, 3], "async_query_urls_from_indexd": [2, 9, 12], "async_run_job_and_wait": [2, 4], "async_upd": [2, 5], "async_update_alias": [2, 5], "async_update_record": [2, 3], "async_verify_object_manifest": [2, 9, 11], "asynchron": [3, 4, 5], "asyncio": [11, 12], "asyncron": 5, "attach": [3, 5], "attempt": 11, "attribut": [10, 11], "auth": [1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "auth_provid": [1, 2, 3, 4, 5, 6, 7, 8, 13], "authbas": 0, "authent": 0, "author": 1, "authz": [0, 1, 2, 3, 9, 10, 11], "auto": [0, 2], "automat": 0, "avail": [1, 2, 10, 11], "az": 1, "b": [5, 11], "b0f1": 11, "bar": 10, "base": [0, 1, 3, 4, 5, 6, 7, 8, 9, 11, 13], "baseid": 3, "basic": [3, 11, 12], "batch_creat": [2, 5], "batch_siz": 8, "behalf": 0, "behavior": 11, "being": 3, "belong": 8, "below": 11, "blank": 3, "blob": [5, 7], "bodi": 3, "bool": [4, 5, 8, 10, 11, 12], "boolean": 3, "bownload": 10, "broad": 9, "broken": 9, "bucket": [1, 6], "bundl": 10, "byte": 10, "c": [5, 11], "cach": 10, "cache_hosts_wts_token": [2, 9, 10], "call": [10, 13], "can": [0, 3, 4, 8, 11, 12], "capabl": 9, "case": [0, 10], "categori": 9, "ccle": 8, "ccle_one_record": 8, "ccle_sample_nod": 8, "cdi": 7, "chang": [3, 11], "checksum": [3, 10], "checksum_typ": 3, "child": 10, "children": [2, 9, 10], "chunk_siz": 8, "class": [0, 2, 10, 11, 13], "cli": 10, "client": [0, 3], "client_credenti": 0, "client_id": 0, "client_scop": 0, "client_secret": 0, "code": [2, 8], "column": [11, 12], "column_to_use_as_guid": [2, 9, 12], "columna": 11, "columnb": 11, "columnc": 11, "com": 7, "comma": 11, "command": [10, 11], "common": [0, 1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13], "commons_url": [2, 9, 10, 11, 12], "complet": [4, 11], "complex": 7, "concat": 11, "concurr": [11, 12], "configur": 1, "connect": 12, "consist": 3, "constructor": 0, "contain": [0, 2, 5, 8, 9, 10, 11, 12], "content": [3, 13], "content_created_d": 3, "content_updated_d": 3, "continu": 10, "control": 3, "conveni": 10, "copi": [2, 13], "coroutin": 11, "correspond": 3, "count": 3, "crdc": 0, "creat": [2, 3, 4, 5, 6, 8, 10, 11], "create_alias": [2, 5], "create_blank": [2, 3], "create_index_key_path": [2, 5], "create_job": [2, 4], "create_new_vers": [2, 3], "create_object_list": [2, 9, 10], "create_program": [2, 8], "create_project": [2, 8], "create_record": [2, 3], "created_tim": [2, 9, 10], "creation": [3, 11], "cred": 3, "credenti": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "csv": [8, 11, 12], "curl": [0, 2], "current": [6, 8, 10], "current_dir": [2, 9, 11], "custom": 11, "d": 5, "d70b41b9": 8, "data": [0, 1, 3, 5, 7, 8, 10, 11], "data_spreadsheet": 8, "data_typ": 7, "data_upload_bucket": 1, "dataa": 11, "datab": 11, "databas": 5, "datacommon": 0, "datafil": 10, "datamanag": 10, "date": 3, "datetim": [1, 3, 10], "dbgap": 12, "dcf": 8, "def": 11, "default": [0, 1, 3, 7, 8, 11, 12], "defin": [5, 8, 10], "delai": 4, "delet": [0, 1, 2, 3, 5, 6, 8, 10, 11], "delete_alia": [2, 5], "delete_alias": [2, 5], "delete_all_guid": [2, 9, 11], "delete_fil": [1, 2], "delete_file_loc": [1, 2, 6], "delete_index_key_path": [2, 5], "delete_nod": [2, 8], "delete_object": [2, 6], "delete_program": [2, 8], "delete_project": [2, 8], "delete_record": [2, 3, 8], "delete_unpacked_packag": 10, "delimet": [11, 12], "delimit": 11, "demograph": 8, "deprec": 1, "descript": [3, 5], "desir": 11, "dest_path": 13, "dest_urlstr": 13, "dest_w": 13, "dest_wskei": 13, "detail": [2, 7, 10], "determin": [10, 11, 12], "dev": 11, "dict": [3, 4, 5, 10, 11, 12], "dictionari": [3, 4, 5, 7, 8], "did": 3, "differ": 5, "direct": 0, "directori": [10, 11], "disabl": 10, "discoveri": 10, "disk": 13, "dispatch": 4, "dist_resolut": 3, "distribut": 3, "doc": [7, 10], "docstr": 2, "document": [1, 3], "doe": [0, 12], "domain": [11, 12], "done": 4, "download": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 13], "download_files_in_drs_manifest": [2, 9, 10], "download_list": 10, "download_manifest": 11, "download_singl": [1, 2], "download_url": [2, 13], "downloadmanag": [2, 9, 10], "downloadstatu": [2, 9, 10], "dr": [2, 9], "drs_download": 10, "drs_hostnam": 10, "drsdownload": 10, "drsobjecttyp": 10, "e": [5, 10], "e043ab8b77b9": 8, "each": [3, 8, 10, 11], "effici": 9, "eg": 3, "either": 8, "elasticsearch": 7, "els": [0, 12], "elsewher": 12, "empti": [8, 11], "enabl": 11, "end": [5, 10], "end_tim": [2, 9, 10], "endpoint": [0, 1, 2, 3, 4, 5, 7, 8, 13], "entir": 8, "entri": [3, 11], "env": 0, "environ": 0, "equal": 7, "error": [10, 11, 12], "error_nam": 11, "etc": 8, "even": 11, "everi": [9, 11], "everyth": 11, "ex": [0, 11, 12], "exampl": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "exclud": 3, "execut": [7, 8, 11], "exist": [1, 3, 5, 6, 9, 12], "expect": [5, 9, 11], "experi": 8, "expir": [0, 1], "expires_in": 1, "export": [8, 10], "export_nod": [2, 8], "export_record": [2, 8], "f1f8": 11, "factori": 10, "fail": [8, 10], "fals": [3, 5, 6, 10, 11], "featur": [1, 6], "fenc": [0, 1], "fetch": 0, "field": [3, 5, 7, 11, 12], "fieldnam": 11, "file": [0, 2, 3, 4, 8, 9, 10, 11, 12, 13], "file_nam": [1, 2, 3, 9, 10, 11], "file_s": [2, 9, 10, 11], "file_st": 3, "fileformat": 8, "filenam": [0, 8, 10, 11, 12], "files": 10, "fill": 12, "filter": [5, 7], "filter_object": 7, "first": [7, 8], "flag": 11, "folder": 11, "follow": [0, 11], "forc": 11, "force_metadata_columns_even_if_empti": 11, "form": 13, "format": [3, 5, 8, 11], "from": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13], "func_to_parse_row": [11, 12], "function": [2, 3, 4, 5, 9, 10, 11, 12], "g": 10, "gen3": [10, 11, 12], "gen3_api_kei": 0, "gen3_oidc_client_creds_secret": 0, "gen3auth": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "gen3fil": [1, 2], "gen3index": [2, 3], "gen3job": [2, 4, 10], "gen3metadata": [2, 5], "gen3object": [2, 6], "gen3queri": [2, 7], "gen3submiss": [2, 8], "gen3wsstorag": [2, 13], "gener": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 13], "get": [0, 1, 2, 3, 4, 5, 8, 10, 11, 12, 13], "get_access_token": [0, 2], "get_access_token_from_wt": [0, 2], "get_alias": [2, 5], "get_all_record": [2, 3], "get_dictionary_al": [2, 8], "get_dictionary_nod": [2, 8], "get_fresh_token": [2, 9, 10], "get_graphql_schema": [2, 8], "get_guid_from_fil": 12, "get_guids_prefix": [2, 3], "get_index_key_path": [2, 5], "get_latest_vers": [2, 3], "get_output": [2, 4], "get_presigned_url": [1, 2], "get_program": [2, 8], "get_project": [2, 8], "get_project_dictionari": [2, 8], "get_project_manifest": [2, 8], "get_record": [2, 3], "get_record_doc": [2, 3], "get_records_on_pag": [2, 3], "get_stat": [2, 3], "get_statu": [2, 4], "get_url": [2, 3], "get_valid_guid": [2, 3], "get_vers": [2, 3, 4, 5], "get_with_param": [2, 3], "giangb": 11, "github": [2, 7], "give": 1, "given": [0, 3, 4, 5, 8, 10, 12, 13], "global": [4, 5], "good": 3, "grant": 0, "graph": 8, "graphql": [7, 8], "graphql_queri": [2, 7], "group": 3, "guid": [1, 2, 3, 5, 6, 9, 11, 12], "guid_exampl": 11, "guid_for_row": 12, "guid_from_fil": 12, "guid_type_for_indexed_file_object": [2, 9, 12], "guid_type_for_non_indexed_file_object": [2, 9, 12], "guppi": 7, "ha": [0, 11], "handl": [3, 10], "hardcod": 0, "has_vers": 3, "hash": [3, 11], "hash_typ": 3, "have": [5, 11], "header": 11, "healthi": [3, 4, 5], "help": 11, "helper": 2, "hit": 11, "host": 10, "hostnam": [2, 9, 10], "how": [8, 11], "howto": 10, "http": [0, 7, 11, 12], "i": [0, 1, 2, 3, 4, 5, 8, 10, 11, 12], "id": [0, 1, 3, 5, 10, 11], "idea": 3, "identifi": [3, 5, 9, 11], "idp": 0, "illustr": 11, "immut": 3, "implement": 0, "implic": 11, "import": 11, "includ": [0, 3], "indent": 10, "index": [0, 2, 5, 9], "index_manifest": 11, "index_object_manifest": [2, 9, 11], "indexd": [1, 3, 6, 10, 11, 12], "indexd_field": [11, 12], "indexd_record_page_s": [2, 9, 11], "indexed_file_object_guid": 12, "indic": [0, 11], "infil": 10, "info": [3, 11], "inform": [2, 3, 10], "ingest": [2, 9], "ingest_manifest": 12, "initi": [0, 10], "input": [4, 10, 11], "input_manifest": 11, "instal": [0, 2, 11], "instanc": [1, 3, 6, 7, 8, 9, 10], "instead": [1, 7, 11], "int": [1, 3, 5, 7, 8, 10, 11, 12], "integ": [1, 3, 8], "intend": 0, "interact": [1, 3, 4, 5, 6, 8, 13], "interest": 10, "interpret": 0, "introspect": 8, "involv": 9, "is_healthi": [2, 3, 4, 5], "is_indexed_file_object": 12, "isn": 1, "issu": 0, "its": [1, 3], "job": 2, "job_id": 4, "job_input": 4, "job_nam": 4, "json": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "just": [5, 11, 12], "jwt": 0, "kei": [0, 3, 5, 13], "know": 11, "known": 10, "kwarg": [3, 4, 5], "l": [2, 13], "larg": 9, "last": 10, "latest": 3, "least": 3, "level": 6, "librari": 11, "like": [3, 5, 9, 11, 12], "limit": [1, 3, 5, 12], "linear": 4, "linux": 10, "list": [0, 1, 3, 4, 5, 7, 8, 10, 11, 13], "list_access_in_drs_manifest": [2, 9, 10], "list_drs_object": [2, 9, 10], "list_files_in_drs_manifest": [2, 9, 10], "list_job": [2, 4], "live": [11, 12], "load": [2, 9, 10], "load_manifest": [2, 9, 10], "local": [0, 13], "locat": [1, 6], "lock": 12, "log": [8, 10, 11, 12], "logic": [5, 12], "loop": 11, "ls_path": [2, 13], "maco": 11, "made": 3, "mai": [0, 9, 11], "main": 10, "make": [9, 11], "manag": [1, 5, 10], "mani": [8, 11], "manifest": [2, 8, 9, 10, 11, 12], "manifest_1": 10, "manifest_fil": [11, 12], "manifest_file_delimit": [11, 12], "manifest_row_pars": [11, 12], "map": [0, 11], "mark": 8, "master": 7, "match": [3, 5, 12], "max": 5, "max_concurrent_request": [2, 9, 11, 12], "max_presigned_url_ttl": 1, "max_tri": 8, "maximum": [11, 12], "md": [5, 7, 10, 12], "md5": [2, 3, 9, 11], "md5_hash": 11, "md5sum": [2, 9, 10], "mean": 8, "mechan": 3, "merg": 5, "metadata": [2, 3, 6, 9, 11], "metadata_list": 5, "metadata_sourc": 12, "metadata_typ": 12, "metdata": 12, "method": [1, 7, 10], "minimum": 10, "minut": 0, "mode": 7, "modul": [2, 10, 11], "more": [2, 5, 7, 9, 10], "most": 9, "mostli": 2, "multipl": [8, 11], "must": [1, 5], "my_common": 10, "my_credenti": 10, "my_field": 7, "my_index": 7, "my_program": 7, "my_project": 7, "name": [3, 4, 8, 10, 11, 12, 13], "namespac": [0, 12], "necessari": [3, 5], "need": [3, 7, 10, 11], "nest": 5, "net": 11, "never": 0, "new": [0, 3], "node": 8, "node_nam": 8, "node_typ": 8, "none": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "note": [0, 3, 11, 12], "noth": [3, 6], "now": [1, 8], "num": 5, "num_process": 11, "num_total_fil": 11, "number": [3, 7, 8, 11, 12], "o": 0, "object": [1, 2, 3, 4, 5, 7, 8, 9, 10, 11, 13], "object_id": [1, 2, 9, 10], "object_list": 10, "object_typ": [2, 9, 10], "objectid": 10, "obtain": [0, 10], "occur": 10, "off": 5, "offset": [5, 7], "oidc": 0, "old": 3, "one": [3, 5, 10, 11], "onli": [3, 5, 7, 8, 10, 11], "open": [8, 10, 11], "open_project": [2, 8], "openid": 0, "opt": 0, "option": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11], "order": [0, 8], "ordered_node_list": 8, "org": 10, "otherwis": 10, "output": [4, 5, 11, 12], "output_dir": 10, "output_filenam": [11, 12], "overrid": [0, 11, 12], "overwrit": 5, "own": 0, "packag": 10, "page": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 13], "pagin": 3, "parallel": 11, "param": [3, 5, 8, 10], "paramet": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "pars": [10, 11, 12, 13], "parser": [11, 12], "particular": 0, "pass": [0, 7, 8, 10], "password": [11, 12], "path": [0, 1, 5, 10, 11, 13], "path_to_manifest": 11, "pattern": [3, 12], "pdcdatastor": 11, "pend": 10, "per": [11, 12], "peregrin": 8, "permiss": 10, "persist": 9, "phs0001": 11, "phs0002": 11, "pick": 1, "pla": 11, "place": 11, "planx": 11, "point": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "popul": [10, 12], "posit": [1, 7], "possibl": 10, "post": [0, 11], "pprint": [2, 9, 10], "prefix": 3, "presign": 1, "pretti": 10, "prev_guid": [2, 9, 11], "previou": [3, 11], "previous": 4, "print": [8, 10], "process": 11, "processed_fil": 11, "profil": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "program": [8, 11], "progress": [8, 10], "project": [8, 11], "project_id": [7, 8], "protocol": 1, "provid": [0, 1, 3, 5, 7, 8, 12], "public": [3, 5], "put": 0, "py": 11, "python": [2, 9, 11], "python3": 11, "python_subprocess_command": 11, "queri": [1, 2, 3, 5, 8, 11, 12], "query_str": 7, "query_txt": [7, 8], "query_url": [2, 3], "quickstart": 2, "rather": 0, "raw": [7, 11], "raw_data_download": [2, 7], "rbac": 3, "read": [3, 5, 11], "readm": 2, "reason": 10, "record": [1, 3, 5, 7, 8, 11, 12], "refresh": [0, 10], "refresh_access_token": [0, 2], "refresh_fil": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "refresh_token": 0, "regist": 8, "regular": 7, "relat": 9, "remov": [1, 6, 11, 13], "replac": 11, "replace_url": 11, "repo": 2, "repres": [3, 5, 10], "represent": [1, 3], "request": [0, 1, 3, 5, 8, 11, 12], "requir": 10, "resolv": 10, "resolve_object": [2, 9, 10], "respect": 7, "respons": [0, 1, 3, 4, 5], "result": [1, 8, 10, 11], "retri": 8, "retriev": [1, 8, 10, 12], "return": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11], "return_full_metadata": 5, "rev": 3, "revers": 8, "revis": 3, "right": 1, "rm": [2, 13], "rm_path": [2, 13], "root": [11, 12], "row": [7, 8, 11, 12], "row_offset": 8, "rtype": 3, "run": [8, 11], "s3": [1, 10, 11], "safe": 11, "same": [5, 11, 13], "sampl": [8, 10], "sandbox": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "save": 10, "save_directori": 10, "schema": 8, "scope": [0, 1], "screen": 8, "script": 2, "search": [0, 2, 3], "second": [1, 4], "secret": 0, "see": [7, 10, 11], "self": 10, "semaphon": 12, "semaphor": 12, "separ": [0, 11], "server": 10, "servic": [1, 3, 4, 5, 6, 8, 11, 12, 13], "service_loc": [3, 4, 5], "session": 11, "set": [0, 1, 5, 10], "setup": 2, "sheepdog": 8, "should": [0, 8, 11], "show": 10, "show_progress": 10, "shown": 11, "sign": 1, "signpost": 3, "similar": 10, "simpl": 3, "simpli": 11, "sinc": 3, "singl": [1, 5, 8], "size": [2, 3, 9, 10, 11], "skip": 8, "sleep": 4, "so": 11, "some": [0, 2], "someth": 11, "sort": 7, "sort_field": 7, "sort_object": 7, "sourc": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "space": [0, 11], "specif": [5, 8, 11, 12], "specifi": [0, 1, 3, 11, 13], "spreadsheet": 8, "src_path": 13, "src_urlstr": 13, "src_w": 13, "src_wskei": 13, "ssl": [3, 4, 5], "start": [3, 4, 7, 8, 10], "start_tim": [2, 9, 10], "static": 10, "statu": [2, 4, 9, 10], "storag": [1, 2, 6], "store": [1, 3, 10], "str": [0, 1, 3, 4, 5, 7, 8, 10, 11, 12], "string": [0, 3, 5, 11, 13], "strip": 11, "sub": 8, "subject": [7, 8], "submiss": 2, "submit": [8, 11], "submit_additional_metadata_column": 11, "submit_fil": [2, 8], "submit_record": [2, 8], "submitter_id": 7, "success": 10, "successfulli": 10, "suffici": 3, "suppli": 3, "support": [0, 1, 5, 8, 11], "sure": 1, "synchron": 11, "syntax": 7, "system": [6, 7, 8, 9], "t": [1, 5, 11], "tab": 11, "task": 9, "temporari": 11, "test": 11, "test1": 11, "test2": 11, "test3": 11, "test4": 11, "test5": 11, "text": [1, 7, 8], "than": [0, 5], "thei": [0, 10], "them": [10, 11], "thi": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "those": 11, "thread": 11, "thread_num": 11, "threadcontrol": [2, 9, 11], "through": [8, 11], "tier": 7, "time": [1, 3, 8, 10, 11], "timestamp": 10, "tmp_folder": [2, 9, 11], "token": [0, 10], "tool": 2, "total": 11, "treat": [1, 5], "tree": 10, "true": [3, 4, 5, 6, 7, 8, 10, 11, 12], "try": 0, "tsv": [8, 11, 12], "tupl": [0, 3, 11, 12], "type": [1, 3, 4, 5, 7, 8, 10, 11, 12], "typic": 10, "uc": 7, "unaccess": 7, "under": [0, 8, 13], "uniqu": [1, 5], "unknown": 10, "unpack": 10, "unpack_packag": 10, "until": [4, 10], "up": [5, 9], "updat": [2, 3, 5, 10, 11], "update_alias": [2, 5], "update_blank": [2, 3], "update_record": [2, 3], "updated_tim": [2, 9, 10], "upload": [1, 2, 3, 8, 13], "upload_fil": [1, 2], "upload_file_to_guid": [1, 2], "upload_url": [2, 13], "url": [1, 2, 3, 9, 10, 11, 12, 13], "urls_metadata": 3, "us": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "usag": 11, "use_agg_md": 5, "user": [0, 10, 12], "user_access": [2, 9, 10], "usual": 12, "utcnow": 1, "util": 9, "uuid": [1, 3, 8], "uuid1": 8, "uuid2": 8, "valid": [3, 7], "valu": [0, 1, 3, 5, 7, 10, 11], "value_from_indexd": 11, "value_from_manifest": 11, "variabl": [0, 7, 8], "variou": 2, "verbos": [7, 8], "verif": 11, "verifi": [2, 9], "verify_manifest": 11, "verify_object_manifest": 11, "version": [3, 4, 5], "vital_statu": 7, "w": 13, "wa": 0, "wai": 10, "wait": 4, "want": [0, 3, 8], "warn": 11, "we": [3, 11], "web": 0, "what": 5, "when": [0, 3, 7, 10, 12], "where": [0, 3, 5, 11, 12], "whether": [3, 4, 5, 8, 11, 12], "which": [8, 10], "while": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "whose": 5, "within": [0, 2, 9], "without": [3, 5], "won": 5, "work": [0, 10], "workaround": 11, "worksheet": 8, "workspac": [0, 2], "wrapper": 10, "write": 11, "ws_urlstr": 13, "wskei": 13, "wss": 13, "wt": [0, 10], "x": 11, "xlsx": 8, "you": [0, 3, 8, 11], "your": 0}, "titles": ["Gen3 Auth Helper", "Gen3 File Class", "Welcome to Gen3 SDK\u2019s documentation!", "Gen3 Index Class", "Gen3 Jobs Class", "Gen3 Metadata Class", "Gen3 Object Class", "Gen3 Query Class", "Gen3 Submission Class", "Gen3 Tools", "DRS Download Tools", "Indexing Tools", "Metadata Tools", "Gen3 Workspace Storage"], "titleterms": {"": 2, "auth": 0, "class": [1, 3, 4, 5, 6, 7, 8], "document": 2, "download": [10, 11], "dr": 10, "file": 1, "gen3": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 13], "helper": 0, "index": [3, 11], "indic": 2, "ingest": 12, "job": 4, "metadata": [5, 12], "object": 6, "queri": 7, "sdk": 2, "storag": 13, "submiss": 8, "tabl": 2, "tool": [9, 10, 11, 12], "verifi": 11, "welcom": 2, "workspac": 13}}) \ No newline at end of file diff --git a/docs/_build/html/tools/indexing.html b/docs/_build/html/tools/indexing.html index 11632e1f5..1c568baae 100644 --- a/docs/_build/html/tools/indexing.html +++ b/docs/_build/html/tools/indexing.html @@ -381,7 +381,7 @@

Indexing Tools
-async gen3.tools.indexing.verify_manifest.async_verify_object_manifest(commons_url, manifest_file, max_concurrent_requests=24, manifest_row_parsers={'acl': <function _get_acl_from_row>, 'authz': <function _get_authz_from_row>, 'file_name': <function _get_file_name_from_row>, 'file_size': <function _get_file_size_from_row>, 'guid': <function _get_guid_from_row>, 'md5': <function _get_md5_from_row>, 'urls': <function _get_urls_from_row>}, manifest_file_delimiter=None, output_filename='verify-manifest-errors-1713542306.4649727.log')[source]
+async gen3.tools.indexing.verify_manifest.async_verify_object_manifest(commons_url, manifest_file, max_concurrent_requests=24, manifest_row_parsers={'acl': <function _get_acl_from_row>, 'authz': <function _get_authz_from_row>, 'file_name': <function _get_file_name_from_row>, 'file_size': <function _get_file_size_from_row>, 'guid': <function _get_guid_from_row>, 'md5': <function _get_md5_from_row>, 'urls': <function _get_urls_from_row>}, manifest_file_delimiter=None, output_filename='verify-manifest-errors-1713542765.2877355.log')[source]

Verify all file object records into a manifest csv

Parameters:
diff --git a/docs/_build/html/tools/metadata.html b/docs/_build/html/tools/metadata.html index e2cec6ac5..52c028ade 100644 --- a/docs/_build/html/tools/metadata.html +++ b/docs/_build/html/tools/metadata.html @@ -102,7 +102,7 @@

Metadata Tools
-async gen3.tools.metadata.ingest_manifest.async_ingest_metadata_manifest(commons_url, manifest_file, metadata_source, auth=None, max_concurrent_requests=24, manifest_row_parsers={'guid_for_row': <function _get_guid_for_row>, 'indexed_file_object_guid': <function _query_for_associated_indexd_record_guid>}, manifest_file_delimiter=None, output_filename='ingest-metadata-manifest-errors-1713542306.760149.log', get_guid_from_file=True, metadata_type=None)[source]
+async gen3.tools.metadata.ingest_manifest.async_ingest_metadata_manifest(commons_url, manifest_file, metadata_source, auth=None, max_concurrent_requests=24, manifest_row_parsers={'guid_for_row': <function _get_guid_for_row>, 'indexed_file_object_guid': <function _query_for_associated_indexd_record_guid>}, manifest_file_delimiter=None, output_filename='ingest-metadata-manifest-errors-1713542765.6692646.log', get_guid_from_file=True, metadata_type=None)[source]

Ingest all metadata records into a manifest csv

Parameters:
From cc6cd0bf4d5a8e88f254d7b9610b11cac4456834 Mon Sep 17 00:00:00 2001 From: Alex Date: Fri, 19 Apr 2024 11:09:25 -0500 Subject: [PATCH 05/62] chore(gh): change CI to not run twice --- .github/workflows/build.yaml | 4 ++-- .github/workflows/ci.yaml | 6 +----- .github/workflows/docs.yaml | 1 + 3 files changed, 4 insertions(+), 7 deletions(-) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index 1b563bcb7..fababb2c0 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -28,8 +28,8 @@ jobs: run: | pip install --upgrade pip curl -sSL https://install.python-poetry.org | python - - pip list - poetry show + pip --version + poetry --version - name: Install dependencies run: | poetry install -vv --all-extras --no-interaction --no-cache diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index abbc82607..254128d04 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -1,10 +1,6 @@ name: CI -on: - # run on pushed commits to master and on new commits on pull requests - push: - pull_request: - types: [opened, synchronize] +on: push jobs: Security: diff --git a/.github/workflows/docs.yaml b/.github/workflows/docs.yaml index 645370329..077f1d396 100644 --- a/.github/workflows/docs.yaml +++ b/.github/workflows/docs.yaml @@ -5,6 +5,7 @@ on: push: branches-ignore: - 'master' + - 'main' paths-ignore: - 'docs/**' # Use push trigger since 'paths-ignore' are not respected as expected by 'on.pull_request.paths-ignore', see https://github.com/actions/runner/issues/2324 From 24093b81783b49bd3989485297696f4edcbcb5d2 Mon Sep 17 00:00:00 2001 From: Avantol13 Date: Fri, 19 Apr 2024 16:10:37 +0000 Subject: [PATCH 06/62] Apply automatic documentation changes --- docs/_build/doctrees/environment.pickle | Bin 1579893 -> 1579893 bytes docs/_build/doctrees/tools/indexing.doctree | Bin 100291 -> 100291 bytes docs/_build/doctrees/tools/metadata.doctree | Bin 35934 -> 35934 bytes docs/_build/html/searchindex.js | 2 +- docs/_build/html/tools/indexing.html | 2 +- docs/_build/html/tools/metadata.html | 2 +- 6 files changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/_build/doctrees/environment.pickle b/docs/_build/doctrees/environment.pickle index 476664b58d0f159232a4c2554c00300ac1cf3f97..1578dc46e4f1576cba8226081b335fa7cb629a23 100644 GIT binary patch delta 10983 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 Pej!eW6_=YkCiZ^;bJ->e diff --git a/docs/_build/doctrees/tools/indexing.doctree b/docs/_build/doctrees/tools/indexing.doctree index 88d547397a4a75b08f6c71a1ba0f86e1e13a16f4..e7bc8a0053b25761705fb940a225c20d79db6c2c 100644 GIT binary patch delta 104 zcmX@y&vv+Kdc~ delta 104 zcmX@y&vv+Indexing Tools
-async gen3.tools.indexing.verify_manifest.async_verify_object_manifest(commons_url, manifest_file, max_concurrent_requests=24, manifest_row_parsers={'acl': <function _get_acl_from_row>, 'authz': <function _get_authz_from_row>, 'file_name': <function _get_file_name_from_row>, 'file_size': <function _get_file_size_from_row>, 'guid': <function _get_guid_from_row>, 'md5': <function _get_md5_from_row>, 'urls': <function _get_urls_from_row>}, manifest_file_delimiter=None, output_filename='verify-manifest-errors-1713542765.2877355.log')[source]
+async gen3.tools.indexing.verify_manifest.async_verify_object_manifest(commons_url, manifest_file, max_concurrent_requests=24, manifest_row_parsers={'acl': <function _get_acl_from_row>, 'authz': <function _get_authz_from_row>, 'file_name': <function _get_file_name_from_row>, 'file_size': <function _get_file_size_from_row>, 'guid': <function _get_guid_from_row>, 'md5': <function _get_md5_from_row>, 'urls': <function _get_urls_from_row>}, manifest_file_delimiter=None, output_filename='verify-manifest-errors-1713543033.5899982.log')[source]

Verify all file object records into a manifest csv

Parameters:
diff --git a/docs/_build/html/tools/metadata.html b/docs/_build/html/tools/metadata.html index 52c028ade..2a583a296 100644 --- a/docs/_build/html/tools/metadata.html +++ b/docs/_build/html/tools/metadata.html @@ -102,7 +102,7 @@

Metadata Tools
-async gen3.tools.metadata.ingest_manifest.async_ingest_metadata_manifest(commons_url, manifest_file, metadata_source, auth=None, max_concurrent_requests=24, manifest_row_parsers={'guid_for_row': <function _get_guid_for_row>, 'indexed_file_object_guid': <function _query_for_associated_indexd_record_guid>}, manifest_file_delimiter=None, output_filename='ingest-metadata-manifest-errors-1713542765.6692646.log', get_guid_from_file=True, metadata_type=None)[source]
+async gen3.tools.metadata.ingest_manifest.async_ingest_metadata_manifest(commons_url, manifest_file, metadata_source, auth=None, max_concurrent_requests=24, manifest_row_parsers={'guid_for_row': <function _get_guid_for_row>, 'indexed_file_object_guid': <function _query_for_associated_indexd_record_guid>}, manifest_file_delimiter=None, output_filename='ingest-metadata-manifest-errors-1713543033.8882551.log', get_guid_from_file=True, metadata_type=None)[source]

Ingest all metadata records into a manifest csv

Parameters:
From 3bf33efafc4a8df5a327a77e657980916adce15e Mon Sep 17 00:00:00 2001 From: Alex Date: Fri, 19 Apr 2024 11:12:33 -0500 Subject: [PATCH 07/62] fix(pyinstaller): use python 3.9 --- .github/workflows/build.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index fababb2c0..3df9c2cac 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -21,7 +21,7 @@ jobs: - name: Set up python uses: actions/setup-python@v4 with: - python-version: ${{ inputs.PYTHON_VERSION }} + python-version: '3.9' - name: Install poetry # that is poetry's recommended way to install From bb23993d9c2797cc34c3805ce654a7f096cdfb12 Mon Sep 17 00:00:00 2001 From: Avantol13 Date: Fri, 19 Apr 2024 16:13:49 +0000 Subject: [PATCH 08/62] Apply automatic documentation changes --- docs/_build/doctrees/environment.pickle | Bin 1579893 -> 1579878 bytes docs/_build/doctrees/tools/indexing.doctree | Bin 100291 -> 100291 bytes docs/_build/doctrees/tools/metadata.doctree | Bin 35934 -> 35919 bytes docs/_build/html/searchindex.js | 2 +- docs/_build/html/tools/indexing.html | 2 +- docs/_build/html/tools/metadata.html | 2 +- 6 files changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/_build/doctrees/environment.pickle b/docs/_build/doctrees/environment.pickle index 1578dc46e4f1576cba8226081b335fa7cb629a23..dbb86cae834c6db10c220c3f1dfe9dba789ede5b 100644 GIT binary patch delta 9392 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 diff --git a/docs/_build/doctrees/tools/indexing.doctree b/docs/_build/doctrees/tools/indexing.doctree index e7bc8a0053b25761705fb940a225c20d79db6c2c..ae311f13efc33d85e4ca7967b3fb469388534201 100644 GIT binary patch delta 99 zcmX@y&vv+LT&pX$`ILquBZrZZsh*LgrRn5MeVffeTF03g zYc@;ixgaDqXX>|dFuG2DZ*IX0Q>>ShpRPXnV2&_ETnt5gN(OuElnk*Ruok%ao9|oH G2Lk|U+A1{w delta 175 zcmX>&|GPBeJRc=0|;fPaJqkcLEqsQb478U~N=1exs7KTVkqDxK5V2_=WA=U%d N$c-es`GQ4#FaRY|F?av~ diff --git a/docs/_build/html/searchindex.js b/docs/_build/html/searchindex.js index 2bf91eef8..7ea5ab9c8 100644 --- a/docs/_build/html/searchindex.js +++ b/docs/_build/html/searchindex.js @@ -1 +1 @@ -Search.setIndex({"alltitles": {"DRS Download Tools": [[10, "module-gen3.tools.download.drs_download"]], "Download": [[11, "module-gen3.tools.indexing.download_manifest"]], "Gen3 Auth Helper": [[0, "gen3-auth-helper"]], "Gen3 File Class": [[1, "gen3-file-class"]], "Gen3 Index Class": [[3, "gen3-index-class"]], "Gen3 Jobs Class": [[4, "gen3-jobs-class"]], "Gen3 Metadata Class": [[5, "gen3-metadata-class"]], "Gen3 Object Class": [[6, "gen3-object-class"]], "Gen3 Query Class": [[7, "gen3-query-class"]], "Gen3 Submission Class": [[8, "gen3-submission-class"]], "Gen3 Tools": [[9, "gen3-tools"]], "Gen3 Workspace Storage": [[13, "gen3-workspace-storage"]], "Index": [[11, "module-gen3.tools.indexing.index_manifest"]], "Indexing Tools": [[11, "indexing-tools"]], "Indices and tables": [[2, "indices-and-tables"]], "Ingest": [[12, "module-gen3.tools.metadata.ingest_manifest"]], "Metadata Tools": [[12, "metadata-tools"]], "Verify": [[11, "module-gen3.tools.indexing.verify_manifest"]], "Welcome to Gen3 SDK\u2019s documentation!": [[2, "welcome-to-gen3-sdk-s-documentation"]]}, "docnames": ["auth", "file", "index", "indexing", "jobs", "metadata", "object", "query", "submission", "tools", "tools/drs_pull", "tools/indexing", "tools/metadata", "wss"], "envversion": {"sphinx": 61, "sphinx.domains.c": 3, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 9, "sphinx.domains.index": 1, "sphinx.domains.javascript": 3, "sphinx.domains.math": 2, "sphinx.domains.python": 4, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx.ext.viewcode": 1}, "filenames": ["auth.rst", "file.rst", "index.rst", "indexing.rst", "jobs.rst", "metadata.rst", "object.rst", "query.rst", "submission.rst", "tools.rst", "tools/drs_pull.rst", "tools/indexing.rst", "tools/metadata.rst", "wss.rst"], "indexentries": {"_manager (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable._manager", false]], "access_methods (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.access_methods", false]], "acls (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.ACLS", false]], "async_create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_create", false]], "async_create_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_create_aliases", false]], "async_create_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_create_record", false]], "async_delete_alias() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_delete_alias", false]], "async_delete_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_delete_aliases", false]], "async_download_object_manifest() (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.async_download_object_manifest", false]], "async_get() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_get", false]], "async_get_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_get_aliases", false]], "async_get_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_record", false]], "async_get_records_from_checksum() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_records_from_checksum", false]], "async_get_records_on_page() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_records_on_page", false]], "async_get_with_params() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_with_params", false]], "async_ingest_metadata_manifest() (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.async_ingest_metadata_manifest", false]], "async_query_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_query_urls", false]], "async_query_urls_from_indexd() (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.async_query_urls_from_indexd", false]], "async_run_job_and_wait() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.async_run_job_and_wait", false]], "async_update() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_update", false]], "async_update_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_update_aliases", false]], "async_update_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_update_record", false]], "async_verify_object_manifest() (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.async_verify_object_manifest", false]], "auth_provider (gen3.metadata.gen3metadata attribute)": [[5, "gen3.metadata.Gen3Metadata.auth_provider", false]], "authz (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.AUTHZ", false]], "batch_create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.batch_create", false]], "cache_hosts_wts_tokens() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.cache_hosts_wts_tokens", false]], "children (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.children", false]], "column_to_use_as_guid (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.COLUMN_TO_USE_AS_GUID", false]], "commons_url (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.commons_url", false]], "copy() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.copy", false]], "create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create", false]], "create_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create_aliases", false]], "create_blank() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_blank", false]], "create_index_key_path() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create_index_key_path", false]], "create_job() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.create_job", false]], "create_new_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_new_version", false]], "create_object_list() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.create_object_list", false]], "create_program() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.create_program", false]], "create_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.create_project", false]], "create_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_record", false]], "created_time (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.created_time", false]], "curl() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.curl", false]], "current_dir (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.CURRENT_DIR", false]], "current_dir (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.CURRENT_DIR", false]], "current_dir (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.CURRENT_DIR", false]], "delete() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete", false]], "delete_alias() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_alias", false]], "delete_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_aliases", false]], "delete_all_guids() (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.delete_all_guids", false]], "delete_file() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.delete_file", false]], "delete_file_locations() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.delete_file_locations", false]], "delete_index_key_path() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_index_key_path", false]], "delete_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_node", false]], "delete_nodes() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_nodes", false]], "delete_object() (gen3.object.gen3object method)": [[6, "gen3.object.Gen3Object.delete_object", false]], "delete_program() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_program", false]], "delete_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_project", false]], "delete_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.delete_record", false]], "delete_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_record", false]], "delete_records() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_records", false]], "download() (gen3.tools.download.drs_download.downloadable method)": [[10, "gen3.tools.download.drs_download.Downloadable.download", false]], "download() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.download", false]], "download() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.download", false]], "download_files_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.download_files_in_drs_manifest", false]], "download_single() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.download_single", false]], "download_url() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.download_url", false]], "downloadable (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.Downloadable", false]], "downloadmanager (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.DownloadManager", false]], "downloadstatus (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.DownloadStatus", false]], "end_time (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.end_time", false]], "endpoint (gen3.metadata.gen3metadata attribute)": [[5, "gen3.metadata.Gen3Metadata.endpoint", false]], "export_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.export_node", false]], "export_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.export_record", false]], "file_name (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.file_name", false]], "file_name (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.file_name", false]], "file_size (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.file_size", false]], "file_size (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.file_size", false]], "gen3.tools": [[9, "module-gen3.tools", false]], "gen3.tools.download.drs_download": [[10, "module-gen3.tools.download.drs_download", false]], "gen3.tools.indexing.download_manifest": [[11, "module-gen3.tools.indexing.download_manifest", false]], "gen3.tools.indexing.index_manifest": [[11, "module-gen3.tools.indexing.index_manifest", false]], "gen3.tools.indexing.verify_manifest": [[11, "module-gen3.tools.indexing.verify_manifest", false]], "gen3.tools.metadata.ingest_manifest": [[12, "module-gen3.tools.metadata.ingest_manifest", false]], "gen3auth (class in gen3.auth)": [[0, "gen3.auth.Gen3Auth", false]], "gen3file (class in gen3.file)": [[1, "gen3.file.Gen3File", false]], "gen3index (class in gen3.index)": [[3, "gen3.index.Gen3Index", false]], "gen3jobs (class in gen3.jobs)": [[4, "gen3.jobs.Gen3Jobs", false]], "gen3metadata (class in gen3.metadata)": [[5, "gen3.metadata.Gen3Metadata", false]], "gen3object (class in gen3.object)": [[6, "gen3.object.Gen3Object", false]], "gen3query (class in gen3.query)": [[7, "gen3.query.Gen3Query", false]], "gen3submission (class in gen3.submission)": [[8, "gen3.submission.Gen3Submission", false]], "gen3wsstorage (class in gen3.wss)": [[13, "gen3.wss.Gen3WsStorage", false]], "get() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get", false]], "get() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get", false]], "get_access_token() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.get_access_token", false]], "get_access_token_from_wts() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.get_access_token_from_wts", false]], "get_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_aliases", false]], "get_all_records() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_all_records", false]], "get_dictionary_all() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_dictionary_all", false]], "get_dictionary_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_dictionary_node", false]], "get_fresh_token() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.get_fresh_token", false]], "get_graphql_schema() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_graphql_schema", false]], "get_guids_prefix() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_guids_prefix", false]], "get_index_key_paths() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_index_key_paths", false]], "get_latest_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_latest_version", false]], "get_output() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_output", false]], "get_presigned_url() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.get_presigned_url", false]], "get_programs() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_programs", false]], "get_project_dictionary() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_project_dictionary", false]], "get_project_manifest() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_project_manifest", false]], "get_projects() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_projects", false]], "get_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_record", false]], "get_record_doc() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_record_doc", false]], "get_records() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_records", false]], "get_records_on_page() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_records_on_page", false]], "get_stats() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_stats", false]], "get_status() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_status", false]], "get_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_urls", false]], "get_valid_guids() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_valid_guids", false]], "get_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_version", false]], "get_version() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_version", false]], "get_version() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_version", false]], "get_versions() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_versions", false]], "get_with_params() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_with_params", false]], "graphql_query() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.graphql_query", false]], "guid (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.GUID", false]], "guid_type_for_indexed_file_object (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.GUID_TYPE_FOR_INDEXED_FILE_OBJECT", false]], "guid_type_for_non_indexed_file_object (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.GUID_TYPE_FOR_NON_INDEXED_FILE_OBJECT", false]], "hostname (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.hostname", false]], "index_object_manifest() (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.index_object_manifest", false]], "indexd_record_page_size (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.INDEXD_RECORD_PAGE_SIZE", false]], "is_healthy() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.is_healthy", false]], "is_healthy() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.is_healthy", false]], "is_healthy() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.is_healthy", false]], "list_access_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_access_in_drs_manifest", false]], "list_drs_object() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_drs_object", false]], "list_files_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_files_in_drs_manifest", false]], "list_jobs() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.list_jobs", false]], "load() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.load", false]], "load_manifest() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.load_manifest", false]], "ls() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.ls", false]], "ls_path() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.ls_path", false]], "manifest (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.Manifest", false]], "max_concurrent_requests (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.MAX_CONCURRENT_REQUESTS", false]], "max_concurrent_requests (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.MAX_CONCURRENT_REQUESTS", false]], "max_concurrent_requests (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.MAX_CONCURRENT_REQUESTS", false]], "md5 (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.MD5", false]], "md5sum (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.md5sum", false]], "module": [[9, "module-gen3.tools", false], [10, "module-gen3.tools.download.drs_download", false], [11, "module-gen3.tools.indexing.download_manifest", false], [11, "module-gen3.tools.indexing.index_manifest", false], [11, "module-gen3.tools.indexing.verify_manifest", false], [12, "module-gen3.tools.metadata.ingest_manifest", false]], "object_id (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.object_id", false]], "object_id (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.object_id", false]], "object_type (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.object_type", false]], "open_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.open_project", false]], "pprint() (gen3.tools.download.drs_download.downloadable method)": [[10, "gen3.tools.download.drs_download.Downloadable.pprint", false]], "prev_guid (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.PREV_GUID", false]], "query() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.query", false]], "query() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.query", false]], "query() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.query", false]], "query_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.query_urls", false]], "raw_data_download() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.raw_data_download", false]], "refresh_access_token() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.refresh_access_token", false]], "resolve_objects() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.resolve_objects", false]], "rm() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.rm", false]], "rm_path() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.rm_path", false]], "size (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.SIZE", false]], "start_time (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.start_time", false]], "status (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.status", false]], "submit_file() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.submit_file", false]], "submit_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.submit_record", false]], "threadcontrol (class in gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.ThreadControl", false]], "tmp_folder (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.TMP_FOLDER", false]], "update() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.update", false]], "update_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.update_aliases", false]], "update_blank() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.update_blank", false]], "update_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.update_record", false]], "updated_time (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.updated_time", false]], "upload() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.upload", false]], "upload_file() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.upload_file", false]], "upload_file_to_guid() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.upload_file_to_guid", false]], "upload_url() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.upload_url", false]], "urls (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.URLS", false]], "user_access() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.user_access", false]]}, "objects": {"gen3": [[9, 3, 0, "-", "tools"]], "gen3.auth": [[0, 0, 1, "", "Gen3Auth"]], "gen3.auth.Gen3Auth": [[0, 1, 1, "", "curl"], [0, 1, 1, "", "get_access_token"], [0, 1, 1, "", "get_access_token_from_wts"], [0, 1, 1, "", "refresh_access_token"]], "gen3.file": [[1, 0, 1, "", "Gen3File"]], "gen3.file.Gen3File": [[1, 1, 1, "", "delete_file"], [1, 1, 1, "", "delete_file_locations"], [1, 1, 1, "", "download_single"], [1, 1, 1, "", "get_presigned_url"], [1, 1, 1, "", "upload_file"], [1, 1, 1, "", "upload_file_to_guid"]], "gen3.index": [[3, 0, 1, "", "Gen3Index"]], "gen3.index.Gen3Index": [[3, 1, 1, "", "async_create_record"], [3, 1, 1, "", "async_get_record"], [3, 1, 1, "", "async_get_records_from_checksum"], [3, 1, 1, "", "async_get_records_on_page"], [3, 1, 1, "", "async_get_with_params"], [3, 1, 1, "", "async_query_urls"], [3, 1, 1, "", "async_update_record"], [3, 1, 1, "", "create_blank"], [3, 1, 1, "", "create_new_version"], [3, 1, 1, "", "create_record"], [3, 1, 1, "", "delete_record"], [3, 1, 1, "", "get"], [3, 1, 1, "", "get_all_records"], [3, 1, 1, "", "get_guids_prefix"], [3, 1, 1, "", "get_latest_version"], [3, 1, 1, "", "get_record"], [3, 1, 1, "", "get_record_doc"], [3, 1, 1, "", "get_records"], [3, 1, 1, "", "get_records_on_page"], [3, 1, 1, "", "get_stats"], [3, 1, 1, "", "get_urls"], [3, 1, 1, "", "get_valid_guids"], [3, 1, 1, "", "get_version"], [3, 1, 1, "", "get_versions"], [3, 1, 1, "", "get_with_params"], [3, 1, 1, "", "is_healthy"], [3, 1, 1, "", "query_urls"], [3, 1, 1, "", "update_blank"], [3, 1, 1, "", "update_record"]], "gen3.jobs": [[4, 0, 1, "", "Gen3Jobs"]], "gen3.jobs.Gen3Jobs": [[4, 1, 1, "", "async_run_job_and_wait"], [4, 1, 1, "", "create_job"], [4, 1, 1, "", "get_output"], [4, 1, 1, "", "get_status"], [4, 1, 1, "", "get_version"], [4, 1, 1, "", "is_healthy"], [4, 1, 1, "", "list_jobs"]], "gen3.metadata": [[5, 0, 1, "", "Gen3Metadata"]], "gen3.metadata.Gen3Metadata": [[5, 1, 1, "", "async_create"], [5, 1, 1, "", "async_create_aliases"], [5, 1, 1, "", "async_delete_alias"], [5, 1, 1, "", "async_delete_aliases"], [5, 1, 1, "", "async_get"], [5, 1, 1, "", "async_get_aliases"], [5, 1, 1, "", "async_update"], [5, 1, 1, "", "async_update_aliases"], [5, 2, 1, "", "auth_provider"], [5, 1, 1, "", "batch_create"], [5, 1, 1, "", "create"], [5, 1, 1, "", "create_aliases"], [5, 1, 1, "", "create_index_key_path"], [5, 1, 1, "", "delete"], [5, 1, 1, "", "delete_alias"], [5, 1, 1, "", "delete_aliases"], [5, 1, 1, "", "delete_index_key_path"], [5, 2, 1, "", "endpoint"], [5, 1, 1, "", "get"], [5, 1, 1, "", "get_aliases"], [5, 1, 1, "", "get_index_key_paths"], [5, 1, 1, "", "get_version"], [5, 1, 1, "", "is_healthy"], [5, 1, 1, "", "query"], [5, 1, 1, "", "update"], [5, 1, 1, "", "update_aliases"]], "gen3.object": [[6, 0, 1, "", "Gen3Object"]], "gen3.object.Gen3Object": [[6, 1, 1, "", "delete_object"]], "gen3.query": [[7, 0, 1, "", "Gen3Query"]], "gen3.query.Gen3Query": [[7, 1, 1, "", "graphql_query"], [7, 1, 1, "", "query"], [7, 1, 1, "", "raw_data_download"]], "gen3.submission": [[8, 0, 1, "", "Gen3Submission"]], "gen3.submission.Gen3Submission": [[8, 1, 1, "", "create_program"], [8, 1, 1, "", "create_project"], [8, 1, 1, "", "delete_node"], [8, 1, 1, "", "delete_nodes"], [8, 1, 1, "", "delete_program"], [8, 1, 1, "", "delete_project"], [8, 1, 1, "", "delete_record"], [8, 1, 1, "", "delete_records"], [8, 1, 1, "", "export_node"], [8, 1, 1, "", "export_record"], [8, 1, 1, "", "get_dictionary_all"], [8, 1, 1, "", "get_dictionary_node"], [8, 1, 1, "", "get_graphql_schema"], [8, 1, 1, "", "get_programs"], [8, 1, 1, "", "get_project_dictionary"], [8, 1, 1, "", "get_project_manifest"], [8, 1, 1, "", "get_projects"], [8, 1, 1, "", "open_project"], [8, 1, 1, "", "query"], [8, 1, 1, "", "submit_file"], [8, 1, 1, "", "submit_record"]], "gen3.tools.download": [[10, 3, 0, "-", "drs_download"]], "gen3.tools.download.drs_download": [[10, 0, 1, "", "DownloadManager"], [10, 0, 1, "", "DownloadStatus"], [10, 0, 1, "", "Downloadable"], [10, 0, 1, "", "Manifest"], [10, 4, 1, "", "download_files_in_drs_manifest"], [10, 4, 1, "", "list_access_in_drs_manifest"], [10, 4, 1, "", "list_drs_object"], [10, 4, 1, "", "list_files_in_drs_manifest"]], "gen3.tools.download.drs_download.DownloadManager": [[10, 1, 1, "", "cache_hosts_wts_tokens"], [10, 1, 1, "", "download"], [10, 1, 1, "", "get_fresh_token"], [10, 1, 1, "", "resolve_objects"], [10, 1, 1, "", "user_access"]], "gen3.tools.download.drs_download.DownloadStatus": [[10, 2, 1, "", "end_time"], [10, 2, 1, "", "start_time"], [10, 2, 1, "", "status"]], "gen3.tools.download.drs_download.Downloadable": [[10, 2, 1, "", "_manager"], [10, 2, 1, "", "access_methods"], [10, 2, 1, "", "children"], [10, 2, 1, "", "created_time"], [10, 1, 1, "", "download"], [10, 2, 1, "", "file_name"], [10, 2, 1, "", "file_size"], [10, 2, 1, "", "hostname"], [10, 2, 1, "", "object_id"], [10, 2, 1, "", "object_type"], [10, 1, 1, "", "pprint"], [10, 2, 1, "", "updated_time"]], "gen3.tools.download.drs_download.Manifest": [[10, 2, 1, "", "commons_url"], [10, 1, 1, "", "create_object_list"], [10, 2, 1, "", "file_name"], [10, 2, 1, "", "file_size"], [10, 1, 1, "", "load"], [10, 1, 1, "", "load_manifest"], [10, 2, 1, "", "md5sum"], [10, 2, 1, "", "object_id"]], "gen3.tools.indexing": [[11, 3, 0, "-", "download_manifest"], [11, 3, 0, "-", "index_manifest"], [11, 3, 0, "-", "verify_manifest"]], "gen3.tools.indexing.download_manifest": [[11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "INDEXD_RECORD_PAGE_SIZE"], [11, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [11, 2, 1, "", "TMP_FOLDER"], [11, 4, 1, "", "async_download_object_manifest"]], "gen3.tools.indexing.index_manifest": [[11, 2, 1, "", "ACLS"], [11, 2, 1, "", "AUTHZ"], [11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "GUID"], [11, 2, 1, "", "MD5"], [11, 2, 1, "", "PREV_GUID"], [11, 2, 1, "", "SIZE"], [11, 0, 1, "", "ThreadControl"], [11, 2, 1, "", "URLS"], [11, 4, 1, "", "delete_all_guids"], [11, 4, 1, "", "index_object_manifest"]], "gen3.tools.indexing.verify_manifest": [[11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [11, 4, 1, "", "async_verify_object_manifest"]], "gen3.tools.metadata": [[12, 3, 0, "-", "ingest_manifest"]], "gen3.tools.metadata.ingest_manifest": [[12, 2, 1, "", "COLUMN_TO_USE_AS_GUID"], [12, 2, 1, "", "GUID_TYPE_FOR_INDEXED_FILE_OBJECT"], [12, 2, 1, "", "GUID_TYPE_FOR_NON_INDEXED_FILE_OBJECT"], [12, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [12, 4, 1, "", "async_ingest_metadata_manifest"], [12, 4, 1, "", "async_query_urls_from_indexd"]], "gen3.wss": [[13, 0, 1, "", "Gen3WsStorage"]], "gen3.wss.Gen3WsStorage": [[13, 1, 1, "", "copy"], [13, 1, 1, "", "download"], [13, 1, 1, "", "download_url"], [13, 1, 1, "", "ls"], [13, 1, 1, "", "ls_path"], [13, 1, 1, "", "rm"], [13, 1, 1, "", "rm_path"], [13, 1, 1, "", "upload"], [13, 1, 1, "", "upload_url"]]}, "objnames": {"0": ["py", "class", "Python class"], "1": ["py", "method", "Python method"], "2": ["py", "attribute", "Python attribute"], "3": ["py", "module", "Python module"], "4": ["py", "function", "Python function"]}, "objtypes": {"0": "py:class", "1": "py:method", "2": "py:attribute", "3": "py:module", "4": "py:function"}, "terms": {"": [1, 4, 8, 10, 11], "0": [5, 7, 8, 11], "0a80fada010c": 11, "0a80fada096c": 11, "0a80fada097c": 11, "0a80fada098c": 11, "0a80fada099c": 11, "1": [4, 5, 8, 10, 11], "10": [5, 7, 11], "100": [8, 11], "11e9": 11, "1713542306": [], "1713542765": [], "1713543033": [11, 12], "2": [5, 11], "24": [11, 12], "255e396f": 11, "2877355": [], "3": [5, 11], "30": 8, "33": 5, "333": 5, "343434344": 11, "363455714": 11, "4": [5, 11], "450c": 11, "4649727": [], "4714": 8, "473d83400bc1bc9dc635e334fadd433c": 11, "473d83400bc1bc9dc635e334faddd33c": 11, "473d83400bc1bc9dc635e334fadde33c": 11, "473d83400bc1bc9dc635e334faddf33c": 11, "5": [0, 5], "50": 7, "543434443": 11, "5899982": 11, "6692646": [], "6f90": 8, "760149": [], "7d3d8d2083b4": 11, "8420": 8, "8882551": 12, "93d9af72": 11, "9a07": 11, "A": [1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "AND": 5, "Be": 1, "But": 5, "By": 11, "For": [1, 5, 6, 7, 8, 9, 11], "IF": 11, "If": [0, 1, 7, 11, 12], "In": 10, "It": 10, "NOT": 12, "OR": 5, "One": 7, "Such": 9, "THE": 11, "That": 3, "The": [0, 1, 2, 3, 5, 8, 10, 11], "There": 11, "These": 9, "To": 11, "Will": [4, 7, 10], "_get_acl_from_row": 11, "_get_authz_from_row": 11, "_get_file_name_from_row": 11, "_get_file_size_from_row": 11, "_get_guid_for_row": 12, "_get_guid_from_row": 11, "_get_md5_from_row": 11, "_get_urls_from_row": 11, "_guid_typ": 12, "_manag": [2, 9, 10], "_query_for_associated_indexd_record_guid": 12, "_ssl": [3, 4, 5], "a5c6": 11, "ab167e49d25b488939b1ede42752458b": 3, "about": [2, 3], "abov": 11, "access": [0, 1, 3, 7, 10], "access_method": [2, 9, 10], "access_token": 0, "accesstoken": 0, "acl": [2, 3, 9, 11], "across": 11, "act": 0, "action": [9, 11], "actual": 11, "ad": 3, "add": [3, 5], "addit": [3, 5, 10, 11], "admin": [5, 11], "admin_endpoint_suffix": 5, "after": 10, "against": [3, 7, 8, 11, 12], "algorithm": 3, "alia": [3, 5], "alias": 5, "aliv": 7, "all": [1, 3, 4, 5, 6, 7, 8, 10, 11, 12], "allow": [0, 6, 8, 10, 11, 12], "allowed_data_upload_bucket": 1, "along": 2, "alreadi": 9, "also": 1, "altern": [5, 11], "alwai": 5, "ammount": 12, "amount": [1, 9], "an": [0, 3, 6, 8, 10, 11], "ani": [0, 5, 10, 11], "anoth": 5, "api": [0, 5, 8, 11], "api_kei": 11, "appli": 7, "appropri": 13, "ar": [5, 7, 8, 9, 10, 11], "arbitrari": 0, "argument": [0, 13], "arrai": 8, "asc": 7, "assign": 9, "assist": 10, "associ": [3, 5], "assum": 11, "async": [3, 4, 5, 9, 11, 12], "async_cr": [2, 5], "async_create_alias": [2, 5], "async_create_record": [2, 3], "async_delete_alia": [2, 5], "async_delete_alias": [2, 5], "async_download_object_manifest": [2, 9, 11], "async_get": [2, 5], "async_get_alias": [2, 5], "async_get_record": [2, 3], "async_get_records_from_checksum": [2, 3], "async_get_records_on_pag": [2, 3], "async_get_with_param": [2, 3], "async_ingest_metadata_manifest": [2, 9, 12], "async_query_url": [2, 3], "async_query_urls_from_indexd": [2, 9, 12], "async_run_job_and_wait": [2, 4], "async_upd": [2, 5], "async_update_alias": [2, 5], "async_update_record": [2, 3], "async_verify_object_manifest": [2, 9, 11], "asynchron": [3, 4, 5], "asyncio": [11, 12], "asyncron": 5, "attach": [3, 5], "attempt": 11, "attribut": [10, 11], "auth": [1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "auth_provid": [1, 2, 3, 4, 5, 6, 7, 8, 13], "authbas": 0, "authent": 0, "author": 1, "authz": [0, 1, 2, 3, 9, 10, 11], "auto": [0, 2], "automat": 0, "avail": [1, 2, 10, 11], "az": 1, "b": [5, 11], "b0f1": 11, "bar": 10, "base": [0, 1, 3, 4, 5, 6, 7, 8, 9, 11, 13], "baseid": 3, "basic": [3, 11, 12], "batch_creat": [2, 5], "batch_siz": 8, "behalf": 0, "behavior": 11, "being": 3, "belong": 8, "below": 11, "blank": 3, "blob": [5, 7], "bodi": 3, "bool": [4, 5, 8, 10, 11, 12], "boolean": 3, "bownload": 10, "broad": 9, "broken": 9, "bucket": [1, 6], "bundl": 10, "byte": 10, "c": [5, 11], "cach": 10, "cache_hosts_wts_token": [2, 9, 10], "call": [10, 13], "can": [0, 3, 4, 8, 11, 12], "capabl": 9, "case": [0, 10], "categori": 9, "ccle": 8, "ccle_one_record": 8, "ccle_sample_nod": 8, "cdi": 7, "chang": [3, 11], "checksum": [3, 10], "checksum_typ": 3, "child": 10, "children": [2, 9, 10], "chunk_siz": 8, "class": [0, 2, 10, 11, 13], "cli": 10, "client": [0, 3], "client_credenti": 0, "client_id": 0, "client_scop": 0, "client_secret": 0, "code": [2, 8], "column": [11, 12], "column_to_use_as_guid": [2, 9, 12], "columna": 11, "columnb": 11, "columnc": 11, "com": 7, "comma": 11, "command": [10, 11], "common": [0, 1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13], "commons_url": [2, 9, 10, 11, 12], "complet": [4, 11], "complex": 7, "concat": 11, "concurr": [11, 12], "configur": 1, "connect": 12, "consist": 3, "constructor": 0, "contain": [0, 2, 5, 8, 9, 10, 11, 12], "content": [3, 13], "content_created_d": 3, "content_updated_d": 3, "continu": 10, "control": 3, "conveni": 10, "copi": [2, 13], "coroutin": 11, "correspond": 3, "count": 3, "crdc": 0, "creat": [2, 3, 4, 5, 6, 8, 10, 11], "create_alias": [2, 5], "create_blank": [2, 3], "create_index_key_path": [2, 5], "create_job": [2, 4], "create_new_vers": [2, 3], "create_object_list": [2, 9, 10], "create_program": [2, 8], "create_project": [2, 8], "create_record": [2, 3], "created_tim": [2, 9, 10], "creation": [3, 11], "cred": 3, "credenti": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "csv": [8, 11, 12], "curl": [0, 2], "current": [6, 8, 10], "current_dir": [2, 9, 11], "custom": 11, "d": 5, "d70b41b9": 8, "data": [0, 1, 3, 5, 7, 8, 10, 11], "data_spreadsheet": 8, "data_typ": 7, "data_upload_bucket": 1, "dataa": 11, "datab": 11, "databas": 5, "datacommon": 0, "datafil": 10, "datamanag": 10, "date": 3, "datetim": [1, 3, 10], "dbgap": 12, "dcf": 8, "def": 11, "default": [0, 1, 3, 7, 8, 11, 12], "defin": [5, 8, 10], "delai": 4, "delet": [0, 1, 2, 3, 5, 6, 8, 10, 11], "delete_alia": [2, 5], "delete_alias": [2, 5], "delete_all_guid": [2, 9, 11], "delete_fil": [1, 2], "delete_file_loc": [1, 2, 6], "delete_index_key_path": [2, 5], "delete_nod": [2, 8], "delete_object": [2, 6], "delete_program": [2, 8], "delete_project": [2, 8], "delete_record": [2, 3, 8], "delete_unpacked_packag": 10, "delimet": [11, 12], "delimit": 11, "demograph": 8, "deprec": 1, "descript": [3, 5], "desir": 11, "dest_path": 13, "dest_urlstr": 13, "dest_w": 13, "dest_wskei": 13, "detail": [2, 7, 10], "determin": [10, 11, 12], "dev": 11, "dict": [3, 4, 5, 10, 11, 12], "dictionari": [3, 4, 5, 7, 8], "did": 3, "differ": 5, "direct": 0, "directori": [10, 11], "disabl": 10, "discoveri": 10, "disk": 13, "dispatch": 4, "dist_resolut": 3, "distribut": 3, "doc": [7, 10], "docstr": 2, "document": [1, 3], "doe": [0, 12], "domain": [11, 12], "done": 4, "download": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 13], "download_files_in_drs_manifest": [2, 9, 10], "download_list": 10, "download_manifest": 11, "download_singl": [1, 2], "download_url": [2, 13], "downloadmanag": [2, 9, 10], "downloadstatu": [2, 9, 10], "dr": [2, 9], "drs_download": 10, "drs_hostnam": 10, "drsdownload": 10, "drsobjecttyp": 10, "e": [5, 10], "e043ab8b77b9": 8, "each": [3, 8, 10, 11], "effici": 9, "eg": 3, "either": 8, "elasticsearch": 7, "els": [0, 12], "elsewher": 12, "empti": [8, 11], "enabl": 11, "end": [5, 10], "end_tim": [2, 9, 10], "endpoint": [0, 1, 2, 3, 4, 5, 7, 8, 13], "entir": 8, "entri": [3, 11], "env": 0, "environ": 0, "equal": 7, "error": [10, 11, 12], "error_nam": 11, "etc": 8, "even": 11, "everi": [9, 11], "everyth": 11, "ex": [0, 11, 12], "exampl": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "exclud": 3, "execut": [7, 8, 11], "exist": [1, 3, 5, 6, 9, 12], "expect": [5, 9, 11], "experi": 8, "expir": [0, 1], "expires_in": 1, "export": [8, 10], "export_nod": [2, 8], "export_record": [2, 8], "f1f8": 11, "factori": 10, "fail": [8, 10], "fals": [3, 5, 6, 10, 11], "featur": [1, 6], "fenc": [0, 1], "fetch": 0, "field": [3, 5, 7, 11, 12], "fieldnam": 11, "file": [0, 2, 3, 4, 8, 9, 10, 11, 12, 13], "file_nam": [1, 2, 3, 9, 10, 11], "file_s": [2, 9, 10, 11], "file_st": 3, "fileformat": 8, "filenam": [0, 8, 10, 11, 12], "files": 10, "fill": 12, "filter": [5, 7], "filter_object": 7, "first": [7, 8], "flag": 11, "folder": 11, "follow": [0, 11], "forc": 11, "force_metadata_columns_even_if_empti": 11, "form": 13, "format": [3, 5, 8, 11], "from": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13], "func_to_parse_row": [11, 12], "function": [2, 3, 4, 5, 9, 10, 11, 12], "g": 10, "gen3": [10, 11, 12], "gen3_api_kei": 0, "gen3_oidc_client_creds_secret": 0, "gen3auth": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "gen3fil": [1, 2], "gen3index": [2, 3], "gen3job": [2, 4, 10], "gen3metadata": [2, 5], "gen3object": [2, 6], "gen3queri": [2, 7], "gen3submiss": [2, 8], "gen3wsstorag": [2, 13], "gener": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 13], "get": [0, 1, 2, 3, 4, 5, 8, 10, 11, 12, 13], "get_access_token": [0, 2], "get_access_token_from_wt": [0, 2], "get_alias": [2, 5], "get_all_record": [2, 3], "get_dictionary_al": [2, 8], "get_dictionary_nod": [2, 8], "get_fresh_token": [2, 9, 10], "get_graphql_schema": [2, 8], "get_guid_from_fil": 12, "get_guids_prefix": [2, 3], "get_index_key_path": [2, 5], "get_latest_vers": [2, 3], "get_output": [2, 4], "get_presigned_url": [1, 2], "get_program": [2, 8], "get_project": [2, 8], "get_project_dictionari": [2, 8], "get_project_manifest": [2, 8], "get_record": [2, 3], "get_record_doc": [2, 3], "get_records_on_pag": [2, 3], "get_stat": [2, 3], "get_statu": [2, 4], "get_url": [2, 3], "get_valid_guid": [2, 3], "get_vers": [2, 3, 4, 5], "get_with_param": [2, 3], "giangb": 11, "github": [2, 7], "give": 1, "given": [0, 3, 4, 5, 8, 10, 12, 13], "global": [4, 5], "good": 3, "grant": 0, "graph": 8, "graphql": [7, 8], "graphql_queri": [2, 7], "group": 3, "guid": [1, 2, 3, 5, 6, 9, 11, 12], "guid_exampl": 11, "guid_for_row": 12, "guid_from_fil": 12, "guid_type_for_indexed_file_object": [2, 9, 12], "guid_type_for_non_indexed_file_object": [2, 9, 12], "guppi": 7, "ha": [0, 11], "handl": [3, 10], "hardcod": 0, "has_vers": 3, "hash": [3, 11], "hash_typ": 3, "have": [5, 11], "header": 11, "healthi": [3, 4, 5], "help": 11, "helper": 2, "hit": 11, "host": 10, "hostnam": [2, 9, 10], "how": [8, 11], "howto": 10, "http": [0, 7, 11, 12], "i": [0, 1, 2, 3, 4, 5, 8, 10, 11, 12], "id": [0, 1, 3, 5, 10, 11], "idea": 3, "identifi": [3, 5, 9, 11], "idp": 0, "illustr": 11, "immut": 3, "implement": 0, "implic": 11, "import": 11, "includ": [0, 3], "indent": 10, "index": [0, 2, 5, 9], "index_manifest": 11, "index_object_manifest": [2, 9, 11], "indexd": [1, 3, 6, 10, 11, 12], "indexd_field": [11, 12], "indexd_record_page_s": [2, 9, 11], "indexed_file_object_guid": 12, "indic": [0, 11], "infil": 10, "info": [3, 11], "inform": [2, 3, 10], "ingest": [2, 9], "ingest_manifest": 12, "initi": [0, 10], "input": [4, 10, 11], "input_manifest": 11, "instal": [0, 2, 11], "instanc": [1, 3, 6, 7, 8, 9, 10], "instead": [1, 7, 11], "int": [1, 3, 5, 7, 8, 10, 11, 12], "integ": [1, 3, 8], "intend": 0, "interact": [1, 3, 4, 5, 6, 8, 13], "interest": 10, "interpret": 0, "introspect": 8, "involv": 9, "is_healthi": [2, 3, 4, 5], "is_indexed_file_object": 12, "isn": 1, "issu": 0, "its": [1, 3], "job": 2, "job_id": 4, "job_input": 4, "job_nam": 4, "json": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "just": [5, 11, 12], "jwt": 0, "kei": [0, 3, 5, 13], "know": 11, "known": 10, "kwarg": [3, 4, 5], "l": [2, 13], "larg": 9, "last": 10, "latest": 3, "least": 3, "level": 6, "librari": 11, "like": [3, 5, 9, 11, 12], "limit": [1, 3, 5, 12], "linear": 4, "linux": 10, "list": [0, 1, 3, 4, 5, 7, 8, 10, 11, 13], "list_access_in_drs_manifest": [2, 9, 10], "list_drs_object": [2, 9, 10], "list_files_in_drs_manifest": [2, 9, 10], "list_job": [2, 4], "live": [11, 12], "load": [2, 9, 10], "load_manifest": [2, 9, 10], "local": [0, 13], "locat": [1, 6], "lock": 12, "log": [8, 10, 11, 12], "logic": [5, 12], "loop": 11, "ls_path": [2, 13], "maco": 11, "made": 3, "mai": [0, 9, 11], "main": 10, "make": [9, 11], "manag": [1, 5, 10], "mani": [8, 11], "manifest": [2, 8, 9, 10, 11, 12], "manifest_1": 10, "manifest_fil": [11, 12], "manifest_file_delimit": [11, 12], "manifest_row_pars": [11, 12], "map": [0, 11], "mark": 8, "master": 7, "match": [3, 5, 12], "max": 5, "max_concurrent_request": [2, 9, 11, 12], "max_presigned_url_ttl": 1, "max_tri": 8, "maximum": [11, 12], "md": [5, 7, 10, 12], "md5": [2, 3, 9, 11], "md5_hash": 11, "md5sum": [2, 9, 10], "mean": 8, "mechan": 3, "merg": 5, "metadata": [2, 3, 6, 9, 11], "metadata_list": 5, "metadata_sourc": 12, "metadata_typ": 12, "metdata": 12, "method": [1, 7, 10], "minimum": 10, "minut": 0, "mode": 7, "modul": [2, 10, 11], "more": [2, 5, 7, 9, 10], "most": 9, "mostli": 2, "multipl": [8, 11], "must": [1, 5], "my_common": 10, "my_credenti": 10, "my_field": 7, "my_index": 7, "my_program": 7, "my_project": 7, "name": [3, 4, 8, 10, 11, 12, 13], "namespac": [0, 12], "necessari": [3, 5], "need": [3, 7, 10, 11], "nest": 5, "net": 11, "never": 0, "new": [0, 3], "node": 8, "node_nam": 8, "node_typ": 8, "none": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "note": [0, 3, 11, 12], "noth": [3, 6], "now": [1, 8], "num": 5, "num_process": 11, "num_total_fil": 11, "number": [3, 7, 8, 11, 12], "o": 0, "object": [1, 2, 3, 4, 5, 7, 8, 9, 10, 11, 13], "object_id": [1, 2, 9, 10], "object_list": 10, "object_typ": [2, 9, 10], "objectid": 10, "obtain": [0, 10], "occur": 10, "off": 5, "offset": [5, 7], "oidc": 0, "old": 3, "one": [3, 5, 10, 11], "onli": [3, 5, 7, 8, 10, 11], "open": [8, 10, 11], "open_project": [2, 8], "openid": 0, "opt": 0, "option": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11], "order": [0, 8], "ordered_node_list": 8, "org": 10, "otherwis": 10, "output": [4, 5, 11, 12], "output_dir": 10, "output_filenam": [11, 12], "overrid": [0, 11, 12], "overwrit": 5, "own": 0, "packag": 10, "page": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 13], "pagin": 3, "parallel": 11, "param": [3, 5, 8, 10], "paramet": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "pars": [10, 11, 12, 13], "parser": [11, 12], "particular": 0, "pass": [0, 7, 8, 10], "password": [11, 12], "path": [0, 1, 5, 10, 11, 13], "path_to_manifest": 11, "pattern": [3, 12], "pdcdatastor": 11, "pend": 10, "per": [11, 12], "peregrin": 8, "permiss": 10, "persist": 9, "phs0001": 11, "phs0002": 11, "pick": 1, "pla": 11, "place": 11, "planx": 11, "point": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "popul": [10, 12], "posit": [1, 7], "possibl": 10, "post": [0, 11], "pprint": [2, 9, 10], "prefix": 3, "presign": 1, "pretti": 10, "prev_guid": [2, 9, 11], "previou": [3, 11], "previous": 4, "print": [8, 10], "process": 11, "processed_fil": 11, "profil": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "program": [8, 11], "progress": [8, 10], "project": [8, 11], "project_id": [7, 8], "protocol": 1, "provid": [0, 1, 3, 5, 7, 8, 12], "public": [3, 5], "put": 0, "py": 11, "python": [2, 9, 11], "python3": 11, "python_subprocess_command": 11, "queri": [1, 2, 3, 5, 8, 11, 12], "query_str": 7, "query_txt": [7, 8], "query_url": [2, 3], "quickstart": 2, "rather": 0, "raw": [7, 11], "raw_data_download": [2, 7], "rbac": 3, "read": [3, 5, 11], "readm": 2, "reason": 10, "record": [1, 3, 5, 7, 8, 11, 12], "refresh": [0, 10], "refresh_access_token": [0, 2], "refresh_fil": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "refresh_token": 0, "regist": 8, "regular": 7, "relat": 9, "remov": [1, 6, 11, 13], "replac": 11, "replace_url": 11, "repo": 2, "repres": [3, 5, 10], "represent": [1, 3], "request": [0, 1, 3, 5, 8, 11, 12], "requir": 10, "resolv": 10, "resolve_object": [2, 9, 10], "respect": 7, "respons": [0, 1, 3, 4, 5], "result": [1, 8, 10, 11], "retri": 8, "retriev": [1, 8, 10, 12], "return": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11], "return_full_metadata": 5, "rev": 3, "revers": 8, "revis": 3, "right": 1, "rm": [2, 13], "rm_path": [2, 13], "root": [11, 12], "row": [7, 8, 11, 12], "row_offset": 8, "rtype": 3, "run": [8, 11], "s3": [1, 10, 11], "safe": 11, "same": [5, 11, 13], "sampl": [8, 10], "sandbox": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "save": 10, "save_directori": 10, "schema": 8, "scope": [0, 1], "screen": 8, "script": 2, "search": [0, 2, 3], "second": [1, 4], "secret": 0, "see": [7, 10, 11], "self": 10, "semaphon": 12, "semaphor": 12, "separ": [0, 11], "server": 10, "servic": [1, 3, 4, 5, 6, 8, 11, 12, 13], "service_loc": [3, 4, 5], "session": 11, "set": [0, 1, 5, 10], "setup": 2, "sheepdog": 8, "should": [0, 8, 11], "show": 10, "show_progress": 10, "shown": 11, "sign": 1, "signpost": 3, "similar": 10, "simpl": 3, "simpli": 11, "sinc": 3, "singl": [1, 5, 8], "size": [2, 3, 9, 10, 11], "skip": 8, "sleep": 4, "so": 11, "some": [0, 2], "someth": 11, "sort": 7, "sort_field": 7, "sort_object": 7, "sourc": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "space": [0, 11], "specif": [5, 8, 11, 12], "specifi": [0, 1, 3, 11, 13], "spreadsheet": 8, "src_path": 13, "src_urlstr": 13, "src_w": 13, "src_wskei": 13, "ssl": [3, 4, 5], "start": [3, 4, 7, 8, 10], "start_tim": [2, 9, 10], "static": 10, "statu": [2, 4, 9, 10], "storag": [1, 2, 6], "store": [1, 3, 10], "str": [0, 1, 3, 4, 5, 7, 8, 10, 11, 12], "string": [0, 3, 5, 11, 13], "strip": 11, "sub": 8, "subject": [7, 8], "submiss": 2, "submit": [8, 11], "submit_additional_metadata_column": 11, "submit_fil": [2, 8], "submit_record": [2, 8], "submitter_id": 7, "success": 10, "successfulli": 10, "suffici": 3, "suppli": 3, "support": [0, 1, 5, 8, 11], "sure": 1, "synchron": 11, "syntax": 7, "system": [6, 7, 8, 9], "t": [1, 5, 11], "tab": 11, "task": 9, "temporari": 11, "test": 11, "test1": 11, "test2": 11, "test3": 11, "test4": 11, "test5": 11, "text": [1, 7, 8], "than": [0, 5], "thei": [0, 10], "them": [10, 11], "thi": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "those": 11, "thread": 11, "thread_num": 11, "threadcontrol": [2, 9, 11], "through": [8, 11], "tier": 7, "time": [1, 3, 8, 10, 11], "timestamp": 10, "tmp_folder": [2, 9, 11], "token": [0, 10], "tool": 2, "total": 11, "treat": [1, 5], "tree": 10, "true": [3, 4, 5, 6, 7, 8, 10, 11, 12], "try": 0, "tsv": [8, 11, 12], "tupl": [0, 3, 11, 12], "type": [1, 3, 4, 5, 7, 8, 10, 11, 12], "typic": 10, "uc": 7, "unaccess": 7, "under": [0, 8, 13], "uniqu": [1, 5], "unknown": 10, "unpack": 10, "unpack_packag": 10, "until": [4, 10], "up": [5, 9], "updat": [2, 3, 5, 10, 11], "update_alias": [2, 5], "update_blank": [2, 3], "update_record": [2, 3], "updated_tim": [2, 9, 10], "upload": [1, 2, 3, 8, 13], "upload_fil": [1, 2], "upload_file_to_guid": [1, 2], "upload_url": [2, 13], "url": [1, 2, 3, 9, 10, 11, 12, 13], "urls_metadata": 3, "us": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "usag": 11, "use_agg_md": 5, "user": [0, 10, 12], "user_access": [2, 9, 10], "usual": 12, "utcnow": 1, "util": 9, "uuid": [1, 3, 8], "uuid1": 8, "uuid2": 8, "valid": [3, 7], "valu": [0, 1, 3, 5, 7, 10, 11], "value_from_indexd": 11, "value_from_manifest": 11, "variabl": [0, 7, 8], "variou": 2, "verbos": [7, 8], "verif": 11, "verifi": [2, 9], "verify_manifest": 11, "verify_object_manifest": 11, "version": [3, 4, 5], "vital_statu": 7, "w": 13, "wa": 0, "wai": 10, "wait": 4, "want": [0, 3, 8], "warn": 11, "we": [3, 11], "web": 0, "what": 5, "when": [0, 3, 7, 10, 12], "where": [0, 3, 5, 11, 12], "whether": [3, 4, 5, 8, 11, 12], "which": [8, 10], "while": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "whose": 5, "within": [0, 2, 9], "without": [3, 5], "won": 5, "work": [0, 10], "workaround": 11, "worksheet": 8, "workspac": [0, 2], "wrapper": 10, "write": 11, "ws_urlstr": 13, "wskei": 13, "wss": 13, "wt": [0, 10], "x": 11, "xlsx": 8, "you": [0, 3, 8, 11], "your": 0}, "titles": ["Gen3 Auth Helper", "Gen3 File Class", "Welcome to Gen3 SDK\u2019s documentation!", "Gen3 Index Class", "Gen3 Jobs Class", "Gen3 Metadata Class", "Gen3 Object Class", "Gen3 Query Class", "Gen3 Submission Class", "Gen3 Tools", "DRS Download Tools", "Indexing Tools", "Metadata Tools", "Gen3 Workspace Storage"], "titleterms": {"": 2, "auth": 0, "class": [1, 3, 4, 5, 6, 7, 8], "document": 2, "download": [10, 11], "dr": 10, "file": 1, "gen3": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 13], "helper": 0, "index": [3, 11], "indic": 2, "ingest": 12, "job": 4, "metadata": [5, 12], "object": 6, "queri": 7, "sdk": 2, "storag": 13, "submiss": 8, "tabl": 2, "tool": [9, 10, 11, 12], "verifi": 11, "welcom": 2, "workspac": 13}}) \ No newline at end of file +Search.setIndex({"alltitles": {"DRS Download Tools": [[10, "module-gen3.tools.download.drs_download"]], "Download": [[11, "module-gen3.tools.indexing.download_manifest"]], "Gen3 Auth Helper": [[0, "gen3-auth-helper"]], "Gen3 File Class": [[1, "gen3-file-class"]], "Gen3 Index Class": [[3, "gen3-index-class"]], "Gen3 Jobs Class": [[4, "gen3-jobs-class"]], "Gen3 Metadata Class": [[5, "gen3-metadata-class"]], "Gen3 Object Class": [[6, "gen3-object-class"]], "Gen3 Query Class": [[7, "gen3-query-class"]], "Gen3 Submission Class": [[8, "gen3-submission-class"]], "Gen3 Tools": [[9, "gen3-tools"]], "Gen3 Workspace Storage": [[13, "gen3-workspace-storage"]], "Index": [[11, "module-gen3.tools.indexing.index_manifest"]], "Indexing Tools": [[11, "indexing-tools"]], "Indices and tables": [[2, "indices-and-tables"]], "Ingest": [[12, "module-gen3.tools.metadata.ingest_manifest"]], "Metadata Tools": [[12, "metadata-tools"]], "Verify": [[11, "module-gen3.tools.indexing.verify_manifest"]], "Welcome to Gen3 SDK\u2019s documentation!": [[2, "welcome-to-gen3-sdk-s-documentation"]]}, "docnames": ["auth", "file", "index", "indexing", "jobs", "metadata", "object", "query", "submission", "tools", "tools/drs_pull", "tools/indexing", "tools/metadata", "wss"], "envversion": {"sphinx": 61, "sphinx.domains.c": 3, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 9, "sphinx.domains.index": 1, "sphinx.domains.javascript": 3, "sphinx.domains.math": 2, "sphinx.domains.python": 4, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx.ext.viewcode": 1}, "filenames": ["auth.rst", "file.rst", "index.rst", "indexing.rst", "jobs.rst", "metadata.rst", "object.rst", "query.rst", "submission.rst", "tools.rst", "tools/drs_pull.rst", "tools/indexing.rst", "tools/metadata.rst", "wss.rst"], "indexentries": {"_manager (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable._manager", false]], "access_methods (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.access_methods", false]], "acls (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.ACLS", false]], "async_create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_create", false]], "async_create_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_create_aliases", false]], "async_create_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_create_record", false]], "async_delete_alias() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_delete_alias", false]], "async_delete_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_delete_aliases", false]], "async_download_object_manifest() (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.async_download_object_manifest", false]], "async_get() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_get", false]], "async_get_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_get_aliases", false]], "async_get_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_record", false]], "async_get_records_from_checksum() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_records_from_checksum", false]], "async_get_records_on_page() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_records_on_page", false]], "async_get_with_params() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_with_params", false]], "async_ingest_metadata_manifest() (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.async_ingest_metadata_manifest", false]], "async_query_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_query_urls", false]], "async_query_urls_from_indexd() (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.async_query_urls_from_indexd", false]], "async_run_job_and_wait() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.async_run_job_and_wait", false]], "async_update() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_update", false]], "async_update_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_update_aliases", false]], "async_update_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_update_record", false]], "async_verify_object_manifest() (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.async_verify_object_manifest", false]], "auth_provider (gen3.metadata.gen3metadata attribute)": [[5, "gen3.metadata.Gen3Metadata.auth_provider", false]], "authz (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.AUTHZ", false]], "batch_create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.batch_create", false]], "cache_hosts_wts_tokens() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.cache_hosts_wts_tokens", false]], "children (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.children", false]], "column_to_use_as_guid (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.COLUMN_TO_USE_AS_GUID", false]], "commons_url (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.commons_url", false]], "copy() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.copy", false]], "create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create", false]], "create_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create_aliases", false]], "create_blank() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_blank", false]], "create_index_key_path() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create_index_key_path", false]], "create_job() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.create_job", false]], "create_new_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_new_version", false]], "create_object_list() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.create_object_list", false]], "create_program() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.create_program", false]], "create_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.create_project", false]], "create_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_record", false]], "created_time (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.created_time", false]], "curl() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.curl", false]], "current_dir (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.CURRENT_DIR", false]], "current_dir (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.CURRENT_DIR", false]], "current_dir (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.CURRENT_DIR", false]], "delete() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete", false]], "delete_alias() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_alias", false]], "delete_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_aliases", false]], "delete_all_guids() (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.delete_all_guids", false]], "delete_file() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.delete_file", false]], "delete_file_locations() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.delete_file_locations", false]], "delete_index_key_path() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_index_key_path", false]], "delete_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_node", false]], "delete_nodes() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_nodes", false]], "delete_object() (gen3.object.gen3object method)": [[6, "gen3.object.Gen3Object.delete_object", false]], "delete_program() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_program", false]], "delete_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_project", false]], "delete_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.delete_record", false]], "delete_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_record", false]], "delete_records() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_records", false]], "download() (gen3.tools.download.drs_download.downloadable method)": [[10, "gen3.tools.download.drs_download.Downloadable.download", false]], "download() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.download", false]], "download() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.download", false]], "download_files_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.download_files_in_drs_manifest", false]], "download_single() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.download_single", false]], "download_url() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.download_url", false]], "downloadable (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.Downloadable", false]], "downloadmanager (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.DownloadManager", false]], "downloadstatus (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.DownloadStatus", false]], "end_time (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.end_time", false]], "endpoint (gen3.metadata.gen3metadata attribute)": [[5, "gen3.metadata.Gen3Metadata.endpoint", false]], "export_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.export_node", false]], "export_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.export_record", false]], "file_name (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.file_name", false]], "file_name (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.file_name", false]], "file_size (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.file_size", false]], "file_size (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.file_size", false]], "gen3.tools": [[9, "module-gen3.tools", false]], "gen3.tools.download.drs_download": [[10, "module-gen3.tools.download.drs_download", false]], "gen3.tools.indexing.download_manifest": [[11, "module-gen3.tools.indexing.download_manifest", false]], "gen3.tools.indexing.index_manifest": [[11, "module-gen3.tools.indexing.index_manifest", false]], "gen3.tools.indexing.verify_manifest": [[11, "module-gen3.tools.indexing.verify_manifest", false]], "gen3.tools.metadata.ingest_manifest": [[12, "module-gen3.tools.metadata.ingest_manifest", false]], "gen3auth (class in gen3.auth)": [[0, "gen3.auth.Gen3Auth", false]], "gen3file (class in gen3.file)": [[1, "gen3.file.Gen3File", false]], "gen3index (class in gen3.index)": [[3, "gen3.index.Gen3Index", false]], "gen3jobs (class in gen3.jobs)": [[4, "gen3.jobs.Gen3Jobs", false]], "gen3metadata (class in gen3.metadata)": [[5, "gen3.metadata.Gen3Metadata", false]], "gen3object (class in gen3.object)": [[6, "gen3.object.Gen3Object", false]], "gen3query (class in gen3.query)": [[7, "gen3.query.Gen3Query", false]], "gen3submission (class in gen3.submission)": [[8, "gen3.submission.Gen3Submission", false]], "gen3wsstorage (class in gen3.wss)": [[13, "gen3.wss.Gen3WsStorage", false]], "get() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get", false]], "get() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get", false]], "get_access_token() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.get_access_token", false]], "get_access_token_from_wts() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.get_access_token_from_wts", false]], "get_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_aliases", false]], "get_all_records() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_all_records", false]], "get_dictionary_all() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_dictionary_all", false]], "get_dictionary_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_dictionary_node", false]], "get_fresh_token() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.get_fresh_token", false]], "get_graphql_schema() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_graphql_schema", false]], "get_guids_prefix() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_guids_prefix", false]], "get_index_key_paths() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_index_key_paths", false]], "get_latest_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_latest_version", false]], "get_output() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_output", false]], "get_presigned_url() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.get_presigned_url", false]], "get_programs() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_programs", false]], "get_project_dictionary() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_project_dictionary", false]], "get_project_manifest() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_project_manifest", false]], "get_projects() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_projects", false]], "get_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_record", false]], "get_record_doc() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_record_doc", false]], "get_records() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_records", false]], "get_records_on_page() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_records_on_page", false]], "get_stats() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_stats", false]], "get_status() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_status", false]], "get_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_urls", false]], "get_valid_guids() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_valid_guids", false]], "get_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_version", false]], "get_version() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_version", false]], "get_version() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_version", false]], "get_versions() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_versions", false]], "get_with_params() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_with_params", false]], "graphql_query() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.graphql_query", false]], "guid (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.GUID", false]], "guid_type_for_indexed_file_object (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.GUID_TYPE_FOR_INDEXED_FILE_OBJECT", false]], "guid_type_for_non_indexed_file_object (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.GUID_TYPE_FOR_NON_INDEXED_FILE_OBJECT", false]], "hostname (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.hostname", false]], "index_object_manifest() (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.index_object_manifest", false]], "indexd_record_page_size (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.INDEXD_RECORD_PAGE_SIZE", false]], "is_healthy() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.is_healthy", false]], "is_healthy() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.is_healthy", false]], "is_healthy() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.is_healthy", false]], "list_access_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_access_in_drs_manifest", false]], "list_drs_object() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_drs_object", false]], "list_files_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_files_in_drs_manifest", false]], "list_jobs() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.list_jobs", false]], "load() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.load", false]], "load_manifest() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.load_manifest", false]], "ls() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.ls", false]], "ls_path() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.ls_path", false]], "manifest (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.Manifest", false]], "max_concurrent_requests (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.MAX_CONCURRENT_REQUESTS", false]], "max_concurrent_requests (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.MAX_CONCURRENT_REQUESTS", false]], "max_concurrent_requests (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.MAX_CONCURRENT_REQUESTS", false]], "md5 (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.MD5", false]], "md5sum (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.md5sum", false]], "module": [[9, "module-gen3.tools", false], [10, "module-gen3.tools.download.drs_download", false], [11, "module-gen3.tools.indexing.download_manifest", false], [11, "module-gen3.tools.indexing.index_manifest", false], [11, "module-gen3.tools.indexing.verify_manifest", false], [12, "module-gen3.tools.metadata.ingest_manifest", false]], "object_id (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.object_id", false]], "object_id (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.object_id", false]], "object_type (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.object_type", false]], "open_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.open_project", false]], "pprint() (gen3.tools.download.drs_download.downloadable method)": [[10, "gen3.tools.download.drs_download.Downloadable.pprint", false]], "prev_guid (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.PREV_GUID", false]], "query() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.query", false]], "query() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.query", false]], "query() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.query", false]], "query_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.query_urls", false]], "raw_data_download() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.raw_data_download", false]], "refresh_access_token() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.refresh_access_token", false]], "resolve_objects() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.resolve_objects", false]], "rm() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.rm", false]], "rm_path() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.rm_path", false]], "size (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.SIZE", false]], "start_time (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.start_time", false]], "status (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.status", false]], "submit_file() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.submit_file", false]], "submit_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.submit_record", false]], "threadcontrol (class in gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.ThreadControl", false]], "tmp_folder (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.TMP_FOLDER", false]], "update() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.update", false]], "update_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.update_aliases", false]], "update_blank() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.update_blank", false]], "update_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.update_record", false]], "updated_time (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.updated_time", false]], "upload() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.upload", false]], "upload_file() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.upload_file", false]], "upload_file_to_guid() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.upload_file_to_guid", false]], "upload_url() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.upload_url", false]], "urls (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.URLS", false]], "user_access() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.user_access", false]]}, "objects": {"gen3": [[9, 3, 0, "-", "tools"]], "gen3.auth": [[0, 0, 1, "", "Gen3Auth"]], "gen3.auth.Gen3Auth": [[0, 1, 1, "", "curl"], [0, 1, 1, "", "get_access_token"], [0, 1, 1, "", "get_access_token_from_wts"], [0, 1, 1, "", "refresh_access_token"]], "gen3.file": [[1, 0, 1, "", "Gen3File"]], "gen3.file.Gen3File": [[1, 1, 1, "", "delete_file"], [1, 1, 1, "", "delete_file_locations"], [1, 1, 1, "", "download_single"], [1, 1, 1, "", "get_presigned_url"], [1, 1, 1, "", "upload_file"], [1, 1, 1, "", "upload_file_to_guid"]], "gen3.index": [[3, 0, 1, "", "Gen3Index"]], "gen3.index.Gen3Index": [[3, 1, 1, "", "async_create_record"], [3, 1, 1, "", "async_get_record"], [3, 1, 1, "", "async_get_records_from_checksum"], [3, 1, 1, "", "async_get_records_on_page"], [3, 1, 1, "", "async_get_with_params"], [3, 1, 1, "", "async_query_urls"], [3, 1, 1, "", "async_update_record"], [3, 1, 1, "", "create_blank"], [3, 1, 1, "", "create_new_version"], [3, 1, 1, "", "create_record"], [3, 1, 1, "", "delete_record"], [3, 1, 1, "", "get"], [3, 1, 1, "", "get_all_records"], [3, 1, 1, "", "get_guids_prefix"], [3, 1, 1, "", "get_latest_version"], [3, 1, 1, "", "get_record"], [3, 1, 1, "", "get_record_doc"], [3, 1, 1, "", "get_records"], [3, 1, 1, "", "get_records_on_page"], [3, 1, 1, "", "get_stats"], [3, 1, 1, "", "get_urls"], [3, 1, 1, "", "get_valid_guids"], [3, 1, 1, "", "get_version"], [3, 1, 1, "", "get_versions"], [3, 1, 1, "", "get_with_params"], [3, 1, 1, "", "is_healthy"], [3, 1, 1, "", "query_urls"], [3, 1, 1, "", "update_blank"], [3, 1, 1, "", "update_record"]], "gen3.jobs": [[4, 0, 1, "", "Gen3Jobs"]], "gen3.jobs.Gen3Jobs": [[4, 1, 1, "", "async_run_job_and_wait"], [4, 1, 1, "", "create_job"], [4, 1, 1, "", "get_output"], [4, 1, 1, "", "get_status"], [4, 1, 1, "", "get_version"], [4, 1, 1, "", "is_healthy"], [4, 1, 1, "", "list_jobs"]], "gen3.metadata": [[5, 0, 1, "", "Gen3Metadata"]], "gen3.metadata.Gen3Metadata": [[5, 1, 1, "", "async_create"], [5, 1, 1, "", "async_create_aliases"], [5, 1, 1, "", "async_delete_alias"], [5, 1, 1, "", "async_delete_aliases"], [5, 1, 1, "", "async_get"], [5, 1, 1, "", "async_get_aliases"], [5, 1, 1, "", "async_update"], [5, 1, 1, "", "async_update_aliases"], [5, 2, 1, "", "auth_provider"], [5, 1, 1, "", "batch_create"], [5, 1, 1, "", "create"], [5, 1, 1, "", "create_aliases"], [5, 1, 1, "", "create_index_key_path"], [5, 1, 1, "", "delete"], [5, 1, 1, "", "delete_alias"], [5, 1, 1, "", "delete_aliases"], [5, 1, 1, "", "delete_index_key_path"], [5, 2, 1, "", "endpoint"], [5, 1, 1, "", "get"], [5, 1, 1, "", "get_aliases"], [5, 1, 1, "", "get_index_key_paths"], [5, 1, 1, "", "get_version"], [5, 1, 1, "", "is_healthy"], [5, 1, 1, "", "query"], [5, 1, 1, "", "update"], [5, 1, 1, "", "update_aliases"]], "gen3.object": [[6, 0, 1, "", "Gen3Object"]], "gen3.object.Gen3Object": [[6, 1, 1, "", "delete_object"]], "gen3.query": [[7, 0, 1, "", "Gen3Query"]], "gen3.query.Gen3Query": [[7, 1, 1, "", "graphql_query"], [7, 1, 1, "", "query"], [7, 1, 1, "", "raw_data_download"]], "gen3.submission": [[8, 0, 1, "", "Gen3Submission"]], "gen3.submission.Gen3Submission": [[8, 1, 1, "", "create_program"], [8, 1, 1, "", "create_project"], [8, 1, 1, "", "delete_node"], [8, 1, 1, "", "delete_nodes"], [8, 1, 1, "", "delete_program"], [8, 1, 1, "", "delete_project"], [8, 1, 1, "", "delete_record"], [8, 1, 1, "", "delete_records"], [8, 1, 1, "", "export_node"], [8, 1, 1, "", "export_record"], [8, 1, 1, "", "get_dictionary_all"], [8, 1, 1, "", "get_dictionary_node"], [8, 1, 1, "", "get_graphql_schema"], [8, 1, 1, "", "get_programs"], [8, 1, 1, "", "get_project_dictionary"], [8, 1, 1, "", "get_project_manifest"], [8, 1, 1, "", "get_projects"], [8, 1, 1, "", "open_project"], [8, 1, 1, "", "query"], [8, 1, 1, "", "submit_file"], [8, 1, 1, "", "submit_record"]], "gen3.tools.download": [[10, 3, 0, "-", "drs_download"]], "gen3.tools.download.drs_download": [[10, 0, 1, "", "DownloadManager"], [10, 0, 1, "", "DownloadStatus"], [10, 0, 1, "", "Downloadable"], [10, 0, 1, "", "Manifest"], [10, 4, 1, "", "download_files_in_drs_manifest"], [10, 4, 1, "", "list_access_in_drs_manifest"], [10, 4, 1, "", "list_drs_object"], [10, 4, 1, "", "list_files_in_drs_manifest"]], "gen3.tools.download.drs_download.DownloadManager": [[10, 1, 1, "", "cache_hosts_wts_tokens"], [10, 1, 1, "", "download"], [10, 1, 1, "", "get_fresh_token"], [10, 1, 1, "", "resolve_objects"], [10, 1, 1, "", "user_access"]], "gen3.tools.download.drs_download.DownloadStatus": [[10, 2, 1, "", "end_time"], [10, 2, 1, "", "start_time"], [10, 2, 1, "", "status"]], "gen3.tools.download.drs_download.Downloadable": [[10, 2, 1, "", "_manager"], [10, 2, 1, "", "access_methods"], [10, 2, 1, "", "children"], [10, 2, 1, "", "created_time"], [10, 1, 1, "", "download"], [10, 2, 1, "", "file_name"], [10, 2, 1, "", "file_size"], [10, 2, 1, "", "hostname"], [10, 2, 1, "", "object_id"], [10, 2, 1, "", "object_type"], [10, 1, 1, "", "pprint"], [10, 2, 1, "", "updated_time"]], "gen3.tools.download.drs_download.Manifest": [[10, 2, 1, "", "commons_url"], [10, 1, 1, "", "create_object_list"], [10, 2, 1, "", "file_name"], [10, 2, 1, "", "file_size"], [10, 1, 1, "", "load"], [10, 1, 1, "", "load_manifest"], [10, 2, 1, "", "md5sum"], [10, 2, 1, "", "object_id"]], "gen3.tools.indexing": [[11, 3, 0, "-", "download_manifest"], [11, 3, 0, "-", "index_manifest"], [11, 3, 0, "-", "verify_manifest"]], "gen3.tools.indexing.download_manifest": [[11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "INDEXD_RECORD_PAGE_SIZE"], [11, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [11, 2, 1, "", "TMP_FOLDER"], [11, 4, 1, "", "async_download_object_manifest"]], "gen3.tools.indexing.index_manifest": [[11, 2, 1, "", "ACLS"], [11, 2, 1, "", "AUTHZ"], [11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "GUID"], [11, 2, 1, "", "MD5"], [11, 2, 1, "", "PREV_GUID"], [11, 2, 1, "", "SIZE"], [11, 0, 1, "", "ThreadControl"], [11, 2, 1, "", "URLS"], [11, 4, 1, "", "delete_all_guids"], [11, 4, 1, "", "index_object_manifest"]], "gen3.tools.indexing.verify_manifest": [[11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [11, 4, 1, "", "async_verify_object_manifest"]], "gen3.tools.metadata": [[12, 3, 0, "-", "ingest_manifest"]], "gen3.tools.metadata.ingest_manifest": [[12, 2, 1, "", "COLUMN_TO_USE_AS_GUID"], [12, 2, 1, "", "GUID_TYPE_FOR_INDEXED_FILE_OBJECT"], [12, 2, 1, "", "GUID_TYPE_FOR_NON_INDEXED_FILE_OBJECT"], [12, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [12, 4, 1, "", "async_ingest_metadata_manifest"], [12, 4, 1, "", "async_query_urls_from_indexd"]], "gen3.wss": [[13, 0, 1, "", "Gen3WsStorage"]], "gen3.wss.Gen3WsStorage": [[13, 1, 1, "", "copy"], [13, 1, 1, "", "download"], [13, 1, 1, "", "download_url"], [13, 1, 1, "", "ls"], [13, 1, 1, "", "ls_path"], [13, 1, 1, "", "rm"], [13, 1, 1, "", "rm_path"], [13, 1, 1, "", "upload"], [13, 1, 1, "", "upload_url"]]}, "objnames": {"0": ["py", "class", "Python class"], "1": ["py", "method", "Python method"], "2": ["py", "attribute", "Python attribute"], "3": ["py", "module", "Python module"], "4": ["py", "function", "Python function"]}, "objtypes": {"0": "py:class", "1": "py:method", "2": "py:attribute", "3": "py:module", "4": "py:function"}, "terms": {"": [1, 4, 8, 10, 11], "0": [5, 7, 8, 11], "0046513": 11, "0a80fada010c": 11, "0a80fada096c": 11, "0a80fada097c": 11, "0a80fada098c": 11, "0a80fada099c": 11, "1": [4, 5, 8, 10, 11], "10": [5, 7, 11], "100": [8, 11], "11e9": 11, "1713542306": [], "1713542765": [], "1713543033": [], "1713543225": [11, 12], "2": [5, 11], "24": [11, 12], "255e396f": 11, "2877355": [], "2995": 12, "3": [5, 11], "30": 8, "33": 5, "333": 5, "343434344": 11, "363455714": 11, "4": [5, 11], "450c": 11, "4649727": [], "4714": 8, "473d83400bc1bc9dc635e334fadd433c": 11, "473d83400bc1bc9dc635e334faddd33c": 11, "473d83400bc1bc9dc635e334fadde33c": 11, "473d83400bc1bc9dc635e334faddf33c": 11, "5": [0, 5], "50": 7, "543434443": 11, "5899982": [], "6692646": [], "6f90": 8, "760149": [], "7d3d8d2083b4": 11, "8420": 8, "8882551": [], "93d9af72": 11, "9a07": 11, "A": [1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "AND": 5, "Be": 1, "But": 5, "By": 11, "For": [1, 5, 6, 7, 8, 9, 11], "IF": 11, "If": [0, 1, 7, 11, 12], "In": 10, "It": 10, "NOT": 12, "OR": 5, "One": 7, "Such": 9, "THE": 11, "That": 3, "The": [0, 1, 2, 3, 5, 8, 10, 11], "There": 11, "These": 9, "To": 11, "Will": [4, 7, 10], "_get_acl_from_row": 11, "_get_authz_from_row": 11, "_get_file_name_from_row": 11, "_get_file_size_from_row": 11, "_get_guid_for_row": 12, "_get_guid_from_row": 11, "_get_md5_from_row": 11, "_get_urls_from_row": 11, "_guid_typ": 12, "_manag": [2, 9, 10], "_query_for_associated_indexd_record_guid": 12, "_ssl": [3, 4, 5], "a5c6": 11, "ab167e49d25b488939b1ede42752458b": 3, "about": [2, 3], "abov": 11, "access": [0, 1, 3, 7, 10], "access_method": [2, 9, 10], "access_token": 0, "accesstoken": 0, "acl": [2, 3, 9, 11], "across": 11, "act": 0, "action": [9, 11], "actual": 11, "ad": 3, "add": [3, 5], "addit": [3, 5, 10, 11], "admin": [5, 11], "admin_endpoint_suffix": 5, "after": 10, "against": [3, 7, 8, 11, 12], "algorithm": 3, "alia": [3, 5], "alias": 5, "aliv": 7, "all": [1, 3, 4, 5, 6, 7, 8, 10, 11, 12], "allow": [0, 6, 8, 10, 11, 12], "allowed_data_upload_bucket": 1, "along": 2, "alreadi": 9, "also": 1, "altern": [5, 11], "alwai": 5, "ammount": 12, "amount": [1, 9], "an": [0, 3, 6, 8, 10, 11], "ani": [0, 5, 10, 11], "anoth": 5, "api": [0, 5, 8, 11], "api_kei": 11, "appli": 7, "appropri": 13, "ar": [5, 7, 8, 9, 10, 11], "arbitrari": 0, "argument": [0, 13], "arrai": 8, "asc": 7, "assign": 9, "assist": 10, "associ": [3, 5], "assum": 11, "async": [3, 4, 5, 9, 11, 12], "async_cr": [2, 5], "async_create_alias": [2, 5], "async_create_record": [2, 3], "async_delete_alia": [2, 5], "async_delete_alias": [2, 5], "async_download_object_manifest": [2, 9, 11], "async_get": [2, 5], "async_get_alias": [2, 5], "async_get_record": [2, 3], "async_get_records_from_checksum": [2, 3], "async_get_records_on_pag": [2, 3], "async_get_with_param": [2, 3], "async_ingest_metadata_manifest": [2, 9, 12], "async_query_url": [2, 3], "async_query_urls_from_indexd": [2, 9, 12], "async_run_job_and_wait": [2, 4], "async_upd": [2, 5], "async_update_alias": [2, 5], "async_update_record": [2, 3], "async_verify_object_manifest": [2, 9, 11], "asynchron": [3, 4, 5], "asyncio": [11, 12], "asyncron": 5, "attach": [3, 5], "attempt": 11, "attribut": [10, 11], "auth": [1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "auth_provid": [1, 2, 3, 4, 5, 6, 7, 8, 13], "authbas": 0, "authent": 0, "author": 1, "authz": [0, 1, 2, 3, 9, 10, 11], "auto": [0, 2], "automat": 0, "avail": [1, 2, 10, 11], "az": 1, "b": [5, 11], "b0f1": 11, "bar": 10, "base": [0, 1, 3, 4, 5, 6, 7, 8, 9, 11, 13], "baseid": 3, "basic": [3, 11, 12], "batch_creat": [2, 5], "batch_siz": 8, "behalf": 0, "behavior": 11, "being": 3, "belong": 8, "below": 11, "blank": 3, "blob": [5, 7], "bodi": 3, "bool": [4, 5, 8, 10, 11, 12], "boolean": 3, "bownload": 10, "broad": 9, "broken": 9, "bucket": [1, 6], "bundl": 10, "byte": 10, "c": [5, 11], "cach": 10, "cache_hosts_wts_token": [2, 9, 10], "call": [10, 13], "can": [0, 3, 4, 8, 11, 12], "capabl": 9, "case": [0, 10], "categori": 9, "ccle": 8, "ccle_one_record": 8, "ccle_sample_nod": 8, "cdi": 7, "chang": [3, 11], "checksum": [3, 10], "checksum_typ": 3, "child": 10, "children": [2, 9, 10], "chunk_siz": 8, "class": [0, 2, 10, 11, 13], "cli": 10, "client": [0, 3], "client_credenti": 0, "client_id": 0, "client_scop": 0, "client_secret": 0, "code": [2, 8], "column": [11, 12], "column_to_use_as_guid": [2, 9, 12], "columna": 11, "columnb": 11, "columnc": 11, "com": 7, "comma": 11, "command": [10, 11], "common": [0, 1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13], "commons_url": [2, 9, 10, 11, 12], "complet": [4, 11], "complex": 7, "concat": 11, "concurr": [11, 12], "configur": 1, "connect": 12, "consist": 3, "constructor": 0, "contain": [0, 2, 5, 8, 9, 10, 11, 12], "content": [3, 13], "content_created_d": 3, "content_updated_d": 3, "continu": 10, "control": 3, "conveni": 10, "copi": [2, 13], "coroutin": 11, "correspond": 3, "count": 3, "crdc": 0, "creat": [2, 3, 4, 5, 6, 8, 10, 11], "create_alias": [2, 5], "create_blank": [2, 3], "create_index_key_path": [2, 5], "create_job": [2, 4], "create_new_vers": [2, 3], "create_object_list": [2, 9, 10], "create_program": [2, 8], "create_project": [2, 8], "create_record": [2, 3], "created_tim": [2, 9, 10], "creation": [3, 11], "cred": 3, "credenti": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "csv": [8, 11, 12], "curl": [0, 2], "current": [6, 8, 10], "current_dir": [2, 9, 11], "custom": 11, "d": 5, "d70b41b9": 8, "data": [0, 1, 3, 5, 7, 8, 10, 11], "data_spreadsheet": 8, "data_typ": 7, "data_upload_bucket": 1, "dataa": 11, "datab": 11, "databas": 5, "datacommon": 0, "datafil": 10, "datamanag": 10, "date": 3, "datetim": [1, 3, 10], "dbgap": 12, "dcf": 8, "def": 11, "default": [0, 1, 3, 7, 8, 11, 12], "defin": [5, 8, 10], "delai": 4, "delet": [0, 1, 2, 3, 5, 6, 8, 10, 11], "delete_alia": [2, 5], "delete_alias": [2, 5], "delete_all_guid": [2, 9, 11], "delete_fil": [1, 2], "delete_file_loc": [1, 2, 6], "delete_index_key_path": [2, 5], "delete_nod": [2, 8], "delete_object": [2, 6], "delete_program": [2, 8], "delete_project": [2, 8], "delete_record": [2, 3, 8], "delete_unpacked_packag": 10, "delimet": [11, 12], "delimit": 11, "demograph": 8, "deprec": 1, "descript": [3, 5], "desir": 11, "dest_path": 13, "dest_urlstr": 13, "dest_w": 13, "dest_wskei": 13, "detail": [2, 7, 10], "determin": [10, 11, 12], "dev": 11, "dict": [3, 4, 5, 10, 11, 12], "dictionari": [3, 4, 5, 7, 8], "did": 3, "differ": 5, "direct": 0, "directori": [10, 11], "disabl": 10, "discoveri": 10, "disk": 13, "dispatch": 4, "dist_resolut": 3, "distribut": 3, "doc": [7, 10], "docstr": 2, "document": [1, 3], "doe": [0, 12], "domain": [11, 12], "done": 4, "download": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 13], "download_files_in_drs_manifest": [2, 9, 10], "download_list": 10, "download_manifest": 11, "download_singl": [1, 2], "download_url": [2, 13], "downloadmanag": [2, 9, 10], "downloadstatu": [2, 9, 10], "dr": [2, 9], "drs_download": 10, "drs_hostnam": 10, "drsdownload": 10, "drsobjecttyp": 10, "e": [5, 10], "e043ab8b77b9": 8, "each": [3, 8, 10, 11], "effici": 9, "eg": 3, "either": 8, "elasticsearch": 7, "els": [0, 12], "elsewher": 12, "empti": [8, 11], "enabl": 11, "end": [5, 10], "end_tim": [2, 9, 10], "endpoint": [0, 1, 2, 3, 4, 5, 7, 8, 13], "entir": 8, "entri": [3, 11], "env": 0, "environ": 0, "equal": 7, "error": [10, 11, 12], "error_nam": 11, "etc": 8, "even": 11, "everi": [9, 11], "everyth": 11, "ex": [0, 11, 12], "exampl": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "exclud": 3, "execut": [7, 8, 11], "exist": [1, 3, 5, 6, 9, 12], "expect": [5, 9, 11], "experi": 8, "expir": [0, 1], "expires_in": 1, "export": [8, 10], "export_nod": [2, 8], "export_record": [2, 8], "f1f8": 11, "factori": 10, "fail": [8, 10], "fals": [3, 5, 6, 10, 11], "featur": [1, 6], "fenc": [0, 1], "fetch": 0, "field": [3, 5, 7, 11, 12], "fieldnam": 11, "file": [0, 2, 3, 4, 8, 9, 10, 11, 12, 13], "file_nam": [1, 2, 3, 9, 10, 11], "file_s": [2, 9, 10, 11], "file_st": 3, "fileformat": 8, "filenam": [0, 8, 10, 11, 12], "files": 10, "fill": 12, "filter": [5, 7], "filter_object": 7, "first": [7, 8], "flag": 11, "folder": 11, "follow": [0, 11], "forc": 11, "force_metadata_columns_even_if_empti": 11, "form": 13, "format": [3, 5, 8, 11], "from": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13], "func_to_parse_row": [11, 12], "function": [2, 3, 4, 5, 9, 10, 11, 12], "g": 10, "gen3": [10, 11, 12], "gen3_api_kei": 0, "gen3_oidc_client_creds_secret": 0, "gen3auth": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "gen3fil": [1, 2], "gen3index": [2, 3], "gen3job": [2, 4, 10], "gen3metadata": [2, 5], "gen3object": [2, 6], "gen3queri": [2, 7], "gen3submiss": [2, 8], "gen3wsstorag": [2, 13], "gener": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 13], "get": [0, 1, 2, 3, 4, 5, 8, 10, 11, 12, 13], "get_access_token": [0, 2], "get_access_token_from_wt": [0, 2], "get_alias": [2, 5], "get_all_record": [2, 3], "get_dictionary_al": [2, 8], "get_dictionary_nod": [2, 8], "get_fresh_token": [2, 9, 10], "get_graphql_schema": [2, 8], "get_guid_from_fil": 12, "get_guids_prefix": [2, 3], "get_index_key_path": [2, 5], "get_latest_vers": [2, 3], "get_output": [2, 4], "get_presigned_url": [1, 2], "get_program": [2, 8], "get_project": [2, 8], "get_project_dictionari": [2, 8], "get_project_manifest": [2, 8], "get_record": [2, 3], "get_record_doc": [2, 3], "get_records_on_pag": [2, 3], "get_stat": [2, 3], "get_statu": [2, 4], "get_url": [2, 3], "get_valid_guid": [2, 3], "get_vers": [2, 3, 4, 5], "get_with_param": [2, 3], "giangb": 11, "github": [2, 7], "give": 1, "given": [0, 3, 4, 5, 8, 10, 12, 13], "global": [4, 5], "good": 3, "grant": 0, "graph": 8, "graphql": [7, 8], "graphql_queri": [2, 7], "group": 3, "guid": [1, 2, 3, 5, 6, 9, 11, 12], "guid_exampl": 11, "guid_for_row": 12, "guid_from_fil": 12, "guid_type_for_indexed_file_object": [2, 9, 12], "guid_type_for_non_indexed_file_object": [2, 9, 12], "guppi": 7, "ha": [0, 11], "handl": [3, 10], "hardcod": 0, "has_vers": 3, "hash": [3, 11], "hash_typ": 3, "have": [5, 11], "header": 11, "healthi": [3, 4, 5], "help": 11, "helper": 2, "hit": 11, "host": 10, "hostnam": [2, 9, 10], "how": [8, 11], "howto": 10, "http": [0, 7, 11, 12], "i": [0, 1, 2, 3, 4, 5, 8, 10, 11, 12], "id": [0, 1, 3, 5, 10, 11], "idea": 3, "identifi": [3, 5, 9, 11], "idp": 0, "illustr": 11, "immut": 3, "implement": 0, "implic": 11, "import": 11, "includ": [0, 3], "indent": 10, "index": [0, 2, 5, 9], "index_manifest": 11, "index_object_manifest": [2, 9, 11], "indexd": [1, 3, 6, 10, 11, 12], "indexd_field": [11, 12], "indexd_record_page_s": [2, 9, 11], "indexed_file_object_guid": 12, "indic": [0, 11], "infil": 10, "info": [3, 11], "inform": [2, 3, 10], "ingest": [2, 9], "ingest_manifest": 12, "initi": [0, 10], "input": [4, 10, 11], "input_manifest": 11, "instal": [0, 2, 11], "instanc": [1, 3, 6, 7, 8, 9, 10], "instead": [1, 7, 11], "int": [1, 3, 5, 7, 8, 10, 11, 12], "integ": [1, 3, 8], "intend": 0, "interact": [1, 3, 4, 5, 6, 8, 13], "interest": 10, "interpret": 0, "introspect": 8, "involv": 9, "is_healthi": [2, 3, 4, 5], "is_indexed_file_object": 12, "isn": 1, "issu": 0, "its": [1, 3], "job": 2, "job_id": 4, "job_input": 4, "job_nam": 4, "json": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "just": [5, 11, 12], "jwt": 0, "kei": [0, 3, 5, 13], "know": 11, "known": 10, "kwarg": [3, 4, 5], "l": [2, 13], "larg": 9, "last": 10, "latest": 3, "least": 3, "level": 6, "librari": 11, "like": [3, 5, 9, 11, 12], "limit": [1, 3, 5, 12], "linear": 4, "linux": 10, "list": [0, 1, 3, 4, 5, 7, 8, 10, 11, 13], "list_access_in_drs_manifest": [2, 9, 10], "list_drs_object": [2, 9, 10], "list_files_in_drs_manifest": [2, 9, 10], "list_job": [2, 4], "live": [11, 12], "load": [2, 9, 10], "load_manifest": [2, 9, 10], "local": [0, 13], "locat": [1, 6], "lock": 12, "log": [8, 10, 11, 12], "logic": [5, 12], "loop": 11, "ls_path": [2, 13], "maco": 11, "made": 3, "mai": [0, 9, 11], "main": 10, "make": [9, 11], "manag": [1, 5, 10], "mani": [8, 11], "manifest": [2, 8, 9, 10, 11, 12], "manifest_1": 10, "manifest_fil": [11, 12], "manifest_file_delimit": [11, 12], "manifest_row_pars": [11, 12], "map": [0, 11], "mark": 8, "master": 7, "match": [3, 5, 12], "max": 5, "max_concurrent_request": [2, 9, 11, 12], "max_presigned_url_ttl": 1, "max_tri": 8, "maximum": [11, 12], "md": [5, 7, 10, 12], "md5": [2, 3, 9, 11], "md5_hash": 11, "md5sum": [2, 9, 10], "mean": 8, "mechan": 3, "merg": 5, "metadata": [2, 3, 6, 9, 11], "metadata_list": 5, "metadata_sourc": 12, "metadata_typ": 12, "metdata": 12, "method": [1, 7, 10], "minimum": 10, "minut": 0, "mode": 7, "modul": [2, 10, 11], "more": [2, 5, 7, 9, 10], "most": 9, "mostli": 2, "multipl": [8, 11], "must": [1, 5], "my_common": 10, "my_credenti": 10, "my_field": 7, "my_index": 7, "my_program": 7, "my_project": 7, "name": [3, 4, 8, 10, 11, 12, 13], "namespac": [0, 12], "necessari": [3, 5], "need": [3, 7, 10, 11], "nest": 5, "net": 11, "never": 0, "new": [0, 3], "node": 8, "node_nam": 8, "node_typ": 8, "none": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "note": [0, 3, 11, 12], "noth": [3, 6], "now": [1, 8], "num": 5, "num_process": 11, "num_total_fil": 11, "number": [3, 7, 8, 11, 12], "o": 0, "object": [1, 2, 3, 4, 5, 7, 8, 9, 10, 11, 13], "object_id": [1, 2, 9, 10], "object_list": 10, "object_typ": [2, 9, 10], "objectid": 10, "obtain": [0, 10], "occur": 10, "off": 5, "offset": [5, 7], "oidc": 0, "old": 3, "one": [3, 5, 10, 11], "onli": [3, 5, 7, 8, 10, 11], "open": [8, 10, 11], "open_project": [2, 8], "openid": 0, "opt": 0, "option": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11], "order": [0, 8], "ordered_node_list": 8, "org": 10, "otherwis": 10, "output": [4, 5, 11, 12], "output_dir": 10, "output_filenam": [11, 12], "overrid": [0, 11, 12], "overwrit": 5, "own": 0, "packag": 10, "page": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 13], "pagin": 3, "parallel": 11, "param": [3, 5, 8, 10], "paramet": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "pars": [10, 11, 12, 13], "parser": [11, 12], "particular": 0, "pass": [0, 7, 8, 10], "password": [11, 12], "path": [0, 1, 5, 10, 11, 13], "path_to_manifest": 11, "pattern": [3, 12], "pdcdatastor": 11, "pend": 10, "per": [11, 12], "peregrin": 8, "permiss": 10, "persist": 9, "phs0001": 11, "phs0002": 11, "pick": 1, "pla": 11, "place": 11, "planx": 11, "point": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "popul": [10, 12], "posit": [1, 7], "possibl": 10, "post": [0, 11], "pprint": [2, 9, 10], "prefix": 3, "presign": 1, "pretti": 10, "prev_guid": [2, 9, 11], "previou": [3, 11], "previous": 4, "print": [8, 10], "process": 11, "processed_fil": 11, "profil": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "program": [8, 11], "progress": [8, 10], "project": [8, 11], "project_id": [7, 8], "protocol": 1, "provid": [0, 1, 3, 5, 7, 8, 12], "public": [3, 5], "put": 0, "py": 11, "python": [2, 9, 11], "python3": 11, "python_subprocess_command": 11, "queri": [1, 2, 3, 5, 8, 11, 12], "query_str": 7, "query_txt": [7, 8], "query_url": [2, 3], "quickstart": 2, "rather": 0, "raw": [7, 11], "raw_data_download": [2, 7], "rbac": 3, "read": [3, 5, 11], "readm": 2, "reason": 10, "record": [1, 3, 5, 7, 8, 11, 12], "refresh": [0, 10], "refresh_access_token": [0, 2], "refresh_fil": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "refresh_token": 0, "regist": 8, "regular": 7, "relat": 9, "remov": [1, 6, 11, 13], "replac": 11, "replace_url": 11, "repo": 2, "repres": [3, 5, 10], "represent": [1, 3], "request": [0, 1, 3, 5, 8, 11, 12], "requir": 10, "resolv": 10, "resolve_object": [2, 9, 10], "respect": 7, "respons": [0, 1, 3, 4, 5], "result": [1, 8, 10, 11], "retri": 8, "retriev": [1, 8, 10, 12], "return": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11], "return_full_metadata": 5, "rev": 3, "revers": 8, "revis": 3, "right": 1, "rm": [2, 13], "rm_path": [2, 13], "root": [11, 12], "row": [7, 8, 11, 12], "row_offset": 8, "rtype": 3, "run": [8, 11], "s3": [1, 10, 11], "safe": 11, "same": [5, 11, 13], "sampl": [8, 10], "sandbox": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "save": 10, "save_directori": 10, "schema": 8, "scope": [0, 1], "screen": 8, "script": 2, "search": [0, 2, 3], "second": [1, 4], "secret": 0, "see": [7, 10, 11], "self": 10, "semaphon": 12, "semaphor": 12, "separ": [0, 11], "server": 10, "servic": [1, 3, 4, 5, 6, 8, 11, 12, 13], "service_loc": [3, 4, 5], "session": 11, "set": [0, 1, 5, 10], "setup": 2, "sheepdog": 8, "should": [0, 8, 11], "show": 10, "show_progress": 10, "shown": 11, "sign": 1, "signpost": 3, "similar": 10, "simpl": 3, "simpli": 11, "sinc": 3, "singl": [1, 5, 8], "size": [2, 3, 9, 10, 11], "skip": 8, "sleep": 4, "so": 11, "some": [0, 2], "someth": 11, "sort": 7, "sort_field": 7, "sort_object": 7, "sourc": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "space": [0, 11], "specif": [5, 8, 11, 12], "specifi": [0, 1, 3, 11, 13], "spreadsheet": 8, "src_path": 13, "src_urlstr": 13, "src_w": 13, "src_wskei": 13, "ssl": [3, 4, 5], "start": [3, 4, 7, 8, 10], "start_tim": [2, 9, 10], "static": 10, "statu": [2, 4, 9, 10], "storag": [1, 2, 6], "store": [1, 3, 10], "str": [0, 1, 3, 4, 5, 7, 8, 10, 11, 12], "string": [0, 3, 5, 11, 13], "strip": 11, "sub": 8, "subject": [7, 8], "submiss": 2, "submit": [8, 11], "submit_additional_metadata_column": 11, "submit_fil": [2, 8], "submit_record": [2, 8], "submitter_id": 7, "success": 10, "successfulli": 10, "suffici": 3, "suppli": 3, "support": [0, 1, 5, 8, 11], "sure": 1, "synchron": 11, "syntax": 7, "system": [6, 7, 8, 9], "t": [1, 5, 11], "tab": 11, "task": 9, "temporari": 11, "test": 11, "test1": 11, "test2": 11, "test3": 11, "test4": 11, "test5": 11, "text": [1, 7, 8], "than": [0, 5], "thei": [0, 10], "them": [10, 11], "thi": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "those": 11, "thread": 11, "thread_num": 11, "threadcontrol": [2, 9, 11], "through": [8, 11], "tier": 7, "time": [1, 3, 8, 10, 11], "timestamp": 10, "tmp_folder": [2, 9, 11], "token": [0, 10], "tool": 2, "total": 11, "treat": [1, 5], "tree": 10, "true": [3, 4, 5, 6, 7, 8, 10, 11, 12], "try": 0, "tsv": [8, 11, 12], "tupl": [0, 3, 11, 12], "type": [1, 3, 4, 5, 7, 8, 10, 11, 12], "typic": 10, "uc": 7, "unaccess": 7, "under": [0, 8, 13], "uniqu": [1, 5], "unknown": 10, "unpack": 10, "unpack_packag": 10, "until": [4, 10], "up": [5, 9], "updat": [2, 3, 5, 10, 11], "update_alias": [2, 5], "update_blank": [2, 3], "update_record": [2, 3], "updated_tim": [2, 9, 10], "upload": [1, 2, 3, 8, 13], "upload_fil": [1, 2], "upload_file_to_guid": [1, 2], "upload_url": [2, 13], "url": [1, 2, 3, 9, 10, 11, 12, 13], "urls_metadata": 3, "us": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "usag": 11, "use_agg_md": 5, "user": [0, 10, 12], "user_access": [2, 9, 10], "usual": 12, "utcnow": 1, "util": 9, "uuid": [1, 3, 8], "uuid1": 8, "uuid2": 8, "valid": [3, 7], "valu": [0, 1, 3, 5, 7, 10, 11], "value_from_indexd": 11, "value_from_manifest": 11, "variabl": [0, 7, 8], "variou": 2, "verbos": [7, 8], "verif": 11, "verifi": [2, 9], "verify_manifest": 11, "verify_object_manifest": 11, "version": [3, 4, 5], "vital_statu": 7, "w": 13, "wa": 0, "wai": 10, "wait": 4, "want": [0, 3, 8], "warn": 11, "we": [3, 11], "web": 0, "what": 5, "when": [0, 3, 7, 10, 12], "where": [0, 3, 5, 11, 12], "whether": [3, 4, 5, 8, 11, 12], "which": [8, 10], "while": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "whose": 5, "within": [0, 2, 9], "without": [3, 5], "won": 5, "work": [0, 10], "workaround": 11, "worksheet": 8, "workspac": [0, 2], "wrapper": 10, "write": 11, "ws_urlstr": 13, "wskei": 13, "wss": 13, "wt": [0, 10], "x": 11, "xlsx": 8, "you": [0, 3, 8, 11], "your": 0}, "titles": ["Gen3 Auth Helper", "Gen3 File Class", "Welcome to Gen3 SDK\u2019s documentation!", "Gen3 Index Class", "Gen3 Jobs Class", "Gen3 Metadata Class", "Gen3 Object Class", "Gen3 Query Class", "Gen3 Submission Class", "Gen3 Tools", "DRS Download Tools", "Indexing Tools", "Metadata Tools", "Gen3 Workspace Storage"], "titleterms": {"": 2, "auth": 0, "class": [1, 3, 4, 5, 6, 7, 8], "document": 2, "download": [10, 11], "dr": 10, "file": 1, "gen3": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 13], "helper": 0, "index": [3, 11], "indic": 2, "ingest": 12, "job": 4, "metadata": [5, 12], "object": 6, "queri": 7, "sdk": 2, "storag": 13, "submiss": 8, "tabl": 2, "tool": [9, 10, 11, 12], "verifi": 11, "welcom": 2, "workspac": 13}}) \ No newline at end of file diff --git a/docs/_build/html/tools/indexing.html b/docs/_build/html/tools/indexing.html index 9f1bf5491..88165a3b6 100644 --- a/docs/_build/html/tools/indexing.html +++ b/docs/_build/html/tools/indexing.html @@ -381,7 +381,7 @@

Indexing Tools
-async gen3.tools.indexing.verify_manifest.async_verify_object_manifest(commons_url, manifest_file, max_concurrent_requests=24, manifest_row_parsers={'acl': <function _get_acl_from_row>, 'authz': <function _get_authz_from_row>, 'file_name': <function _get_file_name_from_row>, 'file_size': <function _get_file_size_from_row>, 'guid': <function _get_guid_from_row>, 'md5': <function _get_md5_from_row>, 'urls': <function _get_urls_from_row>}, manifest_file_delimiter=None, output_filename='verify-manifest-errors-1713543033.5899982.log')[source]
+async gen3.tools.indexing.verify_manifest.async_verify_object_manifest(commons_url, manifest_file, max_concurrent_requests=24, manifest_row_parsers={'acl': <function _get_acl_from_row>, 'authz': <function _get_authz_from_row>, 'file_name': <function _get_file_name_from_row>, 'file_size': <function _get_file_size_from_row>, 'guid': <function _get_guid_from_row>, 'md5': <function _get_md5_from_row>, 'urls': <function _get_urls_from_row>}, manifest_file_delimiter=None, output_filename='verify-manifest-errors-1713543225.0046513.log')[source]

Verify all file object records into a manifest csv

Parameters:
diff --git a/docs/_build/html/tools/metadata.html b/docs/_build/html/tools/metadata.html index 2a583a296..47ffa1f2c 100644 --- a/docs/_build/html/tools/metadata.html +++ b/docs/_build/html/tools/metadata.html @@ -102,7 +102,7 @@

Metadata Tools
-async gen3.tools.metadata.ingest_manifest.async_ingest_metadata_manifest(commons_url, manifest_file, metadata_source, auth=None, max_concurrent_requests=24, manifest_row_parsers={'guid_for_row': <function _get_guid_for_row>, 'indexed_file_object_guid': <function _query_for_associated_indexd_record_guid>}, manifest_file_delimiter=None, output_filename='ingest-metadata-manifest-errors-1713543033.8882551.log', get_guid_from_file=True, metadata_type=None)[source]
+async gen3.tools.metadata.ingest_manifest.async_ingest_metadata_manifest(commons_url, manifest_file, metadata_source, auth=None, max_concurrent_requests=24, manifest_row_parsers={'guid_for_row': <function _get_guid_for_row>, 'indexed_file_object_guid': <function _query_for_associated_indexd_record_guid>}, manifest_file_delimiter=None, output_filename='ingest-metadata-manifest-errors-1713543225.2995.log', get_guid_from_file=True, metadata_type=None)[source]

Ingest all metadata records into a manifest csv

Parameters:
From 06ed2ef3083e04aadf6b79d481158ff721e76df2 Mon Sep 17 00:00:00 2001 From: Alex Date: Fri, 19 Apr 2024 11:17:18 -0500 Subject: [PATCH 09/62] feat(pyinstaller): add poetry to path --- .github/workflows/build.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index 3df9c2cac..74c4fdb59 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -28,6 +28,7 @@ jobs: run: | pip install --upgrade pip curl -sSL https://install.python-poetry.org | python - + export PATH="/Users/runner/.local/bin:$PATH" pip --version poetry --version - name: Install dependencies From 49a00e8a13421615dd9ae27230bf11f1dc4fc4e6 Mon Sep 17 00:00:00 2001 From: Avantol13 Date: Fri, 19 Apr 2024 16:18:30 +0000 Subject: [PATCH 10/62] Apply automatic documentation changes --- docs/_build/doctrees/environment.pickle | Bin 1579878 -> 1579888 bytes docs/_build/doctrees/tools/indexing.doctree | Bin 100291 -> 100286 bytes docs/_build/doctrees/tools/metadata.doctree | Bin 35919 -> 35934 bytes docs/_build/html/searchindex.js | 2 +- docs/_build/html/tools/indexing.html | 2 +- docs/_build/html/tools/metadata.html | 2 +- 6 files changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/_build/doctrees/environment.pickle b/docs/_build/doctrees/environment.pickle index dbb86cae834c6db10c220c3f1dfe9dba789ede5b..40194bd0b5d63b321c43ec6829db5fe5e6f01f9b 100644 GIT binary patch delta 11065 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 delta 10799 zcma)Cd016d*XLaB<&NBY&)EzzgQ9{1qXTNrr6`7IT3Q;S;&4^K08=Y*AQeJIFS5$H z)J#o9PMZ`12gTG?w>=A6wSf@li0h1^L+ln`mJ%VwdZ}0wbc`Ts-94> zH`GtjxTO$r*VWWhIu}{E4%s=jKk&&MGVM%AV-ToRo)-uI!1qX!jtLfy1&A18>9K zyF+BbpE?hZ5)*48=7rq6GS_X!o4K73{KW(|EryWY<4!ER;O}x9EgvCkU^0uyMMxT% z#5_Ac^M!dra7*Wr>QQ2Ukh~Dz;dVSlA!uR(BX*ErYZ$ADZqm9#XzJZD9RmvL9@0OW zQ!Q%pOPuMGvnOR`%*ss9%TCY9z}|nQEXu_?!qv?Fur6@jXMb4jE)P%q!zy-346#~W zI)+$DJ7WiCBKSW-_9mw`c6hRcf~mcPr$5KG-d?xqrI*ZtT!t)}5=$qDmYwF|kuKvl3(3G>^%dS61q}?S4KkP`c-y7Z()Fl77UD zPbzNK;I4=Zl^We=;)11H?%(5rq&sd?e7Mx)j*gF%>fNdF@n)6~bB}f(PwEHuGjmz{CH>vw6T7+($J^acB@pjN@^gQX@T^pe?FPG_OMD*n zt=*jxgFQ=KHC10G?hb@I7RlG0)Pt;9A6RuH^`H*s^^xSN!V#l}a8=bG>pln)=x}wg zMW8>AEfC0k;3Rk4d+M@31no5WR&BlZybelto8&6xrwuZfxxE?)Rke*?go~)v zD*dcNQ<(IDkC1+wD7|Un-n6)nG+&hlJSE+XQt{w zZ|S;52z~U&x;qI%-|kyYpV6pWBMZIB?D<=a3X?p4oGM_`X3y6K3Ap|z&(3xMFV=hh zAljl|cTmi8>Ag|<)~Ymaoc^S@ zkUCuYEh016{-Rzj=hjR5Nooqyi}j_dmwk=CT=hD%S$|G7cx$hIy)b~KRa$_8YW>C_ z(LnrH`m>1w`gs{Pg~Ioz?7s9wqycB@5tl=zN$m}76)uIXNd^KF`Wws;-b#|`<{pM& z!oGTpA=qDd#%CM6Oacyj(XiM{cy@dF5l`m=!y&6M`mxB6VH0pvxgjk8)_vjhrHA$z zChDXH8eD0(+MbJG&;<-p8}AiJ`+aAaA1Un4G#mOw2^iVl>zpd}9_IB?xbS*$3N9+{ zrOfiOg$m*1C7N);YhGL031RYnO*o*^Df%LCHon z{(vFI^+Ce4Zn81NAz);lv6WMp7B10D7Ze"i+hX5&s@VH$kUsHk28KQ=B>;f1e_ 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 VpyVE^EZ;RER>B#VpFc6?e*kE_otOXs diff --git a/docs/_build/doctrees/tools/indexing.doctree b/docs/_build/doctrees/tools/indexing.doctree index ae311f13efc33d85e4ca7967b3fb469388534201..c80f74e245fd081a06679de5e6a7feabaaa1cd8e 100644 GIT binary patch delta 161 zcmX@y&$h3htzinI2;-uyqKrkBEN>VY7^WLoGRjQu+AX_X&Yp2GBbTXxnVx}}iK)5K z_9AP>Zf3>{+yB`y9!8NkGUiwT0Eiwd<^TWy delta 166 zcmdnj&vv+YZ7^Vl>G0IHt+AX_X)}C=OBe#)}sh)v>iJ7UP z@%BP%#%^ZDi`)O&F&;*hIpx5(m7CFi`a}mteE}pbdO7*&>eC(F8HJ&elIW6CGT39M RWQg@Z^rBc7&|GPBeJRc=0|;fPaJqkcLEqsQb478U~N=1exs7KTVkqDxK5V2_=WA=U%d N$c-es`GQ4#FaR90FLT&pX$`ILquBZrZZsh*LgrRn5MeVffeTF03g zYc@;ixgaDqXX>|dFuG2DZ*IX0Q>>ShpRPXnV2&_ETnt5gN(OuElnk*Ruok%ao9|oH G2Lk|U+A1{w diff --git a/docs/_build/html/searchindex.js b/docs/_build/html/searchindex.js index 7ea5ab9c8..0bdbbe29d 100644 --- a/docs/_build/html/searchindex.js +++ b/docs/_build/html/searchindex.js @@ -1 +1 @@ -Search.setIndex({"alltitles": {"DRS Download Tools": [[10, "module-gen3.tools.download.drs_download"]], "Download": [[11, "module-gen3.tools.indexing.download_manifest"]], "Gen3 Auth Helper": [[0, "gen3-auth-helper"]], "Gen3 File Class": [[1, "gen3-file-class"]], "Gen3 Index Class": [[3, "gen3-index-class"]], "Gen3 Jobs Class": [[4, "gen3-jobs-class"]], "Gen3 Metadata Class": [[5, "gen3-metadata-class"]], "Gen3 Object Class": [[6, "gen3-object-class"]], "Gen3 Query Class": [[7, "gen3-query-class"]], "Gen3 Submission Class": [[8, "gen3-submission-class"]], "Gen3 Tools": [[9, "gen3-tools"]], "Gen3 Workspace Storage": [[13, "gen3-workspace-storage"]], "Index": [[11, "module-gen3.tools.indexing.index_manifest"]], "Indexing Tools": [[11, "indexing-tools"]], "Indices and tables": [[2, "indices-and-tables"]], "Ingest": [[12, "module-gen3.tools.metadata.ingest_manifest"]], "Metadata Tools": [[12, "metadata-tools"]], "Verify": [[11, "module-gen3.tools.indexing.verify_manifest"]], "Welcome to Gen3 SDK\u2019s documentation!": [[2, "welcome-to-gen3-sdk-s-documentation"]]}, "docnames": ["auth", "file", "index", "indexing", "jobs", "metadata", "object", "query", "submission", "tools", "tools/drs_pull", "tools/indexing", "tools/metadata", "wss"], "envversion": {"sphinx": 61, "sphinx.domains.c": 3, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 9, "sphinx.domains.index": 1, "sphinx.domains.javascript": 3, "sphinx.domains.math": 2, "sphinx.domains.python": 4, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx.ext.viewcode": 1}, "filenames": ["auth.rst", "file.rst", "index.rst", "indexing.rst", "jobs.rst", "metadata.rst", "object.rst", "query.rst", "submission.rst", "tools.rst", "tools/drs_pull.rst", "tools/indexing.rst", "tools/metadata.rst", "wss.rst"], "indexentries": {"_manager (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable._manager", false]], "access_methods (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.access_methods", false]], "acls (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.ACLS", false]], "async_create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_create", false]], "async_create_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_create_aliases", false]], "async_create_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_create_record", false]], "async_delete_alias() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_delete_alias", false]], "async_delete_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_delete_aliases", false]], "async_download_object_manifest() (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.async_download_object_manifest", false]], "async_get() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_get", false]], "async_get_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_get_aliases", false]], "async_get_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_record", false]], "async_get_records_from_checksum() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_records_from_checksum", false]], "async_get_records_on_page() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_records_on_page", false]], "async_get_with_params() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_with_params", false]], "async_ingest_metadata_manifest() (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.async_ingest_metadata_manifest", false]], "async_query_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_query_urls", false]], "async_query_urls_from_indexd() (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.async_query_urls_from_indexd", false]], "async_run_job_and_wait() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.async_run_job_and_wait", false]], "async_update() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_update", false]], "async_update_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_update_aliases", false]], "async_update_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_update_record", false]], "async_verify_object_manifest() (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.async_verify_object_manifest", false]], "auth_provider (gen3.metadata.gen3metadata attribute)": [[5, "gen3.metadata.Gen3Metadata.auth_provider", false]], "authz (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.AUTHZ", false]], "batch_create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.batch_create", false]], "cache_hosts_wts_tokens() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.cache_hosts_wts_tokens", false]], "children (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.children", false]], "column_to_use_as_guid (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.COLUMN_TO_USE_AS_GUID", false]], "commons_url (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.commons_url", false]], "copy() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.copy", false]], "create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create", false]], "create_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create_aliases", false]], "create_blank() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_blank", false]], "create_index_key_path() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create_index_key_path", false]], "create_job() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.create_job", false]], "create_new_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_new_version", false]], "create_object_list() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.create_object_list", false]], "create_program() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.create_program", false]], "create_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.create_project", false]], "create_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_record", false]], "created_time (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.created_time", false]], "curl() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.curl", false]], "current_dir (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.CURRENT_DIR", false]], "current_dir (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.CURRENT_DIR", false]], "current_dir (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.CURRENT_DIR", false]], "delete() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete", false]], "delete_alias() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_alias", false]], "delete_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_aliases", false]], "delete_all_guids() (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.delete_all_guids", false]], "delete_file() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.delete_file", false]], "delete_file_locations() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.delete_file_locations", false]], "delete_index_key_path() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_index_key_path", false]], "delete_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_node", false]], "delete_nodes() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_nodes", false]], "delete_object() (gen3.object.gen3object method)": [[6, "gen3.object.Gen3Object.delete_object", false]], "delete_program() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_program", false]], "delete_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_project", false]], "delete_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.delete_record", false]], "delete_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_record", false]], "delete_records() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_records", false]], "download() (gen3.tools.download.drs_download.downloadable method)": [[10, "gen3.tools.download.drs_download.Downloadable.download", false]], "download() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.download", false]], "download() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.download", false]], "download_files_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.download_files_in_drs_manifest", false]], "download_single() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.download_single", false]], "download_url() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.download_url", false]], "downloadable (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.Downloadable", false]], "downloadmanager (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.DownloadManager", false]], "downloadstatus (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.DownloadStatus", false]], "end_time (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.end_time", false]], "endpoint (gen3.metadata.gen3metadata attribute)": [[5, "gen3.metadata.Gen3Metadata.endpoint", false]], "export_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.export_node", false]], "export_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.export_record", false]], "file_name (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.file_name", false]], "file_name (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.file_name", false]], "file_size (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.file_size", false]], "file_size (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.file_size", false]], "gen3.tools": [[9, "module-gen3.tools", false]], "gen3.tools.download.drs_download": [[10, "module-gen3.tools.download.drs_download", false]], "gen3.tools.indexing.download_manifest": [[11, "module-gen3.tools.indexing.download_manifest", false]], "gen3.tools.indexing.index_manifest": [[11, "module-gen3.tools.indexing.index_manifest", false]], "gen3.tools.indexing.verify_manifest": [[11, "module-gen3.tools.indexing.verify_manifest", false]], "gen3.tools.metadata.ingest_manifest": [[12, "module-gen3.tools.metadata.ingest_manifest", false]], "gen3auth (class in gen3.auth)": [[0, "gen3.auth.Gen3Auth", false]], "gen3file (class in gen3.file)": [[1, "gen3.file.Gen3File", false]], "gen3index (class in gen3.index)": [[3, "gen3.index.Gen3Index", false]], "gen3jobs (class in gen3.jobs)": [[4, "gen3.jobs.Gen3Jobs", false]], "gen3metadata (class in gen3.metadata)": [[5, "gen3.metadata.Gen3Metadata", false]], "gen3object (class in gen3.object)": [[6, "gen3.object.Gen3Object", false]], "gen3query (class in gen3.query)": [[7, "gen3.query.Gen3Query", false]], "gen3submission (class in gen3.submission)": [[8, "gen3.submission.Gen3Submission", false]], "gen3wsstorage (class in gen3.wss)": [[13, "gen3.wss.Gen3WsStorage", false]], "get() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get", false]], "get() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get", false]], "get_access_token() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.get_access_token", false]], "get_access_token_from_wts() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.get_access_token_from_wts", false]], "get_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_aliases", false]], "get_all_records() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_all_records", false]], "get_dictionary_all() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_dictionary_all", false]], "get_dictionary_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_dictionary_node", false]], "get_fresh_token() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.get_fresh_token", false]], "get_graphql_schema() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_graphql_schema", false]], "get_guids_prefix() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_guids_prefix", false]], "get_index_key_paths() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_index_key_paths", false]], "get_latest_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_latest_version", false]], "get_output() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_output", false]], "get_presigned_url() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.get_presigned_url", false]], "get_programs() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_programs", false]], "get_project_dictionary() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_project_dictionary", false]], "get_project_manifest() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_project_manifest", false]], "get_projects() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_projects", false]], "get_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_record", false]], "get_record_doc() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_record_doc", false]], "get_records() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_records", false]], "get_records_on_page() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_records_on_page", false]], "get_stats() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_stats", false]], "get_status() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_status", false]], "get_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_urls", false]], "get_valid_guids() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_valid_guids", false]], "get_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_version", false]], "get_version() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_version", false]], "get_version() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_version", false]], "get_versions() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_versions", false]], "get_with_params() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_with_params", false]], "graphql_query() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.graphql_query", false]], "guid (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.GUID", false]], "guid_type_for_indexed_file_object (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.GUID_TYPE_FOR_INDEXED_FILE_OBJECT", false]], "guid_type_for_non_indexed_file_object (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.GUID_TYPE_FOR_NON_INDEXED_FILE_OBJECT", false]], "hostname (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.hostname", false]], "index_object_manifest() (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.index_object_manifest", false]], "indexd_record_page_size (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.INDEXD_RECORD_PAGE_SIZE", false]], "is_healthy() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.is_healthy", false]], "is_healthy() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.is_healthy", false]], "is_healthy() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.is_healthy", false]], "list_access_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_access_in_drs_manifest", false]], "list_drs_object() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_drs_object", false]], "list_files_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_files_in_drs_manifest", false]], "list_jobs() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.list_jobs", false]], "load() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.load", false]], "load_manifest() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.load_manifest", false]], "ls() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.ls", false]], "ls_path() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.ls_path", false]], "manifest (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.Manifest", false]], "max_concurrent_requests (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.MAX_CONCURRENT_REQUESTS", false]], "max_concurrent_requests (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.MAX_CONCURRENT_REQUESTS", false]], "max_concurrent_requests (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.MAX_CONCURRENT_REQUESTS", false]], "md5 (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.MD5", false]], "md5sum (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.md5sum", false]], "module": [[9, "module-gen3.tools", false], [10, "module-gen3.tools.download.drs_download", false], [11, "module-gen3.tools.indexing.download_manifest", false], [11, "module-gen3.tools.indexing.index_manifest", false], [11, "module-gen3.tools.indexing.verify_manifest", false], [12, "module-gen3.tools.metadata.ingest_manifest", false]], "object_id (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.object_id", false]], "object_id (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.object_id", false]], "object_type (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.object_type", false]], "open_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.open_project", false]], "pprint() (gen3.tools.download.drs_download.downloadable method)": [[10, "gen3.tools.download.drs_download.Downloadable.pprint", false]], "prev_guid (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.PREV_GUID", false]], "query() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.query", false]], "query() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.query", false]], "query() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.query", false]], "query_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.query_urls", false]], "raw_data_download() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.raw_data_download", false]], "refresh_access_token() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.refresh_access_token", false]], "resolve_objects() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.resolve_objects", false]], "rm() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.rm", false]], "rm_path() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.rm_path", false]], "size (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.SIZE", false]], "start_time (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.start_time", false]], "status (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.status", false]], "submit_file() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.submit_file", false]], "submit_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.submit_record", false]], "threadcontrol (class in gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.ThreadControl", false]], "tmp_folder (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.TMP_FOLDER", false]], "update() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.update", false]], "update_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.update_aliases", false]], "update_blank() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.update_blank", false]], "update_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.update_record", false]], "updated_time (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.updated_time", false]], "upload() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.upload", false]], "upload_file() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.upload_file", false]], "upload_file_to_guid() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.upload_file_to_guid", false]], "upload_url() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.upload_url", false]], "urls (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.URLS", false]], "user_access() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.user_access", false]]}, "objects": {"gen3": [[9, 3, 0, "-", "tools"]], "gen3.auth": [[0, 0, 1, "", "Gen3Auth"]], "gen3.auth.Gen3Auth": [[0, 1, 1, "", "curl"], [0, 1, 1, "", "get_access_token"], [0, 1, 1, "", "get_access_token_from_wts"], [0, 1, 1, "", "refresh_access_token"]], "gen3.file": [[1, 0, 1, "", "Gen3File"]], "gen3.file.Gen3File": [[1, 1, 1, "", "delete_file"], [1, 1, 1, "", "delete_file_locations"], [1, 1, 1, "", "download_single"], [1, 1, 1, "", "get_presigned_url"], [1, 1, 1, "", "upload_file"], [1, 1, 1, "", "upload_file_to_guid"]], "gen3.index": [[3, 0, 1, "", "Gen3Index"]], "gen3.index.Gen3Index": [[3, 1, 1, "", "async_create_record"], [3, 1, 1, "", "async_get_record"], [3, 1, 1, "", "async_get_records_from_checksum"], [3, 1, 1, "", "async_get_records_on_page"], [3, 1, 1, "", "async_get_with_params"], [3, 1, 1, "", "async_query_urls"], [3, 1, 1, "", "async_update_record"], [3, 1, 1, "", "create_blank"], [3, 1, 1, "", "create_new_version"], [3, 1, 1, "", "create_record"], [3, 1, 1, "", "delete_record"], [3, 1, 1, "", "get"], [3, 1, 1, "", "get_all_records"], [3, 1, 1, "", "get_guids_prefix"], [3, 1, 1, "", "get_latest_version"], [3, 1, 1, "", "get_record"], [3, 1, 1, "", "get_record_doc"], [3, 1, 1, "", "get_records"], [3, 1, 1, "", "get_records_on_page"], [3, 1, 1, "", "get_stats"], [3, 1, 1, "", "get_urls"], [3, 1, 1, "", "get_valid_guids"], [3, 1, 1, "", "get_version"], [3, 1, 1, "", "get_versions"], [3, 1, 1, "", "get_with_params"], [3, 1, 1, "", "is_healthy"], [3, 1, 1, "", "query_urls"], [3, 1, 1, "", "update_blank"], [3, 1, 1, "", "update_record"]], "gen3.jobs": [[4, 0, 1, "", "Gen3Jobs"]], "gen3.jobs.Gen3Jobs": [[4, 1, 1, "", "async_run_job_and_wait"], [4, 1, 1, "", "create_job"], [4, 1, 1, "", "get_output"], [4, 1, 1, "", "get_status"], [4, 1, 1, "", "get_version"], [4, 1, 1, "", "is_healthy"], [4, 1, 1, "", "list_jobs"]], "gen3.metadata": [[5, 0, 1, "", "Gen3Metadata"]], "gen3.metadata.Gen3Metadata": [[5, 1, 1, "", "async_create"], [5, 1, 1, "", "async_create_aliases"], [5, 1, 1, "", "async_delete_alias"], [5, 1, 1, "", "async_delete_aliases"], [5, 1, 1, "", "async_get"], [5, 1, 1, "", "async_get_aliases"], [5, 1, 1, "", "async_update"], [5, 1, 1, "", "async_update_aliases"], [5, 2, 1, "", "auth_provider"], [5, 1, 1, "", "batch_create"], [5, 1, 1, "", "create"], [5, 1, 1, "", "create_aliases"], [5, 1, 1, "", "create_index_key_path"], [5, 1, 1, "", "delete"], [5, 1, 1, "", "delete_alias"], [5, 1, 1, "", "delete_aliases"], [5, 1, 1, "", "delete_index_key_path"], [5, 2, 1, "", "endpoint"], [5, 1, 1, "", "get"], [5, 1, 1, "", "get_aliases"], [5, 1, 1, "", "get_index_key_paths"], [5, 1, 1, "", "get_version"], [5, 1, 1, "", "is_healthy"], [5, 1, 1, "", "query"], [5, 1, 1, "", "update"], [5, 1, 1, "", "update_aliases"]], "gen3.object": [[6, 0, 1, "", "Gen3Object"]], "gen3.object.Gen3Object": [[6, 1, 1, "", "delete_object"]], "gen3.query": [[7, 0, 1, "", "Gen3Query"]], "gen3.query.Gen3Query": [[7, 1, 1, "", "graphql_query"], [7, 1, 1, "", "query"], [7, 1, 1, "", "raw_data_download"]], "gen3.submission": [[8, 0, 1, "", "Gen3Submission"]], "gen3.submission.Gen3Submission": [[8, 1, 1, "", "create_program"], [8, 1, 1, "", "create_project"], [8, 1, 1, "", "delete_node"], [8, 1, 1, "", "delete_nodes"], [8, 1, 1, "", "delete_program"], [8, 1, 1, "", "delete_project"], [8, 1, 1, "", "delete_record"], [8, 1, 1, "", "delete_records"], [8, 1, 1, "", "export_node"], [8, 1, 1, "", "export_record"], [8, 1, 1, "", "get_dictionary_all"], [8, 1, 1, "", "get_dictionary_node"], [8, 1, 1, "", "get_graphql_schema"], [8, 1, 1, "", "get_programs"], [8, 1, 1, "", "get_project_dictionary"], [8, 1, 1, "", "get_project_manifest"], [8, 1, 1, "", "get_projects"], [8, 1, 1, "", "open_project"], [8, 1, 1, "", "query"], [8, 1, 1, "", "submit_file"], [8, 1, 1, "", "submit_record"]], "gen3.tools.download": [[10, 3, 0, "-", "drs_download"]], "gen3.tools.download.drs_download": [[10, 0, 1, "", "DownloadManager"], [10, 0, 1, "", "DownloadStatus"], [10, 0, 1, "", "Downloadable"], [10, 0, 1, "", "Manifest"], [10, 4, 1, "", "download_files_in_drs_manifest"], [10, 4, 1, "", "list_access_in_drs_manifest"], [10, 4, 1, "", "list_drs_object"], [10, 4, 1, "", "list_files_in_drs_manifest"]], "gen3.tools.download.drs_download.DownloadManager": [[10, 1, 1, "", "cache_hosts_wts_tokens"], [10, 1, 1, "", "download"], [10, 1, 1, "", "get_fresh_token"], [10, 1, 1, "", "resolve_objects"], [10, 1, 1, "", "user_access"]], "gen3.tools.download.drs_download.DownloadStatus": [[10, 2, 1, "", "end_time"], [10, 2, 1, "", "start_time"], [10, 2, 1, "", "status"]], "gen3.tools.download.drs_download.Downloadable": [[10, 2, 1, "", "_manager"], [10, 2, 1, "", "access_methods"], [10, 2, 1, "", "children"], [10, 2, 1, "", "created_time"], [10, 1, 1, "", "download"], [10, 2, 1, "", "file_name"], [10, 2, 1, "", "file_size"], [10, 2, 1, "", "hostname"], [10, 2, 1, "", "object_id"], [10, 2, 1, "", "object_type"], [10, 1, 1, "", "pprint"], [10, 2, 1, "", "updated_time"]], "gen3.tools.download.drs_download.Manifest": [[10, 2, 1, "", "commons_url"], [10, 1, 1, "", "create_object_list"], [10, 2, 1, "", "file_name"], [10, 2, 1, "", "file_size"], [10, 1, 1, "", "load"], [10, 1, 1, "", "load_manifest"], [10, 2, 1, "", "md5sum"], [10, 2, 1, "", "object_id"]], "gen3.tools.indexing": [[11, 3, 0, "-", "download_manifest"], [11, 3, 0, "-", "index_manifest"], [11, 3, 0, "-", "verify_manifest"]], "gen3.tools.indexing.download_manifest": [[11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "INDEXD_RECORD_PAGE_SIZE"], [11, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [11, 2, 1, "", "TMP_FOLDER"], [11, 4, 1, "", "async_download_object_manifest"]], "gen3.tools.indexing.index_manifest": [[11, 2, 1, "", "ACLS"], [11, 2, 1, "", "AUTHZ"], [11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "GUID"], [11, 2, 1, "", "MD5"], [11, 2, 1, "", "PREV_GUID"], [11, 2, 1, "", "SIZE"], [11, 0, 1, "", "ThreadControl"], [11, 2, 1, "", "URLS"], [11, 4, 1, "", "delete_all_guids"], [11, 4, 1, "", "index_object_manifest"]], "gen3.tools.indexing.verify_manifest": [[11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [11, 4, 1, "", "async_verify_object_manifest"]], "gen3.tools.metadata": [[12, 3, 0, "-", "ingest_manifest"]], "gen3.tools.metadata.ingest_manifest": [[12, 2, 1, "", "COLUMN_TO_USE_AS_GUID"], [12, 2, 1, "", "GUID_TYPE_FOR_INDEXED_FILE_OBJECT"], [12, 2, 1, "", "GUID_TYPE_FOR_NON_INDEXED_FILE_OBJECT"], [12, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [12, 4, 1, "", "async_ingest_metadata_manifest"], [12, 4, 1, "", "async_query_urls_from_indexd"]], "gen3.wss": [[13, 0, 1, "", "Gen3WsStorage"]], "gen3.wss.Gen3WsStorage": [[13, 1, 1, "", "copy"], [13, 1, 1, "", "download"], [13, 1, 1, "", "download_url"], [13, 1, 1, "", "ls"], [13, 1, 1, "", "ls_path"], [13, 1, 1, "", "rm"], [13, 1, 1, "", "rm_path"], [13, 1, 1, "", "upload"], [13, 1, 1, "", "upload_url"]]}, "objnames": {"0": ["py", "class", "Python class"], "1": ["py", "method", "Python method"], "2": ["py", "attribute", "Python attribute"], "3": ["py", "module", "Python module"], "4": ["py", "function", "Python function"]}, "objtypes": {"0": "py:class", "1": "py:method", "2": "py:attribute", "3": "py:module", "4": "py:function"}, "terms": {"": [1, 4, 8, 10, 11], "0": [5, 7, 8, 11], "0046513": 11, "0a80fada010c": 11, "0a80fada096c": 11, "0a80fada097c": 11, "0a80fada098c": 11, "0a80fada099c": 11, "1": [4, 5, 8, 10, 11], "10": [5, 7, 11], "100": [8, 11], "11e9": 11, "1713542306": [], "1713542765": [], "1713543033": [], "1713543225": [11, 12], "2": [5, 11], "24": [11, 12], "255e396f": 11, "2877355": [], "2995": 12, "3": [5, 11], "30": 8, "33": 5, "333": 5, "343434344": 11, "363455714": 11, "4": [5, 11], "450c": 11, "4649727": [], "4714": 8, "473d83400bc1bc9dc635e334fadd433c": 11, "473d83400bc1bc9dc635e334faddd33c": 11, "473d83400bc1bc9dc635e334fadde33c": 11, "473d83400bc1bc9dc635e334faddf33c": 11, "5": [0, 5], "50": 7, "543434443": 11, "5899982": [], "6692646": [], "6f90": 8, "760149": [], "7d3d8d2083b4": 11, "8420": 8, "8882551": [], "93d9af72": 11, "9a07": 11, "A": [1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "AND": 5, "Be": 1, "But": 5, "By": 11, "For": [1, 5, 6, 7, 8, 9, 11], "IF": 11, "If": [0, 1, 7, 11, 12], "In": 10, "It": 10, "NOT": 12, "OR": 5, "One": 7, "Such": 9, "THE": 11, "That": 3, "The": [0, 1, 2, 3, 5, 8, 10, 11], "There": 11, "These": 9, "To": 11, "Will": [4, 7, 10], "_get_acl_from_row": 11, "_get_authz_from_row": 11, "_get_file_name_from_row": 11, "_get_file_size_from_row": 11, "_get_guid_for_row": 12, "_get_guid_from_row": 11, "_get_md5_from_row": 11, "_get_urls_from_row": 11, "_guid_typ": 12, "_manag": [2, 9, 10], "_query_for_associated_indexd_record_guid": 12, "_ssl": [3, 4, 5], "a5c6": 11, "ab167e49d25b488939b1ede42752458b": 3, "about": [2, 3], "abov": 11, "access": [0, 1, 3, 7, 10], "access_method": [2, 9, 10], "access_token": 0, "accesstoken": 0, "acl": [2, 3, 9, 11], "across": 11, "act": 0, "action": [9, 11], "actual": 11, "ad": 3, "add": [3, 5], "addit": [3, 5, 10, 11], "admin": [5, 11], "admin_endpoint_suffix": 5, "after": 10, "against": [3, 7, 8, 11, 12], "algorithm": 3, "alia": [3, 5], "alias": 5, "aliv": 7, "all": [1, 3, 4, 5, 6, 7, 8, 10, 11, 12], "allow": [0, 6, 8, 10, 11, 12], "allowed_data_upload_bucket": 1, "along": 2, "alreadi": 9, "also": 1, "altern": [5, 11], "alwai": 5, "ammount": 12, "amount": [1, 9], "an": [0, 3, 6, 8, 10, 11], "ani": [0, 5, 10, 11], "anoth": 5, "api": [0, 5, 8, 11], "api_kei": 11, "appli": 7, "appropri": 13, "ar": [5, 7, 8, 9, 10, 11], "arbitrari": 0, "argument": [0, 13], "arrai": 8, "asc": 7, "assign": 9, "assist": 10, "associ": [3, 5], "assum": 11, "async": [3, 4, 5, 9, 11, 12], "async_cr": [2, 5], "async_create_alias": [2, 5], "async_create_record": [2, 3], "async_delete_alia": [2, 5], "async_delete_alias": [2, 5], "async_download_object_manifest": [2, 9, 11], "async_get": [2, 5], "async_get_alias": [2, 5], "async_get_record": [2, 3], "async_get_records_from_checksum": [2, 3], "async_get_records_on_pag": [2, 3], "async_get_with_param": [2, 3], "async_ingest_metadata_manifest": [2, 9, 12], "async_query_url": [2, 3], "async_query_urls_from_indexd": [2, 9, 12], "async_run_job_and_wait": [2, 4], "async_upd": [2, 5], "async_update_alias": [2, 5], "async_update_record": [2, 3], "async_verify_object_manifest": [2, 9, 11], "asynchron": [3, 4, 5], "asyncio": [11, 12], "asyncron": 5, "attach": [3, 5], "attempt": 11, "attribut": [10, 11], "auth": [1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "auth_provid": [1, 2, 3, 4, 5, 6, 7, 8, 13], "authbas": 0, "authent": 0, "author": 1, "authz": [0, 1, 2, 3, 9, 10, 11], "auto": [0, 2], "automat": 0, "avail": [1, 2, 10, 11], "az": 1, "b": [5, 11], "b0f1": 11, "bar": 10, "base": [0, 1, 3, 4, 5, 6, 7, 8, 9, 11, 13], "baseid": 3, "basic": [3, 11, 12], "batch_creat": [2, 5], "batch_siz": 8, "behalf": 0, "behavior": 11, "being": 3, "belong": 8, "below": 11, "blank": 3, "blob": [5, 7], "bodi": 3, "bool": [4, 5, 8, 10, 11, 12], "boolean": 3, "bownload": 10, "broad": 9, "broken": 9, "bucket": [1, 6], "bundl": 10, "byte": 10, "c": [5, 11], "cach": 10, "cache_hosts_wts_token": [2, 9, 10], "call": [10, 13], "can": [0, 3, 4, 8, 11, 12], "capabl": 9, "case": [0, 10], "categori": 9, "ccle": 8, "ccle_one_record": 8, "ccle_sample_nod": 8, "cdi": 7, "chang": [3, 11], "checksum": [3, 10], "checksum_typ": 3, "child": 10, "children": [2, 9, 10], "chunk_siz": 8, "class": [0, 2, 10, 11, 13], "cli": 10, "client": [0, 3], "client_credenti": 0, "client_id": 0, "client_scop": 0, "client_secret": 0, "code": [2, 8], "column": [11, 12], "column_to_use_as_guid": [2, 9, 12], "columna": 11, "columnb": 11, "columnc": 11, "com": 7, "comma": 11, "command": [10, 11], "common": [0, 1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13], "commons_url": [2, 9, 10, 11, 12], "complet": [4, 11], "complex": 7, "concat": 11, "concurr": [11, 12], "configur": 1, "connect": 12, "consist": 3, "constructor": 0, "contain": [0, 2, 5, 8, 9, 10, 11, 12], "content": [3, 13], "content_created_d": 3, "content_updated_d": 3, "continu": 10, "control": 3, "conveni": 10, "copi": [2, 13], "coroutin": 11, "correspond": 3, "count": 3, "crdc": 0, "creat": [2, 3, 4, 5, 6, 8, 10, 11], "create_alias": [2, 5], "create_blank": [2, 3], "create_index_key_path": [2, 5], "create_job": [2, 4], "create_new_vers": [2, 3], "create_object_list": [2, 9, 10], "create_program": [2, 8], "create_project": [2, 8], "create_record": [2, 3], "created_tim": [2, 9, 10], "creation": [3, 11], "cred": 3, "credenti": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "csv": [8, 11, 12], "curl": [0, 2], "current": [6, 8, 10], "current_dir": [2, 9, 11], "custom": 11, "d": 5, "d70b41b9": 8, "data": [0, 1, 3, 5, 7, 8, 10, 11], "data_spreadsheet": 8, "data_typ": 7, "data_upload_bucket": 1, "dataa": 11, "datab": 11, "databas": 5, "datacommon": 0, "datafil": 10, "datamanag": 10, "date": 3, "datetim": [1, 3, 10], "dbgap": 12, "dcf": 8, "def": 11, "default": [0, 1, 3, 7, 8, 11, 12], "defin": [5, 8, 10], "delai": 4, "delet": [0, 1, 2, 3, 5, 6, 8, 10, 11], "delete_alia": [2, 5], "delete_alias": [2, 5], "delete_all_guid": [2, 9, 11], "delete_fil": [1, 2], "delete_file_loc": [1, 2, 6], "delete_index_key_path": [2, 5], "delete_nod": [2, 8], "delete_object": [2, 6], "delete_program": [2, 8], "delete_project": [2, 8], "delete_record": [2, 3, 8], "delete_unpacked_packag": 10, "delimet": [11, 12], "delimit": 11, "demograph": 8, "deprec": 1, "descript": [3, 5], "desir": 11, "dest_path": 13, "dest_urlstr": 13, "dest_w": 13, "dest_wskei": 13, "detail": [2, 7, 10], "determin": [10, 11, 12], "dev": 11, "dict": [3, 4, 5, 10, 11, 12], "dictionari": [3, 4, 5, 7, 8], "did": 3, "differ": 5, "direct": 0, "directori": [10, 11], "disabl": 10, "discoveri": 10, "disk": 13, "dispatch": 4, "dist_resolut": 3, "distribut": 3, "doc": [7, 10], "docstr": 2, "document": [1, 3], "doe": [0, 12], "domain": [11, 12], "done": 4, "download": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 13], "download_files_in_drs_manifest": [2, 9, 10], "download_list": 10, "download_manifest": 11, "download_singl": [1, 2], "download_url": [2, 13], "downloadmanag": [2, 9, 10], "downloadstatu": [2, 9, 10], "dr": [2, 9], "drs_download": 10, "drs_hostnam": 10, "drsdownload": 10, "drsobjecttyp": 10, "e": [5, 10], "e043ab8b77b9": 8, "each": [3, 8, 10, 11], "effici": 9, "eg": 3, "either": 8, "elasticsearch": 7, "els": [0, 12], "elsewher": 12, "empti": [8, 11], "enabl": 11, "end": [5, 10], "end_tim": [2, 9, 10], "endpoint": [0, 1, 2, 3, 4, 5, 7, 8, 13], "entir": 8, "entri": [3, 11], "env": 0, "environ": 0, "equal": 7, "error": [10, 11, 12], "error_nam": 11, "etc": 8, "even": 11, "everi": [9, 11], "everyth": 11, "ex": [0, 11, 12], "exampl": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "exclud": 3, "execut": [7, 8, 11], "exist": [1, 3, 5, 6, 9, 12], "expect": [5, 9, 11], "experi": 8, "expir": [0, 1], "expires_in": 1, "export": [8, 10], "export_nod": [2, 8], "export_record": [2, 8], "f1f8": 11, "factori": 10, "fail": [8, 10], "fals": [3, 5, 6, 10, 11], "featur": [1, 6], "fenc": [0, 1], "fetch": 0, "field": [3, 5, 7, 11, 12], "fieldnam": 11, "file": [0, 2, 3, 4, 8, 9, 10, 11, 12, 13], "file_nam": [1, 2, 3, 9, 10, 11], "file_s": [2, 9, 10, 11], "file_st": 3, "fileformat": 8, "filenam": [0, 8, 10, 11, 12], "files": 10, "fill": 12, "filter": [5, 7], "filter_object": 7, "first": [7, 8], "flag": 11, "folder": 11, "follow": [0, 11], "forc": 11, "force_metadata_columns_even_if_empti": 11, "form": 13, "format": [3, 5, 8, 11], "from": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13], "func_to_parse_row": [11, 12], "function": [2, 3, 4, 5, 9, 10, 11, 12], "g": 10, "gen3": [10, 11, 12], "gen3_api_kei": 0, "gen3_oidc_client_creds_secret": 0, "gen3auth": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "gen3fil": [1, 2], "gen3index": [2, 3], "gen3job": [2, 4, 10], "gen3metadata": [2, 5], "gen3object": [2, 6], "gen3queri": [2, 7], "gen3submiss": [2, 8], "gen3wsstorag": [2, 13], "gener": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 13], "get": [0, 1, 2, 3, 4, 5, 8, 10, 11, 12, 13], "get_access_token": [0, 2], "get_access_token_from_wt": [0, 2], "get_alias": [2, 5], "get_all_record": [2, 3], "get_dictionary_al": [2, 8], "get_dictionary_nod": [2, 8], "get_fresh_token": [2, 9, 10], "get_graphql_schema": [2, 8], "get_guid_from_fil": 12, "get_guids_prefix": [2, 3], "get_index_key_path": [2, 5], "get_latest_vers": [2, 3], "get_output": [2, 4], "get_presigned_url": [1, 2], "get_program": [2, 8], "get_project": [2, 8], "get_project_dictionari": [2, 8], "get_project_manifest": [2, 8], "get_record": [2, 3], "get_record_doc": [2, 3], "get_records_on_pag": [2, 3], "get_stat": [2, 3], "get_statu": [2, 4], "get_url": [2, 3], "get_valid_guid": [2, 3], "get_vers": [2, 3, 4, 5], "get_with_param": [2, 3], "giangb": 11, "github": [2, 7], "give": 1, "given": [0, 3, 4, 5, 8, 10, 12, 13], "global": [4, 5], "good": 3, "grant": 0, "graph": 8, "graphql": [7, 8], "graphql_queri": [2, 7], "group": 3, "guid": [1, 2, 3, 5, 6, 9, 11, 12], "guid_exampl": 11, "guid_for_row": 12, "guid_from_fil": 12, "guid_type_for_indexed_file_object": [2, 9, 12], "guid_type_for_non_indexed_file_object": [2, 9, 12], "guppi": 7, "ha": [0, 11], "handl": [3, 10], "hardcod": 0, "has_vers": 3, "hash": [3, 11], "hash_typ": 3, "have": [5, 11], "header": 11, "healthi": [3, 4, 5], "help": 11, "helper": 2, "hit": 11, "host": 10, "hostnam": [2, 9, 10], "how": [8, 11], "howto": 10, "http": [0, 7, 11, 12], "i": [0, 1, 2, 3, 4, 5, 8, 10, 11, 12], "id": [0, 1, 3, 5, 10, 11], "idea": 3, "identifi": [3, 5, 9, 11], "idp": 0, "illustr": 11, "immut": 3, "implement": 0, "implic": 11, "import": 11, "includ": [0, 3], "indent": 10, "index": [0, 2, 5, 9], "index_manifest": 11, "index_object_manifest": [2, 9, 11], "indexd": [1, 3, 6, 10, 11, 12], "indexd_field": [11, 12], "indexd_record_page_s": [2, 9, 11], "indexed_file_object_guid": 12, "indic": [0, 11], "infil": 10, "info": [3, 11], "inform": [2, 3, 10], "ingest": [2, 9], "ingest_manifest": 12, "initi": [0, 10], "input": [4, 10, 11], "input_manifest": 11, "instal": [0, 2, 11], "instanc": [1, 3, 6, 7, 8, 9, 10], "instead": [1, 7, 11], "int": [1, 3, 5, 7, 8, 10, 11, 12], "integ": [1, 3, 8], "intend": 0, "interact": [1, 3, 4, 5, 6, 8, 13], "interest": 10, "interpret": 0, "introspect": 8, "involv": 9, "is_healthi": [2, 3, 4, 5], "is_indexed_file_object": 12, "isn": 1, "issu": 0, "its": [1, 3], "job": 2, "job_id": 4, "job_input": 4, "job_nam": 4, "json": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "just": [5, 11, 12], "jwt": 0, "kei": [0, 3, 5, 13], "know": 11, "known": 10, "kwarg": [3, 4, 5], "l": [2, 13], "larg": 9, "last": 10, "latest": 3, "least": 3, "level": 6, "librari": 11, "like": [3, 5, 9, 11, 12], "limit": [1, 3, 5, 12], "linear": 4, "linux": 10, "list": [0, 1, 3, 4, 5, 7, 8, 10, 11, 13], "list_access_in_drs_manifest": [2, 9, 10], "list_drs_object": [2, 9, 10], "list_files_in_drs_manifest": [2, 9, 10], "list_job": [2, 4], "live": [11, 12], "load": [2, 9, 10], "load_manifest": [2, 9, 10], "local": [0, 13], "locat": [1, 6], "lock": 12, "log": [8, 10, 11, 12], "logic": [5, 12], "loop": 11, "ls_path": [2, 13], "maco": 11, "made": 3, "mai": [0, 9, 11], "main": 10, "make": [9, 11], "manag": [1, 5, 10], "mani": [8, 11], "manifest": [2, 8, 9, 10, 11, 12], "manifest_1": 10, "manifest_fil": [11, 12], "manifest_file_delimit": [11, 12], "manifest_row_pars": [11, 12], "map": [0, 11], "mark": 8, "master": 7, "match": [3, 5, 12], "max": 5, "max_concurrent_request": [2, 9, 11, 12], "max_presigned_url_ttl": 1, "max_tri": 8, "maximum": [11, 12], "md": [5, 7, 10, 12], "md5": [2, 3, 9, 11], "md5_hash": 11, "md5sum": [2, 9, 10], "mean": 8, "mechan": 3, "merg": 5, "metadata": [2, 3, 6, 9, 11], "metadata_list": 5, "metadata_sourc": 12, "metadata_typ": 12, "metdata": 12, "method": [1, 7, 10], "minimum": 10, "minut": 0, "mode": 7, "modul": [2, 10, 11], "more": [2, 5, 7, 9, 10], "most": 9, "mostli": 2, "multipl": [8, 11], "must": [1, 5], "my_common": 10, "my_credenti": 10, "my_field": 7, "my_index": 7, "my_program": 7, "my_project": 7, "name": [3, 4, 8, 10, 11, 12, 13], "namespac": [0, 12], "necessari": [3, 5], "need": [3, 7, 10, 11], "nest": 5, "net": 11, "never": 0, "new": [0, 3], "node": 8, "node_nam": 8, "node_typ": 8, "none": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "note": [0, 3, 11, 12], "noth": [3, 6], "now": [1, 8], "num": 5, "num_process": 11, "num_total_fil": 11, "number": [3, 7, 8, 11, 12], "o": 0, "object": [1, 2, 3, 4, 5, 7, 8, 9, 10, 11, 13], "object_id": [1, 2, 9, 10], "object_list": 10, "object_typ": [2, 9, 10], "objectid": 10, "obtain": [0, 10], "occur": 10, "off": 5, "offset": [5, 7], "oidc": 0, "old": 3, "one": [3, 5, 10, 11], "onli": [3, 5, 7, 8, 10, 11], "open": [8, 10, 11], "open_project": [2, 8], "openid": 0, "opt": 0, "option": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11], "order": [0, 8], "ordered_node_list": 8, "org": 10, "otherwis": 10, "output": [4, 5, 11, 12], "output_dir": 10, "output_filenam": [11, 12], "overrid": [0, 11, 12], "overwrit": 5, "own": 0, "packag": 10, "page": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 13], "pagin": 3, "parallel": 11, "param": [3, 5, 8, 10], "paramet": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "pars": [10, 11, 12, 13], "parser": [11, 12], "particular": 0, "pass": [0, 7, 8, 10], "password": [11, 12], "path": [0, 1, 5, 10, 11, 13], "path_to_manifest": 11, "pattern": [3, 12], "pdcdatastor": 11, "pend": 10, "per": [11, 12], "peregrin": 8, "permiss": 10, "persist": 9, "phs0001": 11, "phs0002": 11, "pick": 1, "pla": 11, "place": 11, "planx": 11, "point": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "popul": [10, 12], "posit": [1, 7], "possibl": 10, "post": [0, 11], "pprint": [2, 9, 10], "prefix": 3, "presign": 1, "pretti": 10, "prev_guid": [2, 9, 11], "previou": [3, 11], "previous": 4, "print": [8, 10], "process": 11, "processed_fil": 11, "profil": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "program": [8, 11], "progress": [8, 10], "project": [8, 11], "project_id": [7, 8], "protocol": 1, "provid": [0, 1, 3, 5, 7, 8, 12], "public": [3, 5], "put": 0, "py": 11, "python": [2, 9, 11], "python3": 11, "python_subprocess_command": 11, "queri": [1, 2, 3, 5, 8, 11, 12], "query_str": 7, "query_txt": [7, 8], "query_url": [2, 3], "quickstart": 2, "rather": 0, "raw": [7, 11], "raw_data_download": [2, 7], "rbac": 3, "read": [3, 5, 11], "readm": 2, "reason": 10, "record": [1, 3, 5, 7, 8, 11, 12], "refresh": [0, 10], "refresh_access_token": [0, 2], "refresh_fil": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "refresh_token": 0, "regist": 8, "regular": 7, "relat": 9, "remov": [1, 6, 11, 13], "replac": 11, "replace_url": 11, "repo": 2, "repres": [3, 5, 10], "represent": [1, 3], "request": [0, 1, 3, 5, 8, 11, 12], "requir": 10, "resolv": 10, "resolve_object": [2, 9, 10], "respect": 7, "respons": [0, 1, 3, 4, 5], "result": [1, 8, 10, 11], "retri": 8, "retriev": [1, 8, 10, 12], "return": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11], "return_full_metadata": 5, "rev": 3, "revers": 8, "revis": 3, "right": 1, "rm": [2, 13], "rm_path": [2, 13], "root": [11, 12], "row": [7, 8, 11, 12], "row_offset": 8, "rtype": 3, "run": [8, 11], "s3": [1, 10, 11], "safe": 11, "same": [5, 11, 13], "sampl": [8, 10], "sandbox": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "save": 10, "save_directori": 10, "schema": 8, "scope": [0, 1], "screen": 8, "script": 2, "search": [0, 2, 3], "second": [1, 4], "secret": 0, "see": [7, 10, 11], "self": 10, "semaphon": 12, "semaphor": 12, "separ": [0, 11], "server": 10, "servic": [1, 3, 4, 5, 6, 8, 11, 12, 13], "service_loc": [3, 4, 5], "session": 11, "set": [0, 1, 5, 10], "setup": 2, "sheepdog": 8, "should": [0, 8, 11], "show": 10, "show_progress": 10, "shown": 11, "sign": 1, "signpost": 3, "similar": 10, "simpl": 3, "simpli": 11, "sinc": 3, "singl": [1, 5, 8], "size": [2, 3, 9, 10, 11], "skip": 8, "sleep": 4, "so": 11, "some": [0, 2], "someth": 11, "sort": 7, "sort_field": 7, "sort_object": 7, "sourc": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "space": [0, 11], "specif": [5, 8, 11, 12], "specifi": [0, 1, 3, 11, 13], "spreadsheet": 8, "src_path": 13, "src_urlstr": 13, "src_w": 13, "src_wskei": 13, "ssl": [3, 4, 5], "start": [3, 4, 7, 8, 10], "start_tim": [2, 9, 10], "static": 10, "statu": [2, 4, 9, 10], "storag": [1, 2, 6], "store": [1, 3, 10], "str": [0, 1, 3, 4, 5, 7, 8, 10, 11, 12], "string": [0, 3, 5, 11, 13], "strip": 11, "sub": 8, "subject": [7, 8], "submiss": 2, "submit": [8, 11], "submit_additional_metadata_column": 11, "submit_fil": [2, 8], "submit_record": [2, 8], "submitter_id": 7, "success": 10, "successfulli": 10, "suffici": 3, "suppli": 3, "support": [0, 1, 5, 8, 11], "sure": 1, "synchron": 11, "syntax": 7, "system": [6, 7, 8, 9], "t": [1, 5, 11], "tab": 11, "task": 9, "temporari": 11, "test": 11, "test1": 11, "test2": 11, "test3": 11, "test4": 11, "test5": 11, "text": [1, 7, 8], "than": [0, 5], "thei": [0, 10], "them": [10, 11], "thi": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "those": 11, "thread": 11, "thread_num": 11, "threadcontrol": [2, 9, 11], "through": [8, 11], "tier": 7, "time": [1, 3, 8, 10, 11], "timestamp": 10, "tmp_folder": [2, 9, 11], "token": [0, 10], "tool": 2, "total": 11, "treat": [1, 5], "tree": 10, "true": [3, 4, 5, 6, 7, 8, 10, 11, 12], "try": 0, "tsv": [8, 11, 12], "tupl": [0, 3, 11, 12], "type": [1, 3, 4, 5, 7, 8, 10, 11, 12], "typic": 10, "uc": 7, "unaccess": 7, "under": [0, 8, 13], "uniqu": [1, 5], "unknown": 10, "unpack": 10, "unpack_packag": 10, "until": [4, 10], "up": [5, 9], "updat": [2, 3, 5, 10, 11], "update_alias": [2, 5], "update_blank": [2, 3], "update_record": [2, 3], "updated_tim": [2, 9, 10], "upload": [1, 2, 3, 8, 13], "upload_fil": [1, 2], "upload_file_to_guid": [1, 2], "upload_url": [2, 13], "url": [1, 2, 3, 9, 10, 11, 12, 13], "urls_metadata": 3, "us": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "usag": 11, "use_agg_md": 5, "user": [0, 10, 12], "user_access": [2, 9, 10], "usual": 12, "utcnow": 1, "util": 9, "uuid": [1, 3, 8], "uuid1": 8, "uuid2": 8, "valid": [3, 7], "valu": [0, 1, 3, 5, 7, 10, 11], "value_from_indexd": 11, "value_from_manifest": 11, "variabl": [0, 7, 8], "variou": 2, "verbos": [7, 8], "verif": 11, "verifi": [2, 9], "verify_manifest": 11, "verify_object_manifest": 11, "version": [3, 4, 5], "vital_statu": 7, "w": 13, "wa": 0, "wai": 10, "wait": 4, "want": [0, 3, 8], "warn": 11, "we": [3, 11], "web": 0, "what": 5, "when": [0, 3, 7, 10, 12], "where": [0, 3, 5, 11, 12], "whether": [3, 4, 5, 8, 11, 12], "which": [8, 10], "while": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "whose": 5, "within": [0, 2, 9], "without": [3, 5], "won": 5, "work": [0, 10], "workaround": 11, "worksheet": 8, "workspac": [0, 2], "wrapper": 10, "write": 11, "ws_urlstr": 13, "wskei": 13, "wss": 13, "wt": [0, 10], "x": 11, "xlsx": 8, "you": [0, 3, 8, 11], "your": 0}, "titles": ["Gen3 Auth Helper", "Gen3 File Class", "Welcome to Gen3 SDK\u2019s documentation!", "Gen3 Index Class", "Gen3 Jobs Class", "Gen3 Metadata Class", "Gen3 Object Class", "Gen3 Query Class", "Gen3 Submission Class", "Gen3 Tools", "DRS Download Tools", "Indexing Tools", "Metadata Tools", "Gen3 Workspace Storage"], "titleterms": {"": 2, "auth": 0, "class": [1, 3, 4, 5, 6, 7, 8], "document": 2, "download": [10, 11], "dr": 10, "file": 1, "gen3": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 13], "helper": 0, "index": [3, 11], "indic": 2, "ingest": 12, "job": 4, "metadata": [5, 12], "object": 6, "queri": 7, "sdk": 2, "storag": 13, "submiss": 8, "tabl": 2, "tool": [9, 10, 11, 12], "verifi": 11, "welcom": 2, "workspac": 13}}) \ No newline at end of file +Search.setIndex({"alltitles": {"DRS Download Tools": [[10, "module-gen3.tools.download.drs_download"]], "Download": [[11, "module-gen3.tools.indexing.download_manifest"]], "Gen3 Auth Helper": [[0, "gen3-auth-helper"]], "Gen3 File Class": [[1, "gen3-file-class"]], "Gen3 Index Class": [[3, "gen3-index-class"]], "Gen3 Jobs Class": [[4, "gen3-jobs-class"]], "Gen3 Metadata Class": [[5, "gen3-metadata-class"]], "Gen3 Object Class": [[6, "gen3-object-class"]], "Gen3 Query Class": [[7, "gen3-query-class"]], "Gen3 Submission Class": [[8, "gen3-submission-class"]], "Gen3 Tools": [[9, "gen3-tools"]], "Gen3 Workspace Storage": [[13, "gen3-workspace-storage"]], "Index": [[11, "module-gen3.tools.indexing.index_manifest"]], "Indexing Tools": [[11, "indexing-tools"]], "Indices and tables": [[2, "indices-and-tables"]], "Ingest": [[12, "module-gen3.tools.metadata.ingest_manifest"]], "Metadata Tools": [[12, "metadata-tools"]], "Verify": [[11, "module-gen3.tools.indexing.verify_manifest"]], "Welcome to Gen3 SDK\u2019s documentation!": [[2, "welcome-to-gen3-sdk-s-documentation"]]}, "docnames": ["auth", "file", "index", "indexing", "jobs", "metadata", "object", "query", "submission", "tools", "tools/drs_pull", "tools/indexing", "tools/metadata", "wss"], "envversion": {"sphinx": 61, "sphinx.domains.c": 3, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 9, "sphinx.domains.index": 1, "sphinx.domains.javascript": 3, "sphinx.domains.math": 2, "sphinx.domains.python": 4, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx.ext.viewcode": 1}, "filenames": ["auth.rst", "file.rst", "index.rst", "indexing.rst", "jobs.rst", "metadata.rst", "object.rst", "query.rst", "submission.rst", "tools.rst", "tools/drs_pull.rst", "tools/indexing.rst", "tools/metadata.rst", "wss.rst"], "indexentries": {"_manager (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable._manager", false]], "access_methods (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.access_methods", false]], "acls (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.ACLS", false]], "async_create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_create", false]], "async_create_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_create_aliases", false]], "async_create_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_create_record", false]], "async_delete_alias() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_delete_alias", false]], "async_delete_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_delete_aliases", false]], "async_download_object_manifest() (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.async_download_object_manifest", false]], "async_get() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_get", false]], "async_get_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_get_aliases", false]], "async_get_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_record", false]], "async_get_records_from_checksum() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_records_from_checksum", false]], "async_get_records_on_page() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_records_on_page", false]], "async_get_with_params() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_with_params", false]], "async_ingest_metadata_manifest() (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.async_ingest_metadata_manifest", false]], "async_query_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_query_urls", false]], "async_query_urls_from_indexd() (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.async_query_urls_from_indexd", false]], "async_run_job_and_wait() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.async_run_job_and_wait", false]], "async_update() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_update", false]], "async_update_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_update_aliases", false]], "async_update_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_update_record", false]], "async_verify_object_manifest() (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.async_verify_object_manifest", false]], "auth_provider (gen3.metadata.gen3metadata attribute)": [[5, "gen3.metadata.Gen3Metadata.auth_provider", false]], "authz (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.AUTHZ", false]], "batch_create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.batch_create", false]], "cache_hosts_wts_tokens() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.cache_hosts_wts_tokens", false]], "children (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.children", false]], "column_to_use_as_guid (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.COLUMN_TO_USE_AS_GUID", false]], "commons_url (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.commons_url", false]], "copy() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.copy", false]], "create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create", false]], "create_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create_aliases", false]], "create_blank() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_blank", false]], "create_index_key_path() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create_index_key_path", false]], "create_job() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.create_job", false]], "create_new_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_new_version", false]], "create_object_list() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.create_object_list", false]], "create_program() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.create_program", false]], "create_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.create_project", false]], "create_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_record", false]], "created_time (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.created_time", false]], "curl() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.curl", false]], "current_dir (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.CURRENT_DIR", false]], "current_dir (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.CURRENT_DIR", false]], "current_dir (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.CURRENT_DIR", false]], "delete() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete", false]], "delete_alias() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_alias", false]], "delete_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_aliases", false]], "delete_all_guids() (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.delete_all_guids", false]], "delete_file() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.delete_file", false]], "delete_file_locations() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.delete_file_locations", false]], "delete_index_key_path() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_index_key_path", false]], "delete_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_node", false]], "delete_nodes() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_nodes", false]], "delete_object() (gen3.object.gen3object method)": [[6, "gen3.object.Gen3Object.delete_object", false]], "delete_program() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_program", false]], "delete_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_project", false]], "delete_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.delete_record", false]], "delete_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_record", false]], "delete_records() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_records", false]], "download() (gen3.tools.download.drs_download.downloadable method)": [[10, "gen3.tools.download.drs_download.Downloadable.download", false]], "download() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.download", false]], "download() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.download", false]], "download_files_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.download_files_in_drs_manifest", false]], "download_single() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.download_single", false]], "download_url() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.download_url", false]], "downloadable (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.Downloadable", false]], "downloadmanager (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.DownloadManager", false]], "downloadstatus (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.DownloadStatus", false]], "end_time (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.end_time", false]], "endpoint (gen3.metadata.gen3metadata attribute)": [[5, "gen3.metadata.Gen3Metadata.endpoint", false]], "export_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.export_node", false]], "export_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.export_record", false]], "file_name (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.file_name", false]], "file_name (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.file_name", false]], "file_size (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.file_size", false]], "file_size (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.file_size", false]], "gen3.tools": [[9, "module-gen3.tools", false]], "gen3.tools.download.drs_download": [[10, "module-gen3.tools.download.drs_download", false]], "gen3.tools.indexing.download_manifest": [[11, "module-gen3.tools.indexing.download_manifest", false]], "gen3.tools.indexing.index_manifest": [[11, "module-gen3.tools.indexing.index_manifest", false]], "gen3.tools.indexing.verify_manifest": [[11, "module-gen3.tools.indexing.verify_manifest", false]], "gen3.tools.metadata.ingest_manifest": [[12, "module-gen3.tools.metadata.ingest_manifest", false]], "gen3auth (class in gen3.auth)": [[0, "gen3.auth.Gen3Auth", false]], "gen3file (class in gen3.file)": [[1, "gen3.file.Gen3File", false]], "gen3index (class in gen3.index)": [[3, "gen3.index.Gen3Index", false]], "gen3jobs (class in gen3.jobs)": [[4, "gen3.jobs.Gen3Jobs", false]], "gen3metadata (class in gen3.metadata)": [[5, "gen3.metadata.Gen3Metadata", false]], "gen3object (class in gen3.object)": [[6, "gen3.object.Gen3Object", false]], "gen3query (class in gen3.query)": [[7, "gen3.query.Gen3Query", false]], "gen3submission (class in gen3.submission)": [[8, "gen3.submission.Gen3Submission", false]], "gen3wsstorage (class in gen3.wss)": [[13, "gen3.wss.Gen3WsStorage", false]], "get() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get", false]], "get() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get", false]], "get_access_token() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.get_access_token", false]], "get_access_token_from_wts() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.get_access_token_from_wts", false]], "get_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_aliases", false]], "get_all_records() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_all_records", false]], "get_dictionary_all() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_dictionary_all", false]], "get_dictionary_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_dictionary_node", false]], "get_fresh_token() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.get_fresh_token", false]], "get_graphql_schema() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_graphql_schema", false]], "get_guids_prefix() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_guids_prefix", false]], "get_index_key_paths() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_index_key_paths", false]], "get_latest_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_latest_version", false]], "get_output() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_output", false]], "get_presigned_url() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.get_presigned_url", false]], "get_programs() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_programs", false]], "get_project_dictionary() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_project_dictionary", false]], "get_project_manifest() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_project_manifest", false]], "get_projects() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_projects", false]], "get_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_record", false]], "get_record_doc() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_record_doc", false]], "get_records() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_records", false]], "get_records_on_page() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_records_on_page", false]], "get_stats() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_stats", false]], "get_status() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_status", false]], "get_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_urls", false]], "get_valid_guids() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_valid_guids", false]], "get_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_version", false]], "get_version() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_version", false]], "get_version() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_version", false]], "get_versions() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_versions", false]], "get_with_params() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_with_params", false]], "graphql_query() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.graphql_query", false]], "guid (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.GUID", false]], "guid_type_for_indexed_file_object (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.GUID_TYPE_FOR_INDEXED_FILE_OBJECT", false]], "guid_type_for_non_indexed_file_object (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.GUID_TYPE_FOR_NON_INDEXED_FILE_OBJECT", false]], "hostname (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.hostname", false]], "index_object_manifest() (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.index_object_manifest", false]], "indexd_record_page_size (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.INDEXD_RECORD_PAGE_SIZE", false]], "is_healthy() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.is_healthy", false]], "is_healthy() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.is_healthy", false]], "is_healthy() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.is_healthy", false]], "list_access_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_access_in_drs_manifest", false]], "list_drs_object() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_drs_object", false]], "list_files_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_files_in_drs_manifest", false]], "list_jobs() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.list_jobs", false]], "load() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.load", false]], "load_manifest() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.load_manifest", false]], "ls() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.ls", false]], "ls_path() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.ls_path", false]], "manifest (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.Manifest", false]], "max_concurrent_requests (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.MAX_CONCURRENT_REQUESTS", false]], "max_concurrent_requests (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.MAX_CONCURRENT_REQUESTS", false]], "max_concurrent_requests (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.MAX_CONCURRENT_REQUESTS", false]], "md5 (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.MD5", false]], "md5sum (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.md5sum", false]], "module": [[9, "module-gen3.tools", false], [10, "module-gen3.tools.download.drs_download", false], [11, "module-gen3.tools.indexing.download_manifest", false], [11, "module-gen3.tools.indexing.index_manifest", false], [11, "module-gen3.tools.indexing.verify_manifest", false], [12, "module-gen3.tools.metadata.ingest_manifest", false]], "object_id (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.object_id", false]], "object_id (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.object_id", false]], "object_type (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.object_type", false]], "open_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.open_project", false]], "pprint() (gen3.tools.download.drs_download.downloadable method)": [[10, "gen3.tools.download.drs_download.Downloadable.pprint", false]], "prev_guid (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.PREV_GUID", false]], "query() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.query", false]], "query() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.query", false]], "query() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.query", false]], "query_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.query_urls", false]], "raw_data_download() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.raw_data_download", false]], "refresh_access_token() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.refresh_access_token", false]], "resolve_objects() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.resolve_objects", false]], "rm() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.rm", false]], "rm_path() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.rm_path", false]], "size (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.SIZE", false]], "start_time (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.start_time", false]], "status (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.status", false]], "submit_file() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.submit_file", false]], "submit_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.submit_record", false]], "threadcontrol (class in gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.ThreadControl", false]], "tmp_folder (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.TMP_FOLDER", false]], "update() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.update", false]], "update_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.update_aliases", false]], "update_blank() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.update_blank", false]], "update_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.update_record", false]], "updated_time (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.updated_time", false]], "upload() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.upload", false]], "upload_file() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.upload_file", false]], "upload_file_to_guid() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.upload_file_to_guid", false]], "upload_url() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.upload_url", false]], "urls (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.URLS", false]], "user_access() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.user_access", false]]}, "objects": {"gen3": [[9, 3, 0, "-", "tools"]], "gen3.auth": [[0, 0, 1, "", "Gen3Auth"]], "gen3.auth.Gen3Auth": [[0, 1, 1, "", "curl"], [0, 1, 1, "", "get_access_token"], [0, 1, 1, "", "get_access_token_from_wts"], [0, 1, 1, "", "refresh_access_token"]], "gen3.file": [[1, 0, 1, "", "Gen3File"]], "gen3.file.Gen3File": [[1, 1, 1, "", "delete_file"], [1, 1, 1, "", "delete_file_locations"], [1, 1, 1, "", "download_single"], [1, 1, 1, "", "get_presigned_url"], [1, 1, 1, "", "upload_file"], [1, 1, 1, "", "upload_file_to_guid"]], "gen3.index": [[3, 0, 1, "", "Gen3Index"]], "gen3.index.Gen3Index": [[3, 1, 1, "", "async_create_record"], [3, 1, 1, "", "async_get_record"], [3, 1, 1, "", "async_get_records_from_checksum"], [3, 1, 1, "", "async_get_records_on_page"], [3, 1, 1, "", "async_get_with_params"], [3, 1, 1, "", "async_query_urls"], [3, 1, 1, "", "async_update_record"], [3, 1, 1, "", "create_blank"], [3, 1, 1, "", "create_new_version"], [3, 1, 1, "", "create_record"], [3, 1, 1, "", "delete_record"], [3, 1, 1, "", "get"], [3, 1, 1, "", "get_all_records"], [3, 1, 1, "", "get_guids_prefix"], [3, 1, 1, "", "get_latest_version"], [3, 1, 1, "", "get_record"], [3, 1, 1, "", "get_record_doc"], [3, 1, 1, "", "get_records"], [3, 1, 1, "", "get_records_on_page"], [3, 1, 1, "", "get_stats"], [3, 1, 1, "", "get_urls"], [3, 1, 1, "", "get_valid_guids"], [3, 1, 1, "", "get_version"], [3, 1, 1, "", "get_versions"], [3, 1, 1, "", "get_with_params"], [3, 1, 1, "", "is_healthy"], [3, 1, 1, "", "query_urls"], [3, 1, 1, "", "update_blank"], [3, 1, 1, "", "update_record"]], "gen3.jobs": [[4, 0, 1, "", "Gen3Jobs"]], "gen3.jobs.Gen3Jobs": [[4, 1, 1, "", "async_run_job_and_wait"], [4, 1, 1, "", "create_job"], [4, 1, 1, "", "get_output"], [4, 1, 1, "", "get_status"], [4, 1, 1, "", "get_version"], [4, 1, 1, "", "is_healthy"], [4, 1, 1, "", "list_jobs"]], "gen3.metadata": [[5, 0, 1, "", "Gen3Metadata"]], "gen3.metadata.Gen3Metadata": [[5, 1, 1, "", "async_create"], [5, 1, 1, "", "async_create_aliases"], [5, 1, 1, "", "async_delete_alias"], [5, 1, 1, "", "async_delete_aliases"], [5, 1, 1, "", "async_get"], [5, 1, 1, "", "async_get_aliases"], [5, 1, 1, "", "async_update"], [5, 1, 1, "", "async_update_aliases"], [5, 2, 1, "", "auth_provider"], [5, 1, 1, "", "batch_create"], [5, 1, 1, "", "create"], [5, 1, 1, "", "create_aliases"], [5, 1, 1, "", "create_index_key_path"], [5, 1, 1, "", "delete"], [5, 1, 1, "", "delete_alias"], [5, 1, 1, "", "delete_aliases"], [5, 1, 1, "", "delete_index_key_path"], [5, 2, 1, "", "endpoint"], [5, 1, 1, "", "get"], [5, 1, 1, "", "get_aliases"], [5, 1, 1, "", "get_index_key_paths"], [5, 1, 1, "", "get_version"], [5, 1, 1, "", "is_healthy"], [5, 1, 1, "", "query"], [5, 1, 1, "", "update"], [5, 1, 1, "", "update_aliases"]], "gen3.object": [[6, 0, 1, "", "Gen3Object"]], "gen3.object.Gen3Object": [[6, 1, 1, "", "delete_object"]], "gen3.query": [[7, 0, 1, "", "Gen3Query"]], "gen3.query.Gen3Query": [[7, 1, 1, "", "graphql_query"], [7, 1, 1, "", "query"], [7, 1, 1, "", "raw_data_download"]], "gen3.submission": [[8, 0, 1, "", "Gen3Submission"]], "gen3.submission.Gen3Submission": [[8, 1, 1, "", "create_program"], [8, 1, 1, "", "create_project"], [8, 1, 1, "", "delete_node"], [8, 1, 1, "", "delete_nodes"], [8, 1, 1, "", "delete_program"], [8, 1, 1, "", "delete_project"], [8, 1, 1, "", "delete_record"], [8, 1, 1, "", "delete_records"], [8, 1, 1, "", "export_node"], [8, 1, 1, "", "export_record"], [8, 1, 1, "", "get_dictionary_all"], [8, 1, 1, "", "get_dictionary_node"], [8, 1, 1, "", "get_graphql_schema"], [8, 1, 1, "", "get_programs"], [8, 1, 1, "", "get_project_dictionary"], [8, 1, 1, "", "get_project_manifest"], [8, 1, 1, "", "get_projects"], [8, 1, 1, "", "open_project"], [8, 1, 1, "", "query"], [8, 1, 1, "", "submit_file"], [8, 1, 1, "", "submit_record"]], "gen3.tools.download": [[10, 3, 0, "-", "drs_download"]], "gen3.tools.download.drs_download": [[10, 0, 1, "", "DownloadManager"], [10, 0, 1, "", "DownloadStatus"], [10, 0, 1, "", "Downloadable"], [10, 0, 1, "", "Manifest"], [10, 4, 1, "", "download_files_in_drs_manifest"], [10, 4, 1, "", "list_access_in_drs_manifest"], [10, 4, 1, "", "list_drs_object"], [10, 4, 1, "", "list_files_in_drs_manifest"]], "gen3.tools.download.drs_download.DownloadManager": [[10, 1, 1, "", "cache_hosts_wts_tokens"], [10, 1, 1, "", "download"], [10, 1, 1, "", "get_fresh_token"], [10, 1, 1, "", "resolve_objects"], [10, 1, 1, "", "user_access"]], "gen3.tools.download.drs_download.DownloadStatus": [[10, 2, 1, "", "end_time"], [10, 2, 1, "", "start_time"], [10, 2, 1, "", "status"]], "gen3.tools.download.drs_download.Downloadable": [[10, 2, 1, "", "_manager"], [10, 2, 1, "", "access_methods"], [10, 2, 1, "", "children"], [10, 2, 1, "", "created_time"], [10, 1, 1, "", "download"], [10, 2, 1, "", "file_name"], [10, 2, 1, "", "file_size"], [10, 2, 1, "", "hostname"], [10, 2, 1, "", "object_id"], [10, 2, 1, "", "object_type"], [10, 1, 1, "", "pprint"], [10, 2, 1, "", "updated_time"]], "gen3.tools.download.drs_download.Manifest": [[10, 2, 1, "", "commons_url"], [10, 1, 1, "", "create_object_list"], [10, 2, 1, "", "file_name"], [10, 2, 1, "", "file_size"], [10, 1, 1, "", "load"], [10, 1, 1, "", "load_manifest"], [10, 2, 1, "", "md5sum"], [10, 2, 1, "", "object_id"]], "gen3.tools.indexing": [[11, 3, 0, "-", "download_manifest"], [11, 3, 0, "-", "index_manifest"], [11, 3, 0, "-", "verify_manifest"]], "gen3.tools.indexing.download_manifest": [[11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "INDEXD_RECORD_PAGE_SIZE"], [11, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [11, 2, 1, "", "TMP_FOLDER"], [11, 4, 1, "", "async_download_object_manifest"]], "gen3.tools.indexing.index_manifest": [[11, 2, 1, "", "ACLS"], [11, 2, 1, "", "AUTHZ"], [11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "GUID"], [11, 2, 1, "", "MD5"], [11, 2, 1, "", "PREV_GUID"], [11, 2, 1, "", "SIZE"], [11, 0, 1, "", "ThreadControl"], [11, 2, 1, "", "URLS"], [11, 4, 1, "", "delete_all_guids"], [11, 4, 1, "", "index_object_manifest"]], "gen3.tools.indexing.verify_manifest": [[11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [11, 4, 1, "", "async_verify_object_manifest"]], "gen3.tools.metadata": [[12, 3, 0, "-", "ingest_manifest"]], "gen3.tools.metadata.ingest_manifest": [[12, 2, 1, "", "COLUMN_TO_USE_AS_GUID"], [12, 2, 1, "", "GUID_TYPE_FOR_INDEXED_FILE_OBJECT"], [12, 2, 1, "", "GUID_TYPE_FOR_NON_INDEXED_FILE_OBJECT"], [12, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [12, 4, 1, "", "async_ingest_metadata_manifest"], [12, 4, 1, "", "async_query_urls_from_indexd"]], "gen3.wss": [[13, 0, 1, "", "Gen3WsStorage"]], "gen3.wss.Gen3WsStorage": [[13, 1, 1, "", "copy"], [13, 1, 1, "", "download"], [13, 1, 1, "", "download_url"], [13, 1, 1, "", "ls"], [13, 1, 1, "", "ls_path"], [13, 1, 1, "", "rm"], [13, 1, 1, "", "rm_path"], [13, 1, 1, "", "upload"], [13, 1, 1, "", "upload_url"]]}, "objnames": {"0": ["py", "class", "Python class"], "1": ["py", "method", "Python method"], "2": ["py", "attribute", "Python attribute"], "3": ["py", "module", "Python module"], "4": ["py", "function", "Python function"]}, "objtypes": {"0": "py:class", "1": "py:method", "2": "py:attribute", "3": "py:module", "4": "py:function"}, "terms": {"": [1, 4, 8, 10, 11], "0": [5, 7, 8, 11], "0046513": [], "064572": 11, "0a80fada010c": 11, "0a80fada096c": 11, "0a80fada097c": 11, "0a80fada098c": 11, "0a80fada099c": 11, "1": [4, 5, 8, 10, 11], "10": [5, 7, 11], "100": [8, 11], "11e9": 11, "1713542306": [], "1713542765": [], "1713543033": [], "1713543225": [], "1713543506": [11, 12], "2": [5, 11], "24": [11, 12], "255e396f": 11, "2877355": [], "2995": [], "3": [5, 11], "30": 8, "33": 5, "333": 5, "343434344": 11, "363455714": 11, "4": [5, 11], "4017086": 12, "450c": 11, "4649727": [], "4714": 8, "473d83400bc1bc9dc635e334fadd433c": 11, "473d83400bc1bc9dc635e334faddd33c": 11, "473d83400bc1bc9dc635e334fadde33c": 11, "473d83400bc1bc9dc635e334faddf33c": 11, "5": [0, 5], "50": 7, "543434443": 11, "5899982": [], "6692646": [], "6f90": 8, "760149": [], "7d3d8d2083b4": 11, "8420": 8, "8882551": [], "93d9af72": 11, "9a07": 11, "A": [1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "AND": 5, "Be": 1, "But": 5, "By": 11, "For": [1, 5, 6, 7, 8, 9, 11], "IF": 11, "If": [0, 1, 7, 11, 12], "In": 10, "It": 10, "NOT": 12, "OR": 5, "One": 7, "Such": 9, "THE": 11, "That": 3, "The": [0, 1, 2, 3, 5, 8, 10, 11], "There": 11, "These": 9, "To": 11, "Will": [4, 7, 10], "_get_acl_from_row": 11, "_get_authz_from_row": 11, "_get_file_name_from_row": 11, "_get_file_size_from_row": 11, "_get_guid_for_row": 12, "_get_guid_from_row": 11, "_get_md5_from_row": 11, "_get_urls_from_row": 11, "_guid_typ": 12, "_manag": [2, 9, 10], "_query_for_associated_indexd_record_guid": 12, "_ssl": [3, 4, 5], "a5c6": 11, "ab167e49d25b488939b1ede42752458b": 3, "about": [2, 3], "abov": 11, "access": [0, 1, 3, 7, 10], "access_method": [2, 9, 10], "access_token": 0, "accesstoken": 0, "acl": [2, 3, 9, 11], "across": 11, "act": 0, "action": [9, 11], "actual": 11, "ad": 3, "add": [3, 5], "addit": [3, 5, 10, 11], "admin": [5, 11], "admin_endpoint_suffix": 5, "after": 10, "against": [3, 7, 8, 11, 12], "algorithm": 3, "alia": [3, 5], "alias": 5, "aliv": 7, "all": [1, 3, 4, 5, 6, 7, 8, 10, 11, 12], "allow": [0, 6, 8, 10, 11, 12], "allowed_data_upload_bucket": 1, "along": 2, "alreadi": 9, "also": 1, "altern": [5, 11], "alwai": 5, "ammount": 12, "amount": [1, 9], "an": [0, 3, 6, 8, 10, 11], "ani": [0, 5, 10, 11], "anoth": 5, "api": [0, 5, 8, 11], "api_kei": 11, "appli": 7, "appropri": 13, "ar": [5, 7, 8, 9, 10, 11], "arbitrari": 0, "argument": [0, 13], "arrai": 8, "asc": 7, "assign": 9, "assist": 10, "associ": [3, 5], "assum": 11, "async": [3, 4, 5, 9, 11, 12], "async_cr": [2, 5], "async_create_alias": [2, 5], "async_create_record": [2, 3], "async_delete_alia": [2, 5], "async_delete_alias": [2, 5], "async_download_object_manifest": [2, 9, 11], "async_get": [2, 5], "async_get_alias": [2, 5], "async_get_record": [2, 3], "async_get_records_from_checksum": [2, 3], "async_get_records_on_pag": [2, 3], "async_get_with_param": [2, 3], "async_ingest_metadata_manifest": [2, 9, 12], "async_query_url": [2, 3], "async_query_urls_from_indexd": [2, 9, 12], "async_run_job_and_wait": [2, 4], "async_upd": [2, 5], "async_update_alias": [2, 5], "async_update_record": [2, 3], "async_verify_object_manifest": [2, 9, 11], "asynchron": [3, 4, 5], "asyncio": [11, 12], "asyncron": 5, "attach": [3, 5], "attempt": 11, "attribut": [10, 11], "auth": [1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "auth_provid": [1, 2, 3, 4, 5, 6, 7, 8, 13], "authbas": 0, "authent": 0, "author": 1, "authz": [0, 1, 2, 3, 9, 10, 11], "auto": [0, 2], "automat": 0, "avail": [1, 2, 10, 11], "az": 1, "b": [5, 11], "b0f1": 11, "bar": 10, "base": [0, 1, 3, 4, 5, 6, 7, 8, 9, 11, 13], "baseid": 3, "basic": [3, 11, 12], "batch_creat": [2, 5], "batch_siz": 8, "behalf": 0, "behavior": 11, "being": 3, "belong": 8, "below": 11, "blank": 3, "blob": [5, 7], "bodi": 3, "bool": [4, 5, 8, 10, 11, 12], "boolean": 3, "bownload": 10, "broad": 9, "broken": 9, "bucket": [1, 6], "bundl": 10, "byte": 10, "c": [5, 11], "cach": 10, "cache_hosts_wts_token": [2, 9, 10], "call": [10, 13], "can": [0, 3, 4, 8, 11, 12], "capabl": 9, "case": [0, 10], "categori": 9, "ccle": 8, "ccle_one_record": 8, "ccle_sample_nod": 8, "cdi": 7, "chang": [3, 11], "checksum": [3, 10], "checksum_typ": 3, "child": 10, "children": [2, 9, 10], "chunk_siz": 8, "class": [0, 2, 10, 11, 13], "cli": 10, "client": [0, 3], "client_credenti": 0, "client_id": 0, "client_scop": 0, "client_secret": 0, "code": [2, 8], "column": [11, 12], "column_to_use_as_guid": [2, 9, 12], "columna": 11, "columnb": 11, "columnc": 11, "com": 7, "comma": 11, "command": [10, 11], "common": [0, 1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13], "commons_url": [2, 9, 10, 11, 12], "complet": [4, 11], "complex": 7, "concat": 11, "concurr": [11, 12], "configur": 1, "connect": 12, "consist": 3, "constructor": 0, "contain": [0, 2, 5, 8, 9, 10, 11, 12], "content": [3, 13], "content_created_d": 3, "content_updated_d": 3, "continu": 10, "control": 3, "conveni": 10, "copi": [2, 13], "coroutin": 11, "correspond": 3, "count": 3, "crdc": 0, "creat": [2, 3, 4, 5, 6, 8, 10, 11], "create_alias": [2, 5], "create_blank": [2, 3], "create_index_key_path": [2, 5], "create_job": [2, 4], "create_new_vers": [2, 3], "create_object_list": [2, 9, 10], "create_program": [2, 8], "create_project": [2, 8], "create_record": [2, 3], "created_tim": [2, 9, 10], "creation": [3, 11], "cred": 3, "credenti": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "csv": [8, 11, 12], "curl": [0, 2], "current": [6, 8, 10], "current_dir": [2, 9, 11], "custom": 11, "d": 5, "d70b41b9": 8, "data": [0, 1, 3, 5, 7, 8, 10, 11], "data_spreadsheet": 8, "data_typ": 7, "data_upload_bucket": 1, "dataa": 11, "datab": 11, "databas": 5, "datacommon": 0, "datafil": 10, "datamanag": 10, "date": 3, "datetim": [1, 3, 10], "dbgap": 12, "dcf": 8, "def": 11, "default": [0, 1, 3, 7, 8, 11, 12], "defin": [5, 8, 10], "delai": 4, "delet": [0, 1, 2, 3, 5, 6, 8, 10, 11], "delete_alia": [2, 5], "delete_alias": [2, 5], "delete_all_guid": [2, 9, 11], "delete_fil": [1, 2], "delete_file_loc": [1, 2, 6], "delete_index_key_path": [2, 5], "delete_nod": [2, 8], "delete_object": [2, 6], "delete_program": [2, 8], "delete_project": [2, 8], "delete_record": [2, 3, 8], "delete_unpacked_packag": 10, "delimet": [11, 12], "delimit": 11, "demograph": 8, "deprec": 1, "descript": [3, 5], "desir": 11, "dest_path": 13, "dest_urlstr": 13, "dest_w": 13, "dest_wskei": 13, "detail": [2, 7, 10], "determin": [10, 11, 12], "dev": 11, "dict": [3, 4, 5, 10, 11, 12], "dictionari": [3, 4, 5, 7, 8], "did": 3, "differ": 5, "direct": 0, "directori": [10, 11], "disabl": 10, "discoveri": 10, "disk": 13, "dispatch": 4, "dist_resolut": 3, "distribut": 3, "doc": [7, 10], "docstr": 2, "document": [1, 3], "doe": [0, 12], "domain": [11, 12], "done": 4, "download": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 13], "download_files_in_drs_manifest": [2, 9, 10], "download_list": 10, "download_manifest": 11, "download_singl": [1, 2], "download_url": [2, 13], "downloadmanag": [2, 9, 10], "downloadstatu": [2, 9, 10], "dr": [2, 9], "drs_download": 10, "drs_hostnam": 10, "drsdownload": 10, "drsobjecttyp": 10, "e": [5, 10], "e043ab8b77b9": 8, "each": [3, 8, 10, 11], "effici": 9, "eg": 3, "either": 8, "elasticsearch": 7, "els": [0, 12], "elsewher": 12, "empti": [8, 11], "enabl": 11, "end": [5, 10], "end_tim": [2, 9, 10], "endpoint": [0, 1, 2, 3, 4, 5, 7, 8, 13], "entir": 8, "entri": [3, 11], "env": 0, "environ": 0, "equal": 7, "error": [10, 11, 12], "error_nam": 11, "etc": 8, "even": 11, "everi": [9, 11], "everyth": 11, "ex": [0, 11, 12], "exampl": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "exclud": 3, "execut": [7, 8, 11], "exist": [1, 3, 5, 6, 9, 12], "expect": [5, 9, 11], "experi": 8, "expir": [0, 1], "expires_in": 1, "export": [8, 10], "export_nod": [2, 8], "export_record": [2, 8], "f1f8": 11, "factori": 10, "fail": [8, 10], "fals": [3, 5, 6, 10, 11], "featur": [1, 6], "fenc": [0, 1], "fetch": 0, "field": [3, 5, 7, 11, 12], "fieldnam": 11, "file": [0, 2, 3, 4, 8, 9, 10, 11, 12, 13], "file_nam": [1, 2, 3, 9, 10, 11], "file_s": [2, 9, 10, 11], "file_st": 3, "fileformat": 8, "filenam": [0, 8, 10, 11, 12], "files": 10, "fill": 12, "filter": [5, 7], "filter_object": 7, "first": [7, 8], "flag": 11, "folder": 11, "follow": [0, 11], "forc": 11, "force_metadata_columns_even_if_empti": 11, "form": 13, "format": [3, 5, 8, 11], "from": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13], "func_to_parse_row": [11, 12], "function": [2, 3, 4, 5, 9, 10, 11, 12], "g": 10, "gen3": [10, 11, 12], "gen3_api_kei": 0, "gen3_oidc_client_creds_secret": 0, "gen3auth": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "gen3fil": [1, 2], "gen3index": [2, 3], "gen3job": [2, 4, 10], "gen3metadata": [2, 5], "gen3object": [2, 6], "gen3queri": [2, 7], "gen3submiss": [2, 8], "gen3wsstorag": [2, 13], "gener": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 13], "get": [0, 1, 2, 3, 4, 5, 8, 10, 11, 12, 13], "get_access_token": [0, 2], "get_access_token_from_wt": [0, 2], "get_alias": [2, 5], "get_all_record": [2, 3], "get_dictionary_al": [2, 8], "get_dictionary_nod": [2, 8], "get_fresh_token": [2, 9, 10], "get_graphql_schema": [2, 8], "get_guid_from_fil": 12, "get_guids_prefix": [2, 3], "get_index_key_path": [2, 5], "get_latest_vers": [2, 3], "get_output": [2, 4], "get_presigned_url": [1, 2], "get_program": [2, 8], "get_project": [2, 8], "get_project_dictionari": [2, 8], "get_project_manifest": [2, 8], "get_record": [2, 3], "get_record_doc": [2, 3], "get_records_on_pag": [2, 3], "get_stat": [2, 3], "get_statu": [2, 4], "get_url": [2, 3], "get_valid_guid": [2, 3], "get_vers": [2, 3, 4, 5], "get_with_param": [2, 3], "giangb": 11, "github": [2, 7], "give": 1, "given": [0, 3, 4, 5, 8, 10, 12, 13], "global": [4, 5], "good": 3, "grant": 0, "graph": 8, "graphql": [7, 8], "graphql_queri": [2, 7], "group": 3, "guid": [1, 2, 3, 5, 6, 9, 11, 12], "guid_exampl": 11, "guid_for_row": 12, "guid_from_fil": 12, "guid_type_for_indexed_file_object": [2, 9, 12], "guid_type_for_non_indexed_file_object": [2, 9, 12], "guppi": 7, "ha": [0, 11], "handl": [3, 10], "hardcod": 0, "has_vers": 3, "hash": [3, 11], "hash_typ": 3, "have": [5, 11], "header": 11, "healthi": [3, 4, 5], "help": 11, "helper": 2, "hit": 11, "host": 10, "hostnam": [2, 9, 10], "how": [8, 11], "howto": 10, "http": [0, 7, 11, 12], "i": [0, 1, 2, 3, 4, 5, 8, 10, 11, 12], "id": [0, 1, 3, 5, 10, 11], "idea": 3, "identifi": [3, 5, 9, 11], "idp": 0, "illustr": 11, "immut": 3, "implement": 0, "implic": 11, "import": 11, "includ": [0, 3], "indent": 10, "index": [0, 2, 5, 9], "index_manifest": 11, "index_object_manifest": [2, 9, 11], "indexd": [1, 3, 6, 10, 11, 12], "indexd_field": [11, 12], "indexd_record_page_s": [2, 9, 11], "indexed_file_object_guid": 12, "indic": [0, 11], "infil": 10, "info": [3, 11], "inform": [2, 3, 10], "ingest": [2, 9], "ingest_manifest": 12, "initi": [0, 10], "input": [4, 10, 11], "input_manifest": 11, "instal": [0, 2, 11], "instanc": [1, 3, 6, 7, 8, 9, 10], "instead": [1, 7, 11], "int": [1, 3, 5, 7, 8, 10, 11, 12], "integ": [1, 3, 8], "intend": 0, "interact": [1, 3, 4, 5, 6, 8, 13], "interest": 10, "interpret": 0, "introspect": 8, "involv": 9, "is_healthi": [2, 3, 4, 5], "is_indexed_file_object": 12, "isn": 1, "issu": 0, "its": [1, 3], "job": 2, "job_id": 4, "job_input": 4, "job_nam": 4, "json": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "just": [5, 11, 12], "jwt": 0, "kei": [0, 3, 5, 13], "know": 11, "known": 10, "kwarg": [3, 4, 5], "l": [2, 13], "larg": 9, "last": 10, "latest": 3, "least": 3, "level": 6, "librari": 11, "like": [3, 5, 9, 11, 12], "limit": [1, 3, 5, 12], "linear": 4, "linux": 10, "list": [0, 1, 3, 4, 5, 7, 8, 10, 11, 13], "list_access_in_drs_manifest": [2, 9, 10], "list_drs_object": [2, 9, 10], "list_files_in_drs_manifest": [2, 9, 10], "list_job": [2, 4], "live": [11, 12], "load": [2, 9, 10], "load_manifest": [2, 9, 10], "local": [0, 13], "locat": [1, 6], "lock": 12, "log": [8, 10, 11, 12], "logic": [5, 12], "loop": 11, "ls_path": [2, 13], "maco": 11, "made": 3, "mai": [0, 9, 11], "main": 10, "make": [9, 11], "manag": [1, 5, 10], "mani": [8, 11], "manifest": [2, 8, 9, 10, 11, 12], "manifest_1": 10, "manifest_fil": [11, 12], "manifest_file_delimit": [11, 12], "manifest_row_pars": [11, 12], "map": [0, 11], "mark": 8, "master": 7, "match": [3, 5, 12], "max": 5, "max_concurrent_request": [2, 9, 11, 12], "max_presigned_url_ttl": 1, "max_tri": 8, "maximum": [11, 12], "md": [5, 7, 10, 12], "md5": [2, 3, 9, 11], "md5_hash": 11, "md5sum": [2, 9, 10], "mean": 8, "mechan": 3, "merg": 5, "metadata": [2, 3, 6, 9, 11], "metadata_list": 5, "metadata_sourc": 12, "metadata_typ": 12, "metdata": 12, "method": [1, 7, 10], "minimum": 10, "minut": 0, "mode": 7, "modul": [2, 10, 11], "more": [2, 5, 7, 9, 10], "most": 9, "mostli": 2, "multipl": [8, 11], "must": [1, 5], "my_common": 10, "my_credenti": 10, "my_field": 7, "my_index": 7, "my_program": 7, "my_project": 7, "name": [3, 4, 8, 10, 11, 12, 13], "namespac": [0, 12], "necessari": [3, 5], "need": [3, 7, 10, 11], "nest": 5, "net": 11, "never": 0, "new": [0, 3], "node": 8, "node_nam": 8, "node_typ": 8, "none": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "note": [0, 3, 11, 12], "noth": [3, 6], "now": [1, 8], "num": 5, "num_process": 11, "num_total_fil": 11, "number": [3, 7, 8, 11, 12], "o": 0, "object": [1, 2, 3, 4, 5, 7, 8, 9, 10, 11, 13], "object_id": [1, 2, 9, 10], "object_list": 10, "object_typ": [2, 9, 10], "objectid": 10, "obtain": [0, 10], "occur": 10, "off": 5, "offset": [5, 7], "oidc": 0, "old": 3, "one": [3, 5, 10, 11], "onli": [3, 5, 7, 8, 10, 11], "open": [8, 10, 11], "open_project": [2, 8], "openid": 0, "opt": 0, "option": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11], "order": [0, 8], "ordered_node_list": 8, "org": 10, "otherwis": 10, "output": [4, 5, 11, 12], "output_dir": 10, "output_filenam": [11, 12], "overrid": [0, 11, 12], "overwrit": 5, "own": 0, "packag": 10, "page": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 13], "pagin": 3, "parallel": 11, "param": [3, 5, 8, 10], "paramet": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "pars": [10, 11, 12, 13], "parser": [11, 12], "particular": 0, "pass": [0, 7, 8, 10], "password": [11, 12], "path": [0, 1, 5, 10, 11, 13], "path_to_manifest": 11, "pattern": [3, 12], "pdcdatastor": 11, "pend": 10, "per": [11, 12], "peregrin": 8, "permiss": 10, "persist": 9, "phs0001": 11, "phs0002": 11, "pick": 1, "pla": 11, "place": 11, "planx": 11, "point": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "popul": [10, 12], "posit": [1, 7], "possibl": 10, "post": [0, 11], "pprint": [2, 9, 10], "prefix": 3, "presign": 1, "pretti": 10, "prev_guid": [2, 9, 11], "previou": [3, 11], "previous": 4, "print": [8, 10], "process": 11, "processed_fil": 11, "profil": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "program": [8, 11], "progress": [8, 10], "project": [8, 11], "project_id": [7, 8], "protocol": 1, "provid": [0, 1, 3, 5, 7, 8, 12], "public": [3, 5], "put": 0, "py": 11, "python": [2, 9, 11], "python3": 11, "python_subprocess_command": 11, "queri": [1, 2, 3, 5, 8, 11, 12], "query_str": 7, "query_txt": [7, 8], "query_url": [2, 3], "quickstart": 2, "rather": 0, "raw": [7, 11], "raw_data_download": [2, 7], "rbac": 3, "read": [3, 5, 11], "readm": 2, "reason": 10, "record": [1, 3, 5, 7, 8, 11, 12], "refresh": [0, 10], "refresh_access_token": [0, 2], "refresh_fil": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "refresh_token": 0, "regist": 8, "regular": 7, "relat": 9, "remov": [1, 6, 11, 13], "replac": 11, "replace_url": 11, "repo": 2, "repres": [3, 5, 10], "represent": [1, 3], "request": [0, 1, 3, 5, 8, 11, 12], "requir": 10, "resolv": 10, "resolve_object": [2, 9, 10], "respect": 7, "respons": [0, 1, 3, 4, 5], "result": [1, 8, 10, 11], "retri": 8, "retriev": [1, 8, 10, 12], "return": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11], "return_full_metadata": 5, "rev": 3, "revers": 8, "revis": 3, "right": 1, "rm": [2, 13], "rm_path": [2, 13], "root": [11, 12], "row": [7, 8, 11, 12], "row_offset": 8, "rtype": 3, "run": [8, 11], "s3": [1, 10, 11], "safe": 11, "same": [5, 11, 13], "sampl": [8, 10], "sandbox": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "save": 10, "save_directori": 10, "schema": 8, "scope": [0, 1], "screen": 8, "script": 2, "search": [0, 2, 3], "second": [1, 4], "secret": 0, "see": [7, 10, 11], "self": 10, "semaphon": 12, "semaphor": 12, "separ": [0, 11], "server": 10, "servic": [1, 3, 4, 5, 6, 8, 11, 12, 13], "service_loc": [3, 4, 5], "session": 11, "set": [0, 1, 5, 10], "setup": 2, "sheepdog": 8, "should": [0, 8, 11], "show": 10, "show_progress": 10, "shown": 11, "sign": 1, "signpost": 3, "similar": 10, "simpl": 3, "simpli": 11, "sinc": 3, "singl": [1, 5, 8], "size": [2, 3, 9, 10, 11], "skip": 8, "sleep": 4, "so": 11, "some": [0, 2], "someth": 11, "sort": 7, "sort_field": 7, "sort_object": 7, "sourc": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "space": [0, 11], "specif": [5, 8, 11, 12], "specifi": [0, 1, 3, 11, 13], "spreadsheet": 8, "src_path": 13, "src_urlstr": 13, "src_w": 13, "src_wskei": 13, "ssl": [3, 4, 5], "start": [3, 4, 7, 8, 10], "start_tim": [2, 9, 10], "static": 10, "statu": [2, 4, 9, 10], "storag": [1, 2, 6], "store": [1, 3, 10], "str": [0, 1, 3, 4, 5, 7, 8, 10, 11, 12], "string": [0, 3, 5, 11, 13], "strip": 11, "sub": 8, "subject": [7, 8], "submiss": 2, "submit": [8, 11], "submit_additional_metadata_column": 11, "submit_fil": [2, 8], "submit_record": [2, 8], "submitter_id": 7, "success": 10, "successfulli": 10, "suffici": 3, "suppli": 3, "support": [0, 1, 5, 8, 11], "sure": 1, "synchron": 11, "syntax": 7, "system": [6, 7, 8, 9], "t": [1, 5, 11], "tab": 11, "task": 9, "temporari": 11, "test": 11, "test1": 11, "test2": 11, "test3": 11, "test4": 11, "test5": 11, "text": [1, 7, 8], "than": [0, 5], "thei": [0, 10], "them": [10, 11], "thi": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "those": 11, "thread": 11, "thread_num": 11, "threadcontrol": [2, 9, 11], "through": [8, 11], "tier": 7, "time": [1, 3, 8, 10, 11], "timestamp": 10, "tmp_folder": [2, 9, 11], "token": [0, 10], "tool": 2, "total": 11, "treat": [1, 5], "tree": 10, "true": [3, 4, 5, 6, 7, 8, 10, 11, 12], "try": 0, "tsv": [8, 11, 12], "tupl": [0, 3, 11, 12], "type": [1, 3, 4, 5, 7, 8, 10, 11, 12], "typic": 10, "uc": 7, "unaccess": 7, "under": [0, 8, 13], "uniqu": [1, 5], "unknown": 10, "unpack": 10, "unpack_packag": 10, "until": [4, 10], "up": [5, 9], "updat": [2, 3, 5, 10, 11], "update_alias": [2, 5], "update_blank": [2, 3], "update_record": [2, 3], "updated_tim": [2, 9, 10], "upload": [1, 2, 3, 8, 13], "upload_fil": [1, 2], "upload_file_to_guid": [1, 2], "upload_url": [2, 13], "url": [1, 2, 3, 9, 10, 11, 12, 13], "urls_metadata": 3, "us": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "usag": 11, "use_agg_md": 5, "user": [0, 10, 12], "user_access": [2, 9, 10], "usual": 12, "utcnow": 1, "util": 9, "uuid": [1, 3, 8], "uuid1": 8, "uuid2": 8, "valid": [3, 7], "valu": [0, 1, 3, 5, 7, 10, 11], "value_from_indexd": 11, "value_from_manifest": 11, "variabl": [0, 7, 8], "variou": 2, "verbos": [7, 8], "verif": 11, "verifi": [2, 9], "verify_manifest": 11, "verify_object_manifest": 11, "version": [3, 4, 5], "vital_statu": 7, "w": 13, "wa": 0, "wai": 10, "wait": 4, "want": [0, 3, 8], "warn": 11, "we": [3, 11], "web": 0, "what": 5, "when": [0, 3, 7, 10, 12], "where": [0, 3, 5, 11, 12], "whether": [3, 4, 5, 8, 11, 12], "which": [8, 10], "while": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "whose": 5, "within": [0, 2, 9], "without": [3, 5], "won": 5, "work": [0, 10], "workaround": 11, "worksheet": 8, "workspac": [0, 2], "wrapper": 10, "write": 11, "ws_urlstr": 13, "wskei": 13, "wss": 13, "wt": [0, 10], "x": 11, "xlsx": 8, "you": [0, 3, 8, 11], "your": 0}, "titles": ["Gen3 Auth Helper", "Gen3 File Class", "Welcome to Gen3 SDK\u2019s documentation!", "Gen3 Index Class", "Gen3 Jobs Class", "Gen3 Metadata Class", "Gen3 Object Class", "Gen3 Query Class", "Gen3 Submission Class", "Gen3 Tools", "DRS Download Tools", "Indexing Tools", "Metadata Tools", "Gen3 Workspace Storage"], "titleterms": {"": 2, "auth": 0, "class": [1, 3, 4, 5, 6, 7, 8], "document": 2, "download": [10, 11], "dr": 10, "file": 1, "gen3": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 13], "helper": 0, "index": [3, 11], "indic": 2, "ingest": 12, "job": 4, "metadata": [5, 12], "object": 6, "queri": 7, "sdk": 2, "storag": 13, "submiss": 8, "tabl": 2, "tool": [9, 10, 11, 12], "verifi": 11, "welcom": 2, "workspac": 13}}) \ No newline at end of file diff --git a/docs/_build/html/tools/indexing.html b/docs/_build/html/tools/indexing.html index 88165a3b6..f507764c7 100644 --- a/docs/_build/html/tools/indexing.html +++ b/docs/_build/html/tools/indexing.html @@ -381,7 +381,7 @@

Indexing Tools
-async gen3.tools.indexing.verify_manifest.async_verify_object_manifest(commons_url, manifest_file, max_concurrent_requests=24, manifest_row_parsers={'acl': <function _get_acl_from_row>, 'authz': <function _get_authz_from_row>, 'file_name': <function _get_file_name_from_row>, 'file_size': <function _get_file_size_from_row>, 'guid': <function _get_guid_from_row>, 'md5': <function _get_md5_from_row>, 'urls': <function _get_urls_from_row>}, manifest_file_delimiter=None, output_filename='verify-manifest-errors-1713543225.0046513.log')[source]
+async gen3.tools.indexing.verify_manifest.async_verify_object_manifest(commons_url, manifest_file, max_concurrent_requests=24, manifest_row_parsers={'acl': <function _get_acl_from_row>, 'authz': <function _get_authz_from_row>, 'file_name': <function _get_file_name_from_row>, 'file_size': <function _get_file_size_from_row>, 'guid': <function _get_guid_from_row>, 'md5': <function _get_md5_from_row>, 'urls': <function _get_urls_from_row>}, manifest_file_delimiter=None, output_filename='verify-manifest-errors-1713543506.064572.log')[source]

Verify all file object records into a manifest csv

Parameters:
diff --git a/docs/_build/html/tools/metadata.html b/docs/_build/html/tools/metadata.html index 47ffa1f2c..1c2f328a0 100644 --- a/docs/_build/html/tools/metadata.html +++ b/docs/_build/html/tools/metadata.html @@ -102,7 +102,7 @@

Metadata Tools
-async gen3.tools.metadata.ingest_manifest.async_ingest_metadata_manifest(commons_url, manifest_file, metadata_source, auth=None, max_concurrent_requests=24, manifest_row_parsers={'guid_for_row': <function _get_guid_for_row>, 'indexed_file_object_guid': <function _query_for_associated_indexd_record_guid>}, manifest_file_delimiter=None, output_filename='ingest-metadata-manifest-errors-1713543225.2995.log', get_guid_from_file=True, metadata_type=None)[source]
+async gen3.tools.metadata.ingest_manifest.async_ingest_metadata_manifest(commons_url, manifest_file, metadata_source, auth=None, max_concurrent_requests=24, manifest_row_parsers={'guid_for_row': <function _get_guid_for_row>, 'indexed_file_object_guid': <function _query_for_associated_indexd_record_guid>}, manifest_file_delimiter=None, output_filename='ingest-metadata-manifest-errors-1713543506.4017086.log', get_guid_from_file=True, metadata_type=None)[source]

Ingest all metadata records into a manifest csv

Parameters:
From bc72e582b46e9f368067e8d8a0b690473ad26b57 Mon Sep 17 00:00:00 2001 From: Alex Date: Fri, 19 Apr 2024 11:24:43 -0500 Subject: [PATCH 11/62] fix(poetry): ensure PATH is set for all steps --- .github/workflows/build.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index 74c4fdb59..608d4e666 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -28,7 +28,7 @@ jobs: run: | pip install --upgrade pip curl -sSL https://install.python-poetry.org | python - - export PATH="/Users/runner/.local/bin:$PATH" + echo "PATH=/Users/runner/.local/bin:$PATH" >> $GITHUB_ENV pip --version poetry --version - name: Install dependencies From 20ac913c3ae50ea57d2e46eebfa523b2adce8d54 Mon Sep 17 00:00:00 2001 From: Avantol13 Date: Fri, 19 Apr 2024 16:26:00 +0000 Subject: [PATCH 12/62] Apply automatic documentation changes --- docs/_build/doctrees/environment.pickle | Bin 1579888 -> 1579893 bytes docs/_build/doctrees/tools/indexing.doctree | Bin 100286 -> 100291 bytes docs/_build/doctrees/tools/metadata.doctree | Bin 35934 -> 35934 bytes docs/_build/html/searchindex.js | 2 +- docs/_build/html/tools/indexing.html | 2 +- docs/_build/html/tools/metadata.html | 2 +- 6 files changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/_build/doctrees/environment.pickle b/docs/_build/doctrees/environment.pickle index 40194bd0b5d63b321c43ec6829db5fe5e6f01f9b..8951d9fd11e76cc46108b1cf104a99027a4dfc6a 100644 GIT binary patch delta 8079 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 delta 8063 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 diff --git a/docs/_build/doctrees/tools/metadata.doctree b/docs/_build/doctrees/tools/metadata.doctree index a0e781598767c04553873b7eb4dfc73cac86f59e..1a2e1846eb7b2b678f22d0521fbca527b0270c5f 100644 GIT binary patch delta 105 zcmcaNgX!K3rVZR$+?J+hdZuP(mWCE4lQZ>gHV0|(up$d?&eY$>A%LVxFDE};ee%H^ X;mKYWmdGk6_gT0h^EcnOs1F7J3ymEr delta 105 zcmcaNgX!K3rVZR$+@=O*dL{;j<^~pKlQZ>gHV0|(up$d?&eY$>A%LVxFDE};ee%H^ X;mKYWmdGk6_gT0h^EcnOs1F7J^;I0a diff --git a/docs/_build/html/searchindex.js b/docs/_build/html/searchindex.js index 0bdbbe29d..09eecb86e 100644 --- a/docs/_build/html/searchindex.js +++ b/docs/_build/html/searchindex.js @@ -1 +1 @@ -Search.setIndex({"alltitles": {"DRS Download Tools": [[10, "module-gen3.tools.download.drs_download"]], "Download": [[11, "module-gen3.tools.indexing.download_manifest"]], "Gen3 Auth Helper": [[0, "gen3-auth-helper"]], "Gen3 File Class": [[1, "gen3-file-class"]], "Gen3 Index Class": [[3, "gen3-index-class"]], "Gen3 Jobs Class": [[4, "gen3-jobs-class"]], "Gen3 Metadata Class": [[5, "gen3-metadata-class"]], "Gen3 Object Class": [[6, "gen3-object-class"]], "Gen3 Query Class": [[7, "gen3-query-class"]], "Gen3 Submission Class": [[8, "gen3-submission-class"]], "Gen3 Tools": [[9, "gen3-tools"]], "Gen3 Workspace Storage": [[13, "gen3-workspace-storage"]], "Index": [[11, "module-gen3.tools.indexing.index_manifest"]], "Indexing Tools": [[11, "indexing-tools"]], "Indices and tables": [[2, "indices-and-tables"]], "Ingest": [[12, "module-gen3.tools.metadata.ingest_manifest"]], "Metadata Tools": [[12, "metadata-tools"]], "Verify": [[11, "module-gen3.tools.indexing.verify_manifest"]], "Welcome to Gen3 SDK\u2019s documentation!": [[2, "welcome-to-gen3-sdk-s-documentation"]]}, "docnames": ["auth", "file", "index", "indexing", "jobs", "metadata", "object", "query", "submission", "tools", "tools/drs_pull", "tools/indexing", "tools/metadata", "wss"], "envversion": {"sphinx": 61, "sphinx.domains.c": 3, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 9, "sphinx.domains.index": 1, "sphinx.domains.javascript": 3, "sphinx.domains.math": 2, "sphinx.domains.python": 4, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx.ext.viewcode": 1}, "filenames": ["auth.rst", "file.rst", "index.rst", "indexing.rst", "jobs.rst", "metadata.rst", "object.rst", "query.rst", "submission.rst", "tools.rst", "tools/drs_pull.rst", "tools/indexing.rst", "tools/metadata.rst", "wss.rst"], "indexentries": {"_manager (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable._manager", false]], "access_methods (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.access_methods", false]], "acls (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.ACLS", false]], "async_create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_create", false]], "async_create_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_create_aliases", false]], "async_create_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_create_record", false]], "async_delete_alias() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_delete_alias", false]], "async_delete_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_delete_aliases", false]], "async_download_object_manifest() (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.async_download_object_manifest", false]], "async_get() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_get", false]], "async_get_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_get_aliases", false]], "async_get_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_record", false]], "async_get_records_from_checksum() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_records_from_checksum", false]], "async_get_records_on_page() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_records_on_page", false]], "async_get_with_params() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_with_params", false]], "async_ingest_metadata_manifest() (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.async_ingest_metadata_manifest", false]], "async_query_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_query_urls", false]], "async_query_urls_from_indexd() (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.async_query_urls_from_indexd", false]], "async_run_job_and_wait() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.async_run_job_and_wait", false]], "async_update() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_update", false]], "async_update_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_update_aliases", false]], "async_update_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_update_record", false]], "async_verify_object_manifest() (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.async_verify_object_manifest", false]], "auth_provider (gen3.metadata.gen3metadata attribute)": [[5, "gen3.metadata.Gen3Metadata.auth_provider", false]], "authz (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.AUTHZ", false]], "batch_create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.batch_create", false]], "cache_hosts_wts_tokens() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.cache_hosts_wts_tokens", false]], "children (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.children", false]], "column_to_use_as_guid (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.COLUMN_TO_USE_AS_GUID", false]], "commons_url (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.commons_url", false]], "copy() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.copy", false]], "create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create", false]], "create_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create_aliases", false]], "create_blank() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_blank", false]], "create_index_key_path() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create_index_key_path", false]], "create_job() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.create_job", false]], "create_new_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_new_version", false]], "create_object_list() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.create_object_list", false]], "create_program() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.create_program", false]], "create_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.create_project", false]], "create_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_record", false]], "created_time (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.created_time", false]], "curl() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.curl", false]], "current_dir (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.CURRENT_DIR", false]], "current_dir (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.CURRENT_DIR", false]], "current_dir (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.CURRENT_DIR", false]], "delete() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete", false]], "delete_alias() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_alias", false]], "delete_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_aliases", false]], "delete_all_guids() (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.delete_all_guids", false]], "delete_file() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.delete_file", false]], "delete_file_locations() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.delete_file_locations", false]], "delete_index_key_path() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_index_key_path", false]], "delete_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_node", false]], "delete_nodes() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_nodes", false]], "delete_object() (gen3.object.gen3object method)": [[6, "gen3.object.Gen3Object.delete_object", false]], "delete_program() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_program", false]], "delete_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_project", false]], "delete_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.delete_record", false]], "delete_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_record", false]], "delete_records() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_records", false]], "download() (gen3.tools.download.drs_download.downloadable method)": [[10, "gen3.tools.download.drs_download.Downloadable.download", false]], "download() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.download", false]], "download() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.download", false]], "download_files_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.download_files_in_drs_manifest", false]], "download_single() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.download_single", false]], "download_url() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.download_url", false]], "downloadable (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.Downloadable", false]], "downloadmanager (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.DownloadManager", false]], "downloadstatus (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.DownloadStatus", false]], "end_time (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.end_time", false]], "endpoint (gen3.metadata.gen3metadata attribute)": [[5, "gen3.metadata.Gen3Metadata.endpoint", false]], "export_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.export_node", false]], "export_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.export_record", false]], "file_name (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.file_name", false]], "file_name (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.file_name", false]], "file_size (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.file_size", false]], "file_size (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.file_size", false]], "gen3.tools": [[9, "module-gen3.tools", false]], "gen3.tools.download.drs_download": [[10, "module-gen3.tools.download.drs_download", false]], "gen3.tools.indexing.download_manifest": [[11, "module-gen3.tools.indexing.download_manifest", false]], "gen3.tools.indexing.index_manifest": [[11, "module-gen3.tools.indexing.index_manifest", false]], "gen3.tools.indexing.verify_manifest": [[11, "module-gen3.tools.indexing.verify_manifest", false]], "gen3.tools.metadata.ingest_manifest": [[12, "module-gen3.tools.metadata.ingest_manifest", false]], "gen3auth (class in gen3.auth)": [[0, "gen3.auth.Gen3Auth", false]], "gen3file (class in gen3.file)": [[1, "gen3.file.Gen3File", false]], "gen3index (class in gen3.index)": [[3, "gen3.index.Gen3Index", false]], "gen3jobs (class in gen3.jobs)": [[4, "gen3.jobs.Gen3Jobs", false]], "gen3metadata (class in gen3.metadata)": [[5, "gen3.metadata.Gen3Metadata", false]], "gen3object (class in gen3.object)": [[6, "gen3.object.Gen3Object", false]], "gen3query (class in gen3.query)": [[7, "gen3.query.Gen3Query", false]], "gen3submission (class in gen3.submission)": [[8, "gen3.submission.Gen3Submission", false]], "gen3wsstorage (class in gen3.wss)": [[13, "gen3.wss.Gen3WsStorage", false]], "get() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get", false]], "get() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get", false]], "get_access_token() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.get_access_token", false]], "get_access_token_from_wts() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.get_access_token_from_wts", false]], "get_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_aliases", false]], "get_all_records() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_all_records", false]], "get_dictionary_all() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_dictionary_all", false]], "get_dictionary_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_dictionary_node", false]], "get_fresh_token() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.get_fresh_token", false]], "get_graphql_schema() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_graphql_schema", false]], "get_guids_prefix() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_guids_prefix", false]], "get_index_key_paths() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_index_key_paths", false]], "get_latest_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_latest_version", false]], "get_output() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_output", false]], "get_presigned_url() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.get_presigned_url", false]], "get_programs() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_programs", false]], "get_project_dictionary() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_project_dictionary", false]], "get_project_manifest() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_project_manifest", false]], "get_projects() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_projects", false]], "get_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_record", false]], "get_record_doc() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_record_doc", false]], "get_records() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_records", false]], "get_records_on_page() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_records_on_page", false]], "get_stats() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_stats", false]], "get_status() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_status", false]], "get_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_urls", false]], "get_valid_guids() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_valid_guids", false]], "get_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_version", false]], "get_version() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_version", false]], "get_version() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_version", false]], "get_versions() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_versions", false]], "get_with_params() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_with_params", false]], "graphql_query() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.graphql_query", false]], "guid (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.GUID", false]], "guid_type_for_indexed_file_object (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.GUID_TYPE_FOR_INDEXED_FILE_OBJECT", false]], "guid_type_for_non_indexed_file_object (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.GUID_TYPE_FOR_NON_INDEXED_FILE_OBJECT", false]], "hostname (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.hostname", false]], "index_object_manifest() (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.index_object_manifest", false]], "indexd_record_page_size (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.INDEXD_RECORD_PAGE_SIZE", false]], "is_healthy() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.is_healthy", false]], "is_healthy() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.is_healthy", false]], "is_healthy() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.is_healthy", false]], "list_access_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_access_in_drs_manifest", false]], "list_drs_object() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_drs_object", false]], "list_files_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_files_in_drs_manifest", false]], "list_jobs() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.list_jobs", false]], "load() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.load", false]], "load_manifest() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.load_manifest", false]], "ls() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.ls", false]], "ls_path() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.ls_path", false]], "manifest (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.Manifest", false]], "max_concurrent_requests (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.MAX_CONCURRENT_REQUESTS", false]], "max_concurrent_requests (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.MAX_CONCURRENT_REQUESTS", false]], "max_concurrent_requests (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.MAX_CONCURRENT_REQUESTS", false]], "md5 (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.MD5", false]], "md5sum (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.md5sum", false]], "module": [[9, "module-gen3.tools", false], [10, "module-gen3.tools.download.drs_download", false], [11, "module-gen3.tools.indexing.download_manifest", false], [11, "module-gen3.tools.indexing.index_manifest", false], [11, "module-gen3.tools.indexing.verify_manifest", false], [12, "module-gen3.tools.metadata.ingest_manifest", false]], "object_id (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.object_id", false]], "object_id (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.object_id", false]], "object_type (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.object_type", false]], "open_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.open_project", false]], "pprint() (gen3.tools.download.drs_download.downloadable method)": [[10, "gen3.tools.download.drs_download.Downloadable.pprint", false]], "prev_guid (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.PREV_GUID", false]], "query() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.query", false]], "query() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.query", false]], "query() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.query", false]], "query_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.query_urls", false]], "raw_data_download() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.raw_data_download", false]], "refresh_access_token() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.refresh_access_token", false]], "resolve_objects() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.resolve_objects", false]], "rm() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.rm", false]], "rm_path() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.rm_path", false]], "size (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.SIZE", false]], "start_time (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.start_time", false]], "status (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.status", false]], "submit_file() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.submit_file", false]], "submit_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.submit_record", false]], "threadcontrol (class in gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.ThreadControl", false]], "tmp_folder (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.TMP_FOLDER", false]], "update() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.update", false]], "update_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.update_aliases", false]], "update_blank() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.update_blank", false]], "update_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.update_record", false]], "updated_time (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.updated_time", false]], "upload() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.upload", false]], "upload_file() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.upload_file", false]], "upload_file_to_guid() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.upload_file_to_guid", false]], "upload_url() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.upload_url", false]], "urls (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.URLS", false]], "user_access() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.user_access", false]]}, "objects": {"gen3": [[9, 3, 0, "-", "tools"]], "gen3.auth": [[0, 0, 1, "", "Gen3Auth"]], "gen3.auth.Gen3Auth": [[0, 1, 1, "", "curl"], [0, 1, 1, "", "get_access_token"], [0, 1, 1, "", "get_access_token_from_wts"], [0, 1, 1, "", "refresh_access_token"]], "gen3.file": [[1, 0, 1, "", "Gen3File"]], "gen3.file.Gen3File": [[1, 1, 1, "", "delete_file"], [1, 1, 1, "", "delete_file_locations"], [1, 1, 1, "", "download_single"], [1, 1, 1, "", "get_presigned_url"], [1, 1, 1, "", "upload_file"], [1, 1, 1, "", "upload_file_to_guid"]], "gen3.index": [[3, 0, 1, "", "Gen3Index"]], "gen3.index.Gen3Index": [[3, 1, 1, "", "async_create_record"], [3, 1, 1, "", "async_get_record"], [3, 1, 1, "", "async_get_records_from_checksum"], [3, 1, 1, "", "async_get_records_on_page"], [3, 1, 1, "", "async_get_with_params"], [3, 1, 1, "", "async_query_urls"], [3, 1, 1, "", "async_update_record"], [3, 1, 1, "", "create_blank"], [3, 1, 1, "", "create_new_version"], [3, 1, 1, "", "create_record"], [3, 1, 1, "", "delete_record"], [3, 1, 1, "", "get"], [3, 1, 1, "", "get_all_records"], [3, 1, 1, "", "get_guids_prefix"], [3, 1, 1, "", "get_latest_version"], [3, 1, 1, "", "get_record"], [3, 1, 1, "", "get_record_doc"], [3, 1, 1, "", "get_records"], [3, 1, 1, "", "get_records_on_page"], [3, 1, 1, "", "get_stats"], [3, 1, 1, "", "get_urls"], [3, 1, 1, "", "get_valid_guids"], [3, 1, 1, "", "get_version"], [3, 1, 1, "", "get_versions"], [3, 1, 1, "", "get_with_params"], [3, 1, 1, "", "is_healthy"], [3, 1, 1, "", "query_urls"], [3, 1, 1, "", "update_blank"], [3, 1, 1, "", "update_record"]], "gen3.jobs": [[4, 0, 1, "", "Gen3Jobs"]], "gen3.jobs.Gen3Jobs": [[4, 1, 1, "", "async_run_job_and_wait"], [4, 1, 1, "", "create_job"], [4, 1, 1, "", "get_output"], [4, 1, 1, "", "get_status"], [4, 1, 1, "", "get_version"], [4, 1, 1, "", "is_healthy"], [4, 1, 1, "", "list_jobs"]], "gen3.metadata": [[5, 0, 1, "", "Gen3Metadata"]], "gen3.metadata.Gen3Metadata": [[5, 1, 1, "", "async_create"], [5, 1, 1, "", "async_create_aliases"], [5, 1, 1, "", "async_delete_alias"], [5, 1, 1, "", "async_delete_aliases"], [5, 1, 1, "", "async_get"], [5, 1, 1, "", "async_get_aliases"], [5, 1, 1, "", "async_update"], [5, 1, 1, "", "async_update_aliases"], [5, 2, 1, "", "auth_provider"], [5, 1, 1, "", "batch_create"], [5, 1, 1, "", "create"], [5, 1, 1, "", "create_aliases"], [5, 1, 1, "", "create_index_key_path"], [5, 1, 1, "", "delete"], [5, 1, 1, "", "delete_alias"], [5, 1, 1, "", "delete_aliases"], [5, 1, 1, "", "delete_index_key_path"], [5, 2, 1, "", "endpoint"], [5, 1, 1, "", "get"], [5, 1, 1, "", "get_aliases"], [5, 1, 1, "", "get_index_key_paths"], [5, 1, 1, "", "get_version"], [5, 1, 1, "", "is_healthy"], [5, 1, 1, "", "query"], [5, 1, 1, "", "update"], [5, 1, 1, "", "update_aliases"]], "gen3.object": [[6, 0, 1, "", "Gen3Object"]], "gen3.object.Gen3Object": [[6, 1, 1, "", "delete_object"]], "gen3.query": [[7, 0, 1, "", "Gen3Query"]], "gen3.query.Gen3Query": [[7, 1, 1, "", "graphql_query"], [7, 1, 1, "", "query"], [7, 1, 1, "", "raw_data_download"]], "gen3.submission": [[8, 0, 1, "", "Gen3Submission"]], "gen3.submission.Gen3Submission": [[8, 1, 1, "", "create_program"], [8, 1, 1, "", "create_project"], [8, 1, 1, "", "delete_node"], [8, 1, 1, "", "delete_nodes"], [8, 1, 1, "", "delete_program"], [8, 1, 1, "", "delete_project"], [8, 1, 1, "", "delete_record"], [8, 1, 1, "", "delete_records"], [8, 1, 1, "", "export_node"], [8, 1, 1, "", "export_record"], [8, 1, 1, "", "get_dictionary_all"], [8, 1, 1, "", "get_dictionary_node"], [8, 1, 1, "", "get_graphql_schema"], [8, 1, 1, "", "get_programs"], [8, 1, 1, "", "get_project_dictionary"], [8, 1, 1, "", "get_project_manifest"], [8, 1, 1, "", "get_projects"], [8, 1, 1, "", "open_project"], [8, 1, 1, "", "query"], [8, 1, 1, "", "submit_file"], [8, 1, 1, "", "submit_record"]], "gen3.tools.download": [[10, 3, 0, "-", "drs_download"]], "gen3.tools.download.drs_download": [[10, 0, 1, "", "DownloadManager"], [10, 0, 1, "", "DownloadStatus"], [10, 0, 1, "", "Downloadable"], [10, 0, 1, "", "Manifest"], [10, 4, 1, "", "download_files_in_drs_manifest"], [10, 4, 1, "", "list_access_in_drs_manifest"], [10, 4, 1, "", "list_drs_object"], [10, 4, 1, "", "list_files_in_drs_manifest"]], "gen3.tools.download.drs_download.DownloadManager": [[10, 1, 1, "", "cache_hosts_wts_tokens"], [10, 1, 1, "", "download"], [10, 1, 1, "", "get_fresh_token"], [10, 1, 1, "", "resolve_objects"], [10, 1, 1, "", "user_access"]], "gen3.tools.download.drs_download.DownloadStatus": [[10, 2, 1, "", "end_time"], [10, 2, 1, "", "start_time"], [10, 2, 1, "", "status"]], "gen3.tools.download.drs_download.Downloadable": [[10, 2, 1, "", "_manager"], [10, 2, 1, "", "access_methods"], [10, 2, 1, "", "children"], [10, 2, 1, "", "created_time"], [10, 1, 1, "", "download"], [10, 2, 1, "", "file_name"], [10, 2, 1, "", "file_size"], [10, 2, 1, "", "hostname"], [10, 2, 1, "", "object_id"], [10, 2, 1, "", "object_type"], [10, 1, 1, "", "pprint"], [10, 2, 1, "", "updated_time"]], "gen3.tools.download.drs_download.Manifest": [[10, 2, 1, "", "commons_url"], [10, 1, 1, "", "create_object_list"], [10, 2, 1, "", "file_name"], [10, 2, 1, "", "file_size"], [10, 1, 1, "", "load"], [10, 1, 1, "", "load_manifest"], [10, 2, 1, "", "md5sum"], [10, 2, 1, "", "object_id"]], "gen3.tools.indexing": [[11, 3, 0, "-", "download_manifest"], [11, 3, 0, "-", "index_manifest"], [11, 3, 0, "-", "verify_manifest"]], "gen3.tools.indexing.download_manifest": [[11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "INDEXD_RECORD_PAGE_SIZE"], [11, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [11, 2, 1, "", "TMP_FOLDER"], [11, 4, 1, "", "async_download_object_manifest"]], "gen3.tools.indexing.index_manifest": [[11, 2, 1, "", "ACLS"], [11, 2, 1, "", "AUTHZ"], [11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "GUID"], [11, 2, 1, "", "MD5"], [11, 2, 1, "", "PREV_GUID"], [11, 2, 1, "", "SIZE"], [11, 0, 1, "", "ThreadControl"], [11, 2, 1, "", "URLS"], [11, 4, 1, "", "delete_all_guids"], [11, 4, 1, "", "index_object_manifest"]], "gen3.tools.indexing.verify_manifest": [[11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [11, 4, 1, "", "async_verify_object_manifest"]], "gen3.tools.metadata": [[12, 3, 0, "-", "ingest_manifest"]], "gen3.tools.metadata.ingest_manifest": [[12, 2, 1, "", "COLUMN_TO_USE_AS_GUID"], [12, 2, 1, "", "GUID_TYPE_FOR_INDEXED_FILE_OBJECT"], [12, 2, 1, "", "GUID_TYPE_FOR_NON_INDEXED_FILE_OBJECT"], [12, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [12, 4, 1, "", "async_ingest_metadata_manifest"], [12, 4, 1, "", "async_query_urls_from_indexd"]], "gen3.wss": [[13, 0, 1, "", "Gen3WsStorage"]], "gen3.wss.Gen3WsStorage": [[13, 1, 1, "", "copy"], [13, 1, 1, "", "download"], [13, 1, 1, "", "download_url"], [13, 1, 1, "", "ls"], [13, 1, 1, "", "ls_path"], [13, 1, 1, "", "rm"], [13, 1, 1, "", "rm_path"], [13, 1, 1, "", "upload"], [13, 1, 1, "", "upload_url"]]}, "objnames": {"0": ["py", "class", "Python class"], "1": ["py", "method", "Python method"], "2": ["py", "attribute", "Python attribute"], "3": ["py", "module", "Python module"], "4": ["py", "function", "Python function"]}, "objtypes": {"0": "py:class", "1": "py:method", "2": "py:attribute", "3": "py:module", "4": "py:function"}, "terms": {"": [1, 4, 8, 10, 11], "0": [5, 7, 8, 11], "0046513": [], "064572": 11, "0a80fada010c": 11, "0a80fada096c": 11, "0a80fada097c": 11, "0a80fada098c": 11, "0a80fada099c": 11, "1": [4, 5, 8, 10, 11], "10": [5, 7, 11], "100": [8, 11], "11e9": 11, "1713542306": [], "1713542765": [], "1713543033": [], "1713543225": [], "1713543506": [11, 12], "2": [5, 11], "24": [11, 12], "255e396f": 11, "2877355": [], "2995": [], "3": [5, 11], "30": 8, "33": 5, "333": 5, "343434344": 11, "363455714": 11, "4": [5, 11], "4017086": 12, "450c": 11, "4649727": [], "4714": 8, "473d83400bc1bc9dc635e334fadd433c": 11, "473d83400bc1bc9dc635e334faddd33c": 11, "473d83400bc1bc9dc635e334fadde33c": 11, "473d83400bc1bc9dc635e334faddf33c": 11, "5": [0, 5], "50": 7, "543434443": 11, "5899982": [], "6692646": [], "6f90": 8, "760149": [], "7d3d8d2083b4": 11, "8420": 8, "8882551": [], "93d9af72": 11, "9a07": 11, "A": [1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "AND": 5, "Be": 1, "But": 5, "By": 11, "For": [1, 5, 6, 7, 8, 9, 11], "IF": 11, "If": [0, 1, 7, 11, 12], "In": 10, "It": 10, "NOT": 12, "OR": 5, "One": 7, "Such": 9, "THE": 11, "That": 3, "The": [0, 1, 2, 3, 5, 8, 10, 11], "There": 11, "These": 9, "To": 11, "Will": [4, 7, 10], "_get_acl_from_row": 11, "_get_authz_from_row": 11, "_get_file_name_from_row": 11, "_get_file_size_from_row": 11, "_get_guid_for_row": 12, "_get_guid_from_row": 11, "_get_md5_from_row": 11, "_get_urls_from_row": 11, "_guid_typ": 12, "_manag": [2, 9, 10], "_query_for_associated_indexd_record_guid": 12, "_ssl": [3, 4, 5], "a5c6": 11, "ab167e49d25b488939b1ede42752458b": 3, "about": [2, 3], "abov": 11, "access": [0, 1, 3, 7, 10], "access_method": [2, 9, 10], "access_token": 0, "accesstoken": 0, "acl": [2, 3, 9, 11], "across": 11, "act": 0, "action": [9, 11], "actual": 11, "ad": 3, "add": [3, 5], "addit": [3, 5, 10, 11], "admin": [5, 11], "admin_endpoint_suffix": 5, "after": 10, "against": [3, 7, 8, 11, 12], "algorithm": 3, "alia": [3, 5], "alias": 5, "aliv": 7, "all": [1, 3, 4, 5, 6, 7, 8, 10, 11, 12], "allow": [0, 6, 8, 10, 11, 12], "allowed_data_upload_bucket": 1, "along": 2, "alreadi": 9, "also": 1, "altern": [5, 11], "alwai": 5, "ammount": 12, "amount": [1, 9], "an": [0, 3, 6, 8, 10, 11], "ani": [0, 5, 10, 11], "anoth": 5, "api": [0, 5, 8, 11], "api_kei": 11, "appli": 7, "appropri": 13, "ar": [5, 7, 8, 9, 10, 11], "arbitrari": 0, "argument": [0, 13], "arrai": 8, "asc": 7, "assign": 9, "assist": 10, "associ": [3, 5], "assum": 11, "async": [3, 4, 5, 9, 11, 12], "async_cr": [2, 5], "async_create_alias": [2, 5], "async_create_record": [2, 3], "async_delete_alia": [2, 5], "async_delete_alias": [2, 5], "async_download_object_manifest": [2, 9, 11], "async_get": [2, 5], "async_get_alias": [2, 5], "async_get_record": [2, 3], "async_get_records_from_checksum": [2, 3], "async_get_records_on_pag": [2, 3], "async_get_with_param": [2, 3], "async_ingest_metadata_manifest": [2, 9, 12], "async_query_url": [2, 3], "async_query_urls_from_indexd": [2, 9, 12], "async_run_job_and_wait": [2, 4], "async_upd": [2, 5], "async_update_alias": [2, 5], "async_update_record": [2, 3], "async_verify_object_manifest": [2, 9, 11], "asynchron": [3, 4, 5], "asyncio": [11, 12], "asyncron": 5, "attach": [3, 5], "attempt": 11, "attribut": [10, 11], "auth": [1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "auth_provid": [1, 2, 3, 4, 5, 6, 7, 8, 13], "authbas": 0, "authent": 0, "author": 1, "authz": [0, 1, 2, 3, 9, 10, 11], "auto": [0, 2], "automat": 0, "avail": [1, 2, 10, 11], "az": 1, "b": [5, 11], "b0f1": 11, "bar": 10, "base": [0, 1, 3, 4, 5, 6, 7, 8, 9, 11, 13], "baseid": 3, "basic": [3, 11, 12], "batch_creat": [2, 5], "batch_siz": 8, "behalf": 0, "behavior": 11, "being": 3, "belong": 8, "below": 11, "blank": 3, "blob": [5, 7], "bodi": 3, "bool": [4, 5, 8, 10, 11, 12], "boolean": 3, "bownload": 10, "broad": 9, "broken": 9, "bucket": [1, 6], "bundl": 10, "byte": 10, "c": [5, 11], "cach": 10, "cache_hosts_wts_token": [2, 9, 10], "call": [10, 13], "can": [0, 3, 4, 8, 11, 12], "capabl": 9, "case": [0, 10], "categori": 9, "ccle": 8, "ccle_one_record": 8, "ccle_sample_nod": 8, "cdi": 7, "chang": [3, 11], "checksum": [3, 10], "checksum_typ": 3, "child": 10, "children": [2, 9, 10], "chunk_siz": 8, "class": [0, 2, 10, 11, 13], "cli": 10, "client": [0, 3], "client_credenti": 0, "client_id": 0, "client_scop": 0, "client_secret": 0, "code": [2, 8], "column": [11, 12], "column_to_use_as_guid": [2, 9, 12], "columna": 11, "columnb": 11, "columnc": 11, "com": 7, "comma": 11, "command": [10, 11], "common": [0, 1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13], "commons_url": [2, 9, 10, 11, 12], "complet": [4, 11], "complex": 7, "concat": 11, "concurr": [11, 12], "configur": 1, "connect": 12, "consist": 3, "constructor": 0, "contain": [0, 2, 5, 8, 9, 10, 11, 12], "content": [3, 13], "content_created_d": 3, "content_updated_d": 3, "continu": 10, "control": 3, "conveni": 10, "copi": [2, 13], "coroutin": 11, "correspond": 3, "count": 3, "crdc": 0, "creat": [2, 3, 4, 5, 6, 8, 10, 11], "create_alias": [2, 5], "create_blank": [2, 3], "create_index_key_path": [2, 5], "create_job": [2, 4], "create_new_vers": [2, 3], "create_object_list": [2, 9, 10], "create_program": [2, 8], "create_project": [2, 8], "create_record": [2, 3], "created_tim": [2, 9, 10], "creation": [3, 11], "cred": 3, "credenti": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "csv": [8, 11, 12], "curl": [0, 2], "current": [6, 8, 10], "current_dir": [2, 9, 11], "custom": 11, "d": 5, "d70b41b9": 8, "data": [0, 1, 3, 5, 7, 8, 10, 11], "data_spreadsheet": 8, "data_typ": 7, "data_upload_bucket": 1, "dataa": 11, "datab": 11, "databas": 5, "datacommon": 0, "datafil": 10, "datamanag": 10, "date": 3, "datetim": [1, 3, 10], "dbgap": 12, "dcf": 8, "def": 11, "default": [0, 1, 3, 7, 8, 11, 12], "defin": [5, 8, 10], "delai": 4, "delet": [0, 1, 2, 3, 5, 6, 8, 10, 11], "delete_alia": [2, 5], "delete_alias": [2, 5], "delete_all_guid": [2, 9, 11], "delete_fil": [1, 2], "delete_file_loc": [1, 2, 6], "delete_index_key_path": [2, 5], "delete_nod": [2, 8], "delete_object": [2, 6], "delete_program": [2, 8], "delete_project": [2, 8], "delete_record": [2, 3, 8], "delete_unpacked_packag": 10, "delimet": [11, 12], "delimit": 11, "demograph": 8, "deprec": 1, "descript": [3, 5], "desir": 11, "dest_path": 13, "dest_urlstr": 13, "dest_w": 13, "dest_wskei": 13, "detail": [2, 7, 10], "determin": [10, 11, 12], "dev": 11, "dict": [3, 4, 5, 10, 11, 12], "dictionari": [3, 4, 5, 7, 8], "did": 3, "differ": 5, "direct": 0, "directori": [10, 11], "disabl": 10, "discoveri": 10, "disk": 13, "dispatch": 4, "dist_resolut": 3, "distribut": 3, "doc": [7, 10], "docstr": 2, "document": [1, 3], "doe": [0, 12], "domain": [11, 12], "done": 4, "download": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 13], "download_files_in_drs_manifest": [2, 9, 10], "download_list": 10, "download_manifest": 11, "download_singl": [1, 2], "download_url": [2, 13], "downloadmanag": [2, 9, 10], "downloadstatu": [2, 9, 10], "dr": [2, 9], "drs_download": 10, "drs_hostnam": 10, "drsdownload": 10, "drsobjecttyp": 10, "e": [5, 10], "e043ab8b77b9": 8, "each": [3, 8, 10, 11], "effici": 9, "eg": 3, "either": 8, "elasticsearch": 7, "els": [0, 12], "elsewher": 12, "empti": [8, 11], "enabl": 11, "end": [5, 10], "end_tim": [2, 9, 10], "endpoint": [0, 1, 2, 3, 4, 5, 7, 8, 13], "entir": 8, "entri": [3, 11], "env": 0, "environ": 0, "equal": 7, "error": [10, 11, 12], "error_nam": 11, "etc": 8, "even": 11, "everi": [9, 11], "everyth": 11, "ex": [0, 11, 12], "exampl": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "exclud": 3, "execut": [7, 8, 11], "exist": [1, 3, 5, 6, 9, 12], "expect": [5, 9, 11], "experi": 8, "expir": [0, 1], "expires_in": 1, "export": [8, 10], "export_nod": [2, 8], "export_record": [2, 8], "f1f8": 11, "factori": 10, "fail": [8, 10], "fals": [3, 5, 6, 10, 11], "featur": [1, 6], "fenc": [0, 1], "fetch": 0, "field": [3, 5, 7, 11, 12], "fieldnam": 11, "file": [0, 2, 3, 4, 8, 9, 10, 11, 12, 13], "file_nam": [1, 2, 3, 9, 10, 11], "file_s": [2, 9, 10, 11], "file_st": 3, "fileformat": 8, "filenam": [0, 8, 10, 11, 12], "files": 10, "fill": 12, "filter": [5, 7], "filter_object": 7, "first": [7, 8], "flag": 11, "folder": 11, "follow": [0, 11], "forc": 11, "force_metadata_columns_even_if_empti": 11, "form": 13, "format": [3, 5, 8, 11], "from": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13], "func_to_parse_row": [11, 12], "function": [2, 3, 4, 5, 9, 10, 11, 12], "g": 10, "gen3": [10, 11, 12], "gen3_api_kei": 0, "gen3_oidc_client_creds_secret": 0, "gen3auth": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "gen3fil": [1, 2], "gen3index": [2, 3], "gen3job": [2, 4, 10], "gen3metadata": [2, 5], "gen3object": [2, 6], "gen3queri": [2, 7], "gen3submiss": [2, 8], "gen3wsstorag": [2, 13], "gener": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 13], "get": [0, 1, 2, 3, 4, 5, 8, 10, 11, 12, 13], "get_access_token": [0, 2], "get_access_token_from_wt": [0, 2], "get_alias": [2, 5], "get_all_record": [2, 3], "get_dictionary_al": [2, 8], "get_dictionary_nod": [2, 8], "get_fresh_token": [2, 9, 10], "get_graphql_schema": [2, 8], "get_guid_from_fil": 12, "get_guids_prefix": [2, 3], "get_index_key_path": [2, 5], "get_latest_vers": [2, 3], "get_output": [2, 4], "get_presigned_url": [1, 2], "get_program": [2, 8], "get_project": [2, 8], "get_project_dictionari": [2, 8], "get_project_manifest": [2, 8], "get_record": [2, 3], "get_record_doc": [2, 3], "get_records_on_pag": [2, 3], "get_stat": [2, 3], "get_statu": [2, 4], "get_url": [2, 3], "get_valid_guid": [2, 3], "get_vers": [2, 3, 4, 5], "get_with_param": [2, 3], "giangb": 11, "github": [2, 7], "give": 1, "given": [0, 3, 4, 5, 8, 10, 12, 13], "global": [4, 5], "good": 3, "grant": 0, "graph": 8, "graphql": [7, 8], "graphql_queri": [2, 7], "group": 3, "guid": [1, 2, 3, 5, 6, 9, 11, 12], "guid_exampl": 11, "guid_for_row": 12, "guid_from_fil": 12, "guid_type_for_indexed_file_object": [2, 9, 12], "guid_type_for_non_indexed_file_object": [2, 9, 12], "guppi": 7, "ha": [0, 11], "handl": [3, 10], "hardcod": 0, "has_vers": 3, "hash": [3, 11], "hash_typ": 3, "have": [5, 11], "header": 11, "healthi": [3, 4, 5], "help": 11, "helper": 2, "hit": 11, "host": 10, "hostnam": [2, 9, 10], "how": [8, 11], "howto": 10, "http": [0, 7, 11, 12], "i": [0, 1, 2, 3, 4, 5, 8, 10, 11, 12], "id": [0, 1, 3, 5, 10, 11], "idea": 3, "identifi": [3, 5, 9, 11], "idp": 0, "illustr": 11, "immut": 3, "implement": 0, "implic": 11, "import": 11, "includ": [0, 3], "indent": 10, "index": [0, 2, 5, 9], "index_manifest": 11, "index_object_manifest": [2, 9, 11], "indexd": [1, 3, 6, 10, 11, 12], "indexd_field": [11, 12], "indexd_record_page_s": [2, 9, 11], "indexed_file_object_guid": 12, "indic": [0, 11], "infil": 10, "info": [3, 11], "inform": [2, 3, 10], "ingest": [2, 9], "ingest_manifest": 12, "initi": [0, 10], "input": [4, 10, 11], "input_manifest": 11, "instal": [0, 2, 11], "instanc": [1, 3, 6, 7, 8, 9, 10], "instead": [1, 7, 11], "int": [1, 3, 5, 7, 8, 10, 11, 12], "integ": [1, 3, 8], "intend": 0, "interact": [1, 3, 4, 5, 6, 8, 13], "interest": 10, "interpret": 0, "introspect": 8, "involv": 9, "is_healthi": [2, 3, 4, 5], "is_indexed_file_object": 12, "isn": 1, "issu": 0, "its": [1, 3], "job": 2, "job_id": 4, "job_input": 4, "job_nam": 4, "json": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "just": [5, 11, 12], "jwt": 0, "kei": [0, 3, 5, 13], "know": 11, "known": 10, "kwarg": [3, 4, 5], "l": [2, 13], "larg": 9, "last": 10, "latest": 3, "least": 3, "level": 6, "librari": 11, "like": [3, 5, 9, 11, 12], "limit": [1, 3, 5, 12], "linear": 4, "linux": 10, "list": [0, 1, 3, 4, 5, 7, 8, 10, 11, 13], "list_access_in_drs_manifest": [2, 9, 10], "list_drs_object": [2, 9, 10], "list_files_in_drs_manifest": [2, 9, 10], "list_job": [2, 4], "live": [11, 12], "load": [2, 9, 10], "load_manifest": [2, 9, 10], "local": [0, 13], "locat": [1, 6], "lock": 12, "log": [8, 10, 11, 12], "logic": [5, 12], "loop": 11, "ls_path": [2, 13], "maco": 11, "made": 3, "mai": [0, 9, 11], "main": 10, "make": [9, 11], "manag": [1, 5, 10], "mani": [8, 11], "manifest": [2, 8, 9, 10, 11, 12], "manifest_1": 10, "manifest_fil": [11, 12], "manifest_file_delimit": [11, 12], "manifest_row_pars": [11, 12], "map": [0, 11], "mark": 8, "master": 7, "match": [3, 5, 12], "max": 5, "max_concurrent_request": [2, 9, 11, 12], "max_presigned_url_ttl": 1, "max_tri": 8, "maximum": [11, 12], "md": [5, 7, 10, 12], "md5": [2, 3, 9, 11], "md5_hash": 11, "md5sum": [2, 9, 10], "mean": 8, "mechan": 3, "merg": 5, "metadata": [2, 3, 6, 9, 11], "metadata_list": 5, "metadata_sourc": 12, "metadata_typ": 12, "metdata": 12, "method": [1, 7, 10], "minimum": 10, "minut": 0, "mode": 7, "modul": [2, 10, 11], "more": [2, 5, 7, 9, 10], "most": 9, "mostli": 2, "multipl": [8, 11], "must": [1, 5], "my_common": 10, "my_credenti": 10, "my_field": 7, "my_index": 7, "my_program": 7, "my_project": 7, "name": [3, 4, 8, 10, 11, 12, 13], "namespac": [0, 12], "necessari": [3, 5], "need": [3, 7, 10, 11], "nest": 5, "net": 11, "never": 0, "new": [0, 3], "node": 8, "node_nam": 8, "node_typ": 8, "none": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "note": [0, 3, 11, 12], "noth": [3, 6], "now": [1, 8], "num": 5, "num_process": 11, "num_total_fil": 11, "number": [3, 7, 8, 11, 12], "o": 0, "object": [1, 2, 3, 4, 5, 7, 8, 9, 10, 11, 13], "object_id": [1, 2, 9, 10], "object_list": 10, "object_typ": [2, 9, 10], "objectid": 10, "obtain": [0, 10], "occur": 10, "off": 5, "offset": [5, 7], "oidc": 0, "old": 3, "one": [3, 5, 10, 11], "onli": [3, 5, 7, 8, 10, 11], "open": [8, 10, 11], "open_project": [2, 8], "openid": 0, "opt": 0, "option": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11], "order": [0, 8], "ordered_node_list": 8, "org": 10, "otherwis": 10, "output": [4, 5, 11, 12], "output_dir": 10, "output_filenam": [11, 12], "overrid": [0, 11, 12], "overwrit": 5, "own": 0, "packag": 10, "page": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 13], "pagin": 3, "parallel": 11, "param": [3, 5, 8, 10], "paramet": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "pars": [10, 11, 12, 13], "parser": [11, 12], "particular": 0, "pass": [0, 7, 8, 10], "password": [11, 12], "path": [0, 1, 5, 10, 11, 13], "path_to_manifest": 11, "pattern": [3, 12], "pdcdatastor": 11, "pend": 10, "per": [11, 12], "peregrin": 8, "permiss": 10, "persist": 9, "phs0001": 11, "phs0002": 11, "pick": 1, "pla": 11, "place": 11, "planx": 11, "point": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "popul": [10, 12], "posit": [1, 7], "possibl": 10, "post": [0, 11], "pprint": [2, 9, 10], "prefix": 3, "presign": 1, "pretti": 10, "prev_guid": [2, 9, 11], "previou": [3, 11], "previous": 4, "print": [8, 10], "process": 11, "processed_fil": 11, "profil": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "program": [8, 11], "progress": [8, 10], "project": [8, 11], "project_id": [7, 8], "protocol": 1, "provid": [0, 1, 3, 5, 7, 8, 12], "public": [3, 5], "put": 0, "py": 11, "python": [2, 9, 11], "python3": 11, "python_subprocess_command": 11, "queri": [1, 2, 3, 5, 8, 11, 12], "query_str": 7, "query_txt": [7, 8], "query_url": [2, 3], "quickstart": 2, "rather": 0, "raw": [7, 11], "raw_data_download": [2, 7], "rbac": 3, "read": [3, 5, 11], "readm": 2, "reason": 10, "record": [1, 3, 5, 7, 8, 11, 12], "refresh": [0, 10], "refresh_access_token": [0, 2], "refresh_fil": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "refresh_token": 0, "regist": 8, "regular": 7, "relat": 9, "remov": [1, 6, 11, 13], "replac": 11, "replace_url": 11, "repo": 2, "repres": [3, 5, 10], "represent": [1, 3], "request": [0, 1, 3, 5, 8, 11, 12], "requir": 10, "resolv": 10, "resolve_object": [2, 9, 10], "respect": 7, "respons": [0, 1, 3, 4, 5], "result": [1, 8, 10, 11], "retri": 8, "retriev": [1, 8, 10, 12], "return": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11], "return_full_metadata": 5, "rev": 3, "revers": 8, "revis": 3, "right": 1, "rm": [2, 13], "rm_path": [2, 13], "root": [11, 12], "row": [7, 8, 11, 12], "row_offset": 8, "rtype": 3, "run": [8, 11], "s3": [1, 10, 11], "safe": 11, "same": [5, 11, 13], "sampl": [8, 10], "sandbox": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "save": 10, "save_directori": 10, "schema": 8, "scope": [0, 1], "screen": 8, "script": 2, "search": [0, 2, 3], "second": [1, 4], "secret": 0, "see": [7, 10, 11], "self": 10, "semaphon": 12, "semaphor": 12, "separ": [0, 11], "server": 10, "servic": [1, 3, 4, 5, 6, 8, 11, 12, 13], "service_loc": [3, 4, 5], "session": 11, "set": [0, 1, 5, 10], "setup": 2, "sheepdog": 8, "should": [0, 8, 11], "show": 10, "show_progress": 10, "shown": 11, "sign": 1, "signpost": 3, "similar": 10, "simpl": 3, "simpli": 11, "sinc": 3, "singl": [1, 5, 8], "size": [2, 3, 9, 10, 11], "skip": 8, "sleep": 4, "so": 11, "some": [0, 2], "someth": 11, "sort": 7, "sort_field": 7, "sort_object": 7, "sourc": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "space": [0, 11], "specif": [5, 8, 11, 12], "specifi": [0, 1, 3, 11, 13], "spreadsheet": 8, "src_path": 13, "src_urlstr": 13, "src_w": 13, "src_wskei": 13, "ssl": [3, 4, 5], "start": [3, 4, 7, 8, 10], "start_tim": [2, 9, 10], "static": 10, "statu": [2, 4, 9, 10], "storag": [1, 2, 6], "store": [1, 3, 10], "str": [0, 1, 3, 4, 5, 7, 8, 10, 11, 12], "string": [0, 3, 5, 11, 13], "strip": 11, "sub": 8, "subject": [7, 8], "submiss": 2, "submit": [8, 11], "submit_additional_metadata_column": 11, "submit_fil": [2, 8], "submit_record": [2, 8], "submitter_id": 7, "success": 10, "successfulli": 10, "suffici": 3, "suppli": 3, "support": [0, 1, 5, 8, 11], "sure": 1, "synchron": 11, "syntax": 7, "system": [6, 7, 8, 9], "t": [1, 5, 11], "tab": 11, "task": 9, "temporari": 11, "test": 11, "test1": 11, "test2": 11, "test3": 11, "test4": 11, "test5": 11, "text": [1, 7, 8], "than": [0, 5], "thei": [0, 10], "them": [10, 11], "thi": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "those": 11, "thread": 11, "thread_num": 11, "threadcontrol": [2, 9, 11], "through": [8, 11], "tier": 7, "time": [1, 3, 8, 10, 11], "timestamp": 10, "tmp_folder": [2, 9, 11], "token": [0, 10], "tool": 2, "total": 11, "treat": [1, 5], "tree": 10, "true": [3, 4, 5, 6, 7, 8, 10, 11, 12], "try": 0, "tsv": [8, 11, 12], "tupl": [0, 3, 11, 12], "type": [1, 3, 4, 5, 7, 8, 10, 11, 12], "typic": 10, "uc": 7, "unaccess": 7, "under": [0, 8, 13], "uniqu": [1, 5], "unknown": 10, "unpack": 10, "unpack_packag": 10, "until": [4, 10], "up": [5, 9], "updat": [2, 3, 5, 10, 11], "update_alias": [2, 5], "update_blank": [2, 3], "update_record": [2, 3], "updated_tim": [2, 9, 10], "upload": [1, 2, 3, 8, 13], "upload_fil": [1, 2], "upload_file_to_guid": [1, 2], "upload_url": [2, 13], "url": [1, 2, 3, 9, 10, 11, 12, 13], "urls_metadata": 3, "us": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "usag": 11, "use_agg_md": 5, "user": [0, 10, 12], "user_access": [2, 9, 10], "usual": 12, "utcnow": 1, "util": 9, "uuid": [1, 3, 8], "uuid1": 8, "uuid2": 8, "valid": [3, 7], "valu": [0, 1, 3, 5, 7, 10, 11], "value_from_indexd": 11, "value_from_manifest": 11, "variabl": [0, 7, 8], "variou": 2, "verbos": [7, 8], "verif": 11, "verifi": [2, 9], "verify_manifest": 11, "verify_object_manifest": 11, "version": [3, 4, 5], "vital_statu": 7, "w": 13, "wa": 0, "wai": 10, "wait": 4, "want": [0, 3, 8], "warn": 11, "we": [3, 11], "web": 0, "what": 5, "when": [0, 3, 7, 10, 12], "where": [0, 3, 5, 11, 12], "whether": [3, 4, 5, 8, 11, 12], "which": [8, 10], "while": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "whose": 5, "within": [0, 2, 9], "without": [3, 5], "won": 5, "work": [0, 10], "workaround": 11, "worksheet": 8, "workspac": [0, 2], "wrapper": 10, "write": 11, "ws_urlstr": 13, "wskei": 13, "wss": 13, "wt": [0, 10], "x": 11, "xlsx": 8, "you": [0, 3, 8, 11], "your": 0}, "titles": ["Gen3 Auth Helper", "Gen3 File Class", "Welcome to Gen3 SDK\u2019s documentation!", "Gen3 Index Class", "Gen3 Jobs Class", "Gen3 Metadata Class", "Gen3 Object Class", "Gen3 Query Class", "Gen3 Submission Class", "Gen3 Tools", "DRS Download Tools", "Indexing Tools", "Metadata Tools", "Gen3 Workspace Storage"], "titleterms": {"": 2, "auth": 0, "class": [1, 3, 4, 5, 6, 7, 8], "document": 2, "download": [10, 11], "dr": 10, "file": 1, "gen3": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 13], "helper": 0, "index": [3, 11], "indic": 2, "ingest": 12, "job": 4, "metadata": [5, 12], "object": 6, "queri": 7, "sdk": 2, "storag": 13, "submiss": 8, "tabl": 2, "tool": [9, 10, 11, 12], "verifi": 11, "welcom": 2, "workspac": 13}}) \ No newline at end of file +Search.setIndex({"alltitles": {"DRS Download Tools": [[10, "module-gen3.tools.download.drs_download"]], "Download": [[11, "module-gen3.tools.indexing.download_manifest"]], "Gen3 Auth Helper": [[0, "gen3-auth-helper"]], "Gen3 File Class": [[1, "gen3-file-class"]], "Gen3 Index Class": [[3, "gen3-index-class"]], "Gen3 Jobs Class": [[4, "gen3-jobs-class"]], "Gen3 Metadata Class": [[5, "gen3-metadata-class"]], "Gen3 Object Class": [[6, "gen3-object-class"]], "Gen3 Query Class": [[7, "gen3-query-class"]], "Gen3 Submission Class": [[8, "gen3-submission-class"]], "Gen3 Tools": [[9, "gen3-tools"]], "Gen3 Workspace Storage": [[13, "gen3-workspace-storage"]], "Index": [[11, "module-gen3.tools.indexing.index_manifest"]], "Indexing Tools": [[11, "indexing-tools"]], "Indices and tables": [[2, "indices-and-tables"]], "Ingest": [[12, "module-gen3.tools.metadata.ingest_manifest"]], "Metadata Tools": [[12, "metadata-tools"]], "Verify": [[11, "module-gen3.tools.indexing.verify_manifest"]], "Welcome to Gen3 SDK\u2019s documentation!": [[2, "welcome-to-gen3-sdk-s-documentation"]]}, "docnames": ["auth", "file", "index", "indexing", "jobs", "metadata", "object", "query", "submission", "tools", "tools/drs_pull", "tools/indexing", "tools/metadata", "wss"], "envversion": {"sphinx": 61, "sphinx.domains.c": 3, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 9, "sphinx.domains.index": 1, "sphinx.domains.javascript": 3, "sphinx.domains.math": 2, "sphinx.domains.python": 4, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx.ext.viewcode": 1}, "filenames": ["auth.rst", "file.rst", "index.rst", "indexing.rst", "jobs.rst", "metadata.rst", "object.rst", "query.rst", "submission.rst", "tools.rst", "tools/drs_pull.rst", "tools/indexing.rst", "tools/metadata.rst", "wss.rst"], "indexentries": {"_manager (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable._manager", false]], "access_methods (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.access_methods", false]], "acls (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.ACLS", false]], "async_create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_create", false]], "async_create_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_create_aliases", false]], "async_create_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_create_record", false]], "async_delete_alias() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_delete_alias", false]], "async_delete_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_delete_aliases", false]], "async_download_object_manifest() (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.async_download_object_manifest", false]], "async_get() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_get", false]], "async_get_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_get_aliases", false]], "async_get_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_record", false]], "async_get_records_from_checksum() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_records_from_checksum", false]], "async_get_records_on_page() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_records_on_page", false]], "async_get_with_params() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_with_params", false]], "async_ingest_metadata_manifest() (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.async_ingest_metadata_manifest", false]], "async_query_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_query_urls", false]], "async_query_urls_from_indexd() (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.async_query_urls_from_indexd", false]], "async_run_job_and_wait() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.async_run_job_and_wait", false]], "async_update() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_update", false]], "async_update_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_update_aliases", false]], "async_update_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_update_record", false]], "async_verify_object_manifest() (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.async_verify_object_manifest", false]], "auth_provider (gen3.metadata.gen3metadata attribute)": [[5, "gen3.metadata.Gen3Metadata.auth_provider", false]], "authz (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.AUTHZ", false]], "batch_create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.batch_create", false]], "cache_hosts_wts_tokens() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.cache_hosts_wts_tokens", false]], "children (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.children", false]], "column_to_use_as_guid (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.COLUMN_TO_USE_AS_GUID", false]], "commons_url (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.commons_url", false]], "copy() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.copy", false]], "create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create", false]], "create_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create_aliases", false]], "create_blank() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_blank", false]], "create_index_key_path() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create_index_key_path", false]], "create_job() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.create_job", false]], "create_new_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_new_version", false]], "create_object_list() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.create_object_list", false]], "create_program() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.create_program", false]], "create_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.create_project", false]], "create_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_record", false]], "created_time (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.created_time", false]], "curl() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.curl", false]], "current_dir (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.CURRENT_DIR", false]], "current_dir (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.CURRENT_DIR", false]], "current_dir (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.CURRENT_DIR", false]], "delete() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete", false]], "delete_alias() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_alias", false]], "delete_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_aliases", false]], "delete_all_guids() (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.delete_all_guids", false]], "delete_file() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.delete_file", false]], "delete_file_locations() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.delete_file_locations", false]], "delete_index_key_path() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_index_key_path", false]], "delete_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_node", false]], "delete_nodes() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_nodes", false]], "delete_object() (gen3.object.gen3object method)": [[6, "gen3.object.Gen3Object.delete_object", false]], "delete_program() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_program", false]], "delete_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_project", false]], "delete_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.delete_record", false]], "delete_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_record", false]], "delete_records() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_records", false]], "download() (gen3.tools.download.drs_download.downloadable method)": [[10, "gen3.tools.download.drs_download.Downloadable.download", false]], "download() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.download", false]], "download() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.download", false]], "download_files_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.download_files_in_drs_manifest", false]], "download_single() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.download_single", false]], "download_url() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.download_url", false]], "downloadable (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.Downloadable", false]], "downloadmanager (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.DownloadManager", false]], "downloadstatus (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.DownloadStatus", false]], "end_time (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.end_time", false]], "endpoint (gen3.metadata.gen3metadata attribute)": [[5, "gen3.metadata.Gen3Metadata.endpoint", false]], "export_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.export_node", false]], "export_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.export_record", false]], "file_name (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.file_name", false]], "file_name (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.file_name", false]], "file_size (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.file_size", false]], "file_size (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.file_size", false]], "gen3.tools": [[9, "module-gen3.tools", false]], "gen3.tools.download.drs_download": [[10, "module-gen3.tools.download.drs_download", false]], "gen3.tools.indexing.download_manifest": [[11, "module-gen3.tools.indexing.download_manifest", false]], "gen3.tools.indexing.index_manifest": [[11, "module-gen3.tools.indexing.index_manifest", false]], "gen3.tools.indexing.verify_manifest": [[11, "module-gen3.tools.indexing.verify_manifest", false]], "gen3.tools.metadata.ingest_manifest": [[12, "module-gen3.tools.metadata.ingest_manifest", false]], "gen3auth (class in gen3.auth)": [[0, "gen3.auth.Gen3Auth", false]], "gen3file (class in gen3.file)": [[1, "gen3.file.Gen3File", false]], "gen3index (class in gen3.index)": [[3, "gen3.index.Gen3Index", false]], "gen3jobs (class in gen3.jobs)": [[4, "gen3.jobs.Gen3Jobs", false]], "gen3metadata (class in gen3.metadata)": [[5, "gen3.metadata.Gen3Metadata", false]], "gen3object (class in gen3.object)": [[6, "gen3.object.Gen3Object", false]], "gen3query (class in gen3.query)": [[7, "gen3.query.Gen3Query", false]], "gen3submission (class in gen3.submission)": [[8, "gen3.submission.Gen3Submission", false]], "gen3wsstorage (class in gen3.wss)": [[13, "gen3.wss.Gen3WsStorage", false]], "get() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get", false]], "get() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get", false]], "get_access_token() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.get_access_token", false]], "get_access_token_from_wts() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.get_access_token_from_wts", false]], "get_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_aliases", false]], "get_all_records() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_all_records", false]], "get_dictionary_all() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_dictionary_all", false]], "get_dictionary_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_dictionary_node", false]], "get_fresh_token() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.get_fresh_token", false]], "get_graphql_schema() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_graphql_schema", false]], "get_guids_prefix() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_guids_prefix", false]], "get_index_key_paths() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_index_key_paths", false]], "get_latest_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_latest_version", false]], "get_output() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_output", false]], "get_presigned_url() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.get_presigned_url", false]], "get_programs() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_programs", false]], "get_project_dictionary() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_project_dictionary", false]], "get_project_manifest() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_project_manifest", false]], "get_projects() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_projects", false]], "get_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_record", false]], "get_record_doc() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_record_doc", false]], "get_records() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_records", false]], "get_records_on_page() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_records_on_page", false]], "get_stats() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_stats", false]], "get_status() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_status", false]], "get_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_urls", false]], "get_valid_guids() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_valid_guids", false]], "get_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_version", false]], "get_version() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_version", false]], "get_version() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_version", false]], "get_versions() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_versions", false]], "get_with_params() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_with_params", false]], "graphql_query() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.graphql_query", false]], "guid (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.GUID", false]], "guid_type_for_indexed_file_object (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.GUID_TYPE_FOR_INDEXED_FILE_OBJECT", false]], "guid_type_for_non_indexed_file_object (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.GUID_TYPE_FOR_NON_INDEXED_FILE_OBJECT", false]], "hostname (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.hostname", false]], "index_object_manifest() (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.index_object_manifest", false]], "indexd_record_page_size (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.INDEXD_RECORD_PAGE_SIZE", false]], "is_healthy() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.is_healthy", false]], "is_healthy() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.is_healthy", false]], "is_healthy() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.is_healthy", false]], "list_access_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_access_in_drs_manifest", false]], "list_drs_object() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_drs_object", false]], "list_files_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_files_in_drs_manifest", false]], "list_jobs() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.list_jobs", false]], "load() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.load", false]], "load_manifest() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.load_manifest", false]], "ls() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.ls", false]], "ls_path() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.ls_path", false]], "manifest (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.Manifest", false]], "max_concurrent_requests (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.MAX_CONCURRENT_REQUESTS", false]], "max_concurrent_requests (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.MAX_CONCURRENT_REQUESTS", false]], "max_concurrent_requests (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.MAX_CONCURRENT_REQUESTS", false]], "md5 (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.MD5", false]], "md5sum (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.md5sum", false]], "module": [[9, "module-gen3.tools", false], [10, "module-gen3.tools.download.drs_download", false], [11, "module-gen3.tools.indexing.download_manifest", false], [11, "module-gen3.tools.indexing.index_manifest", false], [11, "module-gen3.tools.indexing.verify_manifest", false], [12, "module-gen3.tools.metadata.ingest_manifest", false]], "object_id (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.object_id", false]], "object_id (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.object_id", false]], "object_type (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.object_type", false]], "open_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.open_project", false]], "pprint() (gen3.tools.download.drs_download.downloadable method)": [[10, "gen3.tools.download.drs_download.Downloadable.pprint", false]], "prev_guid (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.PREV_GUID", false]], "query() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.query", false]], "query() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.query", false]], "query() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.query", false]], "query_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.query_urls", false]], "raw_data_download() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.raw_data_download", false]], "refresh_access_token() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.refresh_access_token", false]], "resolve_objects() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.resolve_objects", false]], "rm() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.rm", false]], "rm_path() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.rm_path", false]], "size (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.SIZE", false]], "start_time (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.start_time", false]], "status (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.status", false]], "submit_file() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.submit_file", false]], "submit_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.submit_record", false]], "threadcontrol (class in gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.ThreadControl", false]], "tmp_folder (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.TMP_FOLDER", false]], "update() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.update", false]], "update_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.update_aliases", false]], "update_blank() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.update_blank", false]], "update_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.update_record", false]], "updated_time (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.updated_time", false]], "upload() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.upload", false]], "upload_file() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.upload_file", false]], "upload_file_to_guid() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.upload_file_to_guid", false]], "upload_url() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.upload_url", false]], "urls (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.URLS", false]], "user_access() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.user_access", false]]}, "objects": {"gen3": [[9, 3, 0, "-", "tools"]], "gen3.auth": [[0, 0, 1, "", "Gen3Auth"]], "gen3.auth.Gen3Auth": [[0, 1, 1, "", "curl"], [0, 1, 1, "", "get_access_token"], [0, 1, 1, "", "get_access_token_from_wts"], [0, 1, 1, "", "refresh_access_token"]], "gen3.file": [[1, 0, 1, "", "Gen3File"]], "gen3.file.Gen3File": [[1, 1, 1, "", "delete_file"], [1, 1, 1, "", "delete_file_locations"], [1, 1, 1, "", "download_single"], [1, 1, 1, "", "get_presigned_url"], [1, 1, 1, "", "upload_file"], [1, 1, 1, "", "upload_file_to_guid"]], "gen3.index": [[3, 0, 1, "", "Gen3Index"]], "gen3.index.Gen3Index": [[3, 1, 1, "", "async_create_record"], [3, 1, 1, "", "async_get_record"], [3, 1, 1, "", "async_get_records_from_checksum"], [3, 1, 1, "", "async_get_records_on_page"], [3, 1, 1, "", "async_get_with_params"], [3, 1, 1, "", "async_query_urls"], [3, 1, 1, "", "async_update_record"], [3, 1, 1, "", "create_blank"], [3, 1, 1, "", "create_new_version"], [3, 1, 1, "", "create_record"], [3, 1, 1, "", "delete_record"], [3, 1, 1, "", "get"], [3, 1, 1, "", "get_all_records"], [3, 1, 1, "", "get_guids_prefix"], [3, 1, 1, "", "get_latest_version"], [3, 1, 1, "", "get_record"], [3, 1, 1, "", "get_record_doc"], [3, 1, 1, "", "get_records"], [3, 1, 1, "", "get_records_on_page"], [3, 1, 1, "", "get_stats"], [3, 1, 1, "", "get_urls"], [3, 1, 1, "", "get_valid_guids"], [3, 1, 1, "", "get_version"], [3, 1, 1, "", "get_versions"], [3, 1, 1, "", "get_with_params"], [3, 1, 1, "", "is_healthy"], [3, 1, 1, "", "query_urls"], [3, 1, 1, "", "update_blank"], [3, 1, 1, "", "update_record"]], "gen3.jobs": [[4, 0, 1, "", "Gen3Jobs"]], "gen3.jobs.Gen3Jobs": [[4, 1, 1, "", "async_run_job_and_wait"], [4, 1, 1, "", "create_job"], [4, 1, 1, "", "get_output"], [4, 1, 1, "", "get_status"], [4, 1, 1, "", "get_version"], [4, 1, 1, "", "is_healthy"], [4, 1, 1, "", "list_jobs"]], "gen3.metadata": [[5, 0, 1, "", "Gen3Metadata"]], "gen3.metadata.Gen3Metadata": [[5, 1, 1, "", "async_create"], [5, 1, 1, "", "async_create_aliases"], [5, 1, 1, "", "async_delete_alias"], [5, 1, 1, "", "async_delete_aliases"], [5, 1, 1, "", "async_get"], [5, 1, 1, "", "async_get_aliases"], [5, 1, 1, "", "async_update"], [5, 1, 1, "", "async_update_aliases"], [5, 2, 1, "", "auth_provider"], [5, 1, 1, "", "batch_create"], [5, 1, 1, "", "create"], [5, 1, 1, "", "create_aliases"], [5, 1, 1, "", "create_index_key_path"], [5, 1, 1, "", "delete"], [5, 1, 1, "", "delete_alias"], [5, 1, 1, "", "delete_aliases"], [5, 1, 1, "", "delete_index_key_path"], [5, 2, 1, "", "endpoint"], [5, 1, 1, "", "get"], [5, 1, 1, "", "get_aliases"], [5, 1, 1, "", "get_index_key_paths"], [5, 1, 1, "", "get_version"], [5, 1, 1, "", "is_healthy"], [5, 1, 1, "", "query"], [5, 1, 1, "", "update"], [5, 1, 1, "", "update_aliases"]], "gen3.object": [[6, 0, 1, "", "Gen3Object"]], "gen3.object.Gen3Object": [[6, 1, 1, "", "delete_object"]], "gen3.query": [[7, 0, 1, "", "Gen3Query"]], "gen3.query.Gen3Query": [[7, 1, 1, "", "graphql_query"], [7, 1, 1, "", "query"], [7, 1, 1, "", "raw_data_download"]], "gen3.submission": [[8, 0, 1, "", "Gen3Submission"]], "gen3.submission.Gen3Submission": [[8, 1, 1, "", "create_program"], [8, 1, 1, "", "create_project"], [8, 1, 1, "", "delete_node"], [8, 1, 1, "", "delete_nodes"], [8, 1, 1, "", "delete_program"], [8, 1, 1, "", "delete_project"], [8, 1, 1, "", "delete_record"], [8, 1, 1, "", "delete_records"], [8, 1, 1, "", "export_node"], [8, 1, 1, "", "export_record"], [8, 1, 1, "", "get_dictionary_all"], [8, 1, 1, "", "get_dictionary_node"], [8, 1, 1, "", "get_graphql_schema"], [8, 1, 1, "", "get_programs"], [8, 1, 1, "", "get_project_dictionary"], [8, 1, 1, "", "get_project_manifest"], [8, 1, 1, "", "get_projects"], [8, 1, 1, "", "open_project"], [8, 1, 1, "", "query"], [8, 1, 1, "", "submit_file"], [8, 1, 1, "", "submit_record"]], "gen3.tools.download": [[10, 3, 0, "-", "drs_download"]], "gen3.tools.download.drs_download": [[10, 0, 1, "", "DownloadManager"], [10, 0, 1, "", "DownloadStatus"], [10, 0, 1, "", "Downloadable"], [10, 0, 1, "", "Manifest"], [10, 4, 1, "", "download_files_in_drs_manifest"], [10, 4, 1, "", "list_access_in_drs_manifest"], [10, 4, 1, "", "list_drs_object"], [10, 4, 1, "", "list_files_in_drs_manifest"]], "gen3.tools.download.drs_download.DownloadManager": [[10, 1, 1, "", "cache_hosts_wts_tokens"], [10, 1, 1, "", "download"], [10, 1, 1, "", "get_fresh_token"], [10, 1, 1, "", "resolve_objects"], [10, 1, 1, "", "user_access"]], "gen3.tools.download.drs_download.DownloadStatus": [[10, 2, 1, "", "end_time"], [10, 2, 1, "", "start_time"], [10, 2, 1, "", "status"]], "gen3.tools.download.drs_download.Downloadable": [[10, 2, 1, "", "_manager"], [10, 2, 1, "", "access_methods"], [10, 2, 1, "", "children"], [10, 2, 1, "", "created_time"], [10, 1, 1, "", "download"], [10, 2, 1, "", "file_name"], [10, 2, 1, "", "file_size"], [10, 2, 1, "", "hostname"], [10, 2, 1, "", "object_id"], [10, 2, 1, "", "object_type"], [10, 1, 1, "", "pprint"], [10, 2, 1, "", "updated_time"]], "gen3.tools.download.drs_download.Manifest": [[10, 2, 1, "", "commons_url"], [10, 1, 1, "", "create_object_list"], [10, 2, 1, "", "file_name"], [10, 2, 1, "", "file_size"], [10, 1, 1, "", "load"], [10, 1, 1, "", "load_manifest"], [10, 2, 1, "", "md5sum"], [10, 2, 1, "", "object_id"]], "gen3.tools.indexing": [[11, 3, 0, "-", "download_manifest"], [11, 3, 0, "-", "index_manifest"], [11, 3, 0, "-", "verify_manifest"]], "gen3.tools.indexing.download_manifest": [[11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "INDEXD_RECORD_PAGE_SIZE"], [11, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [11, 2, 1, "", "TMP_FOLDER"], [11, 4, 1, "", "async_download_object_manifest"]], "gen3.tools.indexing.index_manifest": [[11, 2, 1, "", "ACLS"], [11, 2, 1, "", "AUTHZ"], [11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "GUID"], [11, 2, 1, "", "MD5"], [11, 2, 1, "", "PREV_GUID"], [11, 2, 1, "", "SIZE"], [11, 0, 1, "", "ThreadControl"], [11, 2, 1, "", "URLS"], [11, 4, 1, "", "delete_all_guids"], [11, 4, 1, "", "index_object_manifest"]], "gen3.tools.indexing.verify_manifest": [[11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [11, 4, 1, "", "async_verify_object_manifest"]], "gen3.tools.metadata": [[12, 3, 0, "-", "ingest_manifest"]], "gen3.tools.metadata.ingest_manifest": [[12, 2, 1, "", "COLUMN_TO_USE_AS_GUID"], [12, 2, 1, "", "GUID_TYPE_FOR_INDEXED_FILE_OBJECT"], [12, 2, 1, "", "GUID_TYPE_FOR_NON_INDEXED_FILE_OBJECT"], [12, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [12, 4, 1, "", "async_ingest_metadata_manifest"], [12, 4, 1, "", "async_query_urls_from_indexd"]], "gen3.wss": [[13, 0, 1, "", "Gen3WsStorage"]], "gen3.wss.Gen3WsStorage": [[13, 1, 1, "", "copy"], [13, 1, 1, "", "download"], [13, 1, 1, "", "download_url"], [13, 1, 1, "", "ls"], [13, 1, 1, "", "ls_path"], [13, 1, 1, "", "rm"], [13, 1, 1, "", "rm_path"], [13, 1, 1, "", "upload"], [13, 1, 1, "", "upload_url"]]}, "objnames": {"0": ["py", "class", "Python class"], "1": ["py", "method", "Python method"], "2": ["py", "attribute", "Python attribute"], "3": ["py", "module", "Python module"], "4": ["py", "function", "Python function"]}, "objtypes": {"0": "py:class", "1": "py:method", "2": "py:attribute", "3": "py:module", "4": "py:function"}, "terms": {"": [1, 4, 8, 10, 11], "0": [5, 7, 8, 11], "0046513": [], "064572": [], "0a80fada010c": 11, "0a80fada096c": 11, "0a80fada097c": 11, "0a80fada098c": 11, "0a80fada099c": 11, "1": [4, 5, 8, 10, 11], "10": [5, 7, 11], "100": [8, 11], "11e9": 11, "1713542306": [], "1713542765": [], "1713543033": [], "1713543225": [], "1713543506": [], "1713543956": [11, 12], "1913438": 11, "2": [5, 11], "24": [11, 12], "255e396f": 11, "2877355": [], "2995": [], "3": [5, 11], "30": 8, "33": 5, "333": 5, "343434344": 11, "363455714": 11, "4": [5, 11], "4017086": [], "450c": 11, "4649727": [], "4714": 8, "473d83400bc1bc9dc635e334fadd433c": 11, "473d83400bc1bc9dc635e334faddd33c": 11, "473d83400bc1bc9dc635e334fadde33c": 11, "473d83400bc1bc9dc635e334faddf33c": 11, "5": [0, 5], "50": 7, "543434443": 11, "5669184": 12, "5899982": [], "6692646": [], "6f90": 8, "760149": [], "7d3d8d2083b4": 11, "8420": 8, "8882551": [], "93d9af72": 11, "9a07": 11, "A": [1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "AND": 5, "Be": 1, "But": 5, "By": 11, "For": [1, 5, 6, 7, 8, 9, 11], "IF": 11, "If": [0, 1, 7, 11, 12], "In": 10, "It": 10, "NOT": 12, "OR": 5, "One": 7, "Such": 9, "THE": 11, "That": 3, "The": [0, 1, 2, 3, 5, 8, 10, 11], "There": 11, "These": 9, "To": 11, "Will": [4, 7, 10], "_get_acl_from_row": 11, "_get_authz_from_row": 11, "_get_file_name_from_row": 11, "_get_file_size_from_row": 11, "_get_guid_for_row": 12, "_get_guid_from_row": 11, "_get_md5_from_row": 11, "_get_urls_from_row": 11, "_guid_typ": 12, "_manag": [2, 9, 10], "_query_for_associated_indexd_record_guid": 12, "_ssl": [3, 4, 5], "a5c6": 11, "ab167e49d25b488939b1ede42752458b": 3, "about": [2, 3], "abov": 11, "access": [0, 1, 3, 7, 10], "access_method": [2, 9, 10], "access_token": 0, "accesstoken": 0, "acl": [2, 3, 9, 11], "across": 11, "act": 0, "action": [9, 11], "actual": 11, "ad": 3, "add": [3, 5], "addit": [3, 5, 10, 11], "admin": [5, 11], "admin_endpoint_suffix": 5, "after": 10, "against": [3, 7, 8, 11, 12], "algorithm": 3, "alia": [3, 5], "alias": 5, "aliv": 7, "all": [1, 3, 4, 5, 6, 7, 8, 10, 11, 12], "allow": [0, 6, 8, 10, 11, 12], "allowed_data_upload_bucket": 1, "along": 2, "alreadi": 9, "also": 1, "altern": [5, 11], "alwai": 5, "ammount": 12, "amount": [1, 9], "an": [0, 3, 6, 8, 10, 11], "ani": [0, 5, 10, 11], "anoth": 5, "api": [0, 5, 8, 11], "api_kei": 11, "appli": 7, "appropri": 13, "ar": [5, 7, 8, 9, 10, 11], "arbitrari": 0, "argument": [0, 13], "arrai": 8, "asc": 7, "assign": 9, "assist": 10, "associ": [3, 5], "assum": 11, "async": [3, 4, 5, 9, 11, 12], "async_cr": [2, 5], "async_create_alias": [2, 5], "async_create_record": [2, 3], "async_delete_alia": [2, 5], "async_delete_alias": [2, 5], "async_download_object_manifest": [2, 9, 11], "async_get": [2, 5], "async_get_alias": [2, 5], "async_get_record": [2, 3], "async_get_records_from_checksum": [2, 3], "async_get_records_on_pag": [2, 3], "async_get_with_param": [2, 3], "async_ingest_metadata_manifest": [2, 9, 12], "async_query_url": [2, 3], "async_query_urls_from_indexd": [2, 9, 12], "async_run_job_and_wait": [2, 4], "async_upd": [2, 5], "async_update_alias": [2, 5], "async_update_record": [2, 3], "async_verify_object_manifest": [2, 9, 11], "asynchron": [3, 4, 5], "asyncio": [11, 12], "asyncron": 5, "attach": [3, 5], "attempt": 11, "attribut": [10, 11], "auth": [1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "auth_provid": [1, 2, 3, 4, 5, 6, 7, 8, 13], "authbas": 0, "authent": 0, "author": 1, "authz": [0, 1, 2, 3, 9, 10, 11], "auto": [0, 2], "automat": 0, "avail": [1, 2, 10, 11], "az": 1, "b": [5, 11], "b0f1": 11, "bar": 10, "base": [0, 1, 3, 4, 5, 6, 7, 8, 9, 11, 13], "baseid": 3, "basic": [3, 11, 12], "batch_creat": [2, 5], "batch_siz": 8, "behalf": 0, "behavior": 11, "being": 3, "belong": 8, "below": 11, "blank": 3, "blob": [5, 7], "bodi": 3, "bool": [4, 5, 8, 10, 11, 12], "boolean": 3, "bownload": 10, "broad": 9, "broken": 9, "bucket": [1, 6], "bundl": 10, "byte": 10, "c": [5, 11], "cach": 10, "cache_hosts_wts_token": [2, 9, 10], "call": [10, 13], "can": [0, 3, 4, 8, 11, 12], "capabl": 9, "case": [0, 10], "categori": 9, "ccle": 8, "ccle_one_record": 8, "ccle_sample_nod": 8, "cdi": 7, "chang": [3, 11], "checksum": [3, 10], "checksum_typ": 3, "child": 10, "children": [2, 9, 10], "chunk_siz": 8, "class": [0, 2, 10, 11, 13], "cli": 10, "client": [0, 3], "client_credenti": 0, "client_id": 0, "client_scop": 0, "client_secret": 0, "code": [2, 8], "column": [11, 12], "column_to_use_as_guid": [2, 9, 12], "columna": 11, "columnb": 11, "columnc": 11, "com": 7, "comma": 11, "command": [10, 11], "common": [0, 1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13], "commons_url": [2, 9, 10, 11, 12], "complet": [4, 11], "complex": 7, "concat": 11, "concurr": [11, 12], "configur": 1, "connect": 12, "consist": 3, "constructor": 0, "contain": [0, 2, 5, 8, 9, 10, 11, 12], "content": [3, 13], "content_created_d": 3, "content_updated_d": 3, "continu": 10, "control": 3, "conveni": 10, "copi": [2, 13], "coroutin": 11, "correspond": 3, "count": 3, "crdc": 0, "creat": [2, 3, 4, 5, 6, 8, 10, 11], "create_alias": [2, 5], "create_blank": [2, 3], "create_index_key_path": [2, 5], "create_job": [2, 4], "create_new_vers": [2, 3], "create_object_list": [2, 9, 10], "create_program": [2, 8], "create_project": [2, 8], "create_record": [2, 3], "created_tim": [2, 9, 10], "creation": [3, 11], "cred": 3, "credenti": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "csv": [8, 11, 12], "curl": [0, 2], "current": [6, 8, 10], "current_dir": [2, 9, 11], "custom": 11, "d": 5, "d70b41b9": 8, "data": [0, 1, 3, 5, 7, 8, 10, 11], "data_spreadsheet": 8, "data_typ": 7, "data_upload_bucket": 1, "dataa": 11, "datab": 11, "databas": 5, "datacommon": 0, "datafil": 10, "datamanag": 10, "date": 3, "datetim": [1, 3, 10], "dbgap": 12, "dcf": 8, "def": 11, "default": [0, 1, 3, 7, 8, 11, 12], "defin": [5, 8, 10], "delai": 4, "delet": [0, 1, 2, 3, 5, 6, 8, 10, 11], "delete_alia": [2, 5], "delete_alias": [2, 5], "delete_all_guid": [2, 9, 11], "delete_fil": [1, 2], "delete_file_loc": [1, 2, 6], "delete_index_key_path": [2, 5], "delete_nod": [2, 8], "delete_object": [2, 6], "delete_program": [2, 8], "delete_project": [2, 8], "delete_record": [2, 3, 8], "delete_unpacked_packag": 10, "delimet": [11, 12], "delimit": 11, "demograph": 8, "deprec": 1, "descript": [3, 5], "desir": 11, "dest_path": 13, "dest_urlstr": 13, "dest_w": 13, "dest_wskei": 13, "detail": [2, 7, 10], "determin": [10, 11, 12], "dev": 11, "dict": [3, 4, 5, 10, 11, 12], "dictionari": [3, 4, 5, 7, 8], "did": 3, "differ": 5, "direct": 0, "directori": [10, 11], "disabl": 10, "discoveri": 10, "disk": 13, "dispatch": 4, "dist_resolut": 3, "distribut": 3, "doc": [7, 10], "docstr": 2, "document": [1, 3], "doe": [0, 12], "domain": [11, 12], "done": 4, "download": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 13], "download_files_in_drs_manifest": [2, 9, 10], "download_list": 10, "download_manifest": 11, "download_singl": [1, 2], "download_url": [2, 13], "downloadmanag": [2, 9, 10], "downloadstatu": [2, 9, 10], "dr": [2, 9], "drs_download": 10, "drs_hostnam": 10, "drsdownload": 10, "drsobjecttyp": 10, "e": [5, 10], "e043ab8b77b9": 8, "each": [3, 8, 10, 11], "effici": 9, "eg": 3, "either": 8, "elasticsearch": 7, "els": [0, 12], "elsewher": 12, "empti": [8, 11], "enabl": 11, "end": [5, 10], "end_tim": [2, 9, 10], "endpoint": [0, 1, 2, 3, 4, 5, 7, 8, 13], "entir": 8, "entri": [3, 11], "env": 0, "environ": 0, "equal": 7, "error": [10, 11, 12], "error_nam": 11, "etc": 8, "even": 11, "everi": [9, 11], "everyth": 11, "ex": [0, 11, 12], "exampl": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "exclud": 3, "execut": [7, 8, 11], "exist": [1, 3, 5, 6, 9, 12], "expect": [5, 9, 11], "experi": 8, "expir": [0, 1], "expires_in": 1, "export": [8, 10], "export_nod": [2, 8], "export_record": [2, 8], "f1f8": 11, "factori": 10, "fail": [8, 10], "fals": [3, 5, 6, 10, 11], "featur": [1, 6], "fenc": [0, 1], "fetch": 0, "field": [3, 5, 7, 11, 12], "fieldnam": 11, "file": [0, 2, 3, 4, 8, 9, 10, 11, 12, 13], "file_nam": [1, 2, 3, 9, 10, 11], "file_s": [2, 9, 10, 11], "file_st": 3, "fileformat": 8, "filenam": [0, 8, 10, 11, 12], "files": 10, "fill": 12, "filter": [5, 7], "filter_object": 7, "first": [7, 8], "flag": 11, "folder": 11, "follow": [0, 11], "forc": 11, "force_metadata_columns_even_if_empti": 11, "form": 13, "format": [3, 5, 8, 11], "from": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13], "func_to_parse_row": [11, 12], "function": [2, 3, 4, 5, 9, 10, 11, 12], "g": 10, "gen3": [10, 11, 12], "gen3_api_kei": 0, "gen3_oidc_client_creds_secret": 0, "gen3auth": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "gen3fil": [1, 2], "gen3index": [2, 3], "gen3job": [2, 4, 10], "gen3metadata": [2, 5], "gen3object": [2, 6], "gen3queri": [2, 7], "gen3submiss": [2, 8], "gen3wsstorag": [2, 13], "gener": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 13], "get": [0, 1, 2, 3, 4, 5, 8, 10, 11, 12, 13], "get_access_token": [0, 2], "get_access_token_from_wt": [0, 2], "get_alias": [2, 5], "get_all_record": [2, 3], "get_dictionary_al": [2, 8], "get_dictionary_nod": [2, 8], "get_fresh_token": [2, 9, 10], "get_graphql_schema": [2, 8], "get_guid_from_fil": 12, "get_guids_prefix": [2, 3], "get_index_key_path": [2, 5], "get_latest_vers": [2, 3], "get_output": [2, 4], "get_presigned_url": [1, 2], "get_program": [2, 8], "get_project": [2, 8], "get_project_dictionari": [2, 8], "get_project_manifest": [2, 8], "get_record": [2, 3], "get_record_doc": [2, 3], "get_records_on_pag": [2, 3], "get_stat": [2, 3], "get_statu": [2, 4], "get_url": [2, 3], "get_valid_guid": [2, 3], "get_vers": [2, 3, 4, 5], "get_with_param": [2, 3], "giangb": 11, "github": [2, 7], "give": 1, "given": [0, 3, 4, 5, 8, 10, 12, 13], "global": [4, 5], "good": 3, "grant": 0, "graph": 8, "graphql": [7, 8], "graphql_queri": [2, 7], "group": 3, "guid": [1, 2, 3, 5, 6, 9, 11, 12], "guid_exampl": 11, "guid_for_row": 12, "guid_from_fil": 12, "guid_type_for_indexed_file_object": [2, 9, 12], "guid_type_for_non_indexed_file_object": [2, 9, 12], "guppi": 7, "ha": [0, 11], "handl": [3, 10], "hardcod": 0, "has_vers": 3, "hash": [3, 11], "hash_typ": 3, "have": [5, 11], "header": 11, "healthi": [3, 4, 5], "help": 11, "helper": 2, "hit": 11, "host": 10, "hostnam": [2, 9, 10], "how": [8, 11], "howto": 10, "http": [0, 7, 11, 12], "i": [0, 1, 2, 3, 4, 5, 8, 10, 11, 12], "id": [0, 1, 3, 5, 10, 11], "idea": 3, "identifi": [3, 5, 9, 11], "idp": 0, "illustr": 11, "immut": 3, "implement": 0, "implic": 11, "import": 11, "includ": [0, 3], "indent": 10, "index": [0, 2, 5, 9], "index_manifest": 11, "index_object_manifest": [2, 9, 11], "indexd": [1, 3, 6, 10, 11, 12], "indexd_field": [11, 12], "indexd_record_page_s": [2, 9, 11], "indexed_file_object_guid": 12, "indic": [0, 11], "infil": 10, "info": [3, 11], "inform": [2, 3, 10], "ingest": [2, 9], "ingest_manifest": 12, "initi": [0, 10], "input": [4, 10, 11], "input_manifest": 11, "instal": [0, 2, 11], "instanc": [1, 3, 6, 7, 8, 9, 10], "instead": [1, 7, 11], "int": [1, 3, 5, 7, 8, 10, 11, 12], "integ": [1, 3, 8], "intend": 0, "interact": [1, 3, 4, 5, 6, 8, 13], "interest": 10, "interpret": 0, "introspect": 8, "involv": 9, "is_healthi": [2, 3, 4, 5], "is_indexed_file_object": 12, "isn": 1, "issu": 0, "its": [1, 3], "job": 2, "job_id": 4, "job_input": 4, "job_nam": 4, "json": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "just": [5, 11, 12], "jwt": 0, "kei": [0, 3, 5, 13], "know": 11, "known": 10, "kwarg": [3, 4, 5], "l": [2, 13], "larg": 9, "last": 10, "latest": 3, "least": 3, "level": 6, "librari": 11, "like": [3, 5, 9, 11, 12], "limit": [1, 3, 5, 12], "linear": 4, "linux": 10, "list": [0, 1, 3, 4, 5, 7, 8, 10, 11, 13], "list_access_in_drs_manifest": [2, 9, 10], "list_drs_object": [2, 9, 10], "list_files_in_drs_manifest": [2, 9, 10], "list_job": [2, 4], "live": [11, 12], "load": [2, 9, 10], "load_manifest": [2, 9, 10], "local": [0, 13], "locat": [1, 6], "lock": 12, "log": [8, 10, 11, 12], "logic": [5, 12], "loop": 11, "ls_path": [2, 13], "maco": 11, "made": 3, "mai": [0, 9, 11], "main": 10, "make": [9, 11], "manag": [1, 5, 10], "mani": [8, 11], "manifest": [2, 8, 9, 10, 11, 12], "manifest_1": 10, "manifest_fil": [11, 12], "manifest_file_delimit": [11, 12], "manifest_row_pars": [11, 12], "map": [0, 11], "mark": 8, "master": 7, "match": [3, 5, 12], "max": 5, "max_concurrent_request": [2, 9, 11, 12], "max_presigned_url_ttl": 1, "max_tri": 8, "maximum": [11, 12], "md": [5, 7, 10, 12], "md5": [2, 3, 9, 11], "md5_hash": 11, "md5sum": [2, 9, 10], "mean": 8, "mechan": 3, "merg": 5, "metadata": [2, 3, 6, 9, 11], "metadata_list": 5, "metadata_sourc": 12, "metadata_typ": 12, "metdata": 12, "method": [1, 7, 10], "minimum": 10, "minut": 0, "mode": 7, "modul": [2, 10, 11], "more": [2, 5, 7, 9, 10], "most": 9, "mostli": 2, "multipl": [8, 11], "must": [1, 5], "my_common": 10, "my_credenti": 10, "my_field": 7, "my_index": 7, "my_program": 7, "my_project": 7, "name": [3, 4, 8, 10, 11, 12, 13], "namespac": [0, 12], "necessari": [3, 5], "need": [3, 7, 10, 11], "nest": 5, "net": 11, "never": 0, "new": [0, 3], "node": 8, "node_nam": 8, "node_typ": 8, "none": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "note": [0, 3, 11, 12], "noth": [3, 6], "now": [1, 8], "num": 5, "num_process": 11, "num_total_fil": 11, "number": [3, 7, 8, 11, 12], "o": 0, "object": [1, 2, 3, 4, 5, 7, 8, 9, 10, 11, 13], "object_id": [1, 2, 9, 10], "object_list": 10, "object_typ": [2, 9, 10], "objectid": 10, "obtain": [0, 10], "occur": 10, "off": 5, "offset": [5, 7], "oidc": 0, "old": 3, "one": [3, 5, 10, 11], "onli": [3, 5, 7, 8, 10, 11], "open": [8, 10, 11], "open_project": [2, 8], "openid": 0, "opt": 0, "option": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11], "order": [0, 8], "ordered_node_list": 8, "org": 10, "otherwis": 10, "output": [4, 5, 11, 12], "output_dir": 10, "output_filenam": [11, 12], "overrid": [0, 11, 12], "overwrit": 5, "own": 0, "packag": 10, "page": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 13], "pagin": 3, "parallel": 11, "param": [3, 5, 8, 10], "paramet": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "pars": [10, 11, 12, 13], "parser": [11, 12], "particular": 0, "pass": [0, 7, 8, 10], "password": [11, 12], "path": [0, 1, 5, 10, 11, 13], "path_to_manifest": 11, "pattern": [3, 12], "pdcdatastor": 11, "pend": 10, "per": [11, 12], "peregrin": 8, "permiss": 10, "persist": 9, "phs0001": 11, "phs0002": 11, "pick": 1, "pla": 11, "place": 11, "planx": 11, "point": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "popul": [10, 12], "posit": [1, 7], "possibl": 10, "post": [0, 11], "pprint": [2, 9, 10], "prefix": 3, "presign": 1, "pretti": 10, "prev_guid": [2, 9, 11], "previou": [3, 11], "previous": 4, "print": [8, 10], "process": 11, "processed_fil": 11, "profil": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "program": [8, 11], "progress": [8, 10], "project": [8, 11], "project_id": [7, 8], "protocol": 1, "provid": [0, 1, 3, 5, 7, 8, 12], "public": [3, 5], "put": 0, "py": 11, "python": [2, 9, 11], "python3": 11, "python_subprocess_command": 11, "queri": [1, 2, 3, 5, 8, 11, 12], "query_str": 7, "query_txt": [7, 8], "query_url": [2, 3], "quickstart": 2, "rather": 0, "raw": [7, 11], "raw_data_download": [2, 7], "rbac": 3, "read": [3, 5, 11], "readm": 2, "reason": 10, "record": [1, 3, 5, 7, 8, 11, 12], "refresh": [0, 10], "refresh_access_token": [0, 2], "refresh_fil": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "refresh_token": 0, "regist": 8, "regular": 7, "relat": 9, "remov": [1, 6, 11, 13], "replac": 11, "replace_url": 11, "repo": 2, "repres": [3, 5, 10], "represent": [1, 3], "request": [0, 1, 3, 5, 8, 11, 12], "requir": 10, "resolv": 10, "resolve_object": [2, 9, 10], "respect": 7, "respons": [0, 1, 3, 4, 5], "result": [1, 8, 10, 11], "retri": 8, "retriev": [1, 8, 10, 12], "return": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11], "return_full_metadata": 5, "rev": 3, "revers": 8, "revis": 3, "right": 1, "rm": [2, 13], "rm_path": [2, 13], "root": [11, 12], "row": [7, 8, 11, 12], "row_offset": 8, "rtype": 3, "run": [8, 11], "s3": [1, 10, 11], "safe": 11, "same": [5, 11, 13], "sampl": [8, 10], "sandbox": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "save": 10, "save_directori": 10, "schema": 8, "scope": [0, 1], "screen": 8, "script": 2, "search": [0, 2, 3], "second": [1, 4], "secret": 0, "see": [7, 10, 11], "self": 10, "semaphon": 12, "semaphor": 12, "separ": [0, 11], "server": 10, "servic": [1, 3, 4, 5, 6, 8, 11, 12, 13], "service_loc": [3, 4, 5], "session": 11, "set": [0, 1, 5, 10], "setup": 2, "sheepdog": 8, "should": [0, 8, 11], "show": 10, "show_progress": 10, "shown": 11, "sign": 1, "signpost": 3, "similar": 10, "simpl": 3, "simpli": 11, "sinc": 3, "singl": [1, 5, 8], "size": [2, 3, 9, 10, 11], "skip": 8, "sleep": 4, "so": 11, "some": [0, 2], "someth": 11, "sort": 7, "sort_field": 7, "sort_object": 7, "sourc": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "space": [0, 11], "specif": [5, 8, 11, 12], "specifi": [0, 1, 3, 11, 13], "spreadsheet": 8, "src_path": 13, "src_urlstr": 13, "src_w": 13, "src_wskei": 13, "ssl": [3, 4, 5], "start": [3, 4, 7, 8, 10], "start_tim": [2, 9, 10], "static": 10, "statu": [2, 4, 9, 10], "storag": [1, 2, 6], "store": [1, 3, 10], "str": [0, 1, 3, 4, 5, 7, 8, 10, 11, 12], "string": [0, 3, 5, 11, 13], "strip": 11, "sub": 8, "subject": [7, 8], "submiss": 2, "submit": [8, 11], "submit_additional_metadata_column": 11, "submit_fil": [2, 8], "submit_record": [2, 8], "submitter_id": 7, "success": 10, "successfulli": 10, "suffici": 3, "suppli": 3, "support": [0, 1, 5, 8, 11], "sure": 1, "synchron": 11, "syntax": 7, "system": [6, 7, 8, 9], "t": [1, 5, 11], "tab": 11, "task": 9, "temporari": 11, "test": 11, "test1": 11, "test2": 11, "test3": 11, "test4": 11, "test5": 11, "text": [1, 7, 8], "than": [0, 5], "thei": [0, 10], "them": [10, 11], "thi": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "those": 11, "thread": 11, "thread_num": 11, "threadcontrol": [2, 9, 11], "through": [8, 11], "tier": 7, "time": [1, 3, 8, 10, 11], "timestamp": 10, "tmp_folder": [2, 9, 11], "token": [0, 10], "tool": 2, "total": 11, "treat": [1, 5], "tree": 10, "true": [3, 4, 5, 6, 7, 8, 10, 11, 12], "try": 0, "tsv": [8, 11, 12], "tupl": [0, 3, 11, 12], "type": [1, 3, 4, 5, 7, 8, 10, 11, 12], "typic": 10, "uc": 7, "unaccess": 7, "under": [0, 8, 13], "uniqu": [1, 5], "unknown": 10, "unpack": 10, "unpack_packag": 10, "until": [4, 10], "up": [5, 9], "updat": [2, 3, 5, 10, 11], "update_alias": [2, 5], "update_blank": [2, 3], "update_record": [2, 3], "updated_tim": [2, 9, 10], "upload": [1, 2, 3, 8, 13], "upload_fil": [1, 2], "upload_file_to_guid": [1, 2], "upload_url": [2, 13], "url": [1, 2, 3, 9, 10, 11, 12, 13], "urls_metadata": 3, "us": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "usag": 11, "use_agg_md": 5, "user": [0, 10, 12], "user_access": [2, 9, 10], "usual": 12, "utcnow": 1, "util": 9, "uuid": [1, 3, 8], "uuid1": 8, "uuid2": 8, "valid": [3, 7], "valu": [0, 1, 3, 5, 7, 10, 11], "value_from_indexd": 11, "value_from_manifest": 11, "variabl": [0, 7, 8], "variou": 2, "verbos": [7, 8], "verif": 11, "verifi": [2, 9], "verify_manifest": 11, "verify_object_manifest": 11, "version": [3, 4, 5], "vital_statu": 7, "w": 13, "wa": 0, "wai": 10, "wait": 4, "want": [0, 3, 8], "warn": 11, "we": [3, 11], "web": 0, "what": 5, "when": [0, 3, 7, 10, 12], "where": [0, 3, 5, 11, 12], "whether": [3, 4, 5, 8, 11, 12], "which": [8, 10], "while": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "whose": 5, "within": [0, 2, 9], "without": [3, 5], "won": 5, "work": [0, 10], "workaround": 11, "worksheet": 8, "workspac": [0, 2], "wrapper": 10, "write": 11, "ws_urlstr": 13, "wskei": 13, "wss": 13, "wt": [0, 10], "x": 11, "xlsx": 8, "you": [0, 3, 8, 11], "your": 0}, "titles": ["Gen3 Auth Helper", "Gen3 File Class", "Welcome to Gen3 SDK\u2019s documentation!", "Gen3 Index Class", "Gen3 Jobs Class", "Gen3 Metadata Class", "Gen3 Object Class", "Gen3 Query Class", "Gen3 Submission Class", "Gen3 Tools", "DRS Download Tools", "Indexing Tools", "Metadata Tools", "Gen3 Workspace Storage"], "titleterms": {"": 2, "auth": 0, "class": [1, 3, 4, 5, 6, 7, 8], "document": 2, "download": [10, 11], "dr": 10, "file": 1, "gen3": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 13], "helper": 0, "index": [3, 11], "indic": 2, "ingest": 12, "job": 4, "metadata": [5, 12], "object": 6, "queri": 7, "sdk": 2, "storag": 13, "submiss": 8, "tabl": 2, "tool": [9, 10, 11, 12], "verifi": 11, "welcom": 2, "workspac": 13}}) \ No newline at end of file diff --git a/docs/_build/html/tools/indexing.html b/docs/_build/html/tools/indexing.html index f507764c7..8c61031b3 100644 --- a/docs/_build/html/tools/indexing.html +++ b/docs/_build/html/tools/indexing.html @@ -381,7 +381,7 @@

Indexing Tools
-async gen3.tools.indexing.verify_manifest.async_verify_object_manifest(commons_url, manifest_file, max_concurrent_requests=24, manifest_row_parsers={'acl': <function _get_acl_from_row>, 'authz': <function _get_authz_from_row>, 'file_name': <function _get_file_name_from_row>, 'file_size': <function _get_file_size_from_row>, 'guid': <function _get_guid_from_row>, 'md5': <function _get_md5_from_row>, 'urls': <function _get_urls_from_row>}, manifest_file_delimiter=None, output_filename='verify-manifest-errors-1713543506.064572.log')[source]
+async gen3.tools.indexing.verify_manifest.async_verify_object_manifest(commons_url, manifest_file, max_concurrent_requests=24, manifest_row_parsers={'acl': <function _get_acl_from_row>, 'authz': <function _get_authz_from_row>, 'file_name': <function _get_file_name_from_row>, 'file_size': <function _get_file_size_from_row>, 'guid': <function _get_guid_from_row>, 'md5': <function _get_md5_from_row>, 'urls': <function _get_urls_from_row>}, manifest_file_delimiter=None, output_filename='verify-manifest-errors-1713543956.1913438.log')[source]

Verify all file object records into a manifest csv

Parameters:
diff --git a/docs/_build/html/tools/metadata.html b/docs/_build/html/tools/metadata.html index 1c2f328a0..b5932af5e 100644 --- a/docs/_build/html/tools/metadata.html +++ b/docs/_build/html/tools/metadata.html @@ -102,7 +102,7 @@

Metadata Tools
-async gen3.tools.metadata.ingest_manifest.async_ingest_metadata_manifest(commons_url, manifest_file, metadata_source, auth=None, max_concurrent_requests=24, manifest_row_parsers={'guid_for_row': <function _get_guid_for_row>, 'indexed_file_object_guid': <function _query_for_associated_indexd_record_guid>}, manifest_file_delimiter=None, output_filename='ingest-metadata-manifest-errors-1713543506.4017086.log', get_guid_from_file=True, metadata_type=None)[source]
+async gen3.tools.metadata.ingest_manifest.async_ingest_metadata_manifest(commons_url, manifest_file, metadata_source, auth=None, max_concurrent_requests=24, manifest_row_parsers={'guid_for_row': <function _get_guid_for_row>, 'indexed_file_object_guid': <function _query_for_associated_indexd_record_guid>}, manifest_file_delimiter=None, output_filename='ingest-metadata-manifest-errors-1713543956.5669184.log', get_guid_from_file=True, metadata_type=None)[source]

Ingest all metadata records into a manifest csv

Parameters:
From 888695978a1b8c69f97a16616aaa98669033f5f7 Mon Sep 17 00:00:00 2001 From: Alex Date: Fri, 19 Apr 2024 11:27:43 -0500 Subject: [PATCH 13/62] fix(poetry): hard-code location, can't figure out env vars switching b/t steps in GH Action --- .github/workflows/build.yaml | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index 608d4e666..ec2e5fbda 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -28,13 +28,12 @@ jobs: run: | pip install --upgrade pip curl -sSL https://install.python-poetry.org | python - - echo "PATH=/Users/runner/.local/bin:$PATH" >> $GITHUB_ENV pip --version - poetry --version + /Users/runner/.local/bin/poetry --version - name: Install dependencies run: | - poetry install -vv --all-extras --no-interaction --no-cache - poetry show -vv + /Users/runner/.local/bin/poetry install -vv --all-extras --no-interaction --no-cache + /Users/runner/.local/bin/poetry show -vv shell: bash - name: Build using pyinstaller run: | From 293db2f40ae30f8c5f3dc222259252686e758388 Mon Sep 17 00:00:00 2001 From: Avantol13 Date: Fri, 19 Apr 2024 16:28:55 +0000 Subject: [PATCH 14/62] Apply automatic documentation changes --- docs/_build/doctrees/environment.pickle | Bin 1579893 -> 1579893 bytes docs/_build/doctrees/tools/indexing.doctree | Bin 100291 -> 100291 bytes docs/_build/doctrees/tools/metadata.doctree | Bin 35934 -> 35934 bytes docs/_build/html/searchindex.js | 2 +- docs/_build/html/tools/indexing.html | 2 +- docs/_build/html/tools/metadata.html | 2 +- 6 files changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/_build/doctrees/environment.pickle b/docs/_build/doctrees/environment.pickle index 8951d9fd11e76cc46108b1cf104a99027a4dfc6a..668466ee594b89465c01d300c9b58480d7365371 100644 GIT binary patch delta 10537 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 delta 10571 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 diff --git a/docs/_build/doctrees/tools/indexing.doctree b/docs/_build/doctrees/tools/indexing.doctree index f1cbf37a355b451d5a5e5916d7197b3ae712a72f..6558b4e5605ef50747a2590120b655489b5dc391 100644 GIT binary patch delta 104 zcmX@y&vv+op{1d*iLu4@B5OuJR#c%g4vbH@QG}-N@nLjF72)?~ Ov_TQs9`4JSV+8=fIndexing Tools
-async gen3.tools.indexing.verify_manifest.async_verify_object_manifest(commons_url, manifest_file, max_concurrent_requests=24, manifest_row_parsers={'acl': <function _get_acl_from_row>, 'authz': <function _get_authz_from_row>, 'file_name': <function _get_file_name_from_row>, 'file_size': <function _get_file_size_from_row>, 'guid': <function _get_guid_from_row>, 'md5': <function _get_md5_from_row>, 'urls': <function _get_urls_from_row>}, manifest_file_delimiter=None, output_filename='verify-manifest-errors-1713543956.1913438.log')[source]
+async gen3.tools.indexing.verify_manifest.async_verify_object_manifest(commons_url, manifest_file, max_concurrent_requests=24, manifest_row_parsers={'acl': <function _get_acl_from_row>, 'authz': <function _get_authz_from_row>, 'file_name': <function _get_file_name_from_row>, 'file_size': <function _get_file_size_from_row>, 'guid': <function _get_guid_from_row>, 'md5': <function _get_md5_from_row>, 'urls': <function _get_urls_from_row>}, manifest_file_delimiter=None, output_filename='verify-manifest-errors-1713544131.8375325.log')[source]

Verify all file object records into a manifest csv

Parameters:
diff --git a/docs/_build/html/tools/metadata.html b/docs/_build/html/tools/metadata.html index b5932af5e..cc46fce6c 100644 --- a/docs/_build/html/tools/metadata.html +++ b/docs/_build/html/tools/metadata.html @@ -102,7 +102,7 @@

Metadata Tools
-async gen3.tools.metadata.ingest_manifest.async_ingest_metadata_manifest(commons_url, manifest_file, metadata_source, auth=None, max_concurrent_requests=24, manifest_row_parsers={'guid_for_row': <function _get_guid_for_row>, 'indexed_file_object_guid': <function _query_for_associated_indexd_record_guid>}, manifest_file_delimiter=None, output_filename='ingest-metadata-manifest-errors-1713543956.5669184.log', get_guid_from_file=True, metadata_type=None)[source]
+async gen3.tools.metadata.ingest_manifest.async_ingest_metadata_manifest(commons_url, manifest_file, metadata_source, auth=None, max_concurrent_requests=24, manifest_row_parsers={'guid_for_row': <function _get_guid_for_row>, 'indexed_file_object_guid': <function _query_for_associated_indexd_record_guid>}, manifest_file_delimiter=None, output_filename='ingest-metadata-manifest-errors-1713544132.1771936.log', get_guid_from_file=True, metadata_type=None)[source]

Ingest all metadata records into a manifest csv

Parameters:
From 88ab1f37ec384dbd8109f335298335bbfbd367ed Mon Sep 17 00:00:00 2001 From: Alex Date: Fri, 19 Apr 2024 11:32:04 -0500 Subject: [PATCH 15/62] fix(poetry): just install via pip --- .github/workflows/build.yaml | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index ec2e5fbda..01038b985 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -24,16 +24,15 @@ jobs: python-version: '3.9' - name: Install poetry - # that is poetry's recommended way to install run: | pip install --upgrade pip - curl -sSL https://install.python-poetry.org | python - pip --version - /Users/runner/.local/bin/poetry --version + pip install poetry + pip -m poetry --version - name: Install dependencies run: | - /Users/runner/.local/bin/poetry install -vv --all-extras --no-interaction --no-cache - /Users/runner/.local/bin/poetry show -vv + pip -m poetry install -vv --all-extras --no-interaction --no-cache + pip -m poetry show -vv shell: bash - name: Build using pyinstaller run: | From 20ac93a3076300bbb0a981535a5be8615598d6f0 Mon Sep 17 00:00:00 2001 From: Avantol13 Date: Fri, 19 Apr 2024 16:33:21 +0000 Subject: [PATCH 16/62] Apply automatic documentation changes --- docs/_build/doctrees/environment.pickle | Bin 1579893 -> 1579893 bytes docs/_build/doctrees/tools/indexing.doctree | Bin 100291 -> 100291 bytes docs/_build/doctrees/tools/metadata.doctree | Bin 35934 -> 35934 bytes docs/_build/html/searchindex.js | 2 +- docs/_build/html/tools/indexing.html | 2 +- docs/_build/html/tools/metadata.html | 2 +- 6 files changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/_build/doctrees/environment.pickle b/docs/_build/doctrees/environment.pickle index 668466ee594b89465c01d300c9b58480d7365371..2542c166c44ce91665908782babdd75a05f3746d 100644 GIT binary patch delta 10331 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 JX6B&S{{fktLa+b; delta 10273 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 X;mKYWmdGk6_gT0h^EcnOs1F7J0U#Xn delta 105 zcmcaNgX!K3rVZR$+=j+RdWPoahL*-=lQZ>gHV0|(up$d?&eY$>A%LVxFDE};ee%H^ X;mKYWmdGk6_gT0h^EcnOs1F7J_sAT} diff --git a/docs/_build/html/searchindex.js b/docs/_build/html/searchindex.js index 4abe86380..d4ba42cce 100644 --- a/docs/_build/html/searchindex.js +++ b/docs/_build/html/searchindex.js @@ -1 +1 @@ -Search.setIndex({"alltitles": {"DRS Download Tools": [[10, "module-gen3.tools.download.drs_download"]], "Download": [[11, "module-gen3.tools.indexing.download_manifest"]], "Gen3 Auth Helper": [[0, "gen3-auth-helper"]], "Gen3 File Class": [[1, "gen3-file-class"]], "Gen3 Index Class": [[3, "gen3-index-class"]], "Gen3 Jobs Class": [[4, "gen3-jobs-class"]], "Gen3 Metadata Class": [[5, "gen3-metadata-class"]], "Gen3 Object Class": [[6, "gen3-object-class"]], "Gen3 Query Class": [[7, "gen3-query-class"]], "Gen3 Submission Class": [[8, "gen3-submission-class"]], "Gen3 Tools": [[9, "gen3-tools"]], "Gen3 Workspace Storage": [[13, "gen3-workspace-storage"]], "Index": [[11, "module-gen3.tools.indexing.index_manifest"]], "Indexing Tools": [[11, "indexing-tools"]], "Indices and tables": [[2, "indices-and-tables"]], "Ingest": [[12, "module-gen3.tools.metadata.ingest_manifest"]], "Metadata Tools": [[12, "metadata-tools"]], "Verify": [[11, "module-gen3.tools.indexing.verify_manifest"]], "Welcome to Gen3 SDK\u2019s documentation!": [[2, "welcome-to-gen3-sdk-s-documentation"]]}, "docnames": ["auth", "file", "index", "indexing", "jobs", "metadata", "object", "query", "submission", "tools", "tools/drs_pull", "tools/indexing", "tools/metadata", "wss"], "envversion": {"sphinx": 61, "sphinx.domains.c": 3, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 9, "sphinx.domains.index": 1, "sphinx.domains.javascript": 3, "sphinx.domains.math": 2, "sphinx.domains.python": 4, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx.ext.viewcode": 1}, "filenames": ["auth.rst", "file.rst", "index.rst", "indexing.rst", "jobs.rst", "metadata.rst", "object.rst", "query.rst", "submission.rst", "tools.rst", "tools/drs_pull.rst", "tools/indexing.rst", "tools/metadata.rst", "wss.rst"], "indexentries": {"_manager (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable._manager", false]], "access_methods (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.access_methods", false]], "acls (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.ACLS", false]], "async_create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_create", false]], "async_create_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_create_aliases", false]], "async_create_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_create_record", false]], "async_delete_alias() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_delete_alias", false]], "async_delete_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_delete_aliases", false]], "async_download_object_manifest() (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.async_download_object_manifest", false]], "async_get() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_get", false]], "async_get_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_get_aliases", false]], "async_get_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_record", false]], "async_get_records_from_checksum() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_records_from_checksum", false]], "async_get_records_on_page() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_records_on_page", false]], "async_get_with_params() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_with_params", false]], "async_ingest_metadata_manifest() (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.async_ingest_metadata_manifest", false]], "async_query_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_query_urls", false]], "async_query_urls_from_indexd() (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.async_query_urls_from_indexd", false]], "async_run_job_and_wait() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.async_run_job_and_wait", false]], "async_update() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_update", false]], "async_update_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_update_aliases", false]], "async_update_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_update_record", false]], "async_verify_object_manifest() (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.async_verify_object_manifest", false]], "auth_provider (gen3.metadata.gen3metadata attribute)": [[5, "gen3.metadata.Gen3Metadata.auth_provider", false]], "authz (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.AUTHZ", false]], "batch_create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.batch_create", false]], "cache_hosts_wts_tokens() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.cache_hosts_wts_tokens", false]], "children (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.children", false]], "column_to_use_as_guid (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.COLUMN_TO_USE_AS_GUID", false]], "commons_url (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.commons_url", false]], "copy() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.copy", false]], "create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create", false]], "create_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create_aliases", false]], "create_blank() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_blank", false]], "create_index_key_path() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create_index_key_path", false]], "create_job() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.create_job", false]], "create_new_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_new_version", false]], "create_object_list() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.create_object_list", false]], "create_program() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.create_program", false]], "create_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.create_project", false]], "create_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_record", false]], "created_time (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.created_time", false]], "curl() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.curl", false]], "current_dir (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.CURRENT_DIR", false]], "current_dir (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.CURRENT_DIR", false]], "current_dir (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.CURRENT_DIR", false]], "delete() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete", false]], "delete_alias() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_alias", false]], "delete_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_aliases", false]], "delete_all_guids() (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.delete_all_guids", false]], "delete_file() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.delete_file", false]], "delete_file_locations() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.delete_file_locations", false]], "delete_index_key_path() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_index_key_path", false]], "delete_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_node", false]], "delete_nodes() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_nodes", false]], "delete_object() (gen3.object.gen3object method)": [[6, "gen3.object.Gen3Object.delete_object", false]], "delete_program() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_program", false]], "delete_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_project", false]], "delete_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.delete_record", false]], "delete_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_record", false]], "delete_records() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_records", false]], "download() (gen3.tools.download.drs_download.downloadable method)": [[10, "gen3.tools.download.drs_download.Downloadable.download", false]], "download() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.download", false]], "download() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.download", false]], "download_files_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.download_files_in_drs_manifest", false]], "download_single() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.download_single", false]], "download_url() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.download_url", false]], "downloadable (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.Downloadable", false]], "downloadmanager (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.DownloadManager", false]], "downloadstatus (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.DownloadStatus", false]], "end_time (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.end_time", false]], "endpoint (gen3.metadata.gen3metadata attribute)": [[5, "gen3.metadata.Gen3Metadata.endpoint", false]], "export_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.export_node", false]], "export_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.export_record", false]], "file_name (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.file_name", false]], "file_name (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.file_name", false]], "file_size (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.file_size", false]], "file_size (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.file_size", false]], "gen3.tools": [[9, "module-gen3.tools", false]], "gen3.tools.download.drs_download": [[10, "module-gen3.tools.download.drs_download", false]], "gen3.tools.indexing.download_manifest": [[11, "module-gen3.tools.indexing.download_manifest", false]], "gen3.tools.indexing.index_manifest": [[11, "module-gen3.tools.indexing.index_manifest", false]], "gen3.tools.indexing.verify_manifest": [[11, "module-gen3.tools.indexing.verify_manifest", false]], "gen3.tools.metadata.ingest_manifest": [[12, "module-gen3.tools.metadata.ingest_manifest", false]], "gen3auth (class in gen3.auth)": [[0, "gen3.auth.Gen3Auth", false]], "gen3file (class in gen3.file)": [[1, "gen3.file.Gen3File", false]], "gen3index (class in gen3.index)": [[3, "gen3.index.Gen3Index", false]], "gen3jobs (class in gen3.jobs)": [[4, "gen3.jobs.Gen3Jobs", false]], "gen3metadata (class in gen3.metadata)": [[5, "gen3.metadata.Gen3Metadata", false]], "gen3object (class in gen3.object)": [[6, "gen3.object.Gen3Object", false]], "gen3query (class in gen3.query)": [[7, "gen3.query.Gen3Query", false]], "gen3submission (class in gen3.submission)": [[8, "gen3.submission.Gen3Submission", false]], "gen3wsstorage (class in gen3.wss)": [[13, "gen3.wss.Gen3WsStorage", false]], "get() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get", false]], "get() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get", false]], "get_access_token() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.get_access_token", false]], "get_access_token_from_wts() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.get_access_token_from_wts", false]], "get_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_aliases", false]], "get_all_records() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_all_records", false]], "get_dictionary_all() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_dictionary_all", false]], "get_dictionary_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_dictionary_node", false]], "get_fresh_token() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.get_fresh_token", false]], "get_graphql_schema() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_graphql_schema", false]], "get_guids_prefix() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_guids_prefix", false]], "get_index_key_paths() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_index_key_paths", false]], "get_latest_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_latest_version", false]], "get_output() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_output", false]], "get_presigned_url() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.get_presigned_url", false]], "get_programs() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_programs", false]], "get_project_dictionary() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_project_dictionary", false]], "get_project_manifest() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_project_manifest", false]], "get_projects() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_projects", false]], "get_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_record", false]], "get_record_doc() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_record_doc", false]], "get_records() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_records", false]], "get_records_on_page() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_records_on_page", false]], "get_stats() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_stats", false]], "get_status() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_status", false]], "get_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_urls", false]], "get_valid_guids() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_valid_guids", false]], "get_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_version", false]], "get_version() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_version", false]], "get_version() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_version", false]], "get_versions() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_versions", false]], "get_with_params() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_with_params", false]], "graphql_query() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.graphql_query", false]], "guid (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.GUID", false]], "guid_type_for_indexed_file_object (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.GUID_TYPE_FOR_INDEXED_FILE_OBJECT", false]], "guid_type_for_non_indexed_file_object (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.GUID_TYPE_FOR_NON_INDEXED_FILE_OBJECT", false]], "hostname (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.hostname", false]], "index_object_manifest() (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.index_object_manifest", false]], "indexd_record_page_size (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.INDEXD_RECORD_PAGE_SIZE", false]], "is_healthy() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.is_healthy", false]], "is_healthy() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.is_healthy", false]], "is_healthy() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.is_healthy", false]], "list_access_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_access_in_drs_manifest", false]], "list_drs_object() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_drs_object", false]], "list_files_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_files_in_drs_manifest", false]], "list_jobs() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.list_jobs", false]], "load() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.load", false]], "load_manifest() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.load_manifest", false]], "ls() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.ls", false]], "ls_path() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.ls_path", false]], "manifest (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.Manifest", false]], "max_concurrent_requests (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.MAX_CONCURRENT_REQUESTS", false]], "max_concurrent_requests (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.MAX_CONCURRENT_REQUESTS", false]], "max_concurrent_requests (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.MAX_CONCURRENT_REQUESTS", false]], "md5 (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.MD5", false]], "md5sum (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.md5sum", false]], "module": [[9, "module-gen3.tools", false], [10, "module-gen3.tools.download.drs_download", false], [11, "module-gen3.tools.indexing.download_manifest", false], [11, "module-gen3.tools.indexing.index_manifest", false], [11, "module-gen3.tools.indexing.verify_manifest", false], [12, "module-gen3.tools.metadata.ingest_manifest", false]], "object_id (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.object_id", false]], "object_id (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.object_id", false]], "object_type (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.object_type", false]], "open_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.open_project", false]], "pprint() (gen3.tools.download.drs_download.downloadable method)": [[10, "gen3.tools.download.drs_download.Downloadable.pprint", false]], "prev_guid (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.PREV_GUID", false]], "query() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.query", false]], "query() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.query", false]], "query() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.query", false]], "query_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.query_urls", false]], "raw_data_download() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.raw_data_download", false]], "refresh_access_token() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.refresh_access_token", false]], "resolve_objects() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.resolve_objects", false]], "rm() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.rm", false]], "rm_path() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.rm_path", false]], "size (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.SIZE", false]], "start_time (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.start_time", false]], "status (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.status", false]], "submit_file() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.submit_file", false]], "submit_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.submit_record", false]], "threadcontrol (class in gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.ThreadControl", false]], "tmp_folder (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.TMP_FOLDER", false]], "update() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.update", false]], "update_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.update_aliases", false]], "update_blank() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.update_blank", false]], "update_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.update_record", false]], "updated_time (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.updated_time", false]], "upload() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.upload", false]], "upload_file() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.upload_file", false]], "upload_file_to_guid() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.upload_file_to_guid", false]], "upload_url() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.upload_url", false]], "urls (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.URLS", false]], "user_access() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.user_access", false]]}, "objects": {"gen3": [[9, 3, 0, "-", "tools"]], "gen3.auth": [[0, 0, 1, "", "Gen3Auth"]], "gen3.auth.Gen3Auth": [[0, 1, 1, "", "curl"], [0, 1, 1, "", "get_access_token"], [0, 1, 1, "", "get_access_token_from_wts"], [0, 1, 1, "", "refresh_access_token"]], "gen3.file": [[1, 0, 1, "", "Gen3File"]], "gen3.file.Gen3File": [[1, 1, 1, "", "delete_file"], [1, 1, 1, "", "delete_file_locations"], [1, 1, 1, "", "download_single"], [1, 1, 1, "", "get_presigned_url"], [1, 1, 1, "", "upload_file"], [1, 1, 1, "", "upload_file_to_guid"]], "gen3.index": [[3, 0, 1, "", "Gen3Index"]], "gen3.index.Gen3Index": [[3, 1, 1, "", "async_create_record"], [3, 1, 1, "", "async_get_record"], [3, 1, 1, "", "async_get_records_from_checksum"], [3, 1, 1, "", "async_get_records_on_page"], [3, 1, 1, "", "async_get_with_params"], [3, 1, 1, "", "async_query_urls"], [3, 1, 1, "", "async_update_record"], [3, 1, 1, "", "create_blank"], [3, 1, 1, "", "create_new_version"], [3, 1, 1, "", "create_record"], [3, 1, 1, "", "delete_record"], [3, 1, 1, "", "get"], [3, 1, 1, "", "get_all_records"], [3, 1, 1, "", "get_guids_prefix"], [3, 1, 1, "", "get_latest_version"], [3, 1, 1, "", "get_record"], [3, 1, 1, "", "get_record_doc"], [3, 1, 1, "", "get_records"], [3, 1, 1, "", "get_records_on_page"], [3, 1, 1, "", "get_stats"], [3, 1, 1, "", "get_urls"], [3, 1, 1, "", "get_valid_guids"], [3, 1, 1, "", "get_version"], [3, 1, 1, "", "get_versions"], [3, 1, 1, "", "get_with_params"], [3, 1, 1, "", "is_healthy"], [3, 1, 1, "", "query_urls"], [3, 1, 1, "", "update_blank"], [3, 1, 1, "", "update_record"]], "gen3.jobs": [[4, 0, 1, "", "Gen3Jobs"]], "gen3.jobs.Gen3Jobs": [[4, 1, 1, "", "async_run_job_and_wait"], [4, 1, 1, "", "create_job"], [4, 1, 1, "", "get_output"], [4, 1, 1, "", "get_status"], [4, 1, 1, "", "get_version"], [4, 1, 1, "", "is_healthy"], [4, 1, 1, "", "list_jobs"]], "gen3.metadata": [[5, 0, 1, "", "Gen3Metadata"]], "gen3.metadata.Gen3Metadata": [[5, 1, 1, "", "async_create"], [5, 1, 1, "", "async_create_aliases"], [5, 1, 1, "", "async_delete_alias"], [5, 1, 1, "", "async_delete_aliases"], [5, 1, 1, "", "async_get"], [5, 1, 1, "", "async_get_aliases"], [5, 1, 1, "", "async_update"], [5, 1, 1, "", "async_update_aliases"], [5, 2, 1, "", "auth_provider"], [5, 1, 1, "", "batch_create"], [5, 1, 1, "", "create"], [5, 1, 1, "", "create_aliases"], [5, 1, 1, "", "create_index_key_path"], [5, 1, 1, "", "delete"], [5, 1, 1, "", "delete_alias"], [5, 1, 1, "", "delete_aliases"], [5, 1, 1, "", "delete_index_key_path"], [5, 2, 1, "", "endpoint"], [5, 1, 1, "", "get"], [5, 1, 1, "", "get_aliases"], [5, 1, 1, "", "get_index_key_paths"], [5, 1, 1, "", "get_version"], [5, 1, 1, "", "is_healthy"], [5, 1, 1, "", "query"], [5, 1, 1, "", "update"], [5, 1, 1, "", "update_aliases"]], "gen3.object": [[6, 0, 1, "", "Gen3Object"]], "gen3.object.Gen3Object": [[6, 1, 1, "", "delete_object"]], "gen3.query": [[7, 0, 1, "", "Gen3Query"]], "gen3.query.Gen3Query": [[7, 1, 1, "", "graphql_query"], [7, 1, 1, "", "query"], [7, 1, 1, "", "raw_data_download"]], "gen3.submission": [[8, 0, 1, "", "Gen3Submission"]], "gen3.submission.Gen3Submission": [[8, 1, 1, "", "create_program"], [8, 1, 1, "", "create_project"], [8, 1, 1, "", "delete_node"], [8, 1, 1, "", "delete_nodes"], [8, 1, 1, "", "delete_program"], [8, 1, 1, "", "delete_project"], [8, 1, 1, "", "delete_record"], [8, 1, 1, "", "delete_records"], [8, 1, 1, "", "export_node"], [8, 1, 1, "", "export_record"], [8, 1, 1, "", "get_dictionary_all"], [8, 1, 1, "", "get_dictionary_node"], [8, 1, 1, "", "get_graphql_schema"], [8, 1, 1, "", "get_programs"], [8, 1, 1, "", "get_project_dictionary"], [8, 1, 1, "", "get_project_manifest"], [8, 1, 1, "", "get_projects"], [8, 1, 1, "", "open_project"], [8, 1, 1, "", "query"], [8, 1, 1, "", "submit_file"], [8, 1, 1, "", "submit_record"]], "gen3.tools.download": [[10, 3, 0, "-", "drs_download"]], "gen3.tools.download.drs_download": [[10, 0, 1, "", "DownloadManager"], [10, 0, 1, "", "DownloadStatus"], [10, 0, 1, "", "Downloadable"], [10, 0, 1, "", "Manifest"], [10, 4, 1, "", "download_files_in_drs_manifest"], [10, 4, 1, "", "list_access_in_drs_manifest"], [10, 4, 1, "", "list_drs_object"], [10, 4, 1, "", "list_files_in_drs_manifest"]], "gen3.tools.download.drs_download.DownloadManager": [[10, 1, 1, "", "cache_hosts_wts_tokens"], [10, 1, 1, "", "download"], [10, 1, 1, "", "get_fresh_token"], [10, 1, 1, "", "resolve_objects"], [10, 1, 1, "", "user_access"]], "gen3.tools.download.drs_download.DownloadStatus": [[10, 2, 1, "", "end_time"], [10, 2, 1, "", "start_time"], [10, 2, 1, "", "status"]], "gen3.tools.download.drs_download.Downloadable": [[10, 2, 1, "", "_manager"], [10, 2, 1, "", "access_methods"], [10, 2, 1, "", "children"], [10, 2, 1, "", "created_time"], [10, 1, 1, "", "download"], [10, 2, 1, "", "file_name"], [10, 2, 1, "", "file_size"], [10, 2, 1, "", "hostname"], [10, 2, 1, "", "object_id"], [10, 2, 1, "", "object_type"], [10, 1, 1, "", "pprint"], [10, 2, 1, "", "updated_time"]], "gen3.tools.download.drs_download.Manifest": [[10, 2, 1, "", "commons_url"], [10, 1, 1, "", "create_object_list"], [10, 2, 1, "", "file_name"], [10, 2, 1, "", "file_size"], [10, 1, 1, "", "load"], [10, 1, 1, "", "load_manifest"], [10, 2, 1, "", "md5sum"], [10, 2, 1, "", "object_id"]], "gen3.tools.indexing": [[11, 3, 0, "-", "download_manifest"], [11, 3, 0, "-", "index_manifest"], [11, 3, 0, "-", "verify_manifest"]], "gen3.tools.indexing.download_manifest": [[11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "INDEXD_RECORD_PAGE_SIZE"], [11, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [11, 2, 1, "", "TMP_FOLDER"], [11, 4, 1, "", "async_download_object_manifest"]], "gen3.tools.indexing.index_manifest": [[11, 2, 1, "", "ACLS"], [11, 2, 1, "", "AUTHZ"], [11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "GUID"], [11, 2, 1, "", "MD5"], [11, 2, 1, "", "PREV_GUID"], [11, 2, 1, "", "SIZE"], [11, 0, 1, "", "ThreadControl"], [11, 2, 1, "", "URLS"], [11, 4, 1, "", "delete_all_guids"], [11, 4, 1, "", "index_object_manifest"]], "gen3.tools.indexing.verify_manifest": [[11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [11, 4, 1, "", "async_verify_object_manifest"]], "gen3.tools.metadata": [[12, 3, 0, "-", "ingest_manifest"]], "gen3.tools.metadata.ingest_manifest": [[12, 2, 1, "", "COLUMN_TO_USE_AS_GUID"], [12, 2, 1, "", "GUID_TYPE_FOR_INDEXED_FILE_OBJECT"], [12, 2, 1, "", "GUID_TYPE_FOR_NON_INDEXED_FILE_OBJECT"], [12, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [12, 4, 1, "", "async_ingest_metadata_manifest"], [12, 4, 1, "", "async_query_urls_from_indexd"]], "gen3.wss": [[13, 0, 1, "", "Gen3WsStorage"]], "gen3.wss.Gen3WsStorage": [[13, 1, 1, "", "copy"], [13, 1, 1, "", "download"], [13, 1, 1, "", "download_url"], [13, 1, 1, "", "ls"], [13, 1, 1, "", "ls_path"], [13, 1, 1, "", "rm"], [13, 1, 1, "", "rm_path"], [13, 1, 1, "", "upload"], [13, 1, 1, "", "upload_url"]]}, "objnames": {"0": ["py", "class", "Python class"], "1": ["py", "method", "Python method"], "2": ["py", "attribute", "Python attribute"], "3": ["py", "module", "Python module"], "4": ["py", "function", "Python function"]}, "objtypes": {"0": "py:class", "1": "py:method", "2": "py:attribute", "3": "py:module", "4": "py:function"}, "terms": {"": [1, 4, 8, 10, 11], "0": [5, 7, 8, 11], "0046513": [], "064572": [], "0a80fada010c": 11, "0a80fada096c": 11, "0a80fada097c": 11, "0a80fada098c": 11, "0a80fada099c": 11, "1": [4, 5, 8, 10, 11], "10": [5, 7, 11], "100": [8, 11], "11e9": 11, "1713542306": [], "1713542765": [], "1713543033": [], "1713543225": [], "1713543506": [], "1713543956": [], "1713544131": 11, "1713544132": 12, "1771936": 12, "1913438": [], "2": [5, 11], "24": [11, 12], "255e396f": 11, "2877355": [], "2995": [], "3": [5, 11], "30": 8, "33": 5, "333": 5, "343434344": 11, "363455714": 11, "4": [5, 11], "4017086": [], "450c": 11, "4649727": [], "4714": 8, "473d83400bc1bc9dc635e334fadd433c": 11, "473d83400bc1bc9dc635e334faddd33c": 11, "473d83400bc1bc9dc635e334fadde33c": 11, "473d83400bc1bc9dc635e334faddf33c": 11, "5": [0, 5], "50": 7, "543434443": 11, "5669184": [], "5899982": [], "6692646": [], "6f90": 8, "760149": [], "7d3d8d2083b4": 11, "8375325": 11, "8420": 8, "8882551": [], "93d9af72": 11, "9a07": 11, "A": [1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "AND": 5, "Be": 1, "But": 5, "By": 11, "For": [1, 5, 6, 7, 8, 9, 11], "IF": 11, "If": [0, 1, 7, 11, 12], "In": 10, "It": 10, "NOT": 12, "OR": 5, "One": 7, "Such": 9, "THE": 11, "That": 3, "The": [0, 1, 2, 3, 5, 8, 10, 11], "There": 11, "These": 9, "To": 11, "Will": [4, 7, 10], "_get_acl_from_row": 11, "_get_authz_from_row": 11, "_get_file_name_from_row": 11, "_get_file_size_from_row": 11, "_get_guid_for_row": 12, "_get_guid_from_row": 11, "_get_md5_from_row": 11, "_get_urls_from_row": 11, "_guid_typ": 12, "_manag": [2, 9, 10], "_query_for_associated_indexd_record_guid": 12, "_ssl": [3, 4, 5], "a5c6": 11, "ab167e49d25b488939b1ede42752458b": 3, "about": [2, 3], "abov": 11, "access": [0, 1, 3, 7, 10], "access_method": [2, 9, 10], "access_token": 0, "accesstoken": 0, "acl": [2, 3, 9, 11], "across": 11, "act": 0, "action": [9, 11], "actual": 11, "ad": 3, "add": [3, 5], "addit": [3, 5, 10, 11], "admin": [5, 11], "admin_endpoint_suffix": 5, "after": 10, "against": [3, 7, 8, 11, 12], "algorithm": 3, "alia": [3, 5], "alias": 5, "aliv": 7, "all": [1, 3, 4, 5, 6, 7, 8, 10, 11, 12], "allow": [0, 6, 8, 10, 11, 12], "allowed_data_upload_bucket": 1, "along": 2, "alreadi": 9, "also": 1, "altern": [5, 11], "alwai": 5, "ammount": 12, "amount": [1, 9], "an": [0, 3, 6, 8, 10, 11], "ani": [0, 5, 10, 11], "anoth": 5, "api": [0, 5, 8, 11], "api_kei": 11, "appli": 7, "appropri": 13, "ar": [5, 7, 8, 9, 10, 11], "arbitrari": 0, "argument": [0, 13], "arrai": 8, "asc": 7, "assign": 9, "assist": 10, "associ": [3, 5], "assum": 11, "async": [3, 4, 5, 9, 11, 12], "async_cr": [2, 5], "async_create_alias": [2, 5], "async_create_record": [2, 3], "async_delete_alia": [2, 5], "async_delete_alias": [2, 5], "async_download_object_manifest": [2, 9, 11], "async_get": [2, 5], "async_get_alias": [2, 5], "async_get_record": [2, 3], "async_get_records_from_checksum": [2, 3], "async_get_records_on_pag": [2, 3], "async_get_with_param": [2, 3], "async_ingest_metadata_manifest": [2, 9, 12], "async_query_url": [2, 3], "async_query_urls_from_indexd": [2, 9, 12], "async_run_job_and_wait": [2, 4], "async_upd": [2, 5], "async_update_alias": [2, 5], "async_update_record": [2, 3], "async_verify_object_manifest": [2, 9, 11], "asynchron": [3, 4, 5], "asyncio": [11, 12], "asyncron": 5, "attach": [3, 5], "attempt": 11, "attribut": [10, 11], "auth": [1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "auth_provid": [1, 2, 3, 4, 5, 6, 7, 8, 13], "authbas": 0, "authent": 0, "author": 1, "authz": [0, 1, 2, 3, 9, 10, 11], "auto": [0, 2], "automat": 0, "avail": [1, 2, 10, 11], "az": 1, "b": [5, 11], "b0f1": 11, "bar": 10, "base": [0, 1, 3, 4, 5, 6, 7, 8, 9, 11, 13], "baseid": 3, "basic": [3, 11, 12], "batch_creat": [2, 5], "batch_siz": 8, "behalf": 0, "behavior": 11, "being": 3, "belong": 8, "below": 11, "blank": 3, "blob": [5, 7], "bodi": 3, "bool": [4, 5, 8, 10, 11, 12], "boolean": 3, "bownload": 10, "broad": 9, "broken": 9, "bucket": [1, 6], "bundl": 10, "byte": 10, "c": [5, 11], "cach": 10, "cache_hosts_wts_token": [2, 9, 10], "call": [10, 13], "can": [0, 3, 4, 8, 11, 12], "capabl": 9, "case": [0, 10], "categori": 9, "ccle": 8, "ccle_one_record": 8, "ccle_sample_nod": 8, "cdi": 7, "chang": [3, 11], "checksum": [3, 10], "checksum_typ": 3, "child": 10, "children": [2, 9, 10], "chunk_siz": 8, "class": [0, 2, 10, 11, 13], "cli": 10, "client": [0, 3], "client_credenti": 0, "client_id": 0, "client_scop": 0, "client_secret": 0, "code": [2, 8], "column": [11, 12], "column_to_use_as_guid": [2, 9, 12], "columna": 11, "columnb": 11, "columnc": 11, "com": 7, "comma": 11, "command": [10, 11], "common": [0, 1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13], "commons_url": [2, 9, 10, 11, 12], "complet": [4, 11], "complex": 7, "concat": 11, "concurr": [11, 12], "configur": 1, "connect": 12, "consist": 3, "constructor": 0, "contain": [0, 2, 5, 8, 9, 10, 11, 12], "content": [3, 13], "content_created_d": 3, "content_updated_d": 3, "continu": 10, "control": 3, "conveni": 10, "copi": [2, 13], "coroutin": 11, "correspond": 3, "count": 3, "crdc": 0, "creat": [2, 3, 4, 5, 6, 8, 10, 11], "create_alias": [2, 5], "create_blank": [2, 3], "create_index_key_path": [2, 5], "create_job": [2, 4], "create_new_vers": [2, 3], "create_object_list": [2, 9, 10], "create_program": [2, 8], "create_project": [2, 8], "create_record": [2, 3], "created_tim": [2, 9, 10], "creation": [3, 11], "cred": 3, "credenti": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "csv": [8, 11, 12], "curl": [0, 2], "current": [6, 8, 10], "current_dir": [2, 9, 11], "custom": 11, "d": 5, "d70b41b9": 8, "data": [0, 1, 3, 5, 7, 8, 10, 11], "data_spreadsheet": 8, "data_typ": 7, "data_upload_bucket": 1, "dataa": 11, "datab": 11, "databas": 5, "datacommon": 0, "datafil": 10, "datamanag": 10, "date": 3, "datetim": [1, 3, 10], "dbgap": 12, "dcf": 8, "def": 11, "default": [0, 1, 3, 7, 8, 11, 12], "defin": [5, 8, 10], "delai": 4, "delet": [0, 1, 2, 3, 5, 6, 8, 10, 11], "delete_alia": [2, 5], "delete_alias": [2, 5], "delete_all_guid": [2, 9, 11], "delete_fil": [1, 2], "delete_file_loc": [1, 2, 6], "delete_index_key_path": [2, 5], "delete_nod": [2, 8], "delete_object": [2, 6], "delete_program": [2, 8], "delete_project": [2, 8], "delete_record": [2, 3, 8], "delete_unpacked_packag": 10, "delimet": [11, 12], "delimit": 11, "demograph": 8, "deprec": 1, "descript": [3, 5], "desir": 11, "dest_path": 13, "dest_urlstr": 13, "dest_w": 13, "dest_wskei": 13, "detail": [2, 7, 10], "determin": [10, 11, 12], "dev": 11, "dict": [3, 4, 5, 10, 11, 12], "dictionari": [3, 4, 5, 7, 8], "did": 3, "differ": 5, "direct": 0, "directori": [10, 11], "disabl": 10, "discoveri": 10, "disk": 13, "dispatch": 4, "dist_resolut": 3, "distribut": 3, "doc": [7, 10], "docstr": 2, "document": [1, 3], "doe": [0, 12], "domain": [11, 12], "done": 4, "download": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 13], "download_files_in_drs_manifest": [2, 9, 10], "download_list": 10, "download_manifest": 11, "download_singl": [1, 2], "download_url": [2, 13], "downloadmanag": [2, 9, 10], "downloadstatu": [2, 9, 10], "dr": [2, 9], "drs_download": 10, "drs_hostnam": 10, "drsdownload": 10, "drsobjecttyp": 10, "e": [5, 10], "e043ab8b77b9": 8, "each": [3, 8, 10, 11], "effici": 9, "eg": 3, "either": 8, "elasticsearch": 7, "els": [0, 12], "elsewher": 12, "empti": [8, 11], "enabl": 11, "end": [5, 10], "end_tim": [2, 9, 10], "endpoint": [0, 1, 2, 3, 4, 5, 7, 8, 13], "entir": 8, "entri": [3, 11], "env": 0, "environ": 0, "equal": 7, "error": [10, 11, 12], "error_nam": 11, "etc": 8, "even": 11, "everi": [9, 11], "everyth": 11, "ex": [0, 11, 12], "exampl": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "exclud": 3, "execut": [7, 8, 11], "exist": [1, 3, 5, 6, 9, 12], "expect": [5, 9, 11], "experi": 8, "expir": [0, 1], "expires_in": 1, "export": [8, 10], "export_nod": [2, 8], "export_record": [2, 8], "f1f8": 11, "factori": 10, "fail": [8, 10], "fals": [3, 5, 6, 10, 11], "featur": [1, 6], "fenc": [0, 1], "fetch": 0, "field": [3, 5, 7, 11, 12], "fieldnam": 11, "file": [0, 2, 3, 4, 8, 9, 10, 11, 12, 13], "file_nam": [1, 2, 3, 9, 10, 11], "file_s": [2, 9, 10, 11], "file_st": 3, "fileformat": 8, "filenam": [0, 8, 10, 11, 12], "files": 10, "fill": 12, "filter": [5, 7], "filter_object": 7, "first": [7, 8], "flag": 11, "folder": 11, "follow": [0, 11], "forc": 11, "force_metadata_columns_even_if_empti": 11, "form": 13, "format": [3, 5, 8, 11], "from": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13], "func_to_parse_row": [11, 12], "function": [2, 3, 4, 5, 9, 10, 11, 12], "g": 10, "gen3": [10, 11, 12], "gen3_api_kei": 0, "gen3_oidc_client_creds_secret": 0, "gen3auth": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "gen3fil": [1, 2], "gen3index": [2, 3], "gen3job": [2, 4, 10], "gen3metadata": [2, 5], "gen3object": [2, 6], "gen3queri": [2, 7], "gen3submiss": [2, 8], "gen3wsstorag": [2, 13], "gener": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 13], "get": [0, 1, 2, 3, 4, 5, 8, 10, 11, 12, 13], "get_access_token": [0, 2], "get_access_token_from_wt": [0, 2], "get_alias": [2, 5], "get_all_record": [2, 3], "get_dictionary_al": [2, 8], "get_dictionary_nod": [2, 8], "get_fresh_token": [2, 9, 10], "get_graphql_schema": [2, 8], "get_guid_from_fil": 12, "get_guids_prefix": [2, 3], "get_index_key_path": [2, 5], "get_latest_vers": [2, 3], "get_output": [2, 4], "get_presigned_url": [1, 2], "get_program": [2, 8], "get_project": [2, 8], "get_project_dictionari": [2, 8], "get_project_manifest": [2, 8], "get_record": [2, 3], "get_record_doc": [2, 3], "get_records_on_pag": [2, 3], "get_stat": [2, 3], "get_statu": [2, 4], "get_url": [2, 3], "get_valid_guid": [2, 3], "get_vers": [2, 3, 4, 5], "get_with_param": [2, 3], "giangb": 11, "github": [2, 7], "give": 1, "given": [0, 3, 4, 5, 8, 10, 12, 13], "global": [4, 5], "good": 3, "grant": 0, "graph": 8, "graphql": [7, 8], "graphql_queri": [2, 7], "group": 3, "guid": [1, 2, 3, 5, 6, 9, 11, 12], "guid_exampl": 11, "guid_for_row": 12, "guid_from_fil": 12, "guid_type_for_indexed_file_object": [2, 9, 12], "guid_type_for_non_indexed_file_object": [2, 9, 12], "guppi": 7, "ha": [0, 11], "handl": [3, 10], "hardcod": 0, "has_vers": 3, "hash": [3, 11], "hash_typ": 3, "have": [5, 11], "header": 11, "healthi": [3, 4, 5], "help": 11, "helper": 2, "hit": 11, "host": 10, "hostnam": [2, 9, 10], "how": [8, 11], "howto": 10, "http": [0, 7, 11, 12], "i": [0, 1, 2, 3, 4, 5, 8, 10, 11, 12], "id": [0, 1, 3, 5, 10, 11], "idea": 3, "identifi": [3, 5, 9, 11], "idp": 0, "illustr": 11, "immut": 3, "implement": 0, "implic": 11, "import": 11, "includ": [0, 3], "indent": 10, "index": [0, 2, 5, 9], "index_manifest": 11, "index_object_manifest": [2, 9, 11], "indexd": [1, 3, 6, 10, 11, 12], "indexd_field": [11, 12], "indexd_record_page_s": [2, 9, 11], "indexed_file_object_guid": 12, "indic": [0, 11], "infil": 10, "info": [3, 11], "inform": [2, 3, 10], "ingest": [2, 9], "ingest_manifest": 12, "initi": [0, 10], "input": [4, 10, 11], "input_manifest": 11, "instal": [0, 2, 11], "instanc": [1, 3, 6, 7, 8, 9, 10], "instead": [1, 7, 11], "int": [1, 3, 5, 7, 8, 10, 11, 12], "integ": [1, 3, 8], "intend": 0, "interact": [1, 3, 4, 5, 6, 8, 13], "interest": 10, "interpret": 0, "introspect": 8, "involv": 9, "is_healthi": [2, 3, 4, 5], "is_indexed_file_object": 12, "isn": 1, "issu": 0, "its": [1, 3], "job": 2, "job_id": 4, "job_input": 4, "job_nam": 4, "json": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "just": [5, 11, 12], "jwt": 0, "kei": [0, 3, 5, 13], "know": 11, "known": 10, "kwarg": [3, 4, 5], "l": [2, 13], "larg": 9, "last": 10, "latest": 3, "least": 3, "level": 6, "librari": 11, "like": [3, 5, 9, 11, 12], "limit": [1, 3, 5, 12], "linear": 4, "linux": 10, "list": [0, 1, 3, 4, 5, 7, 8, 10, 11, 13], "list_access_in_drs_manifest": [2, 9, 10], "list_drs_object": [2, 9, 10], "list_files_in_drs_manifest": [2, 9, 10], "list_job": [2, 4], "live": [11, 12], "load": [2, 9, 10], "load_manifest": [2, 9, 10], "local": [0, 13], "locat": [1, 6], "lock": 12, "log": [8, 10, 11, 12], "logic": [5, 12], "loop": 11, "ls_path": [2, 13], "maco": 11, "made": 3, "mai": [0, 9, 11], "main": 10, "make": [9, 11], "manag": [1, 5, 10], "mani": [8, 11], "manifest": [2, 8, 9, 10, 11, 12], "manifest_1": 10, "manifest_fil": [11, 12], "manifest_file_delimit": [11, 12], "manifest_row_pars": [11, 12], "map": [0, 11], "mark": 8, "master": 7, "match": [3, 5, 12], "max": 5, "max_concurrent_request": [2, 9, 11, 12], "max_presigned_url_ttl": 1, "max_tri": 8, "maximum": [11, 12], "md": [5, 7, 10, 12], "md5": [2, 3, 9, 11], "md5_hash": 11, "md5sum": [2, 9, 10], "mean": 8, "mechan": 3, "merg": 5, "metadata": [2, 3, 6, 9, 11], "metadata_list": 5, "metadata_sourc": 12, "metadata_typ": 12, "metdata": 12, "method": [1, 7, 10], "minimum": 10, "minut": 0, "mode": 7, "modul": [2, 10, 11], "more": [2, 5, 7, 9, 10], "most": 9, "mostli": 2, "multipl": [8, 11], "must": [1, 5], "my_common": 10, "my_credenti": 10, "my_field": 7, "my_index": 7, "my_program": 7, "my_project": 7, "name": [3, 4, 8, 10, 11, 12, 13], "namespac": [0, 12], "necessari": [3, 5], "need": [3, 7, 10, 11], "nest": 5, "net": 11, "never": 0, "new": [0, 3], "node": 8, "node_nam": 8, "node_typ": 8, "none": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "note": [0, 3, 11, 12], "noth": [3, 6], "now": [1, 8], "num": 5, "num_process": 11, "num_total_fil": 11, "number": [3, 7, 8, 11, 12], "o": 0, "object": [1, 2, 3, 4, 5, 7, 8, 9, 10, 11, 13], "object_id": [1, 2, 9, 10], "object_list": 10, "object_typ": [2, 9, 10], "objectid": 10, "obtain": [0, 10], "occur": 10, "off": 5, "offset": [5, 7], "oidc": 0, "old": 3, "one": [3, 5, 10, 11], "onli": [3, 5, 7, 8, 10, 11], "open": [8, 10, 11], "open_project": [2, 8], "openid": 0, "opt": 0, "option": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11], "order": [0, 8], "ordered_node_list": 8, "org": 10, "otherwis": 10, "output": [4, 5, 11, 12], "output_dir": 10, "output_filenam": [11, 12], "overrid": [0, 11, 12], "overwrit": 5, "own": 0, "packag": 10, "page": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 13], "pagin": 3, "parallel": 11, "param": [3, 5, 8, 10], "paramet": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "pars": [10, 11, 12, 13], "parser": [11, 12], "particular": 0, "pass": [0, 7, 8, 10], "password": [11, 12], "path": [0, 1, 5, 10, 11, 13], "path_to_manifest": 11, "pattern": [3, 12], "pdcdatastor": 11, "pend": 10, "per": [11, 12], "peregrin": 8, "permiss": 10, "persist": 9, "phs0001": 11, "phs0002": 11, "pick": 1, "pla": 11, "place": 11, "planx": 11, "point": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "popul": [10, 12], "posit": [1, 7], "possibl": 10, "post": [0, 11], "pprint": [2, 9, 10], "prefix": 3, "presign": 1, "pretti": 10, "prev_guid": [2, 9, 11], "previou": [3, 11], "previous": 4, "print": [8, 10], "process": 11, "processed_fil": 11, "profil": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "program": [8, 11], "progress": [8, 10], "project": [8, 11], "project_id": [7, 8], "protocol": 1, "provid": [0, 1, 3, 5, 7, 8, 12], "public": [3, 5], "put": 0, "py": 11, "python": [2, 9, 11], "python3": 11, "python_subprocess_command": 11, "queri": [1, 2, 3, 5, 8, 11, 12], "query_str": 7, "query_txt": [7, 8], "query_url": [2, 3], "quickstart": 2, "rather": 0, "raw": [7, 11], "raw_data_download": [2, 7], "rbac": 3, "read": [3, 5, 11], "readm": 2, "reason": 10, "record": [1, 3, 5, 7, 8, 11, 12], "refresh": [0, 10], "refresh_access_token": [0, 2], "refresh_fil": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "refresh_token": 0, "regist": 8, "regular": 7, "relat": 9, "remov": [1, 6, 11, 13], "replac": 11, "replace_url": 11, "repo": 2, "repres": [3, 5, 10], "represent": [1, 3], "request": [0, 1, 3, 5, 8, 11, 12], "requir": 10, "resolv": 10, "resolve_object": [2, 9, 10], "respect": 7, "respons": [0, 1, 3, 4, 5], "result": [1, 8, 10, 11], "retri": 8, "retriev": [1, 8, 10, 12], "return": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11], "return_full_metadata": 5, "rev": 3, "revers": 8, "revis": 3, "right": 1, "rm": [2, 13], "rm_path": [2, 13], "root": [11, 12], "row": [7, 8, 11, 12], "row_offset": 8, "rtype": 3, "run": [8, 11], "s3": [1, 10, 11], "safe": 11, "same": [5, 11, 13], "sampl": [8, 10], "sandbox": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "save": 10, "save_directori": 10, "schema": 8, "scope": [0, 1], "screen": 8, "script": 2, "search": [0, 2, 3], "second": [1, 4], "secret": 0, "see": [7, 10, 11], "self": 10, "semaphon": 12, "semaphor": 12, "separ": [0, 11], "server": 10, "servic": [1, 3, 4, 5, 6, 8, 11, 12, 13], "service_loc": [3, 4, 5], "session": 11, "set": [0, 1, 5, 10], "setup": 2, "sheepdog": 8, "should": [0, 8, 11], "show": 10, "show_progress": 10, "shown": 11, "sign": 1, "signpost": 3, "similar": 10, "simpl": 3, "simpli": 11, "sinc": 3, "singl": [1, 5, 8], "size": [2, 3, 9, 10, 11], "skip": 8, "sleep": 4, "so": 11, "some": [0, 2], "someth": 11, "sort": 7, "sort_field": 7, "sort_object": 7, "sourc": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "space": [0, 11], "specif": [5, 8, 11, 12], "specifi": [0, 1, 3, 11, 13], "spreadsheet": 8, "src_path": 13, "src_urlstr": 13, "src_w": 13, "src_wskei": 13, "ssl": [3, 4, 5], "start": [3, 4, 7, 8, 10], "start_tim": [2, 9, 10], "static": 10, "statu": [2, 4, 9, 10], "storag": [1, 2, 6], "store": [1, 3, 10], "str": [0, 1, 3, 4, 5, 7, 8, 10, 11, 12], "string": [0, 3, 5, 11, 13], "strip": 11, "sub": 8, "subject": [7, 8], "submiss": 2, "submit": [8, 11], "submit_additional_metadata_column": 11, "submit_fil": [2, 8], "submit_record": [2, 8], "submitter_id": 7, "success": 10, "successfulli": 10, "suffici": 3, "suppli": 3, "support": [0, 1, 5, 8, 11], "sure": 1, "synchron": 11, "syntax": 7, "system": [6, 7, 8, 9], "t": [1, 5, 11], "tab": 11, "task": 9, "temporari": 11, "test": 11, "test1": 11, "test2": 11, "test3": 11, "test4": 11, "test5": 11, "text": [1, 7, 8], "than": [0, 5], "thei": [0, 10], "them": [10, 11], "thi": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "those": 11, "thread": 11, "thread_num": 11, "threadcontrol": [2, 9, 11], "through": [8, 11], "tier": 7, "time": [1, 3, 8, 10, 11], "timestamp": 10, "tmp_folder": [2, 9, 11], "token": [0, 10], "tool": 2, "total": 11, "treat": [1, 5], "tree": 10, "true": [3, 4, 5, 6, 7, 8, 10, 11, 12], "try": 0, "tsv": [8, 11, 12], "tupl": [0, 3, 11, 12], "type": [1, 3, 4, 5, 7, 8, 10, 11, 12], "typic": 10, "uc": 7, "unaccess": 7, "under": [0, 8, 13], "uniqu": [1, 5], "unknown": 10, "unpack": 10, "unpack_packag": 10, "until": [4, 10], "up": [5, 9], "updat": [2, 3, 5, 10, 11], "update_alias": [2, 5], "update_blank": [2, 3], "update_record": [2, 3], "updated_tim": [2, 9, 10], "upload": [1, 2, 3, 8, 13], "upload_fil": [1, 2], "upload_file_to_guid": [1, 2], "upload_url": [2, 13], "url": [1, 2, 3, 9, 10, 11, 12, 13], "urls_metadata": 3, "us": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "usag": 11, "use_agg_md": 5, "user": [0, 10, 12], "user_access": [2, 9, 10], "usual": 12, "utcnow": 1, "util": 9, "uuid": [1, 3, 8], "uuid1": 8, "uuid2": 8, "valid": [3, 7], "valu": [0, 1, 3, 5, 7, 10, 11], "value_from_indexd": 11, "value_from_manifest": 11, "variabl": [0, 7, 8], "variou": 2, "verbos": [7, 8], "verif": 11, "verifi": [2, 9], "verify_manifest": 11, "verify_object_manifest": 11, "version": [3, 4, 5], "vital_statu": 7, "w": 13, "wa": 0, "wai": 10, "wait": 4, "want": [0, 3, 8], "warn": 11, "we": [3, 11], "web": 0, "what": 5, "when": [0, 3, 7, 10, 12], "where": [0, 3, 5, 11, 12], "whether": [3, 4, 5, 8, 11, 12], "which": [8, 10], "while": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "whose": 5, "within": [0, 2, 9], "without": [3, 5], "won": 5, "work": [0, 10], "workaround": 11, "worksheet": 8, "workspac": [0, 2], "wrapper": 10, "write": 11, "ws_urlstr": 13, "wskei": 13, "wss": 13, "wt": [0, 10], "x": 11, "xlsx": 8, "you": [0, 3, 8, 11], "your": 0}, "titles": ["Gen3 Auth Helper", "Gen3 File Class", "Welcome to Gen3 SDK\u2019s documentation!", "Gen3 Index Class", "Gen3 Jobs Class", "Gen3 Metadata Class", "Gen3 Object Class", "Gen3 Query Class", "Gen3 Submission Class", "Gen3 Tools", "DRS Download Tools", "Indexing Tools", "Metadata Tools", "Gen3 Workspace Storage"], "titleterms": {"": 2, "auth": 0, "class": [1, 3, 4, 5, 6, 7, 8], "document": 2, "download": [10, 11], "dr": 10, "file": 1, "gen3": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 13], "helper": 0, "index": [3, 11], "indic": 2, "ingest": 12, "job": 4, "metadata": [5, 12], "object": 6, "queri": 7, "sdk": 2, "storag": 13, "submiss": 8, "tabl": 2, "tool": [9, 10, 11, 12], "verifi": 11, "welcom": 2, "workspac": 13}}) \ No newline at end of file +Search.setIndex({"alltitles": {"DRS Download Tools": [[10, "module-gen3.tools.download.drs_download"]], "Download": [[11, "module-gen3.tools.indexing.download_manifest"]], "Gen3 Auth Helper": [[0, "gen3-auth-helper"]], "Gen3 File Class": [[1, "gen3-file-class"]], "Gen3 Index Class": [[3, "gen3-index-class"]], "Gen3 Jobs Class": [[4, "gen3-jobs-class"]], "Gen3 Metadata Class": [[5, "gen3-metadata-class"]], "Gen3 Object Class": [[6, "gen3-object-class"]], "Gen3 Query Class": [[7, "gen3-query-class"]], "Gen3 Submission Class": [[8, "gen3-submission-class"]], "Gen3 Tools": [[9, "gen3-tools"]], "Gen3 Workspace Storage": [[13, "gen3-workspace-storage"]], "Index": [[11, "module-gen3.tools.indexing.index_manifest"]], "Indexing Tools": [[11, "indexing-tools"]], "Indices and tables": [[2, "indices-and-tables"]], "Ingest": [[12, "module-gen3.tools.metadata.ingest_manifest"]], "Metadata Tools": [[12, "metadata-tools"]], "Verify": [[11, "module-gen3.tools.indexing.verify_manifest"]], "Welcome to Gen3 SDK\u2019s documentation!": [[2, "welcome-to-gen3-sdk-s-documentation"]]}, "docnames": ["auth", "file", "index", "indexing", "jobs", "metadata", "object", "query", "submission", "tools", "tools/drs_pull", "tools/indexing", "tools/metadata", "wss"], "envversion": {"sphinx": 61, "sphinx.domains.c": 3, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 9, "sphinx.domains.index": 1, "sphinx.domains.javascript": 3, "sphinx.domains.math": 2, "sphinx.domains.python": 4, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx.ext.viewcode": 1}, "filenames": ["auth.rst", "file.rst", "index.rst", "indexing.rst", "jobs.rst", "metadata.rst", "object.rst", "query.rst", "submission.rst", "tools.rst", "tools/drs_pull.rst", "tools/indexing.rst", "tools/metadata.rst", "wss.rst"], "indexentries": {"_manager (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable._manager", false]], "access_methods (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.access_methods", false]], "acls (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.ACLS", false]], "async_create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_create", false]], "async_create_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_create_aliases", false]], "async_create_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_create_record", false]], "async_delete_alias() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_delete_alias", false]], "async_delete_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_delete_aliases", false]], "async_download_object_manifest() (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.async_download_object_manifest", false]], "async_get() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_get", false]], "async_get_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_get_aliases", false]], "async_get_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_record", false]], "async_get_records_from_checksum() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_records_from_checksum", false]], "async_get_records_on_page() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_records_on_page", false]], "async_get_with_params() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_with_params", false]], "async_ingest_metadata_manifest() (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.async_ingest_metadata_manifest", false]], "async_query_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_query_urls", false]], "async_query_urls_from_indexd() (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.async_query_urls_from_indexd", false]], "async_run_job_and_wait() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.async_run_job_and_wait", false]], "async_update() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_update", false]], "async_update_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_update_aliases", false]], "async_update_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_update_record", false]], "async_verify_object_manifest() (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.async_verify_object_manifest", false]], "auth_provider (gen3.metadata.gen3metadata attribute)": [[5, "gen3.metadata.Gen3Metadata.auth_provider", false]], "authz (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.AUTHZ", false]], "batch_create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.batch_create", false]], "cache_hosts_wts_tokens() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.cache_hosts_wts_tokens", false]], "children (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.children", false]], "column_to_use_as_guid (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.COLUMN_TO_USE_AS_GUID", false]], "commons_url (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.commons_url", false]], "copy() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.copy", false]], "create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create", false]], "create_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create_aliases", false]], "create_blank() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_blank", false]], "create_index_key_path() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create_index_key_path", false]], "create_job() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.create_job", false]], "create_new_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_new_version", false]], "create_object_list() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.create_object_list", false]], "create_program() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.create_program", false]], "create_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.create_project", false]], "create_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_record", false]], "created_time (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.created_time", false]], "curl() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.curl", false]], "current_dir (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.CURRENT_DIR", false]], "current_dir (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.CURRENT_DIR", false]], "current_dir (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.CURRENT_DIR", false]], "delete() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete", false]], "delete_alias() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_alias", false]], "delete_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_aliases", false]], "delete_all_guids() (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.delete_all_guids", false]], "delete_file() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.delete_file", false]], "delete_file_locations() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.delete_file_locations", false]], "delete_index_key_path() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_index_key_path", false]], "delete_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_node", false]], "delete_nodes() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_nodes", false]], "delete_object() (gen3.object.gen3object method)": [[6, "gen3.object.Gen3Object.delete_object", false]], "delete_program() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_program", false]], "delete_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_project", false]], "delete_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.delete_record", false]], "delete_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_record", false]], "delete_records() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_records", false]], "download() (gen3.tools.download.drs_download.downloadable method)": [[10, "gen3.tools.download.drs_download.Downloadable.download", false]], "download() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.download", false]], "download() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.download", false]], "download_files_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.download_files_in_drs_manifest", false]], "download_single() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.download_single", false]], "download_url() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.download_url", false]], "downloadable (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.Downloadable", false]], "downloadmanager (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.DownloadManager", false]], "downloadstatus (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.DownloadStatus", false]], "end_time (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.end_time", false]], "endpoint (gen3.metadata.gen3metadata attribute)": [[5, "gen3.metadata.Gen3Metadata.endpoint", false]], "export_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.export_node", false]], "export_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.export_record", false]], "file_name (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.file_name", false]], "file_name (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.file_name", false]], "file_size (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.file_size", false]], "file_size (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.file_size", false]], "gen3.tools": [[9, "module-gen3.tools", false]], "gen3.tools.download.drs_download": [[10, "module-gen3.tools.download.drs_download", false]], "gen3.tools.indexing.download_manifest": [[11, "module-gen3.tools.indexing.download_manifest", false]], "gen3.tools.indexing.index_manifest": [[11, "module-gen3.tools.indexing.index_manifest", false]], "gen3.tools.indexing.verify_manifest": [[11, "module-gen3.tools.indexing.verify_manifest", false]], "gen3.tools.metadata.ingest_manifest": [[12, "module-gen3.tools.metadata.ingest_manifest", false]], "gen3auth (class in gen3.auth)": [[0, "gen3.auth.Gen3Auth", false]], "gen3file (class in gen3.file)": [[1, "gen3.file.Gen3File", false]], "gen3index (class in gen3.index)": [[3, "gen3.index.Gen3Index", false]], "gen3jobs (class in gen3.jobs)": [[4, "gen3.jobs.Gen3Jobs", false]], "gen3metadata (class in gen3.metadata)": [[5, "gen3.metadata.Gen3Metadata", false]], "gen3object (class in gen3.object)": [[6, "gen3.object.Gen3Object", false]], "gen3query (class in gen3.query)": [[7, "gen3.query.Gen3Query", false]], "gen3submission (class in gen3.submission)": [[8, "gen3.submission.Gen3Submission", false]], "gen3wsstorage (class in gen3.wss)": [[13, "gen3.wss.Gen3WsStorage", false]], "get() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get", false]], "get() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get", false]], "get_access_token() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.get_access_token", false]], "get_access_token_from_wts() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.get_access_token_from_wts", false]], "get_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_aliases", false]], "get_all_records() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_all_records", false]], "get_dictionary_all() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_dictionary_all", false]], "get_dictionary_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_dictionary_node", false]], "get_fresh_token() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.get_fresh_token", false]], "get_graphql_schema() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_graphql_schema", false]], "get_guids_prefix() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_guids_prefix", false]], "get_index_key_paths() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_index_key_paths", false]], "get_latest_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_latest_version", false]], "get_output() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_output", false]], "get_presigned_url() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.get_presigned_url", false]], "get_programs() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_programs", false]], "get_project_dictionary() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_project_dictionary", false]], "get_project_manifest() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_project_manifest", false]], "get_projects() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_projects", false]], "get_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_record", false]], "get_record_doc() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_record_doc", false]], "get_records() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_records", false]], "get_records_on_page() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_records_on_page", false]], "get_stats() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_stats", false]], "get_status() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_status", false]], "get_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_urls", false]], "get_valid_guids() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_valid_guids", false]], "get_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_version", false]], "get_version() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_version", false]], "get_version() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_version", false]], "get_versions() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_versions", false]], "get_with_params() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_with_params", false]], "graphql_query() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.graphql_query", false]], "guid (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.GUID", false]], "guid_type_for_indexed_file_object (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.GUID_TYPE_FOR_INDEXED_FILE_OBJECT", false]], "guid_type_for_non_indexed_file_object (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.GUID_TYPE_FOR_NON_INDEXED_FILE_OBJECT", false]], "hostname (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.hostname", false]], "index_object_manifest() (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.index_object_manifest", false]], "indexd_record_page_size (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.INDEXD_RECORD_PAGE_SIZE", false]], "is_healthy() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.is_healthy", false]], "is_healthy() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.is_healthy", false]], "is_healthy() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.is_healthy", false]], "list_access_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_access_in_drs_manifest", false]], "list_drs_object() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_drs_object", false]], "list_files_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_files_in_drs_manifest", false]], "list_jobs() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.list_jobs", false]], "load() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.load", false]], "load_manifest() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.load_manifest", false]], "ls() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.ls", false]], "ls_path() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.ls_path", false]], "manifest (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.Manifest", false]], "max_concurrent_requests (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.MAX_CONCURRENT_REQUESTS", false]], "max_concurrent_requests (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.MAX_CONCURRENT_REQUESTS", false]], "max_concurrent_requests (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.MAX_CONCURRENT_REQUESTS", false]], "md5 (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.MD5", false]], "md5sum (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.md5sum", false]], "module": [[9, "module-gen3.tools", false], [10, "module-gen3.tools.download.drs_download", false], [11, "module-gen3.tools.indexing.download_manifest", false], [11, "module-gen3.tools.indexing.index_manifest", false], [11, "module-gen3.tools.indexing.verify_manifest", false], [12, "module-gen3.tools.metadata.ingest_manifest", false]], "object_id (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.object_id", false]], "object_id (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.object_id", false]], "object_type (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.object_type", false]], "open_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.open_project", false]], "pprint() (gen3.tools.download.drs_download.downloadable method)": [[10, "gen3.tools.download.drs_download.Downloadable.pprint", false]], "prev_guid (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.PREV_GUID", false]], "query() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.query", false]], "query() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.query", false]], "query() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.query", false]], "query_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.query_urls", false]], "raw_data_download() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.raw_data_download", false]], "refresh_access_token() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.refresh_access_token", false]], "resolve_objects() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.resolve_objects", false]], "rm() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.rm", false]], "rm_path() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.rm_path", false]], "size (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.SIZE", false]], "start_time (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.start_time", false]], "status (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.status", false]], "submit_file() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.submit_file", false]], "submit_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.submit_record", false]], "threadcontrol (class in gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.ThreadControl", false]], "tmp_folder (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.TMP_FOLDER", false]], "update() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.update", false]], "update_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.update_aliases", false]], "update_blank() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.update_blank", false]], "update_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.update_record", false]], "updated_time (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.updated_time", false]], "upload() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.upload", false]], "upload_file() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.upload_file", false]], "upload_file_to_guid() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.upload_file_to_guid", false]], "upload_url() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.upload_url", false]], "urls (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.URLS", false]], "user_access() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.user_access", false]]}, "objects": {"gen3": [[9, 3, 0, "-", "tools"]], "gen3.auth": [[0, 0, 1, "", "Gen3Auth"]], "gen3.auth.Gen3Auth": [[0, 1, 1, "", "curl"], [0, 1, 1, "", "get_access_token"], [0, 1, 1, "", "get_access_token_from_wts"], [0, 1, 1, "", "refresh_access_token"]], "gen3.file": [[1, 0, 1, "", "Gen3File"]], "gen3.file.Gen3File": [[1, 1, 1, "", "delete_file"], [1, 1, 1, "", "delete_file_locations"], [1, 1, 1, "", "download_single"], [1, 1, 1, "", "get_presigned_url"], [1, 1, 1, "", "upload_file"], [1, 1, 1, "", "upload_file_to_guid"]], "gen3.index": [[3, 0, 1, "", "Gen3Index"]], "gen3.index.Gen3Index": [[3, 1, 1, "", "async_create_record"], [3, 1, 1, "", "async_get_record"], [3, 1, 1, "", "async_get_records_from_checksum"], [3, 1, 1, "", "async_get_records_on_page"], [3, 1, 1, "", "async_get_with_params"], [3, 1, 1, "", "async_query_urls"], [3, 1, 1, "", "async_update_record"], [3, 1, 1, "", "create_blank"], [3, 1, 1, "", "create_new_version"], [3, 1, 1, "", "create_record"], [3, 1, 1, "", "delete_record"], [3, 1, 1, "", "get"], [3, 1, 1, "", "get_all_records"], [3, 1, 1, "", "get_guids_prefix"], [3, 1, 1, "", "get_latest_version"], [3, 1, 1, "", "get_record"], [3, 1, 1, "", "get_record_doc"], [3, 1, 1, "", "get_records"], [3, 1, 1, "", "get_records_on_page"], [3, 1, 1, "", "get_stats"], [3, 1, 1, "", "get_urls"], [3, 1, 1, "", "get_valid_guids"], [3, 1, 1, "", "get_version"], [3, 1, 1, "", "get_versions"], [3, 1, 1, "", "get_with_params"], [3, 1, 1, "", "is_healthy"], [3, 1, 1, "", "query_urls"], [3, 1, 1, "", "update_blank"], [3, 1, 1, "", "update_record"]], "gen3.jobs": [[4, 0, 1, "", "Gen3Jobs"]], "gen3.jobs.Gen3Jobs": [[4, 1, 1, "", "async_run_job_and_wait"], [4, 1, 1, "", "create_job"], [4, 1, 1, "", "get_output"], [4, 1, 1, "", "get_status"], [4, 1, 1, "", "get_version"], [4, 1, 1, "", "is_healthy"], [4, 1, 1, "", "list_jobs"]], "gen3.metadata": [[5, 0, 1, "", "Gen3Metadata"]], "gen3.metadata.Gen3Metadata": [[5, 1, 1, "", "async_create"], [5, 1, 1, "", "async_create_aliases"], [5, 1, 1, "", "async_delete_alias"], [5, 1, 1, "", "async_delete_aliases"], [5, 1, 1, "", "async_get"], [5, 1, 1, "", "async_get_aliases"], [5, 1, 1, "", "async_update"], [5, 1, 1, "", "async_update_aliases"], [5, 2, 1, "", "auth_provider"], [5, 1, 1, "", "batch_create"], [5, 1, 1, "", "create"], [5, 1, 1, "", "create_aliases"], [5, 1, 1, "", "create_index_key_path"], [5, 1, 1, "", "delete"], [5, 1, 1, "", "delete_alias"], [5, 1, 1, "", "delete_aliases"], [5, 1, 1, "", "delete_index_key_path"], [5, 2, 1, "", "endpoint"], [5, 1, 1, "", "get"], [5, 1, 1, "", "get_aliases"], [5, 1, 1, "", "get_index_key_paths"], [5, 1, 1, "", "get_version"], [5, 1, 1, "", "is_healthy"], [5, 1, 1, "", "query"], [5, 1, 1, "", "update"], [5, 1, 1, "", "update_aliases"]], "gen3.object": [[6, 0, 1, "", "Gen3Object"]], "gen3.object.Gen3Object": [[6, 1, 1, "", "delete_object"]], "gen3.query": [[7, 0, 1, "", "Gen3Query"]], "gen3.query.Gen3Query": [[7, 1, 1, "", "graphql_query"], [7, 1, 1, "", "query"], [7, 1, 1, "", "raw_data_download"]], "gen3.submission": [[8, 0, 1, "", "Gen3Submission"]], "gen3.submission.Gen3Submission": [[8, 1, 1, "", "create_program"], [8, 1, 1, "", "create_project"], [8, 1, 1, "", "delete_node"], [8, 1, 1, "", "delete_nodes"], [8, 1, 1, "", "delete_program"], [8, 1, 1, "", "delete_project"], [8, 1, 1, "", "delete_record"], [8, 1, 1, "", "delete_records"], [8, 1, 1, "", "export_node"], [8, 1, 1, "", "export_record"], [8, 1, 1, "", "get_dictionary_all"], [8, 1, 1, "", "get_dictionary_node"], [8, 1, 1, "", "get_graphql_schema"], [8, 1, 1, "", "get_programs"], [8, 1, 1, "", "get_project_dictionary"], [8, 1, 1, "", "get_project_manifest"], [8, 1, 1, "", "get_projects"], [8, 1, 1, "", "open_project"], [8, 1, 1, "", "query"], [8, 1, 1, "", "submit_file"], [8, 1, 1, "", "submit_record"]], "gen3.tools.download": [[10, 3, 0, "-", "drs_download"]], "gen3.tools.download.drs_download": [[10, 0, 1, "", "DownloadManager"], [10, 0, 1, "", "DownloadStatus"], [10, 0, 1, "", "Downloadable"], [10, 0, 1, "", "Manifest"], [10, 4, 1, "", "download_files_in_drs_manifest"], [10, 4, 1, "", "list_access_in_drs_manifest"], [10, 4, 1, "", "list_drs_object"], [10, 4, 1, "", "list_files_in_drs_manifest"]], "gen3.tools.download.drs_download.DownloadManager": [[10, 1, 1, "", "cache_hosts_wts_tokens"], [10, 1, 1, "", "download"], [10, 1, 1, "", "get_fresh_token"], [10, 1, 1, "", "resolve_objects"], [10, 1, 1, "", "user_access"]], "gen3.tools.download.drs_download.DownloadStatus": [[10, 2, 1, "", "end_time"], [10, 2, 1, "", "start_time"], [10, 2, 1, "", "status"]], "gen3.tools.download.drs_download.Downloadable": [[10, 2, 1, "", "_manager"], [10, 2, 1, "", "access_methods"], [10, 2, 1, "", "children"], [10, 2, 1, "", "created_time"], [10, 1, 1, "", "download"], [10, 2, 1, "", "file_name"], [10, 2, 1, "", "file_size"], [10, 2, 1, "", "hostname"], [10, 2, 1, "", "object_id"], [10, 2, 1, "", "object_type"], [10, 1, 1, "", "pprint"], [10, 2, 1, "", "updated_time"]], "gen3.tools.download.drs_download.Manifest": [[10, 2, 1, "", "commons_url"], [10, 1, 1, "", "create_object_list"], [10, 2, 1, "", "file_name"], [10, 2, 1, "", "file_size"], [10, 1, 1, "", "load"], [10, 1, 1, "", "load_manifest"], [10, 2, 1, "", "md5sum"], [10, 2, 1, "", "object_id"]], "gen3.tools.indexing": [[11, 3, 0, "-", "download_manifest"], [11, 3, 0, "-", "index_manifest"], [11, 3, 0, "-", "verify_manifest"]], "gen3.tools.indexing.download_manifest": [[11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "INDEXD_RECORD_PAGE_SIZE"], [11, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [11, 2, 1, "", "TMP_FOLDER"], [11, 4, 1, "", "async_download_object_manifest"]], "gen3.tools.indexing.index_manifest": [[11, 2, 1, "", "ACLS"], [11, 2, 1, "", "AUTHZ"], [11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "GUID"], [11, 2, 1, "", "MD5"], [11, 2, 1, "", "PREV_GUID"], [11, 2, 1, "", "SIZE"], [11, 0, 1, "", "ThreadControl"], [11, 2, 1, "", "URLS"], [11, 4, 1, "", "delete_all_guids"], [11, 4, 1, "", "index_object_manifest"]], "gen3.tools.indexing.verify_manifest": [[11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [11, 4, 1, "", "async_verify_object_manifest"]], "gen3.tools.metadata": [[12, 3, 0, "-", "ingest_manifest"]], "gen3.tools.metadata.ingest_manifest": [[12, 2, 1, "", "COLUMN_TO_USE_AS_GUID"], [12, 2, 1, "", "GUID_TYPE_FOR_INDEXED_FILE_OBJECT"], [12, 2, 1, "", "GUID_TYPE_FOR_NON_INDEXED_FILE_OBJECT"], [12, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [12, 4, 1, "", "async_ingest_metadata_manifest"], [12, 4, 1, "", "async_query_urls_from_indexd"]], "gen3.wss": [[13, 0, 1, "", "Gen3WsStorage"]], "gen3.wss.Gen3WsStorage": [[13, 1, 1, "", "copy"], [13, 1, 1, "", "download"], [13, 1, 1, "", "download_url"], [13, 1, 1, "", "ls"], [13, 1, 1, "", "ls_path"], [13, 1, 1, "", "rm"], [13, 1, 1, "", "rm_path"], [13, 1, 1, "", "upload"], [13, 1, 1, "", "upload_url"]]}, "objnames": {"0": ["py", "class", "Python class"], "1": ["py", "method", "Python method"], "2": ["py", "attribute", "Python attribute"], "3": ["py", "module", "Python module"], "4": ["py", "function", "Python function"]}, "objtypes": {"0": "py:class", "1": "py:method", "2": "py:attribute", "3": "py:module", "4": "py:function"}, "terms": {"": [1, 4, 8, 10, 11], "0": [5, 7, 8, 11], "0046513": [], "064572": [], "0a80fada010c": 11, "0a80fada096c": 11, "0a80fada097c": 11, "0a80fada098c": 11, "0a80fada099c": 11, "1": [4, 5, 8, 10, 11], "10": [5, 7, 11], "100": [8, 11], "11e9": 11, "1713542306": [], "1713542765": [], "1713543033": [], "1713543225": [], "1713543506": [], "1713543956": [], "1713544131": [], "1713544132": [], "1713544397": [11, 12], "1771936": [], "1913438": [], "2": [5, 11], "24": [11, 12], "255e396f": 11, "2877355": [], "2995": [], "3": [5, 11], "30": 8, "33": 5, "333": 5, "343434344": 11, "363455714": 11, "4": [5, 11], "4017086": [], "4052968": 11, "450c": 11, "4649727": [], "4714": 8, "473d83400bc1bc9dc635e334fadd433c": 11, "473d83400bc1bc9dc635e334faddd33c": 11, "473d83400bc1bc9dc635e334fadde33c": 11, "473d83400bc1bc9dc635e334faddf33c": 11, "5": [0, 5], "50": 7, "543434443": 11, "5669184": [], "5899982": [], "6692646": [], "6f90": 8, "760149": [], "7d3d8d2083b4": 11, "8044841": 12, "8375325": [], "8420": 8, "8882551": [], "93d9af72": 11, "9a07": 11, "A": [1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "AND": 5, "Be": 1, "But": 5, "By": 11, "For": [1, 5, 6, 7, 8, 9, 11], "IF": 11, "If": [0, 1, 7, 11, 12], "In": 10, "It": 10, "NOT": 12, "OR": 5, "One": 7, "Such": 9, "THE": 11, "That": 3, "The": [0, 1, 2, 3, 5, 8, 10, 11], "There": 11, "These": 9, "To": 11, "Will": [4, 7, 10], "_get_acl_from_row": 11, "_get_authz_from_row": 11, "_get_file_name_from_row": 11, "_get_file_size_from_row": 11, "_get_guid_for_row": 12, "_get_guid_from_row": 11, "_get_md5_from_row": 11, "_get_urls_from_row": 11, "_guid_typ": 12, "_manag": [2, 9, 10], "_query_for_associated_indexd_record_guid": 12, "_ssl": [3, 4, 5], "a5c6": 11, "ab167e49d25b488939b1ede42752458b": 3, "about": [2, 3], "abov": 11, "access": [0, 1, 3, 7, 10], "access_method": [2, 9, 10], "access_token": 0, "accesstoken": 0, "acl": [2, 3, 9, 11], "across": 11, "act": 0, "action": [9, 11], "actual": 11, "ad": 3, "add": [3, 5], "addit": [3, 5, 10, 11], "admin": [5, 11], "admin_endpoint_suffix": 5, "after": 10, "against": [3, 7, 8, 11, 12], "algorithm": 3, "alia": [3, 5], "alias": 5, "aliv": 7, "all": [1, 3, 4, 5, 6, 7, 8, 10, 11, 12], "allow": [0, 6, 8, 10, 11, 12], "allowed_data_upload_bucket": 1, "along": 2, "alreadi": 9, "also": 1, "altern": [5, 11], "alwai": 5, "ammount": 12, "amount": [1, 9], "an": [0, 3, 6, 8, 10, 11], "ani": [0, 5, 10, 11], "anoth": 5, "api": [0, 5, 8, 11], "api_kei": 11, "appli": 7, "appropri": 13, "ar": [5, 7, 8, 9, 10, 11], "arbitrari": 0, "argument": [0, 13], "arrai": 8, "asc": 7, "assign": 9, "assist": 10, "associ": [3, 5], "assum": 11, "async": [3, 4, 5, 9, 11, 12], "async_cr": [2, 5], "async_create_alias": [2, 5], "async_create_record": [2, 3], "async_delete_alia": [2, 5], "async_delete_alias": [2, 5], "async_download_object_manifest": [2, 9, 11], "async_get": [2, 5], "async_get_alias": [2, 5], "async_get_record": [2, 3], "async_get_records_from_checksum": [2, 3], "async_get_records_on_pag": [2, 3], "async_get_with_param": [2, 3], "async_ingest_metadata_manifest": [2, 9, 12], "async_query_url": [2, 3], "async_query_urls_from_indexd": [2, 9, 12], "async_run_job_and_wait": [2, 4], "async_upd": [2, 5], "async_update_alias": [2, 5], "async_update_record": [2, 3], "async_verify_object_manifest": [2, 9, 11], "asynchron": [3, 4, 5], "asyncio": [11, 12], "asyncron": 5, "attach": [3, 5], "attempt": 11, "attribut": [10, 11], "auth": [1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "auth_provid": [1, 2, 3, 4, 5, 6, 7, 8, 13], "authbas": 0, "authent": 0, "author": 1, "authz": [0, 1, 2, 3, 9, 10, 11], "auto": [0, 2], "automat": 0, "avail": [1, 2, 10, 11], "az": 1, "b": [5, 11], "b0f1": 11, "bar": 10, "base": [0, 1, 3, 4, 5, 6, 7, 8, 9, 11, 13], "baseid": 3, "basic": [3, 11, 12], "batch_creat": [2, 5], "batch_siz": 8, "behalf": 0, "behavior": 11, "being": 3, "belong": 8, "below": 11, "blank": 3, "blob": [5, 7], "bodi": 3, "bool": [4, 5, 8, 10, 11, 12], "boolean": 3, "bownload": 10, "broad": 9, "broken": 9, "bucket": [1, 6], "bundl": 10, "byte": 10, "c": [5, 11], "cach": 10, "cache_hosts_wts_token": [2, 9, 10], "call": [10, 13], "can": [0, 3, 4, 8, 11, 12], "capabl": 9, "case": [0, 10], "categori": 9, "ccle": 8, "ccle_one_record": 8, "ccle_sample_nod": 8, "cdi": 7, "chang": [3, 11], "checksum": [3, 10], "checksum_typ": 3, "child": 10, "children": [2, 9, 10], "chunk_siz": 8, "class": [0, 2, 10, 11, 13], "cli": 10, "client": [0, 3], "client_credenti": 0, "client_id": 0, "client_scop": 0, "client_secret": 0, "code": [2, 8], "column": [11, 12], "column_to_use_as_guid": [2, 9, 12], "columna": 11, "columnb": 11, "columnc": 11, "com": 7, "comma": 11, "command": [10, 11], "common": [0, 1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13], "commons_url": [2, 9, 10, 11, 12], "complet": [4, 11], "complex": 7, "concat": 11, "concurr": [11, 12], "configur": 1, "connect": 12, "consist": 3, "constructor": 0, "contain": [0, 2, 5, 8, 9, 10, 11, 12], "content": [3, 13], "content_created_d": 3, "content_updated_d": 3, "continu": 10, "control": 3, "conveni": 10, "copi": [2, 13], "coroutin": 11, "correspond": 3, "count": 3, "crdc": 0, "creat": [2, 3, 4, 5, 6, 8, 10, 11], "create_alias": [2, 5], "create_blank": [2, 3], "create_index_key_path": [2, 5], "create_job": [2, 4], "create_new_vers": [2, 3], "create_object_list": [2, 9, 10], "create_program": [2, 8], "create_project": [2, 8], "create_record": [2, 3], "created_tim": [2, 9, 10], "creation": [3, 11], "cred": 3, "credenti": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "csv": [8, 11, 12], "curl": [0, 2], "current": [6, 8, 10], "current_dir": [2, 9, 11], "custom": 11, "d": 5, "d70b41b9": 8, "data": [0, 1, 3, 5, 7, 8, 10, 11], "data_spreadsheet": 8, "data_typ": 7, "data_upload_bucket": 1, "dataa": 11, "datab": 11, "databas": 5, "datacommon": 0, "datafil": 10, "datamanag": 10, "date": 3, "datetim": [1, 3, 10], "dbgap": 12, "dcf": 8, "def": 11, "default": [0, 1, 3, 7, 8, 11, 12], "defin": [5, 8, 10], "delai": 4, "delet": [0, 1, 2, 3, 5, 6, 8, 10, 11], "delete_alia": [2, 5], "delete_alias": [2, 5], "delete_all_guid": [2, 9, 11], "delete_fil": [1, 2], "delete_file_loc": [1, 2, 6], "delete_index_key_path": [2, 5], "delete_nod": [2, 8], "delete_object": [2, 6], "delete_program": [2, 8], "delete_project": [2, 8], "delete_record": [2, 3, 8], "delete_unpacked_packag": 10, "delimet": [11, 12], "delimit": 11, "demograph": 8, "deprec": 1, "descript": [3, 5], "desir": 11, "dest_path": 13, "dest_urlstr": 13, "dest_w": 13, "dest_wskei": 13, "detail": [2, 7, 10], "determin": [10, 11, 12], "dev": 11, "dict": [3, 4, 5, 10, 11, 12], "dictionari": [3, 4, 5, 7, 8], "did": 3, "differ": 5, "direct": 0, "directori": [10, 11], "disabl": 10, "discoveri": 10, "disk": 13, "dispatch": 4, "dist_resolut": 3, "distribut": 3, "doc": [7, 10], "docstr": 2, "document": [1, 3], "doe": [0, 12], "domain": [11, 12], "done": 4, "download": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 13], "download_files_in_drs_manifest": [2, 9, 10], "download_list": 10, "download_manifest": 11, "download_singl": [1, 2], "download_url": [2, 13], "downloadmanag": [2, 9, 10], "downloadstatu": [2, 9, 10], "dr": [2, 9], "drs_download": 10, "drs_hostnam": 10, "drsdownload": 10, "drsobjecttyp": 10, "e": [5, 10], "e043ab8b77b9": 8, "each": [3, 8, 10, 11], "effici": 9, "eg": 3, "either": 8, "elasticsearch": 7, "els": [0, 12], "elsewher": 12, "empti": [8, 11], "enabl": 11, "end": [5, 10], "end_tim": [2, 9, 10], "endpoint": [0, 1, 2, 3, 4, 5, 7, 8, 13], "entir": 8, "entri": [3, 11], "env": 0, "environ": 0, "equal": 7, "error": [10, 11, 12], "error_nam": 11, "etc": 8, "even": 11, "everi": [9, 11], "everyth": 11, "ex": [0, 11, 12], "exampl": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "exclud": 3, "execut": [7, 8, 11], "exist": [1, 3, 5, 6, 9, 12], "expect": [5, 9, 11], "experi": 8, "expir": [0, 1], "expires_in": 1, "export": [8, 10], "export_nod": [2, 8], "export_record": [2, 8], "f1f8": 11, "factori": 10, "fail": [8, 10], "fals": [3, 5, 6, 10, 11], "featur": [1, 6], "fenc": [0, 1], "fetch": 0, "field": [3, 5, 7, 11, 12], "fieldnam": 11, "file": [0, 2, 3, 4, 8, 9, 10, 11, 12, 13], "file_nam": [1, 2, 3, 9, 10, 11], "file_s": [2, 9, 10, 11], "file_st": 3, "fileformat": 8, "filenam": [0, 8, 10, 11, 12], "files": 10, "fill": 12, "filter": [5, 7], "filter_object": 7, "first": [7, 8], "flag": 11, "folder": 11, "follow": [0, 11], "forc": 11, "force_metadata_columns_even_if_empti": 11, "form": 13, "format": [3, 5, 8, 11], "from": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13], "func_to_parse_row": [11, 12], "function": [2, 3, 4, 5, 9, 10, 11, 12], "g": 10, "gen3": [10, 11, 12], "gen3_api_kei": 0, "gen3_oidc_client_creds_secret": 0, "gen3auth": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "gen3fil": [1, 2], "gen3index": [2, 3], "gen3job": [2, 4, 10], "gen3metadata": [2, 5], "gen3object": [2, 6], "gen3queri": [2, 7], "gen3submiss": [2, 8], "gen3wsstorag": [2, 13], "gener": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 13], "get": [0, 1, 2, 3, 4, 5, 8, 10, 11, 12, 13], "get_access_token": [0, 2], "get_access_token_from_wt": [0, 2], "get_alias": [2, 5], "get_all_record": [2, 3], "get_dictionary_al": [2, 8], "get_dictionary_nod": [2, 8], "get_fresh_token": [2, 9, 10], "get_graphql_schema": [2, 8], "get_guid_from_fil": 12, "get_guids_prefix": [2, 3], "get_index_key_path": [2, 5], "get_latest_vers": [2, 3], "get_output": [2, 4], "get_presigned_url": [1, 2], "get_program": [2, 8], "get_project": [2, 8], "get_project_dictionari": [2, 8], "get_project_manifest": [2, 8], "get_record": [2, 3], "get_record_doc": [2, 3], "get_records_on_pag": [2, 3], "get_stat": [2, 3], "get_statu": [2, 4], "get_url": [2, 3], "get_valid_guid": [2, 3], "get_vers": [2, 3, 4, 5], "get_with_param": [2, 3], "giangb": 11, "github": [2, 7], "give": 1, "given": [0, 3, 4, 5, 8, 10, 12, 13], "global": [4, 5], "good": 3, "grant": 0, "graph": 8, "graphql": [7, 8], "graphql_queri": [2, 7], "group": 3, "guid": [1, 2, 3, 5, 6, 9, 11, 12], "guid_exampl": 11, "guid_for_row": 12, "guid_from_fil": 12, "guid_type_for_indexed_file_object": [2, 9, 12], "guid_type_for_non_indexed_file_object": [2, 9, 12], "guppi": 7, "ha": [0, 11], "handl": [3, 10], "hardcod": 0, "has_vers": 3, "hash": [3, 11], "hash_typ": 3, "have": [5, 11], "header": 11, "healthi": [3, 4, 5], "help": 11, "helper": 2, "hit": 11, "host": 10, "hostnam": [2, 9, 10], "how": [8, 11], "howto": 10, "http": [0, 7, 11, 12], "i": [0, 1, 2, 3, 4, 5, 8, 10, 11, 12], "id": [0, 1, 3, 5, 10, 11], "idea": 3, "identifi": [3, 5, 9, 11], "idp": 0, "illustr": 11, "immut": 3, "implement": 0, "implic": 11, "import": 11, "includ": [0, 3], "indent": 10, "index": [0, 2, 5, 9], "index_manifest": 11, "index_object_manifest": [2, 9, 11], "indexd": [1, 3, 6, 10, 11, 12], "indexd_field": [11, 12], "indexd_record_page_s": [2, 9, 11], "indexed_file_object_guid": 12, "indic": [0, 11], "infil": 10, "info": [3, 11], "inform": [2, 3, 10], "ingest": [2, 9], "ingest_manifest": 12, "initi": [0, 10], "input": [4, 10, 11], "input_manifest": 11, "instal": [0, 2, 11], "instanc": [1, 3, 6, 7, 8, 9, 10], "instead": [1, 7, 11], "int": [1, 3, 5, 7, 8, 10, 11, 12], "integ": [1, 3, 8], "intend": 0, "interact": [1, 3, 4, 5, 6, 8, 13], "interest": 10, "interpret": 0, "introspect": 8, "involv": 9, "is_healthi": [2, 3, 4, 5], "is_indexed_file_object": 12, "isn": 1, "issu": 0, "its": [1, 3], "job": 2, "job_id": 4, "job_input": 4, "job_nam": 4, "json": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "just": [5, 11, 12], "jwt": 0, "kei": [0, 3, 5, 13], "know": 11, "known": 10, "kwarg": [3, 4, 5], "l": [2, 13], "larg": 9, "last": 10, "latest": 3, "least": 3, "level": 6, "librari": 11, "like": [3, 5, 9, 11, 12], "limit": [1, 3, 5, 12], "linear": 4, "linux": 10, "list": [0, 1, 3, 4, 5, 7, 8, 10, 11, 13], "list_access_in_drs_manifest": [2, 9, 10], "list_drs_object": [2, 9, 10], "list_files_in_drs_manifest": [2, 9, 10], "list_job": [2, 4], "live": [11, 12], "load": [2, 9, 10], "load_manifest": [2, 9, 10], "local": [0, 13], "locat": [1, 6], "lock": 12, "log": [8, 10, 11, 12], "logic": [5, 12], "loop": 11, "ls_path": [2, 13], "maco": 11, "made": 3, "mai": [0, 9, 11], "main": 10, "make": [9, 11], "manag": [1, 5, 10], "mani": [8, 11], "manifest": [2, 8, 9, 10, 11, 12], "manifest_1": 10, "manifest_fil": [11, 12], "manifest_file_delimit": [11, 12], "manifest_row_pars": [11, 12], "map": [0, 11], "mark": 8, "master": 7, "match": [3, 5, 12], "max": 5, "max_concurrent_request": [2, 9, 11, 12], "max_presigned_url_ttl": 1, "max_tri": 8, "maximum": [11, 12], "md": [5, 7, 10, 12], "md5": [2, 3, 9, 11], "md5_hash": 11, "md5sum": [2, 9, 10], "mean": 8, "mechan": 3, "merg": 5, "metadata": [2, 3, 6, 9, 11], "metadata_list": 5, "metadata_sourc": 12, "metadata_typ": 12, "metdata": 12, "method": [1, 7, 10], "minimum": 10, "minut": 0, "mode": 7, "modul": [2, 10, 11], "more": [2, 5, 7, 9, 10], "most": 9, "mostli": 2, "multipl": [8, 11], "must": [1, 5], "my_common": 10, "my_credenti": 10, "my_field": 7, "my_index": 7, "my_program": 7, "my_project": 7, "name": [3, 4, 8, 10, 11, 12, 13], "namespac": [0, 12], "necessari": [3, 5], "need": [3, 7, 10, 11], "nest": 5, "net": 11, "never": 0, "new": [0, 3], "node": 8, "node_nam": 8, "node_typ": 8, "none": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "note": [0, 3, 11, 12], "noth": [3, 6], "now": [1, 8], "num": 5, "num_process": 11, "num_total_fil": 11, "number": [3, 7, 8, 11, 12], "o": 0, "object": [1, 2, 3, 4, 5, 7, 8, 9, 10, 11, 13], "object_id": [1, 2, 9, 10], "object_list": 10, "object_typ": [2, 9, 10], "objectid": 10, "obtain": [0, 10], "occur": 10, "off": 5, "offset": [5, 7], "oidc": 0, "old": 3, "one": [3, 5, 10, 11], "onli": [3, 5, 7, 8, 10, 11], "open": [8, 10, 11], "open_project": [2, 8], "openid": 0, "opt": 0, "option": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11], "order": [0, 8], "ordered_node_list": 8, "org": 10, "otherwis": 10, "output": [4, 5, 11, 12], "output_dir": 10, "output_filenam": [11, 12], "overrid": [0, 11, 12], "overwrit": 5, "own": 0, "packag": 10, "page": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 13], "pagin": 3, "parallel": 11, "param": [3, 5, 8, 10], "paramet": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "pars": [10, 11, 12, 13], "parser": [11, 12], "particular": 0, "pass": [0, 7, 8, 10], "password": [11, 12], "path": [0, 1, 5, 10, 11, 13], "path_to_manifest": 11, "pattern": [3, 12], "pdcdatastor": 11, "pend": 10, "per": [11, 12], "peregrin": 8, "permiss": 10, "persist": 9, "phs0001": 11, "phs0002": 11, "pick": 1, "pla": 11, "place": 11, "planx": 11, "point": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "popul": [10, 12], "posit": [1, 7], "possibl": 10, "post": [0, 11], "pprint": [2, 9, 10], "prefix": 3, "presign": 1, "pretti": 10, "prev_guid": [2, 9, 11], "previou": [3, 11], "previous": 4, "print": [8, 10], "process": 11, "processed_fil": 11, "profil": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "program": [8, 11], "progress": [8, 10], "project": [8, 11], "project_id": [7, 8], "protocol": 1, "provid": [0, 1, 3, 5, 7, 8, 12], "public": [3, 5], "put": 0, "py": 11, "python": [2, 9, 11], "python3": 11, "python_subprocess_command": 11, "queri": [1, 2, 3, 5, 8, 11, 12], "query_str": 7, "query_txt": [7, 8], "query_url": [2, 3], "quickstart": 2, "rather": 0, "raw": [7, 11], "raw_data_download": [2, 7], "rbac": 3, "read": [3, 5, 11], "readm": 2, "reason": 10, "record": [1, 3, 5, 7, 8, 11, 12], "refresh": [0, 10], "refresh_access_token": [0, 2], "refresh_fil": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "refresh_token": 0, "regist": 8, "regular": 7, "relat": 9, "remov": [1, 6, 11, 13], "replac": 11, "replace_url": 11, "repo": 2, "repres": [3, 5, 10], "represent": [1, 3], "request": [0, 1, 3, 5, 8, 11, 12], "requir": 10, "resolv": 10, "resolve_object": [2, 9, 10], "respect": 7, "respons": [0, 1, 3, 4, 5], "result": [1, 8, 10, 11], "retri": 8, "retriev": [1, 8, 10, 12], "return": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11], "return_full_metadata": 5, "rev": 3, "revers": 8, "revis": 3, "right": 1, "rm": [2, 13], "rm_path": [2, 13], "root": [11, 12], "row": [7, 8, 11, 12], "row_offset": 8, "rtype": 3, "run": [8, 11], "s3": [1, 10, 11], "safe": 11, "same": [5, 11, 13], "sampl": [8, 10], "sandbox": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "save": 10, "save_directori": 10, "schema": 8, "scope": [0, 1], "screen": 8, "script": 2, "search": [0, 2, 3], "second": [1, 4], "secret": 0, "see": [7, 10, 11], "self": 10, "semaphon": 12, "semaphor": 12, "separ": [0, 11], "server": 10, "servic": [1, 3, 4, 5, 6, 8, 11, 12, 13], "service_loc": [3, 4, 5], "session": 11, "set": [0, 1, 5, 10], "setup": 2, "sheepdog": 8, "should": [0, 8, 11], "show": 10, "show_progress": 10, "shown": 11, "sign": 1, "signpost": 3, "similar": 10, "simpl": 3, "simpli": 11, "sinc": 3, "singl": [1, 5, 8], "size": [2, 3, 9, 10, 11], "skip": 8, "sleep": 4, "so": 11, "some": [0, 2], "someth": 11, "sort": 7, "sort_field": 7, "sort_object": 7, "sourc": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "space": [0, 11], "specif": [5, 8, 11, 12], "specifi": [0, 1, 3, 11, 13], "spreadsheet": 8, "src_path": 13, "src_urlstr": 13, "src_w": 13, "src_wskei": 13, "ssl": [3, 4, 5], "start": [3, 4, 7, 8, 10], "start_tim": [2, 9, 10], "static": 10, "statu": [2, 4, 9, 10], "storag": [1, 2, 6], "store": [1, 3, 10], "str": [0, 1, 3, 4, 5, 7, 8, 10, 11, 12], "string": [0, 3, 5, 11, 13], "strip": 11, "sub": 8, "subject": [7, 8], "submiss": 2, "submit": [8, 11], "submit_additional_metadata_column": 11, "submit_fil": [2, 8], "submit_record": [2, 8], "submitter_id": 7, "success": 10, "successfulli": 10, "suffici": 3, "suppli": 3, "support": [0, 1, 5, 8, 11], "sure": 1, "synchron": 11, "syntax": 7, "system": [6, 7, 8, 9], "t": [1, 5, 11], "tab": 11, "task": 9, "temporari": 11, "test": 11, "test1": 11, "test2": 11, "test3": 11, "test4": 11, "test5": 11, "text": [1, 7, 8], "than": [0, 5], "thei": [0, 10], "them": [10, 11], "thi": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "those": 11, "thread": 11, "thread_num": 11, "threadcontrol": [2, 9, 11], "through": [8, 11], "tier": 7, "time": [1, 3, 8, 10, 11], "timestamp": 10, "tmp_folder": [2, 9, 11], "token": [0, 10], "tool": 2, "total": 11, "treat": [1, 5], "tree": 10, "true": [3, 4, 5, 6, 7, 8, 10, 11, 12], "try": 0, "tsv": [8, 11, 12], "tupl": [0, 3, 11, 12], "type": [1, 3, 4, 5, 7, 8, 10, 11, 12], "typic": 10, "uc": 7, "unaccess": 7, "under": [0, 8, 13], "uniqu": [1, 5], "unknown": 10, "unpack": 10, "unpack_packag": 10, "until": [4, 10], "up": [5, 9], "updat": [2, 3, 5, 10, 11], "update_alias": [2, 5], "update_blank": [2, 3], "update_record": [2, 3], "updated_tim": [2, 9, 10], "upload": [1, 2, 3, 8, 13], "upload_fil": [1, 2], "upload_file_to_guid": [1, 2], "upload_url": [2, 13], "url": [1, 2, 3, 9, 10, 11, 12, 13], "urls_metadata": 3, "us": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "usag": 11, "use_agg_md": 5, "user": [0, 10, 12], "user_access": [2, 9, 10], "usual": 12, "utcnow": 1, "util": 9, "uuid": [1, 3, 8], "uuid1": 8, "uuid2": 8, "valid": [3, 7], "valu": [0, 1, 3, 5, 7, 10, 11], "value_from_indexd": 11, "value_from_manifest": 11, "variabl": [0, 7, 8], "variou": 2, "verbos": [7, 8], "verif": 11, "verifi": [2, 9], "verify_manifest": 11, "verify_object_manifest": 11, "version": [3, 4, 5], "vital_statu": 7, "w": 13, "wa": 0, "wai": 10, "wait": 4, "want": [0, 3, 8], "warn": 11, "we": [3, 11], "web": 0, "what": 5, "when": [0, 3, 7, 10, 12], "where": [0, 3, 5, 11, 12], "whether": [3, 4, 5, 8, 11, 12], "which": [8, 10], "while": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "whose": 5, "within": [0, 2, 9], "without": [3, 5], "won": 5, "work": [0, 10], "workaround": 11, "worksheet": 8, "workspac": [0, 2], "wrapper": 10, "write": 11, "ws_urlstr": 13, "wskei": 13, "wss": 13, "wt": [0, 10], "x": 11, "xlsx": 8, "you": [0, 3, 8, 11], "your": 0}, "titles": ["Gen3 Auth Helper", "Gen3 File Class", "Welcome to Gen3 SDK\u2019s documentation!", "Gen3 Index Class", "Gen3 Jobs Class", "Gen3 Metadata Class", "Gen3 Object Class", "Gen3 Query Class", "Gen3 Submission Class", "Gen3 Tools", "DRS Download Tools", "Indexing Tools", "Metadata Tools", "Gen3 Workspace Storage"], "titleterms": {"": 2, "auth": 0, "class": [1, 3, 4, 5, 6, 7, 8], "document": 2, "download": [10, 11], "dr": 10, "file": 1, "gen3": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 13], "helper": 0, "index": [3, 11], "indic": 2, "ingest": 12, "job": 4, "metadata": [5, 12], "object": 6, "queri": 7, "sdk": 2, "storag": 13, "submiss": 8, "tabl": 2, "tool": [9, 10, 11, 12], "verifi": 11, "welcom": 2, "workspac": 13}}) \ No newline at end of file diff --git a/docs/_build/html/tools/indexing.html b/docs/_build/html/tools/indexing.html index 7818cdc05..b716526cf 100644 --- a/docs/_build/html/tools/indexing.html +++ b/docs/_build/html/tools/indexing.html @@ -381,7 +381,7 @@

Indexing Tools
-async gen3.tools.indexing.verify_manifest.async_verify_object_manifest(commons_url, manifest_file, max_concurrent_requests=24, manifest_row_parsers={'acl': <function _get_acl_from_row>, 'authz': <function _get_authz_from_row>, 'file_name': <function _get_file_name_from_row>, 'file_size': <function _get_file_size_from_row>, 'guid': <function _get_guid_from_row>, 'md5': <function _get_md5_from_row>, 'urls': <function _get_urls_from_row>}, manifest_file_delimiter=None, output_filename='verify-manifest-errors-1713544131.8375325.log')[source]
+async gen3.tools.indexing.verify_manifest.async_verify_object_manifest(commons_url, manifest_file, max_concurrent_requests=24, manifest_row_parsers={'acl': <function _get_acl_from_row>, 'authz': <function _get_authz_from_row>, 'file_name': <function _get_file_name_from_row>, 'file_size': <function _get_file_size_from_row>, 'guid': <function _get_guid_from_row>, 'md5': <function _get_md5_from_row>, 'urls': <function _get_urls_from_row>}, manifest_file_delimiter=None, output_filename='verify-manifest-errors-1713544397.4052968.log')[source]

Verify all file object records into a manifest csv

Parameters:
diff --git a/docs/_build/html/tools/metadata.html b/docs/_build/html/tools/metadata.html index cc46fce6c..255c0519b 100644 --- a/docs/_build/html/tools/metadata.html +++ b/docs/_build/html/tools/metadata.html @@ -102,7 +102,7 @@

Metadata Tools
-async gen3.tools.metadata.ingest_manifest.async_ingest_metadata_manifest(commons_url, manifest_file, metadata_source, auth=None, max_concurrent_requests=24, manifest_row_parsers={'guid_for_row': <function _get_guid_for_row>, 'indexed_file_object_guid': <function _query_for_associated_indexd_record_guid>}, manifest_file_delimiter=None, output_filename='ingest-metadata-manifest-errors-1713544132.1771936.log', get_guid_from_file=True, metadata_type=None)[source]
+async gen3.tools.metadata.ingest_manifest.async_ingest_metadata_manifest(commons_url, manifest_file, metadata_source, auth=None, max_concurrent_requests=24, manifest_row_parsers={'guid_for_row': <function _get_guid_for_row>, 'indexed_file_object_guid': <function _query_for_associated_indexd_record_guid>}, manifest_file_delimiter=None, output_filename='ingest-metadata-manifest-errors-1713544397.8044841.log', get_guid_from_file=True, metadata_type=None)[source]

Ingest all metadata records into a manifest csv

Parameters:
From c3f5aa210a8a4bedd23e5817d8497c8653e0f0d2 Mon Sep 17 00:00:00 2001 From: Alex Date: Fri, 19 Apr 2024 11:35:26 -0500 Subject: [PATCH 17/62] fix(poetry): use pip install then python to run --- .github/workflows/build.yaml | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index 01038b985..bd920b417 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -27,12 +27,15 @@ jobs: run: | pip install --upgrade pip pip --version + # this isn't the recommended way to install b/c the poetry deps are now + # mixed with the service deps. However, getting the alternative to work + # on all OSes was getting difficult. This is a quick hack to move forward pip install poetry - pip -m poetry --version + python -m poetry --version - name: Install dependencies run: | - pip -m poetry install -vv --all-extras --no-interaction --no-cache - pip -m poetry show -vv + python -m poetry install -vv --all-extras --no-interaction --no-cache + python -m poetry show -vv shell: bash - name: Build using pyinstaller run: | From b8b22cac3736a419e1e6c062aee1c0449e74f57c Mon Sep 17 00:00:00 2001 From: Avantol13 Date: Fri, 19 Apr 2024 16:36:42 +0000 Subject: [PATCH 18/62] Apply automatic documentation changes --- docs/_build/doctrees/environment.pickle | Bin 1579893 -> 1579883 bytes docs/_build/doctrees/tools/indexing.doctree | Bin 100291 -> 100281 bytes docs/_build/doctrees/tools/metadata.doctree | Bin 35934 -> 35934 bytes docs/_build/html/searchindex.js | 2 +- docs/_build/html/tools/indexing.html | 2 +- docs/_build/html/tools/metadata.html | 2 +- 6 files changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/_build/doctrees/environment.pickle b/docs/_build/doctrees/environment.pickle index 2542c166c44ce91665908782babdd75a05f3746d..ce5256949021738b4fea1eb33ed71b9f6ac02376 100644 GIT binary patch delta 11075 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

T2{gBGBONF$`{z63O0X%i=z_Ge?i(K z3D|`@N+rCui*&W}-*=m}#$S3TCxX44M8bhx#22;y+=Z*861>YvTO=LJIhRw8n@A;W zE60^r2{+40`!1fc91}Ap=83AjHk|E+qAI-_v^9DRrfTb8IK@Mt4rZui86#D6FC}Nj zMDzd7kmrllr6Q|9p*DdiM|5wb-`yr%_;q286LlQb$pWPlfv)-qlo%+`h7gA6UoZM? zos!2l_M?qa!cl&-K%-&=I^9a3;y8iKtp)OGCs2p>0^RB)(2?!}h4vJvX)l3ldglrF zRMLBmG{?VOOWqfu~`BoW(%}ES0LRKfxO-m=;#cAB4-OUa;`wB^90ITAkeIQHu601=LG_7DHQ0r zg#z_mBv5*hK<7RZh%OfBBey`)mk9Lwrvf>aX(-pVceIyRPH~}y#%24z;A7z*ZT92s z%=LgypXUE%L?iz3X2M#OaCCixK;ySEMBiNMzi>hxKY3P_p@gHfF9ceGBQw|H1`n5ob-w8C4oo+lv^ihG@9Aovvg{O`Qj|D2l@5XB2gOWgIZ-%JtWI$v;sgA}*1@`Li&tD;-1T`Gh zazqPr0|$3To9m^4^c4&L)E4|K+Ene@7&J0O{oocIj{?3mpYfo%Y?J1)Yl#BIwiRek cJAu4A2(;6KdUn)gxvp2^B&@jH+!3+=1EN=DMF0Q* delta 11085 zcma)Cd0>oJ*UvMV$;@OXGxIz*5m^PXq%=a%gcj9Skw{aew3Z|yC1VMaw5W=mL`s;* zshwJD4I#I*w(o7LmbWOa_HC6?T_{09B$V&md!L)|e*b*_$oZZ1o_p>-kL%^Bcgs^t zw?~^9|OWsS}*E_86(CUflYjER|JM-&%&zn6_-6BpE}$7JNB4NuES zs}l^LkexCvcl2nq9G{ypVN!9SPu4JZMtV+hp{3r~=*}9J?Rnvu$h=zyFRwxiYdv~G zc22STCgZKV5h1wC1a_H*kX3Le7DMn4xQz@iWVKA@E7}&48YZ#wtc2jc!7ItD(2<=x zY)oc$c4pRCA->J+c=v_i4ilKM`+}`vtR~7MyDK!+p6FIVd6iG-pU&wXYH|x*DZ{hU z$EJHA5bLYkz!2-9+nXWQ zGq;f;>{2H$w~0a44Yv&fR&DvojMLa+al8U>=_n$~l&5f!Y0BQ_it!7MNp0B00ypR$x9~ z5xK#0zfJE@R?daREeoB|(QQU#jE!xRmYXv&dfcSqBKJ+t(3oJQ!ZRr*B$Ornlo_8? z+^p798WXP6cuvKHD)&8q$Al=iJ(ji+${kNs+eoF_lhn4YnI(koo>T2!_Pi21)U&vq z=2_XcwI{C~@opI%U2@pjoD>%lnS-1Sp2T*~n{sn9M`wFhw+pitxmj0OoOZF}J#*VO zgGu{cAx2EKs_abc)?oO$vl`%uizkbh2bUd8+G~JLT~xJf*6aOxL1KS3pzOx7&q4$` zP#)?l(9OeB1@i1U&K-B0xD*Im##sZ()?FEDfINd$Ez^Eqp>mnW=PrS9QA%*xt!f{_ zMbu_f{?wtRk@A_pkp2*>to7yIw4jSJS(gUAq5RQ?8$hoaiU>u!&s3tL2J;1M&KR3B zAu}Vpct~-}BtF;Y6esb?#VDIdjIz;SluaH+*|cGlO&CVmRAH1&Xhy5xuuB(M%l^ZsRofDcxC&+j4N^54CmbqIK& z%KK;07X8N0Xg3RKg}?EnuYji;83SDcK5S!r#v)+nIOBHR_MfiCKm3KXrk}BiE{z#% zJnko?PPcK5$P6~TXVklM`+Z}&okByZy&BIa1o5dSvR>QZkV(e9qNr{1Scs6@gLC zjP~ghE~5;ei7SprNuBSrra7vW-9E$G$^a9u_{?u5nTAgD73oM_(dJvh%)FQR=MZUe zXSg}cDVfL|b3>QTz^s{Oy`8DE%qP%M^la#A^Ctn43EgYf>bzh2!aTi>`SGmT?Jvy+ z{%PKAmrSF(<~DUqx?=IIE82`;OGqziwmaRjJWyxgt!#^)%fk09h0j9RX?p;T`NWcH zP-^I+t(J5CFsc|ulMh>diGZI@I0ERHUoE&454xQyy>P`cf(Yqb)t2TqAuTdkuQn0V zf@ao;1OX3?vp#+WmVDz1fMYwY1P=G|4KAnF=M2hi8n@3HO1O?@p0uvF3$qsA>1On` zAFcg#{ilCh_qP?MbHjbrRswGC<=aOS&^g$*bwdG@b9`rn3HZk%-<>T4+`7+qmJVP3 z)i*6dNcStYeR{k3Hk(L~?seEKD%V3zm=r#4WDBwhr)OK)j#~w^cd+%>GkEt^+d-F* z_8Mq2=`eky?c)YQ8k}cqWyNmym}ko{BHdPK3)j1MakVYJu^#-0ZG6)g_+HsL%*%^! z*z6c)8!kKV7-i?xoZ<}ktHMCsCiq2yX)@rzcUpVuylUIt4z3R{1%M^cPTk^H&p~ZmgT26`t3Ns3O^VUkBxpm)vs}^FtzXYJKI%At8V*E3K0#=@N<|N z2rbzv+G{=94(67mLbbiw_B`JX3I^pQP zf+46$a}p@s;L!K1oRQAn22b|uDm~?PruuS|NjbU+P0e+F6TxK@mptV*uEhC=+Z^bn zc;P=7zuOT-=PIs%2;~M{+1PbaamB_z7u`OlL%aBnanYl*MzjFcqOPaWkuHCu@eF#= z&l|fAE4C-hsPh@u0H@Lw4#vCMJgI=y@vd-P-slMj9=F&%8E=k5irw>&6#idl+P#zO zn8Iri@x1Hz_j%yBnD*`C+P9_Zr>+h@Pf1=s=;~p6Qo;;z(L z4WNTjyA}X|bRUzVSlNA z>oE1Ysu;Kdd^k!o)5$l~M?wW_#$cUBTvr`*b%p9QK+~mK78}(J7_wH=<8Qpf;v=sC z#y8Vvt5_qPU)dMkBOa*^aNSpJaOZ)h(Wdv*uXMH3hU)S;B$772ub$C`hr=)hSFL(m z=Re3qKKP+}ei!onbv2`# zph|rJJe*^)QS8?VUBC2AEyw^5&thiv8))~paC)COr$y2oZ)p=0236X2kak2sNV%?B zsBMULOXnRn%>tXo;B;!0!lnzeht*@WNa$8&@`37XOmsk+c1+h~ju09LEFXcI+;r`z z(9k{^n#~}ZLnDI@r(|l6b%VlDbyAFP5(dBnR_yZef#fSbR#-6t)2+#>OBXG}VU23` zgZtU2F;CDw(=#zoMvbex*@t3|-|50eQ-#ne0)@P*9oIG8nh*ZD|$Z9=V=ajmO8N+jR6)j-MoM;6dr?Bf^IEh8`Qb)afZm_bQpB|N$%)7JlZ&g@fwX;q8%2HFEMHb zE!Y6I=7jB>;ZV91XH`rmdDMh1W1A-O8pTZ$w=M>O?dZ^BsMQ5u-?BJhV|-Aaw> zmZMj*<-nb?)@n@+u)QD2dg3GxU#}&>wElQX6s^~C6b4n`6%O0TW*O)GwrH)P>oQ`3 zDWw?xxy@|*VH%1Wqd^!QJf$@O*K%BKuWe&fgX=r&U~^6eX#%B-ea(=v90wF5;lBJ| znu~*d&D68IPJ^@80{=OKV~dV{aJ>;0?Xx|yb->nnNC*7Y6g6kdwg1sW@?@s%^R?4+ zpUPyQK3ca2zJBzt{n}5udEgPP`I1zdllmTzGJ5Zz<`St>RO5*9T(Ltw|3@}Gn2h%QNeeLun0G<*7ZAqvC4O-6SFJfDWuyHc7quUSJ=ajw;JM8F zAv#b54W*ra(-L)Id=k1}u#*OG>qonT9{XKeuQ!+XCo3dxdD%6#b8$%j)@JK4se-K~ z9(q}g76W;exTTM}t$nKpc&(Cc3tW$}TEV5!ekQu~E}JmYsRJ#quCvD=GF5C)*u%{Y znBVzpIFpSJwL{Vq)#Z=akn%vhV@2!Hu*+l3xwiws8C~D(t&PM%`x^)zD)mB^3xvPp zXQiW!1W)#-G!FRe0ybFULvSl)8k%k)ALw1-2Um?R!Bxdor|ksyZ|;wB|Yh+Y)zj1rWPlMNA%79rwrEl9?t35xm}T9t(oAU<>x^P?*CP_O-`F{Ba1; zhps%FG|(M+0U|~_Of)%y;1R{V`4nO@2p{OMK@?z*W;Y?Y=y>deWI66=6Cz@7jwI;{ zz5@>XXk+W%0ZEYjm#Wf==A^m8phjD?B)fEYEsEed#-)#15r+=LqX}N4nG}=oqg`SM zUah!MpLQf#H~O$W*&(FB`VB4Y&T!~$aN6nAj;!v?UfjA{cO&6+TpYpe_rHWAIuV=_ zT!%={s?C#B4r`@{~ypVGtyZ#Gd*O%G+U_#az zz|L6V(qLy8?c0Okna{0p;QioPyR%`*c>Gx_y{Gg5TrGYyxi=dqW=JO{lAXe56D~Ym zh(jSEF6I{u(8qvx-)>8_zU<*O9OAw4uCl&AaVZR{@LnPb0NZD-hOqT0&Q0S0^1jf} zqJaeWHfBW2-zLp;`1fFf`v!OIolG3iCyfNrt|(=#EIzdIAW`J*$z#9y2Vf&96dpzyb5LNor*L?L@+ zVz4ThH-)^E#NM^|Q=0h9_y7J@fle7bI&4aqE9P%=f%X3HC&-&44wng{#0rH~omm%>0P7Q)*zvN7$?81gdo`;y_*ig#XR+;^6NL+@cx(y}EaHidc3(Lr>NSZC@ z!Yo1dEhjxim@tfkW5<1xuYw2 zaOW!WIttTPk=KyyTE&Gmg1oqzbQ4YOIgL$S{1(S9l1bs{fA~)e<9QkTE_%Z2=L|sSTL^5(6 z>4)UNI_!8gnAejxkPKSSqwHEw`r7%vtlhw*7T$Fd>kk#<*C%jv&w&0dg4exH@NgUro1|ipcE7#?1 zy6nKYUI{Y<`DzDFx=OI_(61EJsf78Z*tbgfsT50J z2{F5HSSn%4E;2ym@h}t{o*O3fC}6D2qjDDxY$YV`#sRtq8+Vg5B$hIgfn;nM_VONl zRfcWdgR5m^D3X`=pu;^_y9d`!6`b2coI6w*_oX1ye;>YXRypah8=i4ryMBhiLB)HF%THoqp3Gg%`4*CiU#SE9ae zNOZammG{$S&D_)bOZDSA6fscB8V_cOmL2lH(BxJA{USF7B^>QdlPEJ?qCe|U(r_tj znIVz)I}FkDm;I9$=J7LUu^S~E^&2D6sBsd-W=pg)S0ckiiM-yI==fBLB4$XGK1-sM zITDSVC(-nLR(am=mI8^k6-xB{0*U%8lqjP}q6_RyJJ8tmDB(H!rQg$^~qUa71?dvF!cbr7K V>rl^lU6$*9y$#DJH+NX{{{ot1QE31G diff --git a/docs/_build/doctrees/tools/indexing.doctree b/docs/_build/doctrees/tools/indexing.doctree index 2d8f12cef4cdb8cec520f303db7ce44a2a4d56c1..741182b3307abc81ff457242f6b4830a7d3b3833 100644 GIT binary patch delta 156 zcmX@y&$hFltzinI2;YZ7^WLoGRjQu+AX_X#-4F8Be$`oxt@uEsgb3b z#r6Vg#%^ZDi`)O$F&;*hIpM&#m7CFi`UD3?eHA1vdO7*&>QgegHV0|(up$d?&eY$>A%LVxFDE};ee%H^ X;mKYWmdGk6_gT0h^EcnOs1F7J14JDC delta 105 zcmcaNgX!K3rVZR$+{TvXdKLyICKe`!lQZ>gHV0|(up$d?&eY$>A%LVxFDE};ee%H^ X;mKYWmdGk6_gT0h^EcnOs1F7J0U#Xn diff --git a/docs/_build/html/searchindex.js b/docs/_build/html/searchindex.js index d4ba42cce..335cbb187 100644 --- a/docs/_build/html/searchindex.js +++ b/docs/_build/html/searchindex.js @@ -1 +1 @@ -Search.setIndex({"alltitles": {"DRS Download Tools": [[10, "module-gen3.tools.download.drs_download"]], "Download": [[11, "module-gen3.tools.indexing.download_manifest"]], "Gen3 Auth Helper": [[0, "gen3-auth-helper"]], "Gen3 File Class": [[1, "gen3-file-class"]], "Gen3 Index Class": [[3, "gen3-index-class"]], "Gen3 Jobs Class": [[4, "gen3-jobs-class"]], "Gen3 Metadata Class": [[5, "gen3-metadata-class"]], "Gen3 Object Class": [[6, "gen3-object-class"]], "Gen3 Query Class": [[7, "gen3-query-class"]], "Gen3 Submission Class": [[8, "gen3-submission-class"]], "Gen3 Tools": [[9, "gen3-tools"]], "Gen3 Workspace Storage": [[13, "gen3-workspace-storage"]], "Index": [[11, "module-gen3.tools.indexing.index_manifest"]], "Indexing Tools": [[11, "indexing-tools"]], "Indices and tables": [[2, "indices-and-tables"]], "Ingest": [[12, "module-gen3.tools.metadata.ingest_manifest"]], "Metadata Tools": [[12, "metadata-tools"]], "Verify": [[11, "module-gen3.tools.indexing.verify_manifest"]], "Welcome to Gen3 SDK\u2019s documentation!": [[2, "welcome-to-gen3-sdk-s-documentation"]]}, "docnames": ["auth", "file", "index", "indexing", "jobs", "metadata", "object", "query", "submission", "tools", "tools/drs_pull", "tools/indexing", "tools/metadata", "wss"], "envversion": {"sphinx": 61, "sphinx.domains.c": 3, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 9, "sphinx.domains.index": 1, "sphinx.domains.javascript": 3, "sphinx.domains.math": 2, "sphinx.domains.python": 4, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx.ext.viewcode": 1}, "filenames": ["auth.rst", "file.rst", "index.rst", "indexing.rst", "jobs.rst", "metadata.rst", "object.rst", "query.rst", "submission.rst", "tools.rst", "tools/drs_pull.rst", "tools/indexing.rst", "tools/metadata.rst", "wss.rst"], "indexentries": {"_manager (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable._manager", false]], "access_methods (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.access_methods", false]], "acls (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.ACLS", false]], "async_create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_create", false]], "async_create_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_create_aliases", false]], "async_create_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_create_record", false]], "async_delete_alias() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_delete_alias", false]], "async_delete_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_delete_aliases", false]], "async_download_object_manifest() (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.async_download_object_manifest", false]], "async_get() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_get", false]], "async_get_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_get_aliases", false]], "async_get_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_record", false]], "async_get_records_from_checksum() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_records_from_checksum", false]], "async_get_records_on_page() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_records_on_page", false]], "async_get_with_params() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_with_params", false]], "async_ingest_metadata_manifest() (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.async_ingest_metadata_manifest", false]], "async_query_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_query_urls", false]], "async_query_urls_from_indexd() (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.async_query_urls_from_indexd", false]], "async_run_job_and_wait() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.async_run_job_and_wait", false]], "async_update() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_update", false]], "async_update_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_update_aliases", false]], "async_update_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_update_record", false]], "async_verify_object_manifest() (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.async_verify_object_manifest", false]], "auth_provider (gen3.metadata.gen3metadata attribute)": [[5, "gen3.metadata.Gen3Metadata.auth_provider", false]], "authz (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.AUTHZ", false]], "batch_create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.batch_create", false]], "cache_hosts_wts_tokens() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.cache_hosts_wts_tokens", false]], "children (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.children", false]], "column_to_use_as_guid (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.COLUMN_TO_USE_AS_GUID", false]], "commons_url (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.commons_url", false]], "copy() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.copy", false]], "create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create", false]], "create_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create_aliases", false]], "create_blank() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_blank", false]], "create_index_key_path() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create_index_key_path", false]], "create_job() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.create_job", false]], "create_new_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_new_version", false]], "create_object_list() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.create_object_list", false]], "create_program() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.create_program", false]], "create_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.create_project", false]], "create_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_record", false]], "created_time (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.created_time", false]], "curl() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.curl", false]], "current_dir (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.CURRENT_DIR", false]], "current_dir (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.CURRENT_DIR", false]], "current_dir (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.CURRENT_DIR", false]], "delete() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete", false]], "delete_alias() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_alias", false]], "delete_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_aliases", false]], "delete_all_guids() (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.delete_all_guids", false]], "delete_file() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.delete_file", false]], "delete_file_locations() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.delete_file_locations", false]], "delete_index_key_path() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_index_key_path", false]], "delete_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_node", false]], "delete_nodes() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_nodes", false]], "delete_object() (gen3.object.gen3object method)": [[6, "gen3.object.Gen3Object.delete_object", false]], "delete_program() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_program", false]], "delete_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_project", false]], "delete_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.delete_record", false]], "delete_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_record", false]], "delete_records() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_records", false]], "download() (gen3.tools.download.drs_download.downloadable method)": [[10, "gen3.tools.download.drs_download.Downloadable.download", false]], "download() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.download", false]], "download() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.download", false]], "download_files_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.download_files_in_drs_manifest", false]], "download_single() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.download_single", false]], "download_url() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.download_url", false]], "downloadable (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.Downloadable", false]], "downloadmanager (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.DownloadManager", false]], "downloadstatus (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.DownloadStatus", false]], "end_time (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.end_time", false]], "endpoint (gen3.metadata.gen3metadata attribute)": [[5, "gen3.metadata.Gen3Metadata.endpoint", false]], "export_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.export_node", false]], "export_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.export_record", false]], "file_name (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.file_name", false]], "file_name (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.file_name", false]], "file_size (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.file_size", false]], "file_size (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.file_size", false]], "gen3.tools": [[9, "module-gen3.tools", false]], "gen3.tools.download.drs_download": [[10, "module-gen3.tools.download.drs_download", false]], "gen3.tools.indexing.download_manifest": [[11, "module-gen3.tools.indexing.download_manifest", false]], "gen3.tools.indexing.index_manifest": [[11, "module-gen3.tools.indexing.index_manifest", false]], "gen3.tools.indexing.verify_manifest": [[11, "module-gen3.tools.indexing.verify_manifest", false]], "gen3.tools.metadata.ingest_manifest": [[12, "module-gen3.tools.metadata.ingest_manifest", false]], "gen3auth (class in gen3.auth)": [[0, "gen3.auth.Gen3Auth", false]], "gen3file (class in gen3.file)": [[1, "gen3.file.Gen3File", false]], "gen3index (class in gen3.index)": [[3, "gen3.index.Gen3Index", false]], "gen3jobs (class in gen3.jobs)": [[4, "gen3.jobs.Gen3Jobs", false]], "gen3metadata (class in gen3.metadata)": [[5, "gen3.metadata.Gen3Metadata", false]], "gen3object (class in gen3.object)": [[6, "gen3.object.Gen3Object", false]], "gen3query (class in gen3.query)": [[7, "gen3.query.Gen3Query", false]], "gen3submission (class in gen3.submission)": [[8, "gen3.submission.Gen3Submission", false]], "gen3wsstorage (class in gen3.wss)": [[13, "gen3.wss.Gen3WsStorage", false]], "get() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get", false]], "get() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get", false]], "get_access_token() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.get_access_token", false]], "get_access_token_from_wts() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.get_access_token_from_wts", false]], "get_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_aliases", false]], "get_all_records() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_all_records", false]], "get_dictionary_all() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_dictionary_all", false]], "get_dictionary_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_dictionary_node", false]], "get_fresh_token() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.get_fresh_token", false]], "get_graphql_schema() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_graphql_schema", false]], "get_guids_prefix() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_guids_prefix", false]], "get_index_key_paths() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_index_key_paths", false]], "get_latest_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_latest_version", false]], "get_output() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_output", false]], "get_presigned_url() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.get_presigned_url", false]], "get_programs() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_programs", false]], "get_project_dictionary() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_project_dictionary", false]], "get_project_manifest() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_project_manifest", false]], "get_projects() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_projects", false]], "get_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_record", false]], "get_record_doc() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_record_doc", false]], "get_records() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_records", false]], "get_records_on_page() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_records_on_page", false]], "get_stats() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_stats", false]], "get_status() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_status", false]], "get_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_urls", false]], "get_valid_guids() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_valid_guids", false]], "get_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_version", false]], "get_version() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_version", false]], "get_version() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_version", false]], "get_versions() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_versions", false]], "get_with_params() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_with_params", false]], "graphql_query() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.graphql_query", false]], "guid (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.GUID", false]], "guid_type_for_indexed_file_object (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.GUID_TYPE_FOR_INDEXED_FILE_OBJECT", false]], "guid_type_for_non_indexed_file_object (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.GUID_TYPE_FOR_NON_INDEXED_FILE_OBJECT", false]], "hostname (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.hostname", false]], "index_object_manifest() (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.index_object_manifest", false]], "indexd_record_page_size (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.INDEXD_RECORD_PAGE_SIZE", false]], "is_healthy() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.is_healthy", false]], "is_healthy() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.is_healthy", false]], "is_healthy() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.is_healthy", false]], "list_access_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_access_in_drs_manifest", false]], "list_drs_object() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_drs_object", false]], "list_files_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_files_in_drs_manifest", false]], "list_jobs() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.list_jobs", false]], "load() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.load", false]], "load_manifest() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.load_manifest", false]], "ls() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.ls", false]], "ls_path() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.ls_path", false]], "manifest (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.Manifest", false]], "max_concurrent_requests (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.MAX_CONCURRENT_REQUESTS", false]], "max_concurrent_requests (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.MAX_CONCURRENT_REQUESTS", false]], "max_concurrent_requests (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.MAX_CONCURRENT_REQUESTS", false]], "md5 (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.MD5", false]], "md5sum (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.md5sum", false]], "module": [[9, "module-gen3.tools", false], [10, "module-gen3.tools.download.drs_download", false], [11, "module-gen3.tools.indexing.download_manifest", false], [11, "module-gen3.tools.indexing.index_manifest", false], [11, "module-gen3.tools.indexing.verify_manifest", false], [12, "module-gen3.tools.metadata.ingest_manifest", false]], "object_id (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.object_id", false]], "object_id (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.object_id", false]], "object_type (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.object_type", false]], "open_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.open_project", false]], "pprint() (gen3.tools.download.drs_download.downloadable method)": [[10, "gen3.tools.download.drs_download.Downloadable.pprint", false]], "prev_guid (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.PREV_GUID", false]], "query() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.query", false]], "query() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.query", false]], "query() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.query", false]], "query_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.query_urls", false]], "raw_data_download() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.raw_data_download", false]], "refresh_access_token() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.refresh_access_token", false]], "resolve_objects() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.resolve_objects", false]], "rm() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.rm", false]], "rm_path() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.rm_path", false]], "size (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.SIZE", false]], "start_time (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.start_time", false]], "status (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.status", false]], "submit_file() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.submit_file", false]], "submit_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.submit_record", false]], "threadcontrol (class in gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.ThreadControl", false]], "tmp_folder (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.TMP_FOLDER", false]], "update() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.update", false]], "update_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.update_aliases", false]], "update_blank() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.update_blank", false]], "update_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.update_record", false]], "updated_time (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.updated_time", false]], "upload() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.upload", false]], "upload_file() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.upload_file", false]], "upload_file_to_guid() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.upload_file_to_guid", false]], "upload_url() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.upload_url", false]], "urls (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.URLS", false]], "user_access() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.user_access", false]]}, "objects": {"gen3": [[9, 3, 0, "-", "tools"]], "gen3.auth": [[0, 0, 1, "", "Gen3Auth"]], "gen3.auth.Gen3Auth": [[0, 1, 1, "", "curl"], [0, 1, 1, "", "get_access_token"], [0, 1, 1, "", "get_access_token_from_wts"], [0, 1, 1, "", "refresh_access_token"]], "gen3.file": [[1, 0, 1, "", "Gen3File"]], "gen3.file.Gen3File": [[1, 1, 1, "", "delete_file"], [1, 1, 1, "", "delete_file_locations"], [1, 1, 1, "", "download_single"], [1, 1, 1, "", "get_presigned_url"], [1, 1, 1, "", "upload_file"], [1, 1, 1, "", "upload_file_to_guid"]], "gen3.index": [[3, 0, 1, "", "Gen3Index"]], "gen3.index.Gen3Index": [[3, 1, 1, "", "async_create_record"], [3, 1, 1, "", "async_get_record"], [3, 1, 1, "", "async_get_records_from_checksum"], [3, 1, 1, "", "async_get_records_on_page"], [3, 1, 1, "", "async_get_with_params"], [3, 1, 1, "", "async_query_urls"], [3, 1, 1, "", "async_update_record"], [3, 1, 1, "", "create_blank"], [3, 1, 1, "", "create_new_version"], [3, 1, 1, "", "create_record"], [3, 1, 1, "", "delete_record"], [3, 1, 1, "", "get"], [3, 1, 1, "", "get_all_records"], [3, 1, 1, "", "get_guids_prefix"], [3, 1, 1, "", "get_latest_version"], [3, 1, 1, "", "get_record"], [3, 1, 1, "", "get_record_doc"], [3, 1, 1, "", "get_records"], [3, 1, 1, "", "get_records_on_page"], [3, 1, 1, "", "get_stats"], [3, 1, 1, "", "get_urls"], [3, 1, 1, "", "get_valid_guids"], [3, 1, 1, "", "get_version"], [3, 1, 1, "", "get_versions"], [3, 1, 1, "", "get_with_params"], [3, 1, 1, "", "is_healthy"], [3, 1, 1, "", "query_urls"], [3, 1, 1, "", "update_blank"], [3, 1, 1, "", "update_record"]], "gen3.jobs": [[4, 0, 1, "", "Gen3Jobs"]], "gen3.jobs.Gen3Jobs": [[4, 1, 1, "", "async_run_job_and_wait"], [4, 1, 1, "", "create_job"], [4, 1, 1, "", "get_output"], [4, 1, 1, "", "get_status"], [4, 1, 1, "", "get_version"], [4, 1, 1, "", "is_healthy"], [4, 1, 1, "", "list_jobs"]], "gen3.metadata": [[5, 0, 1, "", "Gen3Metadata"]], "gen3.metadata.Gen3Metadata": [[5, 1, 1, "", "async_create"], [5, 1, 1, "", "async_create_aliases"], [5, 1, 1, "", "async_delete_alias"], [5, 1, 1, "", "async_delete_aliases"], [5, 1, 1, "", "async_get"], [5, 1, 1, "", "async_get_aliases"], [5, 1, 1, "", "async_update"], [5, 1, 1, "", "async_update_aliases"], [5, 2, 1, "", "auth_provider"], [5, 1, 1, "", "batch_create"], [5, 1, 1, "", "create"], [5, 1, 1, "", "create_aliases"], [5, 1, 1, "", "create_index_key_path"], [5, 1, 1, "", "delete"], [5, 1, 1, "", "delete_alias"], [5, 1, 1, "", "delete_aliases"], [5, 1, 1, "", "delete_index_key_path"], [5, 2, 1, "", "endpoint"], [5, 1, 1, "", "get"], [5, 1, 1, "", "get_aliases"], [5, 1, 1, "", "get_index_key_paths"], [5, 1, 1, "", "get_version"], [5, 1, 1, "", "is_healthy"], [5, 1, 1, "", "query"], [5, 1, 1, "", "update"], [5, 1, 1, "", "update_aliases"]], "gen3.object": [[6, 0, 1, "", "Gen3Object"]], "gen3.object.Gen3Object": [[6, 1, 1, "", "delete_object"]], "gen3.query": [[7, 0, 1, "", "Gen3Query"]], "gen3.query.Gen3Query": [[7, 1, 1, "", "graphql_query"], [7, 1, 1, "", "query"], [7, 1, 1, "", "raw_data_download"]], "gen3.submission": [[8, 0, 1, "", "Gen3Submission"]], "gen3.submission.Gen3Submission": [[8, 1, 1, "", "create_program"], [8, 1, 1, "", "create_project"], [8, 1, 1, "", "delete_node"], [8, 1, 1, "", "delete_nodes"], [8, 1, 1, "", "delete_program"], [8, 1, 1, "", "delete_project"], [8, 1, 1, "", "delete_record"], [8, 1, 1, "", "delete_records"], [8, 1, 1, "", "export_node"], [8, 1, 1, "", "export_record"], [8, 1, 1, "", "get_dictionary_all"], [8, 1, 1, "", "get_dictionary_node"], [8, 1, 1, "", "get_graphql_schema"], [8, 1, 1, "", "get_programs"], [8, 1, 1, "", "get_project_dictionary"], [8, 1, 1, "", "get_project_manifest"], [8, 1, 1, "", "get_projects"], [8, 1, 1, "", "open_project"], [8, 1, 1, "", "query"], [8, 1, 1, "", "submit_file"], [8, 1, 1, "", "submit_record"]], "gen3.tools.download": [[10, 3, 0, "-", "drs_download"]], "gen3.tools.download.drs_download": [[10, 0, 1, "", "DownloadManager"], [10, 0, 1, "", "DownloadStatus"], [10, 0, 1, "", "Downloadable"], [10, 0, 1, "", "Manifest"], [10, 4, 1, "", "download_files_in_drs_manifest"], [10, 4, 1, "", "list_access_in_drs_manifest"], [10, 4, 1, "", "list_drs_object"], [10, 4, 1, "", "list_files_in_drs_manifest"]], "gen3.tools.download.drs_download.DownloadManager": [[10, 1, 1, "", "cache_hosts_wts_tokens"], [10, 1, 1, "", "download"], [10, 1, 1, "", "get_fresh_token"], [10, 1, 1, "", "resolve_objects"], [10, 1, 1, "", "user_access"]], "gen3.tools.download.drs_download.DownloadStatus": [[10, 2, 1, "", "end_time"], [10, 2, 1, "", "start_time"], [10, 2, 1, "", "status"]], "gen3.tools.download.drs_download.Downloadable": [[10, 2, 1, "", "_manager"], [10, 2, 1, "", "access_methods"], [10, 2, 1, "", "children"], [10, 2, 1, "", "created_time"], [10, 1, 1, "", "download"], [10, 2, 1, "", "file_name"], [10, 2, 1, "", "file_size"], [10, 2, 1, "", "hostname"], [10, 2, 1, "", "object_id"], [10, 2, 1, "", "object_type"], [10, 1, 1, "", "pprint"], [10, 2, 1, "", "updated_time"]], "gen3.tools.download.drs_download.Manifest": [[10, 2, 1, "", "commons_url"], [10, 1, 1, "", "create_object_list"], [10, 2, 1, "", "file_name"], [10, 2, 1, "", "file_size"], [10, 1, 1, "", "load"], [10, 1, 1, "", "load_manifest"], [10, 2, 1, "", "md5sum"], [10, 2, 1, "", "object_id"]], "gen3.tools.indexing": [[11, 3, 0, "-", "download_manifest"], [11, 3, 0, "-", "index_manifest"], [11, 3, 0, "-", "verify_manifest"]], "gen3.tools.indexing.download_manifest": [[11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "INDEXD_RECORD_PAGE_SIZE"], [11, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [11, 2, 1, "", "TMP_FOLDER"], [11, 4, 1, "", "async_download_object_manifest"]], "gen3.tools.indexing.index_manifest": [[11, 2, 1, "", "ACLS"], [11, 2, 1, "", "AUTHZ"], [11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "GUID"], [11, 2, 1, "", "MD5"], [11, 2, 1, "", "PREV_GUID"], [11, 2, 1, "", "SIZE"], [11, 0, 1, "", "ThreadControl"], [11, 2, 1, "", "URLS"], [11, 4, 1, "", "delete_all_guids"], [11, 4, 1, "", "index_object_manifest"]], "gen3.tools.indexing.verify_manifest": [[11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [11, 4, 1, "", "async_verify_object_manifest"]], "gen3.tools.metadata": [[12, 3, 0, "-", "ingest_manifest"]], "gen3.tools.metadata.ingest_manifest": [[12, 2, 1, "", "COLUMN_TO_USE_AS_GUID"], [12, 2, 1, "", "GUID_TYPE_FOR_INDEXED_FILE_OBJECT"], [12, 2, 1, "", "GUID_TYPE_FOR_NON_INDEXED_FILE_OBJECT"], [12, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [12, 4, 1, "", "async_ingest_metadata_manifest"], [12, 4, 1, "", "async_query_urls_from_indexd"]], "gen3.wss": [[13, 0, 1, "", "Gen3WsStorage"]], "gen3.wss.Gen3WsStorage": [[13, 1, 1, "", "copy"], [13, 1, 1, "", "download"], [13, 1, 1, "", "download_url"], [13, 1, 1, "", "ls"], [13, 1, 1, "", "ls_path"], [13, 1, 1, "", "rm"], [13, 1, 1, "", "rm_path"], [13, 1, 1, "", "upload"], [13, 1, 1, "", "upload_url"]]}, "objnames": {"0": ["py", "class", "Python class"], "1": ["py", "method", "Python method"], "2": ["py", "attribute", "Python attribute"], "3": ["py", "module", "Python module"], "4": ["py", "function", "Python function"]}, "objtypes": {"0": "py:class", "1": "py:method", "2": "py:attribute", "3": "py:module", "4": "py:function"}, "terms": {"": [1, 4, 8, 10, 11], "0": [5, 7, 8, 11], "0046513": [], "064572": [], "0a80fada010c": 11, "0a80fada096c": 11, "0a80fada097c": 11, "0a80fada098c": 11, "0a80fada099c": 11, "1": [4, 5, 8, 10, 11], "10": [5, 7, 11], "100": [8, 11], "11e9": 11, "1713542306": [], "1713542765": [], "1713543033": [], "1713543225": [], "1713543506": [], "1713543956": [], "1713544131": [], "1713544132": [], "1713544397": [11, 12], "1771936": [], "1913438": [], "2": [5, 11], "24": [11, 12], "255e396f": 11, "2877355": [], "2995": [], "3": [5, 11], "30": 8, "33": 5, "333": 5, "343434344": 11, "363455714": 11, "4": [5, 11], "4017086": [], "4052968": 11, "450c": 11, "4649727": [], "4714": 8, "473d83400bc1bc9dc635e334fadd433c": 11, "473d83400bc1bc9dc635e334faddd33c": 11, "473d83400bc1bc9dc635e334fadde33c": 11, "473d83400bc1bc9dc635e334faddf33c": 11, "5": [0, 5], "50": 7, "543434443": 11, "5669184": [], "5899982": [], "6692646": [], "6f90": 8, "760149": [], "7d3d8d2083b4": 11, "8044841": 12, "8375325": [], "8420": 8, "8882551": [], "93d9af72": 11, "9a07": 11, "A": [1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "AND": 5, "Be": 1, "But": 5, "By": 11, "For": [1, 5, 6, 7, 8, 9, 11], "IF": 11, "If": [0, 1, 7, 11, 12], "In": 10, "It": 10, "NOT": 12, "OR": 5, "One": 7, "Such": 9, "THE": 11, "That": 3, "The": [0, 1, 2, 3, 5, 8, 10, 11], "There": 11, "These": 9, "To": 11, "Will": [4, 7, 10], "_get_acl_from_row": 11, "_get_authz_from_row": 11, "_get_file_name_from_row": 11, "_get_file_size_from_row": 11, "_get_guid_for_row": 12, "_get_guid_from_row": 11, "_get_md5_from_row": 11, "_get_urls_from_row": 11, "_guid_typ": 12, "_manag": [2, 9, 10], "_query_for_associated_indexd_record_guid": 12, "_ssl": [3, 4, 5], "a5c6": 11, "ab167e49d25b488939b1ede42752458b": 3, "about": [2, 3], "abov": 11, "access": [0, 1, 3, 7, 10], "access_method": [2, 9, 10], "access_token": 0, "accesstoken": 0, "acl": [2, 3, 9, 11], "across": 11, "act": 0, "action": [9, 11], "actual": 11, "ad": 3, "add": [3, 5], "addit": [3, 5, 10, 11], "admin": [5, 11], "admin_endpoint_suffix": 5, "after": 10, "against": [3, 7, 8, 11, 12], "algorithm": 3, "alia": [3, 5], "alias": 5, "aliv": 7, "all": [1, 3, 4, 5, 6, 7, 8, 10, 11, 12], "allow": [0, 6, 8, 10, 11, 12], "allowed_data_upload_bucket": 1, "along": 2, "alreadi": 9, "also": 1, "altern": [5, 11], "alwai": 5, "ammount": 12, "amount": [1, 9], "an": [0, 3, 6, 8, 10, 11], "ani": [0, 5, 10, 11], "anoth": 5, "api": [0, 5, 8, 11], "api_kei": 11, "appli": 7, "appropri": 13, "ar": [5, 7, 8, 9, 10, 11], "arbitrari": 0, "argument": [0, 13], "arrai": 8, "asc": 7, "assign": 9, "assist": 10, "associ": [3, 5], "assum": 11, "async": [3, 4, 5, 9, 11, 12], "async_cr": [2, 5], "async_create_alias": [2, 5], "async_create_record": [2, 3], "async_delete_alia": [2, 5], "async_delete_alias": [2, 5], "async_download_object_manifest": [2, 9, 11], "async_get": [2, 5], "async_get_alias": [2, 5], "async_get_record": [2, 3], "async_get_records_from_checksum": [2, 3], "async_get_records_on_pag": [2, 3], "async_get_with_param": [2, 3], "async_ingest_metadata_manifest": [2, 9, 12], "async_query_url": [2, 3], "async_query_urls_from_indexd": [2, 9, 12], "async_run_job_and_wait": [2, 4], "async_upd": [2, 5], "async_update_alias": [2, 5], "async_update_record": [2, 3], "async_verify_object_manifest": [2, 9, 11], "asynchron": [3, 4, 5], "asyncio": [11, 12], "asyncron": 5, "attach": [3, 5], "attempt": 11, "attribut": [10, 11], "auth": [1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "auth_provid": [1, 2, 3, 4, 5, 6, 7, 8, 13], "authbas": 0, "authent": 0, "author": 1, "authz": [0, 1, 2, 3, 9, 10, 11], "auto": [0, 2], "automat": 0, "avail": [1, 2, 10, 11], "az": 1, "b": [5, 11], "b0f1": 11, "bar": 10, "base": [0, 1, 3, 4, 5, 6, 7, 8, 9, 11, 13], "baseid": 3, "basic": [3, 11, 12], "batch_creat": [2, 5], "batch_siz": 8, "behalf": 0, "behavior": 11, "being": 3, "belong": 8, "below": 11, "blank": 3, "blob": [5, 7], "bodi": 3, "bool": [4, 5, 8, 10, 11, 12], "boolean": 3, "bownload": 10, "broad": 9, "broken": 9, "bucket": [1, 6], "bundl": 10, "byte": 10, "c": [5, 11], "cach": 10, "cache_hosts_wts_token": [2, 9, 10], "call": [10, 13], "can": [0, 3, 4, 8, 11, 12], "capabl": 9, "case": [0, 10], "categori": 9, "ccle": 8, "ccle_one_record": 8, "ccle_sample_nod": 8, "cdi": 7, "chang": [3, 11], "checksum": [3, 10], "checksum_typ": 3, "child": 10, "children": [2, 9, 10], "chunk_siz": 8, "class": [0, 2, 10, 11, 13], "cli": 10, "client": [0, 3], "client_credenti": 0, "client_id": 0, "client_scop": 0, "client_secret": 0, "code": [2, 8], "column": [11, 12], "column_to_use_as_guid": [2, 9, 12], "columna": 11, "columnb": 11, "columnc": 11, "com": 7, "comma": 11, "command": [10, 11], "common": [0, 1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13], "commons_url": [2, 9, 10, 11, 12], "complet": [4, 11], "complex": 7, "concat": 11, "concurr": [11, 12], "configur": 1, "connect": 12, "consist": 3, "constructor": 0, "contain": [0, 2, 5, 8, 9, 10, 11, 12], "content": [3, 13], "content_created_d": 3, "content_updated_d": 3, "continu": 10, "control": 3, "conveni": 10, "copi": [2, 13], "coroutin": 11, "correspond": 3, "count": 3, "crdc": 0, "creat": [2, 3, 4, 5, 6, 8, 10, 11], "create_alias": [2, 5], "create_blank": [2, 3], "create_index_key_path": [2, 5], "create_job": [2, 4], "create_new_vers": [2, 3], "create_object_list": [2, 9, 10], "create_program": [2, 8], "create_project": [2, 8], "create_record": [2, 3], "created_tim": [2, 9, 10], "creation": [3, 11], "cred": 3, "credenti": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "csv": [8, 11, 12], "curl": [0, 2], "current": [6, 8, 10], "current_dir": [2, 9, 11], "custom": 11, "d": 5, "d70b41b9": 8, "data": [0, 1, 3, 5, 7, 8, 10, 11], "data_spreadsheet": 8, "data_typ": 7, "data_upload_bucket": 1, "dataa": 11, "datab": 11, "databas": 5, "datacommon": 0, "datafil": 10, "datamanag": 10, "date": 3, "datetim": [1, 3, 10], "dbgap": 12, "dcf": 8, "def": 11, "default": [0, 1, 3, 7, 8, 11, 12], "defin": [5, 8, 10], "delai": 4, "delet": [0, 1, 2, 3, 5, 6, 8, 10, 11], "delete_alia": [2, 5], "delete_alias": [2, 5], "delete_all_guid": [2, 9, 11], "delete_fil": [1, 2], "delete_file_loc": [1, 2, 6], "delete_index_key_path": [2, 5], "delete_nod": [2, 8], "delete_object": [2, 6], "delete_program": [2, 8], "delete_project": [2, 8], "delete_record": [2, 3, 8], "delete_unpacked_packag": 10, "delimet": [11, 12], "delimit": 11, "demograph": 8, "deprec": 1, "descript": [3, 5], "desir": 11, "dest_path": 13, "dest_urlstr": 13, "dest_w": 13, "dest_wskei": 13, "detail": [2, 7, 10], "determin": [10, 11, 12], "dev": 11, "dict": [3, 4, 5, 10, 11, 12], "dictionari": [3, 4, 5, 7, 8], "did": 3, "differ": 5, "direct": 0, "directori": [10, 11], "disabl": 10, "discoveri": 10, "disk": 13, "dispatch": 4, "dist_resolut": 3, "distribut": 3, "doc": [7, 10], "docstr": 2, "document": [1, 3], "doe": [0, 12], "domain": [11, 12], "done": 4, "download": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 13], "download_files_in_drs_manifest": [2, 9, 10], "download_list": 10, "download_manifest": 11, "download_singl": [1, 2], "download_url": [2, 13], "downloadmanag": [2, 9, 10], "downloadstatu": [2, 9, 10], "dr": [2, 9], "drs_download": 10, "drs_hostnam": 10, "drsdownload": 10, "drsobjecttyp": 10, "e": [5, 10], "e043ab8b77b9": 8, "each": [3, 8, 10, 11], "effici": 9, "eg": 3, "either": 8, "elasticsearch": 7, "els": [0, 12], "elsewher": 12, "empti": [8, 11], "enabl": 11, "end": [5, 10], "end_tim": [2, 9, 10], "endpoint": [0, 1, 2, 3, 4, 5, 7, 8, 13], "entir": 8, "entri": [3, 11], "env": 0, "environ": 0, "equal": 7, "error": [10, 11, 12], "error_nam": 11, "etc": 8, "even": 11, "everi": [9, 11], "everyth": 11, "ex": [0, 11, 12], "exampl": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "exclud": 3, "execut": [7, 8, 11], "exist": [1, 3, 5, 6, 9, 12], "expect": [5, 9, 11], "experi": 8, "expir": [0, 1], "expires_in": 1, "export": [8, 10], "export_nod": [2, 8], "export_record": [2, 8], "f1f8": 11, "factori": 10, "fail": [8, 10], "fals": [3, 5, 6, 10, 11], "featur": [1, 6], "fenc": [0, 1], "fetch": 0, "field": [3, 5, 7, 11, 12], "fieldnam": 11, "file": [0, 2, 3, 4, 8, 9, 10, 11, 12, 13], "file_nam": [1, 2, 3, 9, 10, 11], "file_s": [2, 9, 10, 11], "file_st": 3, "fileformat": 8, "filenam": [0, 8, 10, 11, 12], "files": 10, "fill": 12, "filter": [5, 7], "filter_object": 7, "first": [7, 8], "flag": 11, "folder": 11, "follow": [0, 11], "forc": 11, "force_metadata_columns_even_if_empti": 11, "form": 13, "format": [3, 5, 8, 11], "from": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13], "func_to_parse_row": [11, 12], "function": [2, 3, 4, 5, 9, 10, 11, 12], "g": 10, "gen3": [10, 11, 12], "gen3_api_kei": 0, "gen3_oidc_client_creds_secret": 0, "gen3auth": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "gen3fil": [1, 2], "gen3index": [2, 3], "gen3job": [2, 4, 10], "gen3metadata": [2, 5], "gen3object": [2, 6], "gen3queri": [2, 7], "gen3submiss": [2, 8], "gen3wsstorag": [2, 13], "gener": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 13], "get": [0, 1, 2, 3, 4, 5, 8, 10, 11, 12, 13], "get_access_token": [0, 2], "get_access_token_from_wt": [0, 2], "get_alias": [2, 5], "get_all_record": [2, 3], "get_dictionary_al": [2, 8], "get_dictionary_nod": [2, 8], "get_fresh_token": [2, 9, 10], "get_graphql_schema": [2, 8], "get_guid_from_fil": 12, "get_guids_prefix": [2, 3], "get_index_key_path": [2, 5], "get_latest_vers": [2, 3], "get_output": [2, 4], "get_presigned_url": [1, 2], "get_program": [2, 8], "get_project": [2, 8], "get_project_dictionari": [2, 8], "get_project_manifest": [2, 8], "get_record": [2, 3], "get_record_doc": [2, 3], "get_records_on_pag": [2, 3], "get_stat": [2, 3], "get_statu": [2, 4], "get_url": [2, 3], "get_valid_guid": [2, 3], "get_vers": [2, 3, 4, 5], "get_with_param": [2, 3], "giangb": 11, "github": [2, 7], "give": 1, "given": [0, 3, 4, 5, 8, 10, 12, 13], "global": [4, 5], "good": 3, "grant": 0, "graph": 8, "graphql": [7, 8], "graphql_queri": [2, 7], "group": 3, "guid": [1, 2, 3, 5, 6, 9, 11, 12], "guid_exampl": 11, "guid_for_row": 12, "guid_from_fil": 12, "guid_type_for_indexed_file_object": [2, 9, 12], "guid_type_for_non_indexed_file_object": [2, 9, 12], "guppi": 7, "ha": [0, 11], "handl": [3, 10], "hardcod": 0, "has_vers": 3, "hash": [3, 11], "hash_typ": 3, "have": [5, 11], "header": 11, "healthi": [3, 4, 5], "help": 11, "helper": 2, "hit": 11, "host": 10, "hostnam": [2, 9, 10], "how": [8, 11], "howto": 10, "http": [0, 7, 11, 12], "i": [0, 1, 2, 3, 4, 5, 8, 10, 11, 12], "id": [0, 1, 3, 5, 10, 11], "idea": 3, "identifi": [3, 5, 9, 11], "idp": 0, "illustr": 11, "immut": 3, "implement": 0, "implic": 11, "import": 11, "includ": [0, 3], "indent": 10, "index": [0, 2, 5, 9], "index_manifest": 11, "index_object_manifest": [2, 9, 11], "indexd": [1, 3, 6, 10, 11, 12], "indexd_field": [11, 12], "indexd_record_page_s": [2, 9, 11], "indexed_file_object_guid": 12, "indic": [0, 11], "infil": 10, "info": [3, 11], "inform": [2, 3, 10], "ingest": [2, 9], "ingest_manifest": 12, "initi": [0, 10], "input": [4, 10, 11], "input_manifest": 11, "instal": [0, 2, 11], "instanc": [1, 3, 6, 7, 8, 9, 10], "instead": [1, 7, 11], "int": [1, 3, 5, 7, 8, 10, 11, 12], "integ": [1, 3, 8], "intend": 0, "interact": [1, 3, 4, 5, 6, 8, 13], "interest": 10, "interpret": 0, "introspect": 8, "involv": 9, "is_healthi": [2, 3, 4, 5], "is_indexed_file_object": 12, "isn": 1, "issu": 0, "its": [1, 3], "job": 2, "job_id": 4, "job_input": 4, "job_nam": 4, "json": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "just": [5, 11, 12], "jwt": 0, "kei": [0, 3, 5, 13], "know": 11, "known": 10, "kwarg": [3, 4, 5], "l": [2, 13], "larg": 9, "last": 10, "latest": 3, "least": 3, "level": 6, "librari": 11, "like": [3, 5, 9, 11, 12], "limit": [1, 3, 5, 12], "linear": 4, "linux": 10, "list": [0, 1, 3, 4, 5, 7, 8, 10, 11, 13], "list_access_in_drs_manifest": [2, 9, 10], "list_drs_object": [2, 9, 10], "list_files_in_drs_manifest": [2, 9, 10], "list_job": [2, 4], "live": [11, 12], "load": [2, 9, 10], "load_manifest": [2, 9, 10], "local": [0, 13], "locat": [1, 6], "lock": 12, "log": [8, 10, 11, 12], "logic": [5, 12], "loop": 11, "ls_path": [2, 13], "maco": 11, "made": 3, "mai": [0, 9, 11], "main": 10, "make": [9, 11], "manag": [1, 5, 10], "mani": [8, 11], "manifest": [2, 8, 9, 10, 11, 12], "manifest_1": 10, "manifest_fil": [11, 12], "manifest_file_delimit": [11, 12], "manifest_row_pars": [11, 12], "map": [0, 11], "mark": 8, "master": 7, "match": [3, 5, 12], "max": 5, "max_concurrent_request": [2, 9, 11, 12], "max_presigned_url_ttl": 1, "max_tri": 8, "maximum": [11, 12], "md": [5, 7, 10, 12], "md5": [2, 3, 9, 11], "md5_hash": 11, "md5sum": [2, 9, 10], "mean": 8, "mechan": 3, "merg": 5, "metadata": [2, 3, 6, 9, 11], "metadata_list": 5, "metadata_sourc": 12, "metadata_typ": 12, "metdata": 12, "method": [1, 7, 10], "minimum": 10, "minut": 0, "mode": 7, "modul": [2, 10, 11], "more": [2, 5, 7, 9, 10], "most": 9, "mostli": 2, "multipl": [8, 11], "must": [1, 5], "my_common": 10, "my_credenti": 10, "my_field": 7, "my_index": 7, "my_program": 7, "my_project": 7, "name": [3, 4, 8, 10, 11, 12, 13], "namespac": [0, 12], "necessari": [3, 5], "need": [3, 7, 10, 11], "nest": 5, "net": 11, "never": 0, "new": [0, 3], "node": 8, "node_nam": 8, "node_typ": 8, "none": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "note": [0, 3, 11, 12], "noth": [3, 6], "now": [1, 8], "num": 5, "num_process": 11, "num_total_fil": 11, "number": [3, 7, 8, 11, 12], "o": 0, "object": [1, 2, 3, 4, 5, 7, 8, 9, 10, 11, 13], "object_id": [1, 2, 9, 10], "object_list": 10, "object_typ": [2, 9, 10], "objectid": 10, "obtain": [0, 10], "occur": 10, "off": 5, "offset": [5, 7], "oidc": 0, "old": 3, "one": [3, 5, 10, 11], "onli": [3, 5, 7, 8, 10, 11], "open": [8, 10, 11], "open_project": [2, 8], "openid": 0, "opt": 0, "option": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11], "order": [0, 8], "ordered_node_list": 8, "org": 10, "otherwis": 10, "output": [4, 5, 11, 12], "output_dir": 10, "output_filenam": [11, 12], "overrid": [0, 11, 12], "overwrit": 5, "own": 0, "packag": 10, "page": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 13], "pagin": 3, "parallel": 11, "param": [3, 5, 8, 10], "paramet": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "pars": [10, 11, 12, 13], "parser": [11, 12], "particular": 0, "pass": [0, 7, 8, 10], "password": [11, 12], "path": [0, 1, 5, 10, 11, 13], "path_to_manifest": 11, "pattern": [3, 12], "pdcdatastor": 11, "pend": 10, "per": [11, 12], "peregrin": 8, "permiss": 10, "persist": 9, "phs0001": 11, "phs0002": 11, "pick": 1, "pla": 11, "place": 11, "planx": 11, "point": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "popul": [10, 12], "posit": [1, 7], "possibl": 10, "post": [0, 11], "pprint": [2, 9, 10], "prefix": 3, "presign": 1, "pretti": 10, "prev_guid": [2, 9, 11], "previou": [3, 11], "previous": 4, "print": [8, 10], "process": 11, "processed_fil": 11, "profil": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "program": [8, 11], "progress": [8, 10], "project": [8, 11], "project_id": [7, 8], "protocol": 1, "provid": [0, 1, 3, 5, 7, 8, 12], "public": [3, 5], "put": 0, "py": 11, "python": [2, 9, 11], "python3": 11, "python_subprocess_command": 11, "queri": [1, 2, 3, 5, 8, 11, 12], "query_str": 7, "query_txt": [7, 8], "query_url": [2, 3], "quickstart": 2, "rather": 0, "raw": [7, 11], "raw_data_download": [2, 7], "rbac": 3, "read": [3, 5, 11], "readm": 2, "reason": 10, "record": [1, 3, 5, 7, 8, 11, 12], "refresh": [0, 10], "refresh_access_token": [0, 2], "refresh_fil": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "refresh_token": 0, "regist": 8, "regular": 7, "relat": 9, "remov": [1, 6, 11, 13], "replac": 11, "replace_url": 11, "repo": 2, "repres": [3, 5, 10], "represent": [1, 3], "request": [0, 1, 3, 5, 8, 11, 12], "requir": 10, "resolv": 10, "resolve_object": [2, 9, 10], "respect": 7, "respons": [0, 1, 3, 4, 5], "result": [1, 8, 10, 11], "retri": 8, "retriev": [1, 8, 10, 12], "return": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11], "return_full_metadata": 5, "rev": 3, "revers": 8, "revis": 3, "right": 1, "rm": [2, 13], "rm_path": [2, 13], "root": [11, 12], "row": [7, 8, 11, 12], "row_offset": 8, "rtype": 3, "run": [8, 11], "s3": [1, 10, 11], "safe": 11, "same": [5, 11, 13], "sampl": [8, 10], "sandbox": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "save": 10, "save_directori": 10, "schema": 8, "scope": [0, 1], "screen": 8, "script": 2, "search": [0, 2, 3], "second": [1, 4], "secret": 0, "see": [7, 10, 11], "self": 10, "semaphon": 12, "semaphor": 12, "separ": [0, 11], "server": 10, "servic": [1, 3, 4, 5, 6, 8, 11, 12, 13], "service_loc": [3, 4, 5], "session": 11, "set": [0, 1, 5, 10], "setup": 2, "sheepdog": 8, "should": [0, 8, 11], "show": 10, "show_progress": 10, "shown": 11, "sign": 1, "signpost": 3, "similar": 10, "simpl": 3, "simpli": 11, "sinc": 3, "singl": [1, 5, 8], "size": [2, 3, 9, 10, 11], "skip": 8, "sleep": 4, "so": 11, "some": [0, 2], "someth": 11, "sort": 7, "sort_field": 7, "sort_object": 7, "sourc": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "space": [0, 11], "specif": [5, 8, 11, 12], "specifi": [0, 1, 3, 11, 13], "spreadsheet": 8, "src_path": 13, "src_urlstr": 13, "src_w": 13, "src_wskei": 13, "ssl": [3, 4, 5], "start": [3, 4, 7, 8, 10], "start_tim": [2, 9, 10], "static": 10, "statu": [2, 4, 9, 10], "storag": [1, 2, 6], "store": [1, 3, 10], "str": [0, 1, 3, 4, 5, 7, 8, 10, 11, 12], "string": [0, 3, 5, 11, 13], "strip": 11, "sub": 8, "subject": [7, 8], "submiss": 2, "submit": [8, 11], "submit_additional_metadata_column": 11, "submit_fil": [2, 8], "submit_record": [2, 8], "submitter_id": 7, "success": 10, "successfulli": 10, "suffici": 3, "suppli": 3, "support": [0, 1, 5, 8, 11], "sure": 1, "synchron": 11, "syntax": 7, "system": [6, 7, 8, 9], "t": [1, 5, 11], "tab": 11, "task": 9, "temporari": 11, "test": 11, "test1": 11, "test2": 11, "test3": 11, "test4": 11, "test5": 11, "text": [1, 7, 8], "than": [0, 5], "thei": [0, 10], "them": [10, 11], "thi": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "those": 11, "thread": 11, "thread_num": 11, "threadcontrol": [2, 9, 11], "through": [8, 11], "tier": 7, "time": [1, 3, 8, 10, 11], "timestamp": 10, "tmp_folder": [2, 9, 11], "token": [0, 10], "tool": 2, "total": 11, "treat": [1, 5], "tree": 10, "true": [3, 4, 5, 6, 7, 8, 10, 11, 12], "try": 0, "tsv": [8, 11, 12], "tupl": [0, 3, 11, 12], "type": [1, 3, 4, 5, 7, 8, 10, 11, 12], "typic": 10, "uc": 7, "unaccess": 7, "under": [0, 8, 13], "uniqu": [1, 5], "unknown": 10, "unpack": 10, "unpack_packag": 10, "until": [4, 10], "up": [5, 9], "updat": [2, 3, 5, 10, 11], "update_alias": [2, 5], "update_blank": [2, 3], "update_record": [2, 3], "updated_tim": [2, 9, 10], "upload": [1, 2, 3, 8, 13], "upload_fil": [1, 2], "upload_file_to_guid": [1, 2], "upload_url": [2, 13], "url": [1, 2, 3, 9, 10, 11, 12, 13], "urls_metadata": 3, "us": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "usag": 11, "use_agg_md": 5, "user": [0, 10, 12], "user_access": [2, 9, 10], "usual": 12, "utcnow": 1, "util": 9, "uuid": [1, 3, 8], "uuid1": 8, "uuid2": 8, "valid": [3, 7], "valu": [0, 1, 3, 5, 7, 10, 11], "value_from_indexd": 11, "value_from_manifest": 11, "variabl": [0, 7, 8], "variou": 2, "verbos": [7, 8], "verif": 11, "verifi": [2, 9], "verify_manifest": 11, "verify_object_manifest": 11, "version": [3, 4, 5], "vital_statu": 7, "w": 13, "wa": 0, "wai": 10, "wait": 4, "want": [0, 3, 8], "warn": 11, "we": [3, 11], "web": 0, "what": 5, "when": [0, 3, 7, 10, 12], "where": [0, 3, 5, 11, 12], "whether": [3, 4, 5, 8, 11, 12], "which": [8, 10], "while": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "whose": 5, "within": [0, 2, 9], "without": [3, 5], "won": 5, "work": [0, 10], "workaround": 11, "worksheet": 8, "workspac": [0, 2], "wrapper": 10, "write": 11, "ws_urlstr": 13, "wskei": 13, "wss": 13, "wt": [0, 10], "x": 11, "xlsx": 8, "you": [0, 3, 8, 11], "your": 0}, "titles": ["Gen3 Auth Helper", "Gen3 File Class", "Welcome to Gen3 SDK\u2019s documentation!", "Gen3 Index Class", "Gen3 Jobs Class", "Gen3 Metadata Class", "Gen3 Object Class", "Gen3 Query Class", "Gen3 Submission Class", "Gen3 Tools", "DRS Download Tools", "Indexing Tools", "Metadata Tools", "Gen3 Workspace Storage"], "titleterms": {"": 2, "auth": 0, "class": [1, 3, 4, 5, 6, 7, 8], "document": 2, "download": [10, 11], "dr": 10, "file": 1, "gen3": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 13], "helper": 0, "index": [3, 11], "indic": 2, "ingest": 12, "job": 4, "metadata": [5, 12], "object": 6, "queri": 7, "sdk": 2, "storag": 13, "submiss": 8, "tabl": 2, "tool": [9, 10, 11, 12], "verifi": 11, "welcom": 2, "workspac": 13}}) \ No newline at end of file +Search.setIndex({"alltitles": {"DRS Download Tools": [[10, "module-gen3.tools.download.drs_download"]], "Download": [[11, "module-gen3.tools.indexing.download_manifest"]], "Gen3 Auth Helper": [[0, "gen3-auth-helper"]], "Gen3 File Class": [[1, "gen3-file-class"]], "Gen3 Index Class": [[3, "gen3-index-class"]], "Gen3 Jobs Class": [[4, "gen3-jobs-class"]], "Gen3 Metadata Class": [[5, "gen3-metadata-class"]], "Gen3 Object Class": [[6, "gen3-object-class"]], "Gen3 Query Class": [[7, "gen3-query-class"]], "Gen3 Submission Class": [[8, "gen3-submission-class"]], "Gen3 Tools": [[9, "gen3-tools"]], "Gen3 Workspace Storage": [[13, "gen3-workspace-storage"]], "Index": [[11, "module-gen3.tools.indexing.index_manifest"]], "Indexing Tools": [[11, "indexing-tools"]], "Indices and tables": [[2, "indices-and-tables"]], "Ingest": [[12, "module-gen3.tools.metadata.ingest_manifest"]], "Metadata Tools": [[12, "metadata-tools"]], "Verify": [[11, "module-gen3.tools.indexing.verify_manifest"]], "Welcome to Gen3 SDK\u2019s documentation!": [[2, "welcome-to-gen3-sdk-s-documentation"]]}, "docnames": ["auth", "file", "index", "indexing", "jobs", "metadata", "object", "query", "submission", "tools", "tools/drs_pull", "tools/indexing", "tools/metadata", "wss"], "envversion": {"sphinx": 61, "sphinx.domains.c": 3, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 9, "sphinx.domains.index": 1, "sphinx.domains.javascript": 3, "sphinx.domains.math": 2, "sphinx.domains.python": 4, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx.ext.viewcode": 1}, "filenames": ["auth.rst", "file.rst", "index.rst", "indexing.rst", "jobs.rst", "metadata.rst", "object.rst", "query.rst", "submission.rst", "tools.rst", "tools/drs_pull.rst", "tools/indexing.rst", "tools/metadata.rst", "wss.rst"], "indexentries": {"_manager (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable._manager", false]], "access_methods (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.access_methods", false]], "acls (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.ACLS", false]], "async_create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_create", false]], "async_create_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_create_aliases", false]], "async_create_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_create_record", false]], "async_delete_alias() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_delete_alias", false]], "async_delete_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_delete_aliases", false]], "async_download_object_manifest() (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.async_download_object_manifest", false]], "async_get() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_get", false]], "async_get_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_get_aliases", false]], "async_get_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_record", false]], "async_get_records_from_checksum() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_records_from_checksum", false]], "async_get_records_on_page() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_records_on_page", false]], "async_get_with_params() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_with_params", false]], "async_ingest_metadata_manifest() (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.async_ingest_metadata_manifest", false]], "async_query_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_query_urls", false]], "async_query_urls_from_indexd() (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.async_query_urls_from_indexd", false]], "async_run_job_and_wait() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.async_run_job_and_wait", false]], "async_update() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_update", false]], "async_update_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_update_aliases", false]], "async_update_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_update_record", false]], "async_verify_object_manifest() (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.async_verify_object_manifest", false]], "auth_provider (gen3.metadata.gen3metadata attribute)": [[5, "gen3.metadata.Gen3Metadata.auth_provider", false]], "authz (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.AUTHZ", false]], "batch_create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.batch_create", false]], "cache_hosts_wts_tokens() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.cache_hosts_wts_tokens", false]], "children (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.children", false]], "column_to_use_as_guid (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.COLUMN_TO_USE_AS_GUID", false]], "commons_url (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.commons_url", false]], "copy() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.copy", false]], "create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create", false]], "create_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create_aliases", false]], "create_blank() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_blank", false]], "create_index_key_path() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create_index_key_path", false]], "create_job() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.create_job", false]], "create_new_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_new_version", false]], "create_object_list() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.create_object_list", false]], "create_program() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.create_program", false]], "create_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.create_project", false]], "create_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_record", false]], "created_time (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.created_time", false]], "curl() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.curl", false]], "current_dir (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.CURRENT_DIR", false]], "current_dir (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.CURRENT_DIR", false]], "current_dir (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.CURRENT_DIR", false]], "delete() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete", false]], "delete_alias() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_alias", false]], "delete_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_aliases", false]], "delete_all_guids() (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.delete_all_guids", false]], "delete_file() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.delete_file", false]], "delete_file_locations() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.delete_file_locations", false]], "delete_index_key_path() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_index_key_path", false]], "delete_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_node", false]], "delete_nodes() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_nodes", false]], "delete_object() (gen3.object.gen3object method)": [[6, "gen3.object.Gen3Object.delete_object", false]], "delete_program() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_program", false]], "delete_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_project", false]], "delete_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.delete_record", false]], "delete_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_record", false]], "delete_records() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_records", false]], "download() (gen3.tools.download.drs_download.downloadable method)": [[10, "gen3.tools.download.drs_download.Downloadable.download", false]], "download() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.download", false]], "download() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.download", false]], "download_files_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.download_files_in_drs_manifest", false]], "download_single() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.download_single", false]], "download_url() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.download_url", false]], "downloadable (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.Downloadable", false]], "downloadmanager (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.DownloadManager", false]], "downloadstatus (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.DownloadStatus", false]], "end_time (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.end_time", false]], "endpoint (gen3.metadata.gen3metadata attribute)": [[5, "gen3.metadata.Gen3Metadata.endpoint", false]], "export_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.export_node", false]], "export_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.export_record", false]], "file_name (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.file_name", false]], "file_name (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.file_name", false]], "file_size (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.file_size", false]], "file_size (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.file_size", false]], "gen3.tools": [[9, "module-gen3.tools", false]], "gen3.tools.download.drs_download": [[10, "module-gen3.tools.download.drs_download", false]], "gen3.tools.indexing.download_manifest": [[11, "module-gen3.tools.indexing.download_manifest", false]], "gen3.tools.indexing.index_manifest": [[11, "module-gen3.tools.indexing.index_manifest", false]], "gen3.tools.indexing.verify_manifest": [[11, "module-gen3.tools.indexing.verify_manifest", false]], "gen3.tools.metadata.ingest_manifest": [[12, "module-gen3.tools.metadata.ingest_manifest", false]], "gen3auth (class in gen3.auth)": [[0, "gen3.auth.Gen3Auth", false]], "gen3file (class in gen3.file)": [[1, "gen3.file.Gen3File", false]], "gen3index (class in gen3.index)": [[3, "gen3.index.Gen3Index", false]], "gen3jobs (class in gen3.jobs)": [[4, "gen3.jobs.Gen3Jobs", false]], "gen3metadata (class in gen3.metadata)": [[5, "gen3.metadata.Gen3Metadata", false]], "gen3object (class in gen3.object)": [[6, "gen3.object.Gen3Object", false]], "gen3query (class in gen3.query)": [[7, "gen3.query.Gen3Query", false]], "gen3submission (class in gen3.submission)": [[8, "gen3.submission.Gen3Submission", false]], "gen3wsstorage (class in gen3.wss)": [[13, "gen3.wss.Gen3WsStorage", false]], "get() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get", false]], "get() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get", false]], "get_access_token() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.get_access_token", false]], "get_access_token_from_wts() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.get_access_token_from_wts", false]], "get_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_aliases", false]], "get_all_records() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_all_records", false]], "get_dictionary_all() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_dictionary_all", false]], "get_dictionary_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_dictionary_node", false]], "get_fresh_token() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.get_fresh_token", false]], "get_graphql_schema() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_graphql_schema", false]], "get_guids_prefix() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_guids_prefix", false]], "get_index_key_paths() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_index_key_paths", false]], "get_latest_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_latest_version", false]], "get_output() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_output", false]], "get_presigned_url() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.get_presigned_url", false]], "get_programs() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_programs", false]], "get_project_dictionary() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_project_dictionary", false]], "get_project_manifest() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_project_manifest", false]], "get_projects() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_projects", false]], "get_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_record", false]], "get_record_doc() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_record_doc", false]], "get_records() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_records", false]], "get_records_on_page() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_records_on_page", false]], "get_stats() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_stats", false]], "get_status() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_status", false]], "get_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_urls", false]], "get_valid_guids() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_valid_guids", false]], "get_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_version", false]], "get_version() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_version", false]], "get_version() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_version", false]], "get_versions() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_versions", false]], "get_with_params() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_with_params", false]], "graphql_query() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.graphql_query", false]], "guid (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.GUID", false]], "guid_type_for_indexed_file_object (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.GUID_TYPE_FOR_INDEXED_FILE_OBJECT", false]], "guid_type_for_non_indexed_file_object (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.GUID_TYPE_FOR_NON_INDEXED_FILE_OBJECT", false]], "hostname (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.hostname", false]], "index_object_manifest() (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.index_object_manifest", false]], "indexd_record_page_size (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.INDEXD_RECORD_PAGE_SIZE", false]], "is_healthy() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.is_healthy", false]], "is_healthy() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.is_healthy", false]], "is_healthy() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.is_healthy", false]], "list_access_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_access_in_drs_manifest", false]], "list_drs_object() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_drs_object", false]], "list_files_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_files_in_drs_manifest", false]], "list_jobs() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.list_jobs", false]], "load() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.load", false]], "load_manifest() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.load_manifest", false]], "ls() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.ls", false]], "ls_path() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.ls_path", false]], "manifest (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.Manifest", false]], "max_concurrent_requests (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.MAX_CONCURRENT_REQUESTS", false]], "max_concurrent_requests (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.MAX_CONCURRENT_REQUESTS", false]], "max_concurrent_requests (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.MAX_CONCURRENT_REQUESTS", false]], "md5 (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.MD5", false]], "md5sum (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.md5sum", false]], "module": [[9, "module-gen3.tools", false], [10, "module-gen3.tools.download.drs_download", false], [11, "module-gen3.tools.indexing.download_manifest", false], [11, "module-gen3.tools.indexing.index_manifest", false], [11, "module-gen3.tools.indexing.verify_manifest", false], [12, "module-gen3.tools.metadata.ingest_manifest", false]], "object_id (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.object_id", false]], "object_id (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.object_id", false]], "object_type (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.object_type", false]], "open_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.open_project", false]], "pprint() (gen3.tools.download.drs_download.downloadable method)": [[10, "gen3.tools.download.drs_download.Downloadable.pprint", false]], "prev_guid (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.PREV_GUID", false]], "query() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.query", false]], "query() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.query", false]], "query() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.query", false]], "query_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.query_urls", false]], "raw_data_download() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.raw_data_download", false]], "refresh_access_token() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.refresh_access_token", false]], "resolve_objects() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.resolve_objects", false]], "rm() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.rm", false]], "rm_path() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.rm_path", false]], "size (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.SIZE", false]], "start_time (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.start_time", false]], "status (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.status", false]], "submit_file() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.submit_file", false]], "submit_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.submit_record", false]], "threadcontrol (class in gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.ThreadControl", false]], "tmp_folder (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.TMP_FOLDER", false]], "update() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.update", false]], "update_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.update_aliases", false]], "update_blank() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.update_blank", false]], "update_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.update_record", false]], "updated_time (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.updated_time", false]], "upload() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.upload", false]], "upload_file() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.upload_file", false]], "upload_file_to_guid() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.upload_file_to_guid", false]], "upload_url() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.upload_url", false]], "urls (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.URLS", false]], "user_access() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.user_access", false]]}, "objects": {"gen3": [[9, 3, 0, "-", "tools"]], "gen3.auth": [[0, 0, 1, "", "Gen3Auth"]], "gen3.auth.Gen3Auth": [[0, 1, 1, "", "curl"], [0, 1, 1, "", "get_access_token"], [0, 1, 1, "", "get_access_token_from_wts"], [0, 1, 1, "", "refresh_access_token"]], "gen3.file": [[1, 0, 1, "", "Gen3File"]], "gen3.file.Gen3File": [[1, 1, 1, "", "delete_file"], [1, 1, 1, "", "delete_file_locations"], [1, 1, 1, "", "download_single"], [1, 1, 1, "", "get_presigned_url"], [1, 1, 1, "", "upload_file"], [1, 1, 1, "", "upload_file_to_guid"]], "gen3.index": [[3, 0, 1, "", "Gen3Index"]], "gen3.index.Gen3Index": [[3, 1, 1, "", "async_create_record"], [3, 1, 1, "", "async_get_record"], [3, 1, 1, "", "async_get_records_from_checksum"], [3, 1, 1, "", "async_get_records_on_page"], [3, 1, 1, "", "async_get_with_params"], [3, 1, 1, "", "async_query_urls"], [3, 1, 1, "", "async_update_record"], [3, 1, 1, "", "create_blank"], [3, 1, 1, "", "create_new_version"], [3, 1, 1, "", "create_record"], [3, 1, 1, "", "delete_record"], [3, 1, 1, "", "get"], [3, 1, 1, "", "get_all_records"], [3, 1, 1, "", "get_guids_prefix"], [3, 1, 1, "", "get_latest_version"], [3, 1, 1, "", "get_record"], [3, 1, 1, "", "get_record_doc"], [3, 1, 1, "", "get_records"], [3, 1, 1, "", "get_records_on_page"], [3, 1, 1, "", "get_stats"], [3, 1, 1, "", "get_urls"], [3, 1, 1, "", "get_valid_guids"], [3, 1, 1, "", "get_version"], [3, 1, 1, "", "get_versions"], [3, 1, 1, "", "get_with_params"], [3, 1, 1, "", "is_healthy"], [3, 1, 1, "", "query_urls"], [3, 1, 1, "", "update_blank"], [3, 1, 1, "", "update_record"]], "gen3.jobs": [[4, 0, 1, "", "Gen3Jobs"]], "gen3.jobs.Gen3Jobs": [[4, 1, 1, "", "async_run_job_and_wait"], [4, 1, 1, "", "create_job"], [4, 1, 1, "", "get_output"], [4, 1, 1, "", "get_status"], [4, 1, 1, "", "get_version"], [4, 1, 1, "", "is_healthy"], [4, 1, 1, "", "list_jobs"]], "gen3.metadata": [[5, 0, 1, "", "Gen3Metadata"]], "gen3.metadata.Gen3Metadata": [[5, 1, 1, "", "async_create"], [5, 1, 1, "", "async_create_aliases"], [5, 1, 1, "", "async_delete_alias"], [5, 1, 1, "", "async_delete_aliases"], [5, 1, 1, "", "async_get"], [5, 1, 1, "", "async_get_aliases"], [5, 1, 1, "", "async_update"], [5, 1, 1, "", "async_update_aliases"], [5, 2, 1, "", "auth_provider"], [5, 1, 1, "", "batch_create"], [5, 1, 1, "", "create"], [5, 1, 1, "", "create_aliases"], [5, 1, 1, "", "create_index_key_path"], [5, 1, 1, "", "delete"], [5, 1, 1, "", "delete_alias"], [5, 1, 1, "", "delete_aliases"], [5, 1, 1, "", "delete_index_key_path"], [5, 2, 1, "", "endpoint"], [5, 1, 1, "", "get"], [5, 1, 1, "", "get_aliases"], [5, 1, 1, "", "get_index_key_paths"], [5, 1, 1, "", "get_version"], [5, 1, 1, "", "is_healthy"], [5, 1, 1, "", "query"], [5, 1, 1, "", "update"], [5, 1, 1, "", "update_aliases"]], "gen3.object": [[6, 0, 1, "", "Gen3Object"]], "gen3.object.Gen3Object": [[6, 1, 1, "", "delete_object"]], "gen3.query": [[7, 0, 1, "", "Gen3Query"]], "gen3.query.Gen3Query": [[7, 1, 1, "", "graphql_query"], [7, 1, 1, "", "query"], [7, 1, 1, "", "raw_data_download"]], "gen3.submission": [[8, 0, 1, "", "Gen3Submission"]], "gen3.submission.Gen3Submission": [[8, 1, 1, "", "create_program"], [8, 1, 1, "", "create_project"], [8, 1, 1, "", "delete_node"], [8, 1, 1, "", "delete_nodes"], [8, 1, 1, "", "delete_program"], [8, 1, 1, "", "delete_project"], [8, 1, 1, "", "delete_record"], [8, 1, 1, "", "delete_records"], [8, 1, 1, "", "export_node"], [8, 1, 1, "", "export_record"], [8, 1, 1, "", "get_dictionary_all"], [8, 1, 1, "", "get_dictionary_node"], [8, 1, 1, "", "get_graphql_schema"], [8, 1, 1, "", "get_programs"], [8, 1, 1, "", "get_project_dictionary"], [8, 1, 1, "", "get_project_manifest"], [8, 1, 1, "", "get_projects"], [8, 1, 1, "", "open_project"], [8, 1, 1, "", "query"], [8, 1, 1, "", "submit_file"], [8, 1, 1, "", "submit_record"]], "gen3.tools.download": [[10, 3, 0, "-", "drs_download"]], "gen3.tools.download.drs_download": [[10, 0, 1, "", "DownloadManager"], [10, 0, 1, "", "DownloadStatus"], [10, 0, 1, "", "Downloadable"], [10, 0, 1, "", "Manifest"], [10, 4, 1, "", "download_files_in_drs_manifest"], [10, 4, 1, "", "list_access_in_drs_manifest"], [10, 4, 1, "", "list_drs_object"], [10, 4, 1, "", "list_files_in_drs_manifest"]], "gen3.tools.download.drs_download.DownloadManager": [[10, 1, 1, "", "cache_hosts_wts_tokens"], [10, 1, 1, "", "download"], [10, 1, 1, "", "get_fresh_token"], [10, 1, 1, "", "resolve_objects"], [10, 1, 1, "", "user_access"]], "gen3.tools.download.drs_download.DownloadStatus": [[10, 2, 1, "", "end_time"], [10, 2, 1, "", "start_time"], [10, 2, 1, "", "status"]], "gen3.tools.download.drs_download.Downloadable": [[10, 2, 1, "", "_manager"], [10, 2, 1, "", "access_methods"], [10, 2, 1, "", "children"], [10, 2, 1, "", "created_time"], [10, 1, 1, "", "download"], [10, 2, 1, "", "file_name"], [10, 2, 1, "", "file_size"], [10, 2, 1, "", "hostname"], [10, 2, 1, "", "object_id"], [10, 2, 1, "", "object_type"], [10, 1, 1, "", "pprint"], [10, 2, 1, "", "updated_time"]], "gen3.tools.download.drs_download.Manifest": [[10, 2, 1, "", "commons_url"], [10, 1, 1, "", "create_object_list"], [10, 2, 1, "", "file_name"], [10, 2, 1, "", "file_size"], [10, 1, 1, "", "load"], [10, 1, 1, "", "load_manifest"], [10, 2, 1, "", "md5sum"], [10, 2, 1, "", "object_id"]], "gen3.tools.indexing": [[11, 3, 0, "-", "download_manifest"], [11, 3, 0, "-", "index_manifest"], [11, 3, 0, "-", "verify_manifest"]], "gen3.tools.indexing.download_manifest": [[11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "INDEXD_RECORD_PAGE_SIZE"], [11, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [11, 2, 1, "", "TMP_FOLDER"], [11, 4, 1, "", "async_download_object_manifest"]], "gen3.tools.indexing.index_manifest": [[11, 2, 1, "", "ACLS"], [11, 2, 1, "", "AUTHZ"], [11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "GUID"], [11, 2, 1, "", "MD5"], [11, 2, 1, "", "PREV_GUID"], [11, 2, 1, "", "SIZE"], [11, 0, 1, "", "ThreadControl"], [11, 2, 1, "", "URLS"], [11, 4, 1, "", "delete_all_guids"], [11, 4, 1, "", "index_object_manifest"]], "gen3.tools.indexing.verify_manifest": [[11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [11, 4, 1, "", "async_verify_object_manifest"]], "gen3.tools.metadata": [[12, 3, 0, "-", "ingest_manifest"]], "gen3.tools.metadata.ingest_manifest": [[12, 2, 1, "", "COLUMN_TO_USE_AS_GUID"], [12, 2, 1, "", "GUID_TYPE_FOR_INDEXED_FILE_OBJECT"], [12, 2, 1, "", "GUID_TYPE_FOR_NON_INDEXED_FILE_OBJECT"], [12, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [12, 4, 1, "", "async_ingest_metadata_manifest"], [12, 4, 1, "", "async_query_urls_from_indexd"]], "gen3.wss": [[13, 0, 1, "", "Gen3WsStorage"]], "gen3.wss.Gen3WsStorage": [[13, 1, 1, "", "copy"], [13, 1, 1, "", "download"], [13, 1, 1, "", "download_url"], [13, 1, 1, "", "ls"], [13, 1, 1, "", "ls_path"], [13, 1, 1, "", "rm"], [13, 1, 1, "", "rm_path"], [13, 1, 1, "", "upload"], [13, 1, 1, "", "upload_url"]]}, "objnames": {"0": ["py", "class", "Python class"], "1": ["py", "method", "Python method"], "2": ["py", "attribute", "Python attribute"], "3": ["py", "module", "Python module"], "4": ["py", "function", "Python function"]}, "objtypes": {"0": "py:class", "1": "py:method", "2": "py:attribute", "3": "py:module", "4": "py:function"}, "terms": {"": [1, 4, 8, 10, 11], "0": [5, 7, 8, 11], "0046513": [], "064572": [], "07464": 11, "0a80fada010c": 11, "0a80fada096c": 11, "0a80fada097c": 11, "0a80fada098c": 11, "0a80fada099c": 11, "1": [4, 5, 8, 10, 11], "10": [5, 7, 11], "100": [8, 11], "11e9": 11, "1713542306": [], "1713542765": [], "1713543033": [], "1713543225": [], "1713543506": [], "1713543956": [], "1713544131": [], "1713544132": [], "1713544397": [], "1713544598": [11, 12], "1771936": [], "1913438": [], "2": [5, 11], "24": [11, 12], "255e396f": 11, "2877355": [], "2995": [], "3": [5, 11], "30": 8, "33": 5, "333": 5, "343434344": 11, "363455714": 11, "4": [5, 11], "4017086": [], "4052968": [], "4463434": 12, "450c": 11, "4649727": [], "4714": 8, "473d83400bc1bc9dc635e334fadd433c": 11, "473d83400bc1bc9dc635e334faddd33c": 11, "473d83400bc1bc9dc635e334fadde33c": 11, "473d83400bc1bc9dc635e334faddf33c": 11, "5": [0, 5], "50": 7, "543434443": 11, "5669184": [], "5899982": [], "6692646": [], "6f90": 8, "760149": [], "7d3d8d2083b4": 11, "8044841": [], "8375325": [], "8420": 8, "8882551": [], "93d9af72": 11, "9a07": 11, "A": [1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "AND": 5, "Be": 1, "But": 5, "By": 11, "For": [1, 5, 6, 7, 8, 9, 11], "IF": 11, "If": [0, 1, 7, 11, 12], "In": 10, "It": 10, "NOT": 12, "OR": 5, "One": 7, "Such": 9, "THE": 11, "That": 3, "The": [0, 1, 2, 3, 5, 8, 10, 11], "There": 11, "These": 9, "To": 11, "Will": [4, 7, 10], "_get_acl_from_row": 11, "_get_authz_from_row": 11, "_get_file_name_from_row": 11, "_get_file_size_from_row": 11, "_get_guid_for_row": 12, "_get_guid_from_row": 11, "_get_md5_from_row": 11, "_get_urls_from_row": 11, "_guid_typ": 12, "_manag": [2, 9, 10], "_query_for_associated_indexd_record_guid": 12, "_ssl": [3, 4, 5], "a5c6": 11, "ab167e49d25b488939b1ede42752458b": 3, "about": [2, 3], "abov": 11, "access": [0, 1, 3, 7, 10], "access_method": [2, 9, 10], "access_token": 0, "accesstoken": 0, "acl": [2, 3, 9, 11], "across": 11, "act": 0, "action": [9, 11], "actual": 11, "ad": 3, "add": [3, 5], "addit": [3, 5, 10, 11], "admin": [5, 11], "admin_endpoint_suffix": 5, "after": 10, "against": [3, 7, 8, 11, 12], "algorithm": 3, "alia": [3, 5], "alias": 5, "aliv": 7, "all": [1, 3, 4, 5, 6, 7, 8, 10, 11, 12], "allow": [0, 6, 8, 10, 11, 12], "allowed_data_upload_bucket": 1, "along": 2, "alreadi": 9, "also": 1, "altern": [5, 11], "alwai": 5, "ammount": 12, "amount": [1, 9], "an": [0, 3, 6, 8, 10, 11], "ani": [0, 5, 10, 11], "anoth": 5, "api": [0, 5, 8, 11], "api_kei": 11, "appli": 7, "appropri": 13, "ar": [5, 7, 8, 9, 10, 11], "arbitrari": 0, "argument": [0, 13], "arrai": 8, "asc": 7, "assign": 9, "assist": 10, "associ": [3, 5], "assum": 11, "async": [3, 4, 5, 9, 11, 12], "async_cr": [2, 5], "async_create_alias": [2, 5], "async_create_record": [2, 3], "async_delete_alia": [2, 5], "async_delete_alias": [2, 5], "async_download_object_manifest": [2, 9, 11], "async_get": [2, 5], "async_get_alias": [2, 5], "async_get_record": [2, 3], "async_get_records_from_checksum": [2, 3], "async_get_records_on_pag": [2, 3], "async_get_with_param": [2, 3], "async_ingest_metadata_manifest": [2, 9, 12], "async_query_url": [2, 3], "async_query_urls_from_indexd": [2, 9, 12], "async_run_job_and_wait": [2, 4], "async_upd": [2, 5], "async_update_alias": [2, 5], "async_update_record": [2, 3], "async_verify_object_manifest": [2, 9, 11], "asynchron": [3, 4, 5], "asyncio": [11, 12], "asyncron": 5, "attach": [3, 5], "attempt": 11, "attribut": [10, 11], "auth": [1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "auth_provid": [1, 2, 3, 4, 5, 6, 7, 8, 13], "authbas": 0, "authent": 0, "author": 1, "authz": [0, 1, 2, 3, 9, 10, 11], "auto": [0, 2], "automat": 0, "avail": [1, 2, 10, 11], "az": 1, "b": [5, 11], "b0f1": 11, "bar": 10, "base": [0, 1, 3, 4, 5, 6, 7, 8, 9, 11, 13], "baseid": 3, "basic": [3, 11, 12], "batch_creat": [2, 5], "batch_siz": 8, "behalf": 0, "behavior": 11, "being": 3, "belong": 8, "below": 11, "blank": 3, "blob": [5, 7], "bodi": 3, "bool": [4, 5, 8, 10, 11, 12], "boolean": 3, "bownload": 10, "broad": 9, "broken": 9, "bucket": [1, 6], "bundl": 10, "byte": 10, "c": [5, 11], "cach": 10, "cache_hosts_wts_token": [2, 9, 10], "call": [10, 13], "can": [0, 3, 4, 8, 11, 12], "capabl": 9, "case": [0, 10], "categori": 9, "ccle": 8, "ccle_one_record": 8, "ccle_sample_nod": 8, "cdi": 7, "chang": [3, 11], "checksum": [3, 10], "checksum_typ": 3, "child": 10, "children": [2, 9, 10], "chunk_siz": 8, "class": [0, 2, 10, 11, 13], "cli": 10, "client": [0, 3], "client_credenti": 0, "client_id": 0, "client_scop": 0, "client_secret": 0, "code": [2, 8], "column": [11, 12], "column_to_use_as_guid": [2, 9, 12], "columna": 11, "columnb": 11, "columnc": 11, "com": 7, "comma": 11, "command": [10, 11], "common": [0, 1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13], "commons_url": [2, 9, 10, 11, 12], "complet": [4, 11], "complex": 7, "concat": 11, "concurr": [11, 12], "configur": 1, "connect": 12, "consist": 3, "constructor": 0, "contain": [0, 2, 5, 8, 9, 10, 11, 12], "content": [3, 13], "content_created_d": 3, "content_updated_d": 3, "continu": 10, "control": 3, "conveni": 10, "copi": [2, 13], "coroutin": 11, "correspond": 3, "count": 3, "crdc": 0, "creat": [2, 3, 4, 5, 6, 8, 10, 11], "create_alias": [2, 5], "create_blank": [2, 3], "create_index_key_path": [2, 5], "create_job": [2, 4], "create_new_vers": [2, 3], "create_object_list": [2, 9, 10], "create_program": [2, 8], "create_project": [2, 8], "create_record": [2, 3], "created_tim": [2, 9, 10], "creation": [3, 11], "cred": 3, "credenti": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "csv": [8, 11, 12], "curl": [0, 2], "current": [6, 8, 10], "current_dir": [2, 9, 11], "custom": 11, "d": 5, "d70b41b9": 8, "data": [0, 1, 3, 5, 7, 8, 10, 11], "data_spreadsheet": 8, "data_typ": 7, "data_upload_bucket": 1, "dataa": 11, "datab": 11, "databas": 5, "datacommon": 0, "datafil": 10, "datamanag": 10, "date": 3, "datetim": [1, 3, 10], "dbgap": 12, "dcf": 8, "def": 11, "default": [0, 1, 3, 7, 8, 11, 12], "defin": [5, 8, 10], "delai": 4, "delet": [0, 1, 2, 3, 5, 6, 8, 10, 11], "delete_alia": [2, 5], "delete_alias": [2, 5], "delete_all_guid": [2, 9, 11], "delete_fil": [1, 2], "delete_file_loc": [1, 2, 6], "delete_index_key_path": [2, 5], "delete_nod": [2, 8], "delete_object": [2, 6], "delete_program": [2, 8], "delete_project": [2, 8], "delete_record": [2, 3, 8], "delete_unpacked_packag": 10, "delimet": [11, 12], "delimit": 11, "demograph": 8, "deprec": 1, "descript": [3, 5], "desir": 11, "dest_path": 13, "dest_urlstr": 13, "dest_w": 13, "dest_wskei": 13, "detail": [2, 7, 10], "determin": [10, 11, 12], "dev": 11, "dict": [3, 4, 5, 10, 11, 12], "dictionari": [3, 4, 5, 7, 8], "did": 3, "differ": 5, "direct": 0, "directori": [10, 11], "disabl": 10, "discoveri": 10, "disk": 13, "dispatch": 4, "dist_resolut": 3, "distribut": 3, "doc": [7, 10], "docstr": 2, "document": [1, 3], "doe": [0, 12], "domain": [11, 12], "done": 4, "download": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 13], "download_files_in_drs_manifest": [2, 9, 10], "download_list": 10, "download_manifest": 11, "download_singl": [1, 2], "download_url": [2, 13], "downloadmanag": [2, 9, 10], "downloadstatu": [2, 9, 10], "dr": [2, 9], "drs_download": 10, "drs_hostnam": 10, "drsdownload": 10, "drsobjecttyp": 10, "e": [5, 10], "e043ab8b77b9": 8, "each": [3, 8, 10, 11], "effici": 9, "eg": 3, "either": 8, "elasticsearch": 7, "els": [0, 12], "elsewher": 12, "empti": [8, 11], "enabl": 11, "end": [5, 10], "end_tim": [2, 9, 10], "endpoint": [0, 1, 2, 3, 4, 5, 7, 8, 13], "entir": 8, "entri": [3, 11], "env": 0, "environ": 0, "equal": 7, "error": [10, 11, 12], "error_nam": 11, "etc": 8, "even": 11, "everi": [9, 11], "everyth": 11, "ex": [0, 11, 12], "exampl": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "exclud": 3, "execut": [7, 8, 11], "exist": [1, 3, 5, 6, 9, 12], "expect": [5, 9, 11], "experi": 8, "expir": [0, 1], "expires_in": 1, "export": [8, 10], "export_nod": [2, 8], "export_record": [2, 8], "f1f8": 11, "factori": 10, "fail": [8, 10], "fals": [3, 5, 6, 10, 11], "featur": [1, 6], "fenc": [0, 1], "fetch": 0, "field": [3, 5, 7, 11, 12], "fieldnam": 11, "file": [0, 2, 3, 4, 8, 9, 10, 11, 12, 13], "file_nam": [1, 2, 3, 9, 10, 11], "file_s": [2, 9, 10, 11], "file_st": 3, "fileformat": 8, "filenam": [0, 8, 10, 11, 12], "files": 10, "fill": 12, "filter": [5, 7], "filter_object": 7, "first": [7, 8], "flag": 11, "folder": 11, "follow": [0, 11], "forc": 11, "force_metadata_columns_even_if_empti": 11, "form": 13, "format": [3, 5, 8, 11], "from": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13], "func_to_parse_row": [11, 12], "function": [2, 3, 4, 5, 9, 10, 11, 12], "g": 10, "gen3": [10, 11, 12], "gen3_api_kei": 0, "gen3_oidc_client_creds_secret": 0, "gen3auth": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "gen3fil": [1, 2], "gen3index": [2, 3], "gen3job": [2, 4, 10], "gen3metadata": [2, 5], "gen3object": [2, 6], "gen3queri": [2, 7], "gen3submiss": [2, 8], "gen3wsstorag": [2, 13], "gener": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 13], "get": [0, 1, 2, 3, 4, 5, 8, 10, 11, 12, 13], "get_access_token": [0, 2], "get_access_token_from_wt": [0, 2], "get_alias": [2, 5], "get_all_record": [2, 3], "get_dictionary_al": [2, 8], "get_dictionary_nod": [2, 8], "get_fresh_token": [2, 9, 10], "get_graphql_schema": [2, 8], "get_guid_from_fil": 12, "get_guids_prefix": [2, 3], "get_index_key_path": [2, 5], "get_latest_vers": [2, 3], "get_output": [2, 4], "get_presigned_url": [1, 2], "get_program": [2, 8], "get_project": [2, 8], "get_project_dictionari": [2, 8], "get_project_manifest": [2, 8], "get_record": [2, 3], "get_record_doc": [2, 3], "get_records_on_pag": [2, 3], "get_stat": [2, 3], "get_statu": [2, 4], "get_url": [2, 3], "get_valid_guid": [2, 3], "get_vers": [2, 3, 4, 5], "get_with_param": [2, 3], "giangb": 11, "github": [2, 7], "give": 1, "given": [0, 3, 4, 5, 8, 10, 12, 13], "global": [4, 5], "good": 3, "grant": 0, "graph": 8, "graphql": [7, 8], "graphql_queri": [2, 7], "group": 3, "guid": [1, 2, 3, 5, 6, 9, 11, 12], "guid_exampl": 11, "guid_for_row": 12, "guid_from_fil": 12, "guid_type_for_indexed_file_object": [2, 9, 12], "guid_type_for_non_indexed_file_object": [2, 9, 12], "guppi": 7, "ha": [0, 11], "handl": [3, 10], "hardcod": 0, "has_vers": 3, "hash": [3, 11], "hash_typ": 3, "have": [5, 11], "header": 11, "healthi": [3, 4, 5], "help": 11, "helper": 2, "hit": 11, "host": 10, "hostnam": [2, 9, 10], "how": [8, 11], "howto": 10, "http": [0, 7, 11, 12], "i": [0, 1, 2, 3, 4, 5, 8, 10, 11, 12], "id": [0, 1, 3, 5, 10, 11], "idea": 3, "identifi": [3, 5, 9, 11], "idp": 0, "illustr": 11, "immut": 3, "implement": 0, "implic": 11, "import": 11, "includ": [0, 3], "indent": 10, "index": [0, 2, 5, 9], "index_manifest": 11, "index_object_manifest": [2, 9, 11], "indexd": [1, 3, 6, 10, 11, 12], "indexd_field": [11, 12], "indexd_record_page_s": [2, 9, 11], "indexed_file_object_guid": 12, "indic": [0, 11], "infil": 10, "info": [3, 11], "inform": [2, 3, 10], "ingest": [2, 9], "ingest_manifest": 12, "initi": [0, 10], "input": [4, 10, 11], "input_manifest": 11, "instal": [0, 2, 11], "instanc": [1, 3, 6, 7, 8, 9, 10], "instead": [1, 7, 11], "int": [1, 3, 5, 7, 8, 10, 11, 12], "integ": [1, 3, 8], "intend": 0, "interact": [1, 3, 4, 5, 6, 8, 13], "interest": 10, "interpret": 0, "introspect": 8, "involv": 9, "is_healthi": [2, 3, 4, 5], "is_indexed_file_object": 12, "isn": 1, "issu": 0, "its": [1, 3], "job": 2, "job_id": 4, "job_input": 4, "job_nam": 4, "json": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "just": [5, 11, 12], "jwt": 0, "kei": [0, 3, 5, 13], "know": 11, "known": 10, "kwarg": [3, 4, 5], "l": [2, 13], "larg": 9, "last": 10, "latest": 3, "least": 3, "level": 6, "librari": 11, "like": [3, 5, 9, 11, 12], "limit": [1, 3, 5, 12], "linear": 4, "linux": 10, "list": [0, 1, 3, 4, 5, 7, 8, 10, 11, 13], "list_access_in_drs_manifest": [2, 9, 10], "list_drs_object": [2, 9, 10], "list_files_in_drs_manifest": [2, 9, 10], "list_job": [2, 4], "live": [11, 12], "load": [2, 9, 10], "load_manifest": [2, 9, 10], "local": [0, 13], "locat": [1, 6], "lock": 12, "log": [8, 10, 11, 12], "logic": [5, 12], "loop": 11, "ls_path": [2, 13], "maco": 11, "made": 3, "mai": [0, 9, 11], "main": 10, "make": [9, 11], "manag": [1, 5, 10], "mani": [8, 11], "manifest": [2, 8, 9, 10, 11, 12], "manifest_1": 10, "manifest_fil": [11, 12], "manifest_file_delimit": [11, 12], "manifest_row_pars": [11, 12], "map": [0, 11], "mark": 8, "master": 7, "match": [3, 5, 12], "max": 5, "max_concurrent_request": [2, 9, 11, 12], "max_presigned_url_ttl": 1, "max_tri": 8, "maximum": [11, 12], "md": [5, 7, 10, 12], "md5": [2, 3, 9, 11], "md5_hash": 11, "md5sum": [2, 9, 10], "mean": 8, "mechan": 3, "merg": 5, "metadata": [2, 3, 6, 9, 11], "metadata_list": 5, "metadata_sourc": 12, "metadata_typ": 12, "metdata": 12, "method": [1, 7, 10], "minimum": 10, "minut": 0, "mode": 7, "modul": [2, 10, 11], "more": [2, 5, 7, 9, 10], "most": 9, "mostli": 2, "multipl": [8, 11], "must": [1, 5], "my_common": 10, "my_credenti": 10, "my_field": 7, "my_index": 7, "my_program": 7, "my_project": 7, "name": [3, 4, 8, 10, 11, 12, 13], "namespac": [0, 12], "necessari": [3, 5], "need": [3, 7, 10, 11], "nest": 5, "net": 11, "never": 0, "new": [0, 3], "node": 8, "node_nam": 8, "node_typ": 8, "none": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "note": [0, 3, 11, 12], "noth": [3, 6], "now": [1, 8], "num": 5, "num_process": 11, "num_total_fil": 11, "number": [3, 7, 8, 11, 12], "o": 0, "object": [1, 2, 3, 4, 5, 7, 8, 9, 10, 11, 13], "object_id": [1, 2, 9, 10], "object_list": 10, "object_typ": [2, 9, 10], "objectid": 10, "obtain": [0, 10], "occur": 10, "off": 5, "offset": [5, 7], "oidc": 0, "old": 3, "one": [3, 5, 10, 11], "onli": [3, 5, 7, 8, 10, 11], "open": [8, 10, 11], "open_project": [2, 8], "openid": 0, "opt": 0, "option": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11], "order": [0, 8], "ordered_node_list": 8, "org": 10, "otherwis": 10, "output": [4, 5, 11, 12], "output_dir": 10, "output_filenam": [11, 12], "overrid": [0, 11, 12], "overwrit": 5, "own": 0, "packag": 10, "page": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 13], "pagin": 3, "parallel": 11, "param": [3, 5, 8, 10], "paramet": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "pars": [10, 11, 12, 13], "parser": [11, 12], "particular": 0, "pass": [0, 7, 8, 10], "password": [11, 12], "path": [0, 1, 5, 10, 11, 13], "path_to_manifest": 11, "pattern": [3, 12], "pdcdatastor": 11, "pend": 10, "per": [11, 12], "peregrin": 8, "permiss": 10, "persist": 9, "phs0001": 11, "phs0002": 11, "pick": 1, "pla": 11, "place": 11, "planx": 11, "point": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "popul": [10, 12], "posit": [1, 7], "possibl": 10, "post": [0, 11], "pprint": [2, 9, 10], "prefix": 3, "presign": 1, "pretti": 10, "prev_guid": [2, 9, 11], "previou": [3, 11], "previous": 4, "print": [8, 10], "process": 11, "processed_fil": 11, "profil": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "program": [8, 11], "progress": [8, 10], "project": [8, 11], "project_id": [7, 8], "protocol": 1, "provid": [0, 1, 3, 5, 7, 8, 12], "public": [3, 5], "put": 0, "py": 11, "python": [2, 9, 11], "python3": 11, "python_subprocess_command": 11, "queri": [1, 2, 3, 5, 8, 11, 12], "query_str": 7, "query_txt": [7, 8], "query_url": [2, 3], "quickstart": 2, "rather": 0, "raw": [7, 11], "raw_data_download": [2, 7], "rbac": 3, "read": [3, 5, 11], "readm": 2, "reason": 10, "record": [1, 3, 5, 7, 8, 11, 12], "refresh": [0, 10], "refresh_access_token": [0, 2], "refresh_fil": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "refresh_token": 0, "regist": 8, "regular": 7, "relat": 9, "remov": [1, 6, 11, 13], "replac": 11, "replace_url": 11, "repo": 2, "repres": [3, 5, 10], "represent": [1, 3], "request": [0, 1, 3, 5, 8, 11, 12], "requir": 10, "resolv": 10, "resolve_object": [2, 9, 10], "respect": 7, "respons": [0, 1, 3, 4, 5], "result": [1, 8, 10, 11], "retri": 8, "retriev": [1, 8, 10, 12], "return": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11], "return_full_metadata": 5, "rev": 3, "revers": 8, "revis": 3, "right": 1, "rm": [2, 13], "rm_path": [2, 13], "root": [11, 12], "row": [7, 8, 11, 12], "row_offset": 8, "rtype": 3, "run": [8, 11], "s3": [1, 10, 11], "safe": 11, "same": [5, 11, 13], "sampl": [8, 10], "sandbox": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "save": 10, "save_directori": 10, "schema": 8, "scope": [0, 1], "screen": 8, "script": 2, "search": [0, 2, 3], "second": [1, 4], "secret": 0, "see": [7, 10, 11], "self": 10, "semaphon": 12, "semaphor": 12, "separ": [0, 11], "server": 10, "servic": [1, 3, 4, 5, 6, 8, 11, 12, 13], "service_loc": [3, 4, 5], "session": 11, "set": [0, 1, 5, 10], "setup": 2, "sheepdog": 8, "should": [0, 8, 11], "show": 10, "show_progress": 10, "shown": 11, "sign": 1, "signpost": 3, "similar": 10, "simpl": 3, "simpli": 11, "sinc": 3, "singl": [1, 5, 8], "size": [2, 3, 9, 10, 11], "skip": 8, "sleep": 4, "so": 11, "some": [0, 2], "someth": 11, "sort": 7, "sort_field": 7, "sort_object": 7, "sourc": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "space": [0, 11], "specif": [5, 8, 11, 12], "specifi": [0, 1, 3, 11, 13], "spreadsheet": 8, "src_path": 13, "src_urlstr": 13, "src_w": 13, "src_wskei": 13, "ssl": [3, 4, 5], "start": [3, 4, 7, 8, 10], "start_tim": [2, 9, 10], "static": 10, "statu": [2, 4, 9, 10], "storag": [1, 2, 6], "store": [1, 3, 10], "str": [0, 1, 3, 4, 5, 7, 8, 10, 11, 12], "string": [0, 3, 5, 11, 13], "strip": 11, "sub": 8, "subject": [7, 8], "submiss": 2, "submit": [8, 11], "submit_additional_metadata_column": 11, "submit_fil": [2, 8], "submit_record": [2, 8], "submitter_id": 7, "success": 10, "successfulli": 10, "suffici": 3, "suppli": 3, "support": [0, 1, 5, 8, 11], "sure": 1, "synchron": 11, "syntax": 7, "system": [6, 7, 8, 9], "t": [1, 5, 11], "tab": 11, "task": 9, "temporari": 11, "test": 11, "test1": 11, "test2": 11, "test3": 11, "test4": 11, "test5": 11, "text": [1, 7, 8], "than": [0, 5], "thei": [0, 10], "them": [10, 11], "thi": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "those": 11, "thread": 11, "thread_num": 11, "threadcontrol": [2, 9, 11], "through": [8, 11], "tier": 7, "time": [1, 3, 8, 10, 11], "timestamp": 10, "tmp_folder": [2, 9, 11], "token": [0, 10], "tool": 2, "total": 11, "treat": [1, 5], "tree": 10, "true": [3, 4, 5, 6, 7, 8, 10, 11, 12], "try": 0, "tsv": [8, 11, 12], "tupl": [0, 3, 11, 12], "type": [1, 3, 4, 5, 7, 8, 10, 11, 12], "typic": 10, "uc": 7, "unaccess": 7, "under": [0, 8, 13], "uniqu": [1, 5], "unknown": 10, "unpack": 10, "unpack_packag": 10, "until": [4, 10], "up": [5, 9], "updat": [2, 3, 5, 10, 11], "update_alias": [2, 5], "update_blank": [2, 3], "update_record": [2, 3], "updated_tim": [2, 9, 10], "upload": [1, 2, 3, 8, 13], "upload_fil": [1, 2], "upload_file_to_guid": [1, 2], "upload_url": [2, 13], "url": [1, 2, 3, 9, 10, 11, 12, 13], "urls_metadata": 3, "us": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "usag": 11, "use_agg_md": 5, "user": [0, 10, 12], "user_access": [2, 9, 10], "usual": 12, "utcnow": 1, "util": 9, "uuid": [1, 3, 8], "uuid1": 8, "uuid2": 8, "valid": [3, 7], "valu": [0, 1, 3, 5, 7, 10, 11], "value_from_indexd": 11, "value_from_manifest": 11, "variabl": [0, 7, 8], "variou": 2, "verbos": [7, 8], "verif": 11, "verifi": [2, 9], "verify_manifest": 11, "verify_object_manifest": 11, "version": [3, 4, 5], "vital_statu": 7, "w": 13, "wa": 0, "wai": 10, "wait": 4, "want": [0, 3, 8], "warn": 11, "we": [3, 11], "web": 0, "what": 5, "when": [0, 3, 7, 10, 12], "where": [0, 3, 5, 11, 12], "whether": [3, 4, 5, 8, 11, 12], "which": [8, 10], "while": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "whose": 5, "within": [0, 2, 9], "without": [3, 5], "won": 5, "work": [0, 10], "workaround": 11, "worksheet": 8, "workspac": [0, 2], "wrapper": 10, "write": 11, "ws_urlstr": 13, "wskei": 13, "wss": 13, "wt": [0, 10], "x": 11, "xlsx": 8, "you": [0, 3, 8, 11], "your": 0}, "titles": ["Gen3 Auth Helper", "Gen3 File Class", "Welcome to Gen3 SDK\u2019s documentation!", "Gen3 Index Class", "Gen3 Jobs Class", "Gen3 Metadata Class", "Gen3 Object Class", "Gen3 Query Class", "Gen3 Submission Class", "Gen3 Tools", "DRS Download Tools", "Indexing Tools", "Metadata Tools", "Gen3 Workspace Storage"], "titleterms": {"": 2, "auth": 0, "class": [1, 3, 4, 5, 6, 7, 8], "document": 2, "download": [10, 11], "dr": 10, "file": 1, "gen3": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 13], "helper": 0, "index": [3, 11], "indic": 2, "ingest": 12, "job": 4, "metadata": [5, 12], "object": 6, "queri": 7, "sdk": 2, "storag": 13, "submiss": 8, "tabl": 2, "tool": [9, 10, 11, 12], "verifi": 11, "welcom": 2, "workspac": 13}}) \ No newline at end of file diff --git a/docs/_build/html/tools/indexing.html b/docs/_build/html/tools/indexing.html index b716526cf..4e8c00596 100644 --- a/docs/_build/html/tools/indexing.html +++ b/docs/_build/html/tools/indexing.html @@ -381,7 +381,7 @@

Indexing Tools
-async gen3.tools.indexing.verify_manifest.async_verify_object_manifest(commons_url, manifest_file, max_concurrent_requests=24, manifest_row_parsers={'acl': <function _get_acl_from_row>, 'authz': <function _get_authz_from_row>, 'file_name': <function _get_file_name_from_row>, 'file_size': <function _get_file_size_from_row>, 'guid': <function _get_guid_from_row>, 'md5': <function _get_md5_from_row>, 'urls': <function _get_urls_from_row>}, manifest_file_delimiter=None, output_filename='verify-manifest-errors-1713544397.4052968.log')[source]
+async gen3.tools.indexing.verify_manifest.async_verify_object_manifest(commons_url, manifest_file, max_concurrent_requests=24, manifest_row_parsers={'acl': <function _get_acl_from_row>, 'authz': <function _get_authz_from_row>, 'file_name': <function _get_file_name_from_row>, 'file_size': <function _get_file_size_from_row>, 'guid': <function _get_guid_from_row>, 'md5': <function _get_md5_from_row>, 'urls': <function _get_urls_from_row>}, manifest_file_delimiter=None, output_filename='verify-manifest-errors-1713544598.07464.log')[source]

Verify all file object records into a manifest csv

Parameters:
diff --git a/docs/_build/html/tools/metadata.html b/docs/_build/html/tools/metadata.html index 255c0519b..bbfd78ae9 100644 --- a/docs/_build/html/tools/metadata.html +++ b/docs/_build/html/tools/metadata.html @@ -102,7 +102,7 @@

Metadata Tools
-async gen3.tools.metadata.ingest_manifest.async_ingest_metadata_manifest(commons_url, manifest_file, metadata_source, auth=None, max_concurrent_requests=24, manifest_row_parsers={'guid_for_row': <function _get_guid_for_row>, 'indexed_file_object_guid': <function _query_for_associated_indexd_record_guid>}, manifest_file_delimiter=None, output_filename='ingest-metadata-manifest-errors-1713544397.8044841.log', get_guid_from_file=True, metadata_type=None)[source]
+async gen3.tools.metadata.ingest_manifest.async_ingest_metadata_manifest(commons_url, manifest_file, metadata_source, auth=None, max_concurrent_requests=24, manifest_row_parsers={'guid_for_row': <function _get_guid_for_row>, 'indexed_file_object_guid': <function _query_for_associated_indexd_record_guid>}, manifest_file_delimiter=None, output_filename='ingest-metadata-manifest-errors-1713544598.4463434.log', get_guid_from_file=True, metadata_type=None)[source]

Ingest all metadata records into a manifest csv

Parameters:
From f825585e8ef8ce6dcd7153cf2ee971a8a3163715 Mon Sep 17 00:00:00 2001 From: Alex Date: Fri, 19 Apr 2024 11:56:25 -0500 Subject: [PATCH 19/62] fix(test): test calling Gen3 --- .github/workflows/build.yaml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index bd920b417..a96aa800c 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -44,7 +44,8 @@ jobs: - name: Test build run: | cd ./dist - gen3 --help + ls + ./gen3 --help From f542b8d3730f340c019f9fe41061cc13c9d47861 Mon Sep 17 00:00:00 2001 From: Avantol13 Date: Fri, 19 Apr 2024 16:57:42 +0000 Subject: [PATCH 20/62] Apply automatic documentation changes --- docs/_build/doctrees/environment.pickle | Bin 1579883 -> 1579888 bytes docs/_build/doctrees/tools/indexing.doctree | Bin 100281 -> 100291 bytes docs/_build/doctrees/tools/metadata.doctree | Bin 35934 -> 35929 bytes docs/_build/html/searchindex.js | 2 +- docs/_build/html/tools/indexing.html | 2 +- docs/_build/html/tools/metadata.html | 2 +- 6 files changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/_build/doctrees/environment.pickle b/docs/_build/doctrees/environment.pickle index ce5256949021738b4fea1eb33ed71b9f6ac02376..6125f39ff69a5e9ed991af707c55a687018e30d1 100644 GIT binary patch delta 11256 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 delta 10943 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 diff --git a/docs/_build/doctrees/tools/indexing.doctree b/docs/_build/doctrees/tools/indexing.doctree index 741182b3307abc81ff457242f6b4830a7d3b3833..ed8f3f5f5ee6d818f2ac3af1526b37710d067a38 100644 GIT binary patch delta 184 zcmdnl&vv+YZ7^WLoGRjQu+AX_X#-4EzBaf+tskxrHk+G45 zrSbLxYsPM7#*5qk*fAbLlRDwRxRsmHe)FQH5*kh+;&1Ys{&}^Ji aJ4GXdwFjb93cJz_F{nJM{l318IaUB=i8OQo delta 161 zcmX@y&$hFltzinI2;xrv#{ z_9AP>Zf3^w+yB`y9zu~gGUiwT0FPHJ4gdfE diff --git a/docs/_build/doctrees/tools/metadata.doctree b/docs/_build/doctrees/tools/metadata.doctree index bd2ebf377dac4a78ebc4da249df41c514554bf42..9f1cf8b7cecdda4b02699c5da71a827d2bcd6a73 100644 GIT binary patch delta 154 zcmcaNgX!iBCYA=)seT(-mT0idVPs&KT&pX$`ILqOBe$uAsfC__sgZ%X@#IW>o6SL5 z$C(-HHcRO_qsVQ})Nkcrbf5g*+*|-ji(XECy87gUIl>SrNpz_x8SJrBGQ@ho8j{6EkBIW0T40`Zk*b zwT?40)^C>7b4HcioUY%>!RRsht+_d>CVdMDh_Dp0S$aA7>FQH5*kh+;i1lFV+I-8R GJ{SOo(kx&A diff --git a/docs/_build/html/searchindex.js b/docs/_build/html/searchindex.js index 335cbb187..0609ef629 100644 --- a/docs/_build/html/searchindex.js +++ b/docs/_build/html/searchindex.js @@ -1 +1 @@ -Search.setIndex({"alltitles": {"DRS Download Tools": [[10, "module-gen3.tools.download.drs_download"]], "Download": [[11, "module-gen3.tools.indexing.download_manifest"]], "Gen3 Auth Helper": [[0, "gen3-auth-helper"]], "Gen3 File Class": [[1, "gen3-file-class"]], "Gen3 Index Class": [[3, "gen3-index-class"]], "Gen3 Jobs Class": [[4, "gen3-jobs-class"]], "Gen3 Metadata Class": [[5, "gen3-metadata-class"]], "Gen3 Object Class": [[6, "gen3-object-class"]], "Gen3 Query Class": [[7, "gen3-query-class"]], "Gen3 Submission Class": [[8, "gen3-submission-class"]], "Gen3 Tools": [[9, "gen3-tools"]], "Gen3 Workspace Storage": [[13, "gen3-workspace-storage"]], "Index": [[11, "module-gen3.tools.indexing.index_manifest"]], "Indexing Tools": [[11, "indexing-tools"]], "Indices and tables": [[2, "indices-and-tables"]], "Ingest": [[12, "module-gen3.tools.metadata.ingest_manifest"]], "Metadata Tools": [[12, "metadata-tools"]], "Verify": [[11, "module-gen3.tools.indexing.verify_manifest"]], "Welcome to Gen3 SDK\u2019s documentation!": [[2, "welcome-to-gen3-sdk-s-documentation"]]}, "docnames": ["auth", "file", "index", "indexing", "jobs", "metadata", "object", "query", "submission", "tools", "tools/drs_pull", "tools/indexing", "tools/metadata", "wss"], "envversion": {"sphinx": 61, "sphinx.domains.c": 3, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 9, "sphinx.domains.index": 1, "sphinx.domains.javascript": 3, "sphinx.domains.math": 2, "sphinx.domains.python": 4, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx.ext.viewcode": 1}, "filenames": ["auth.rst", "file.rst", "index.rst", "indexing.rst", "jobs.rst", "metadata.rst", "object.rst", "query.rst", "submission.rst", "tools.rst", "tools/drs_pull.rst", "tools/indexing.rst", "tools/metadata.rst", "wss.rst"], "indexentries": {"_manager (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable._manager", false]], "access_methods (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.access_methods", false]], "acls (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.ACLS", false]], "async_create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_create", false]], "async_create_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_create_aliases", false]], "async_create_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_create_record", false]], "async_delete_alias() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_delete_alias", false]], "async_delete_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_delete_aliases", false]], "async_download_object_manifest() (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.async_download_object_manifest", false]], "async_get() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_get", false]], "async_get_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_get_aliases", false]], "async_get_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_record", false]], "async_get_records_from_checksum() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_records_from_checksum", false]], "async_get_records_on_page() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_records_on_page", false]], "async_get_with_params() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_with_params", false]], "async_ingest_metadata_manifest() (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.async_ingest_metadata_manifest", false]], "async_query_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_query_urls", false]], "async_query_urls_from_indexd() (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.async_query_urls_from_indexd", false]], "async_run_job_and_wait() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.async_run_job_and_wait", false]], "async_update() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_update", false]], "async_update_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_update_aliases", false]], "async_update_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_update_record", false]], "async_verify_object_manifest() (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.async_verify_object_manifest", false]], "auth_provider (gen3.metadata.gen3metadata attribute)": [[5, "gen3.metadata.Gen3Metadata.auth_provider", false]], "authz (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.AUTHZ", false]], "batch_create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.batch_create", false]], "cache_hosts_wts_tokens() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.cache_hosts_wts_tokens", false]], "children (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.children", false]], "column_to_use_as_guid (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.COLUMN_TO_USE_AS_GUID", false]], "commons_url (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.commons_url", false]], "copy() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.copy", false]], "create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create", false]], "create_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create_aliases", false]], "create_blank() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_blank", false]], "create_index_key_path() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create_index_key_path", false]], "create_job() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.create_job", false]], "create_new_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_new_version", false]], "create_object_list() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.create_object_list", false]], "create_program() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.create_program", false]], "create_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.create_project", false]], "create_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_record", false]], "created_time (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.created_time", false]], "curl() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.curl", false]], "current_dir (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.CURRENT_DIR", false]], "current_dir (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.CURRENT_DIR", false]], "current_dir (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.CURRENT_DIR", false]], "delete() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete", false]], "delete_alias() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_alias", false]], "delete_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_aliases", false]], "delete_all_guids() (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.delete_all_guids", false]], "delete_file() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.delete_file", false]], "delete_file_locations() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.delete_file_locations", false]], "delete_index_key_path() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_index_key_path", false]], "delete_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_node", false]], "delete_nodes() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_nodes", false]], "delete_object() (gen3.object.gen3object method)": [[6, "gen3.object.Gen3Object.delete_object", false]], "delete_program() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_program", false]], "delete_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_project", false]], "delete_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.delete_record", false]], "delete_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_record", false]], "delete_records() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_records", false]], "download() (gen3.tools.download.drs_download.downloadable method)": [[10, "gen3.tools.download.drs_download.Downloadable.download", false]], "download() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.download", false]], "download() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.download", false]], "download_files_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.download_files_in_drs_manifest", false]], "download_single() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.download_single", false]], "download_url() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.download_url", false]], "downloadable (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.Downloadable", false]], "downloadmanager (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.DownloadManager", false]], "downloadstatus (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.DownloadStatus", false]], "end_time (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.end_time", false]], "endpoint (gen3.metadata.gen3metadata attribute)": [[5, "gen3.metadata.Gen3Metadata.endpoint", false]], "export_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.export_node", false]], "export_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.export_record", false]], "file_name (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.file_name", false]], "file_name (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.file_name", false]], "file_size (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.file_size", false]], "file_size (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.file_size", false]], "gen3.tools": [[9, "module-gen3.tools", false]], "gen3.tools.download.drs_download": [[10, "module-gen3.tools.download.drs_download", false]], "gen3.tools.indexing.download_manifest": [[11, "module-gen3.tools.indexing.download_manifest", false]], "gen3.tools.indexing.index_manifest": [[11, "module-gen3.tools.indexing.index_manifest", false]], "gen3.tools.indexing.verify_manifest": [[11, "module-gen3.tools.indexing.verify_manifest", false]], "gen3.tools.metadata.ingest_manifest": [[12, "module-gen3.tools.metadata.ingest_manifest", false]], "gen3auth (class in gen3.auth)": [[0, "gen3.auth.Gen3Auth", false]], "gen3file (class in gen3.file)": [[1, "gen3.file.Gen3File", false]], "gen3index (class in gen3.index)": [[3, "gen3.index.Gen3Index", false]], "gen3jobs (class in gen3.jobs)": [[4, "gen3.jobs.Gen3Jobs", false]], "gen3metadata (class in gen3.metadata)": [[5, "gen3.metadata.Gen3Metadata", false]], "gen3object (class in gen3.object)": [[6, "gen3.object.Gen3Object", false]], "gen3query (class in gen3.query)": [[7, "gen3.query.Gen3Query", false]], "gen3submission (class in gen3.submission)": [[8, "gen3.submission.Gen3Submission", false]], "gen3wsstorage (class in gen3.wss)": [[13, "gen3.wss.Gen3WsStorage", false]], "get() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get", false]], "get() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get", false]], "get_access_token() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.get_access_token", false]], "get_access_token_from_wts() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.get_access_token_from_wts", false]], "get_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_aliases", false]], "get_all_records() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_all_records", false]], "get_dictionary_all() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_dictionary_all", false]], "get_dictionary_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_dictionary_node", false]], "get_fresh_token() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.get_fresh_token", false]], "get_graphql_schema() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_graphql_schema", false]], "get_guids_prefix() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_guids_prefix", false]], "get_index_key_paths() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_index_key_paths", false]], "get_latest_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_latest_version", false]], "get_output() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_output", false]], "get_presigned_url() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.get_presigned_url", false]], "get_programs() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_programs", false]], "get_project_dictionary() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_project_dictionary", false]], "get_project_manifest() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_project_manifest", false]], "get_projects() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_projects", false]], "get_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_record", false]], "get_record_doc() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_record_doc", false]], "get_records() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_records", false]], "get_records_on_page() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_records_on_page", false]], "get_stats() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_stats", false]], "get_status() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_status", false]], "get_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_urls", false]], "get_valid_guids() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_valid_guids", false]], "get_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_version", false]], "get_version() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_version", false]], "get_version() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_version", false]], "get_versions() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_versions", false]], "get_with_params() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_with_params", false]], "graphql_query() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.graphql_query", false]], "guid (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.GUID", false]], "guid_type_for_indexed_file_object (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.GUID_TYPE_FOR_INDEXED_FILE_OBJECT", false]], "guid_type_for_non_indexed_file_object (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.GUID_TYPE_FOR_NON_INDEXED_FILE_OBJECT", false]], "hostname (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.hostname", false]], "index_object_manifest() (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.index_object_manifest", false]], "indexd_record_page_size (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.INDEXD_RECORD_PAGE_SIZE", false]], "is_healthy() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.is_healthy", false]], "is_healthy() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.is_healthy", false]], "is_healthy() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.is_healthy", false]], "list_access_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_access_in_drs_manifest", false]], "list_drs_object() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_drs_object", false]], "list_files_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_files_in_drs_manifest", false]], "list_jobs() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.list_jobs", false]], "load() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.load", false]], "load_manifest() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.load_manifest", false]], "ls() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.ls", false]], "ls_path() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.ls_path", false]], "manifest (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.Manifest", false]], "max_concurrent_requests (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.MAX_CONCURRENT_REQUESTS", false]], "max_concurrent_requests (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.MAX_CONCURRENT_REQUESTS", false]], "max_concurrent_requests (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.MAX_CONCURRENT_REQUESTS", false]], "md5 (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.MD5", false]], "md5sum (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.md5sum", false]], "module": [[9, "module-gen3.tools", false], [10, "module-gen3.tools.download.drs_download", false], [11, "module-gen3.tools.indexing.download_manifest", false], [11, "module-gen3.tools.indexing.index_manifest", false], [11, "module-gen3.tools.indexing.verify_manifest", false], [12, "module-gen3.tools.metadata.ingest_manifest", false]], "object_id (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.object_id", false]], "object_id (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.object_id", false]], "object_type (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.object_type", false]], "open_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.open_project", false]], "pprint() (gen3.tools.download.drs_download.downloadable method)": [[10, "gen3.tools.download.drs_download.Downloadable.pprint", false]], "prev_guid (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.PREV_GUID", false]], "query() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.query", false]], "query() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.query", false]], "query() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.query", false]], "query_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.query_urls", false]], "raw_data_download() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.raw_data_download", false]], "refresh_access_token() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.refresh_access_token", false]], "resolve_objects() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.resolve_objects", false]], "rm() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.rm", false]], "rm_path() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.rm_path", false]], "size (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.SIZE", false]], "start_time (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.start_time", false]], "status (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.status", false]], "submit_file() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.submit_file", false]], "submit_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.submit_record", false]], "threadcontrol (class in gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.ThreadControl", false]], "tmp_folder (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.TMP_FOLDER", false]], "update() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.update", false]], "update_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.update_aliases", false]], "update_blank() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.update_blank", false]], "update_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.update_record", false]], "updated_time (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.updated_time", false]], "upload() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.upload", false]], "upload_file() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.upload_file", false]], "upload_file_to_guid() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.upload_file_to_guid", false]], "upload_url() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.upload_url", false]], "urls (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.URLS", false]], "user_access() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.user_access", false]]}, "objects": {"gen3": [[9, 3, 0, "-", "tools"]], "gen3.auth": [[0, 0, 1, "", "Gen3Auth"]], "gen3.auth.Gen3Auth": [[0, 1, 1, "", "curl"], [0, 1, 1, "", "get_access_token"], [0, 1, 1, "", "get_access_token_from_wts"], [0, 1, 1, "", "refresh_access_token"]], "gen3.file": [[1, 0, 1, "", "Gen3File"]], "gen3.file.Gen3File": [[1, 1, 1, "", "delete_file"], [1, 1, 1, "", "delete_file_locations"], [1, 1, 1, "", "download_single"], [1, 1, 1, "", "get_presigned_url"], [1, 1, 1, "", "upload_file"], [1, 1, 1, "", "upload_file_to_guid"]], "gen3.index": [[3, 0, 1, "", "Gen3Index"]], "gen3.index.Gen3Index": [[3, 1, 1, "", "async_create_record"], [3, 1, 1, "", "async_get_record"], [3, 1, 1, "", "async_get_records_from_checksum"], [3, 1, 1, "", "async_get_records_on_page"], [3, 1, 1, "", "async_get_with_params"], [3, 1, 1, "", "async_query_urls"], [3, 1, 1, "", "async_update_record"], [3, 1, 1, "", "create_blank"], [3, 1, 1, "", "create_new_version"], [3, 1, 1, "", "create_record"], [3, 1, 1, "", "delete_record"], [3, 1, 1, "", "get"], [3, 1, 1, "", "get_all_records"], [3, 1, 1, "", "get_guids_prefix"], [3, 1, 1, "", "get_latest_version"], [3, 1, 1, "", "get_record"], [3, 1, 1, "", "get_record_doc"], [3, 1, 1, "", "get_records"], [3, 1, 1, "", "get_records_on_page"], [3, 1, 1, "", "get_stats"], [3, 1, 1, "", "get_urls"], [3, 1, 1, "", "get_valid_guids"], [3, 1, 1, "", "get_version"], [3, 1, 1, "", "get_versions"], [3, 1, 1, "", "get_with_params"], [3, 1, 1, "", "is_healthy"], [3, 1, 1, "", "query_urls"], [3, 1, 1, "", "update_blank"], [3, 1, 1, "", "update_record"]], "gen3.jobs": [[4, 0, 1, "", "Gen3Jobs"]], "gen3.jobs.Gen3Jobs": [[4, 1, 1, "", "async_run_job_and_wait"], [4, 1, 1, "", "create_job"], [4, 1, 1, "", "get_output"], [4, 1, 1, "", "get_status"], [4, 1, 1, "", "get_version"], [4, 1, 1, "", "is_healthy"], [4, 1, 1, "", "list_jobs"]], "gen3.metadata": [[5, 0, 1, "", "Gen3Metadata"]], "gen3.metadata.Gen3Metadata": [[5, 1, 1, "", "async_create"], [5, 1, 1, "", "async_create_aliases"], [5, 1, 1, "", "async_delete_alias"], [5, 1, 1, "", "async_delete_aliases"], [5, 1, 1, "", "async_get"], [5, 1, 1, "", "async_get_aliases"], [5, 1, 1, "", "async_update"], [5, 1, 1, "", "async_update_aliases"], [5, 2, 1, "", "auth_provider"], [5, 1, 1, "", "batch_create"], [5, 1, 1, "", "create"], [5, 1, 1, "", "create_aliases"], [5, 1, 1, "", "create_index_key_path"], [5, 1, 1, "", "delete"], [5, 1, 1, "", "delete_alias"], [5, 1, 1, "", "delete_aliases"], [5, 1, 1, "", "delete_index_key_path"], [5, 2, 1, "", "endpoint"], [5, 1, 1, "", "get"], [5, 1, 1, "", "get_aliases"], [5, 1, 1, "", "get_index_key_paths"], [5, 1, 1, "", "get_version"], [5, 1, 1, "", "is_healthy"], [5, 1, 1, "", "query"], [5, 1, 1, "", "update"], [5, 1, 1, "", "update_aliases"]], "gen3.object": [[6, 0, 1, "", "Gen3Object"]], "gen3.object.Gen3Object": [[6, 1, 1, "", "delete_object"]], "gen3.query": [[7, 0, 1, "", "Gen3Query"]], "gen3.query.Gen3Query": [[7, 1, 1, "", "graphql_query"], [7, 1, 1, "", "query"], [7, 1, 1, "", "raw_data_download"]], "gen3.submission": [[8, 0, 1, "", "Gen3Submission"]], "gen3.submission.Gen3Submission": [[8, 1, 1, "", "create_program"], [8, 1, 1, "", "create_project"], [8, 1, 1, "", "delete_node"], [8, 1, 1, "", "delete_nodes"], [8, 1, 1, "", "delete_program"], [8, 1, 1, "", "delete_project"], [8, 1, 1, "", "delete_record"], [8, 1, 1, "", "delete_records"], [8, 1, 1, "", "export_node"], [8, 1, 1, "", "export_record"], [8, 1, 1, "", "get_dictionary_all"], [8, 1, 1, "", "get_dictionary_node"], [8, 1, 1, "", "get_graphql_schema"], [8, 1, 1, "", "get_programs"], [8, 1, 1, "", "get_project_dictionary"], [8, 1, 1, "", "get_project_manifest"], [8, 1, 1, "", "get_projects"], [8, 1, 1, "", "open_project"], [8, 1, 1, "", "query"], [8, 1, 1, "", "submit_file"], [8, 1, 1, "", "submit_record"]], "gen3.tools.download": [[10, 3, 0, "-", "drs_download"]], "gen3.tools.download.drs_download": [[10, 0, 1, "", "DownloadManager"], [10, 0, 1, "", "DownloadStatus"], [10, 0, 1, "", "Downloadable"], [10, 0, 1, "", "Manifest"], [10, 4, 1, "", "download_files_in_drs_manifest"], [10, 4, 1, "", "list_access_in_drs_manifest"], [10, 4, 1, "", "list_drs_object"], [10, 4, 1, "", "list_files_in_drs_manifest"]], "gen3.tools.download.drs_download.DownloadManager": [[10, 1, 1, "", "cache_hosts_wts_tokens"], [10, 1, 1, "", "download"], [10, 1, 1, "", "get_fresh_token"], [10, 1, 1, "", "resolve_objects"], [10, 1, 1, "", "user_access"]], "gen3.tools.download.drs_download.DownloadStatus": [[10, 2, 1, "", "end_time"], [10, 2, 1, "", "start_time"], [10, 2, 1, "", "status"]], "gen3.tools.download.drs_download.Downloadable": [[10, 2, 1, "", "_manager"], [10, 2, 1, "", "access_methods"], [10, 2, 1, "", "children"], [10, 2, 1, "", "created_time"], [10, 1, 1, "", "download"], [10, 2, 1, "", "file_name"], [10, 2, 1, "", "file_size"], [10, 2, 1, "", "hostname"], [10, 2, 1, "", "object_id"], [10, 2, 1, "", "object_type"], [10, 1, 1, "", "pprint"], [10, 2, 1, "", "updated_time"]], "gen3.tools.download.drs_download.Manifest": [[10, 2, 1, "", "commons_url"], [10, 1, 1, "", "create_object_list"], [10, 2, 1, "", "file_name"], [10, 2, 1, "", "file_size"], [10, 1, 1, "", "load"], [10, 1, 1, "", "load_manifest"], [10, 2, 1, "", "md5sum"], [10, 2, 1, "", "object_id"]], "gen3.tools.indexing": [[11, 3, 0, "-", "download_manifest"], [11, 3, 0, "-", "index_manifest"], [11, 3, 0, "-", "verify_manifest"]], "gen3.tools.indexing.download_manifest": [[11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "INDEXD_RECORD_PAGE_SIZE"], [11, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [11, 2, 1, "", "TMP_FOLDER"], [11, 4, 1, "", "async_download_object_manifest"]], "gen3.tools.indexing.index_manifest": [[11, 2, 1, "", "ACLS"], [11, 2, 1, "", "AUTHZ"], [11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "GUID"], [11, 2, 1, "", "MD5"], [11, 2, 1, "", "PREV_GUID"], [11, 2, 1, "", "SIZE"], [11, 0, 1, "", "ThreadControl"], [11, 2, 1, "", "URLS"], [11, 4, 1, "", "delete_all_guids"], [11, 4, 1, "", "index_object_manifest"]], "gen3.tools.indexing.verify_manifest": [[11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [11, 4, 1, "", "async_verify_object_manifest"]], "gen3.tools.metadata": [[12, 3, 0, "-", "ingest_manifest"]], "gen3.tools.metadata.ingest_manifest": [[12, 2, 1, "", "COLUMN_TO_USE_AS_GUID"], [12, 2, 1, "", "GUID_TYPE_FOR_INDEXED_FILE_OBJECT"], [12, 2, 1, "", "GUID_TYPE_FOR_NON_INDEXED_FILE_OBJECT"], [12, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [12, 4, 1, "", "async_ingest_metadata_manifest"], [12, 4, 1, "", "async_query_urls_from_indexd"]], "gen3.wss": [[13, 0, 1, "", "Gen3WsStorage"]], "gen3.wss.Gen3WsStorage": [[13, 1, 1, "", "copy"], [13, 1, 1, "", "download"], [13, 1, 1, "", "download_url"], [13, 1, 1, "", "ls"], [13, 1, 1, "", "ls_path"], [13, 1, 1, "", "rm"], [13, 1, 1, "", "rm_path"], [13, 1, 1, "", "upload"], [13, 1, 1, "", "upload_url"]]}, "objnames": {"0": ["py", "class", "Python class"], "1": ["py", "method", "Python method"], "2": ["py", "attribute", "Python attribute"], "3": ["py", "module", "Python module"], "4": ["py", "function", "Python function"]}, "objtypes": {"0": "py:class", "1": "py:method", "2": "py:attribute", "3": "py:module", "4": "py:function"}, "terms": {"": [1, 4, 8, 10, 11], "0": [5, 7, 8, 11], "0046513": [], "064572": [], "07464": 11, "0a80fada010c": 11, "0a80fada096c": 11, "0a80fada097c": 11, "0a80fada098c": 11, "0a80fada099c": 11, "1": [4, 5, 8, 10, 11], "10": [5, 7, 11], "100": [8, 11], "11e9": 11, "1713542306": [], "1713542765": [], "1713543033": [], "1713543225": [], "1713543506": [], "1713543956": [], "1713544131": [], "1713544132": [], "1713544397": [], "1713544598": [11, 12], "1771936": [], "1913438": [], "2": [5, 11], "24": [11, 12], "255e396f": 11, "2877355": [], "2995": [], "3": [5, 11], "30": 8, "33": 5, "333": 5, "343434344": 11, "363455714": 11, "4": [5, 11], "4017086": [], "4052968": [], "4463434": 12, "450c": 11, "4649727": [], "4714": 8, "473d83400bc1bc9dc635e334fadd433c": 11, "473d83400bc1bc9dc635e334faddd33c": 11, "473d83400bc1bc9dc635e334fadde33c": 11, "473d83400bc1bc9dc635e334faddf33c": 11, "5": [0, 5], "50": 7, "543434443": 11, "5669184": [], "5899982": [], "6692646": [], "6f90": 8, "760149": [], "7d3d8d2083b4": 11, "8044841": [], "8375325": [], "8420": 8, "8882551": [], "93d9af72": 11, "9a07": 11, "A": [1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "AND": 5, "Be": 1, "But": 5, "By": 11, "For": [1, 5, 6, 7, 8, 9, 11], "IF": 11, "If": [0, 1, 7, 11, 12], "In": 10, "It": 10, "NOT": 12, "OR": 5, "One": 7, "Such": 9, "THE": 11, "That": 3, "The": [0, 1, 2, 3, 5, 8, 10, 11], "There": 11, "These": 9, "To": 11, "Will": [4, 7, 10], "_get_acl_from_row": 11, "_get_authz_from_row": 11, "_get_file_name_from_row": 11, "_get_file_size_from_row": 11, "_get_guid_for_row": 12, "_get_guid_from_row": 11, "_get_md5_from_row": 11, "_get_urls_from_row": 11, "_guid_typ": 12, "_manag": [2, 9, 10], "_query_for_associated_indexd_record_guid": 12, "_ssl": [3, 4, 5], "a5c6": 11, "ab167e49d25b488939b1ede42752458b": 3, "about": [2, 3], "abov": 11, "access": [0, 1, 3, 7, 10], "access_method": [2, 9, 10], "access_token": 0, "accesstoken": 0, "acl": [2, 3, 9, 11], "across": 11, "act": 0, "action": [9, 11], "actual": 11, "ad": 3, "add": [3, 5], "addit": [3, 5, 10, 11], "admin": [5, 11], "admin_endpoint_suffix": 5, "after": 10, "against": [3, 7, 8, 11, 12], "algorithm": 3, "alia": [3, 5], "alias": 5, "aliv": 7, "all": [1, 3, 4, 5, 6, 7, 8, 10, 11, 12], "allow": [0, 6, 8, 10, 11, 12], "allowed_data_upload_bucket": 1, "along": 2, "alreadi": 9, "also": 1, "altern": [5, 11], "alwai": 5, "ammount": 12, "amount": [1, 9], "an": [0, 3, 6, 8, 10, 11], "ani": [0, 5, 10, 11], "anoth": 5, "api": [0, 5, 8, 11], "api_kei": 11, "appli": 7, "appropri": 13, "ar": [5, 7, 8, 9, 10, 11], "arbitrari": 0, "argument": [0, 13], "arrai": 8, "asc": 7, "assign": 9, "assist": 10, "associ": [3, 5], "assum": 11, "async": [3, 4, 5, 9, 11, 12], "async_cr": [2, 5], "async_create_alias": [2, 5], "async_create_record": [2, 3], "async_delete_alia": [2, 5], "async_delete_alias": [2, 5], "async_download_object_manifest": [2, 9, 11], "async_get": [2, 5], "async_get_alias": [2, 5], "async_get_record": [2, 3], "async_get_records_from_checksum": [2, 3], "async_get_records_on_pag": [2, 3], "async_get_with_param": [2, 3], "async_ingest_metadata_manifest": [2, 9, 12], "async_query_url": [2, 3], "async_query_urls_from_indexd": [2, 9, 12], "async_run_job_and_wait": [2, 4], "async_upd": [2, 5], "async_update_alias": [2, 5], "async_update_record": [2, 3], "async_verify_object_manifest": [2, 9, 11], "asynchron": [3, 4, 5], "asyncio": [11, 12], "asyncron": 5, "attach": [3, 5], "attempt": 11, "attribut": [10, 11], "auth": [1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "auth_provid": [1, 2, 3, 4, 5, 6, 7, 8, 13], "authbas": 0, "authent": 0, "author": 1, "authz": [0, 1, 2, 3, 9, 10, 11], "auto": [0, 2], "automat": 0, "avail": [1, 2, 10, 11], "az": 1, "b": [5, 11], "b0f1": 11, "bar": 10, "base": [0, 1, 3, 4, 5, 6, 7, 8, 9, 11, 13], "baseid": 3, "basic": [3, 11, 12], "batch_creat": [2, 5], "batch_siz": 8, "behalf": 0, "behavior": 11, "being": 3, "belong": 8, "below": 11, "blank": 3, "blob": [5, 7], "bodi": 3, "bool": [4, 5, 8, 10, 11, 12], "boolean": 3, "bownload": 10, "broad": 9, "broken": 9, "bucket": [1, 6], "bundl": 10, "byte": 10, "c": [5, 11], "cach": 10, "cache_hosts_wts_token": [2, 9, 10], "call": [10, 13], "can": [0, 3, 4, 8, 11, 12], "capabl": 9, "case": [0, 10], "categori": 9, "ccle": 8, "ccle_one_record": 8, "ccle_sample_nod": 8, "cdi": 7, "chang": [3, 11], "checksum": [3, 10], "checksum_typ": 3, "child": 10, "children": [2, 9, 10], "chunk_siz": 8, "class": [0, 2, 10, 11, 13], "cli": 10, "client": [0, 3], "client_credenti": 0, "client_id": 0, "client_scop": 0, "client_secret": 0, "code": [2, 8], "column": [11, 12], "column_to_use_as_guid": [2, 9, 12], "columna": 11, "columnb": 11, "columnc": 11, "com": 7, "comma": 11, "command": [10, 11], "common": [0, 1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13], "commons_url": [2, 9, 10, 11, 12], "complet": [4, 11], "complex": 7, "concat": 11, "concurr": [11, 12], "configur": 1, "connect": 12, "consist": 3, "constructor": 0, "contain": [0, 2, 5, 8, 9, 10, 11, 12], "content": [3, 13], "content_created_d": 3, "content_updated_d": 3, "continu": 10, "control": 3, "conveni": 10, "copi": [2, 13], "coroutin": 11, "correspond": 3, "count": 3, "crdc": 0, "creat": [2, 3, 4, 5, 6, 8, 10, 11], "create_alias": [2, 5], "create_blank": [2, 3], "create_index_key_path": [2, 5], "create_job": [2, 4], "create_new_vers": [2, 3], "create_object_list": [2, 9, 10], "create_program": [2, 8], "create_project": [2, 8], "create_record": [2, 3], "created_tim": [2, 9, 10], "creation": [3, 11], "cred": 3, "credenti": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "csv": [8, 11, 12], "curl": [0, 2], "current": [6, 8, 10], "current_dir": [2, 9, 11], "custom": 11, "d": 5, "d70b41b9": 8, "data": [0, 1, 3, 5, 7, 8, 10, 11], "data_spreadsheet": 8, "data_typ": 7, "data_upload_bucket": 1, "dataa": 11, "datab": 11, "databas": 5, "datacommon": 0, "datafil": 10, "datamanag": 10, "date": 3, "datetim": [1, 3, 10], "dbgap": 12, "dcf": 8, "def": 11, "default": [0, 1, 3, 7, 8, 11, 12], "defin": [5, 8, 10], "delai": 4, "delet": [0, 1, 2, 3, 5, 6, 8, 10, 11], "delete_alia": [2, 5], "delete_alias": [2, 5], "delete_all_guid": [2, 9, 11], "delete_fil": [1, 2], "delete_file_loc": [1, 2, 6], "delete_index_key_path": [2, 5], "delete_nod": [2, 8], "delete_object": [2, 6], "delete_program": [2, 8], "delete_project": [2, 8], "delete_record": [2, 3, 8], "delete_unpacked_packag": 10, "delimet": [11, 12], "delimit": 11, "demograph": 8, "deprec": 1, "descript": [3, 5], "desir": 11, "dest_path": 13, "dest_urlstr": 13, "dest_w": 13, "dest_wskei": 13, "detail": [2, 7, 10], "determin": [10, 11, 12], "dev": 11, "dict": [3, 4, 5, 10, 11, 12], "dictionari": [3, 4, 5, 7, 8], "did": 3, "differ": 5, "direct": 0, "directori": [10, 11], "disabl": 10, "discoveri": 10, "disk": 13, "dispatch": 4, "dist_resolut": 3, "distribut": 3, "doc": [7, 10], "docstr": 2, "document": [1, 3], "doe": [0, 12], "domain": [11, 12], "done": 4, "download": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 13], "download_files_in_drs_manifest": [2, 9, 10], "download_list": 10, "download_manifest": 11, "download_singl": [1, 2], "download_url": [2, 13], "downloadmanag": [2, 9, 10], "downloadstatu": [2, 9, 10], "dr": [2, 9], "drs_download": 10, "drs_hostnam": 10, "drsdownload": 10, "drsobjecttyp": 10, "e": [5, 10], "e043ab8b77b9": 8, "each": [3, 8, 10, 11], "effici": 9, "eg": 3, "either": 8, "elasticsearch": 7, "els": [0, 12], "elsewher": 12, "empti": [8, 11], "enabl": 11, "end": [5, 10], "end_tim": [2, 9, 10], "endpoint": [0, 1, 2, 3, 4, 5, 7, 8, 13], "entir": 8, "entri": [3, 11], "env": 0, "environ": 0, "equal": 7, "error": [10, 11, 12], "error_nam": 11, "etc": 8, "even": 11, "everi": [9, 11], "everyth": 11, "ex": [0, 11, 12], "exampl": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "exclud": 3, "execut": [7, 8, 11], "exist": [1, 3, 5, 6, 9, 12], "expect": [5, 9, 11], "experi": 8, "expir": [0, 1], "expires_in": 1, "export": [8, 10], "export_nod": [2, 8], "export_record": [2, 8], "f1f8": 11, "factori": 10, "fail": [8, 10], "fals": [3, 5, 6, 10, 11], "featur": [1, 6], "fenc": [0, 1], "fetch": 0, "field": [3, 5, 7, 11, 12], "fieldnam": 11, "file": [0, 2, 3, 4, 8, 9, 10, 11, 12, 13], "file_nam": [1, 2, 3, 9, 10, 11], "file_s": [2, 9, 10, 11], "file_st": 3, "fileformat": 8, "filenam": [0, 8, 10, 11, 12], "files": 10, "fill": 12, "filter": [5, 7], "filter_object": 7, "first": [7, 8], "flag": 11, "folder": 11, "follow": [0, 11], "forc": 11, "force_metadata_columns_even_if_empti": 11, "form": 13, "format": [3, 5, 8, 11], "from": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13], "func_to_parse_row": [11, 12], "function": [2, 3, 4, 5, 9, 10, 11, 12], "g": 10, "gen3": [10, 11, 12], "gen3_api_kei": 0, "gen3_oidc_client_creds_secret": 0, "gen3auth": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "gen3fil": [1, 2], "gen3index": [2, 3], "gen3job": [2, 4, 10], "gen3metadata": [2, 5], "gen3object": [2, 6], "gen3queri": [2, 7], "gen3submiss": [2, 8], "gen3wsstorag": [2, 13], "gener": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 13], "get": [0, 1, 2, 3, 4, 5, 8, 10, 11, 12, 13], "get_access_token": [0, 2], "get_access_token_from_wt": [0, 2], "get_alias": [2, 5], "get_all_record": [2, 3], "get_dictionary_al": [2, 8], "get_dictionary_nod": [2, 8], "get_fresh_token": [2, 9, 10], "get_graphql_schema": [2, 8], "get_guid_from_fil": 12, "get_guids_prefix": [2, 3], "get_index_key_path": [2, 5], "get_latest_vers": [2, 3], "get_output": [2, 4], "get_presigned_url": [1, 2], "get_program": [2, 8], "get_project": [2, 8], "get_project_dictionari": [2, 8], "get_project_manifest": [2, 8], "get_record": [2, 3], "get_record_doc": [2, 3], "get_records_on_pag": [2, 3], "get_stat": [2, 3], "get_statu": [2, 4], "get_url": [2, 3], "get_valid_guid": [2, 3], "get_vers": [2, 3, 4, 5], "get_with_param": [2, 3], "giangb": 11, "github": [2, 7], "give": 1, "given": [0, 3, 4, 5, 8, 10, 12, 13], "global": [4, 5], "good": 3, "grant": 0, "graph": 8, "graphql": [7, 8], "graphql_queri": [2, 7], "group": 3, "guid": [1, 2, 3, 5, 6, 9, 11, 12], "guid_exampl": 11, "guid_for_row": 12, "guid_from_fil": 12, "guid_type_for_indexed_file_object": [2, 9, 12], "guid_type_for_non_indexed_file_object": [2, 9, 12], "guppi": 7, "ha": [0, 11], "handl": [3, 10], "hardcod": 0, "has_vers": 3, "hash": [3, 11], "hash_typ": 3, "have": [5, 11], "header": 11, "healthi": [3, 4, 5], "help": 11, "helper": 2, "hit": 11, "host": 10, "hostnam": [2, 9, 10], "how": [8, 11], "howto": 10, "http": [0, 7, 11, 12], "i": [0, 1, 2, 3, 4, 5, 8, 10, 11, 12], "id": [0, 1, 3, 5, 10, 11], "idea": 3, "identifi": [3, 5, 9, 11], "idp": 0, "illustr": 11, "immut": 3, "implement": 0, "implic": 11, "import": 11, "includ": [0, 3], "indent": 10, "index": [0, 2, 5, 9], "index_manifest": 11, "index_object_manifest": [2, 9, 11], "indexd": [1, 3, 6, 10, 11, 12], "indexd_field": [11, 12], "indexd_record_page_s": [2, 9, 11], "indexed_file_object_guid": 12, "indic": [0, 11], "infil": 10, "info": [3, 11], "inform": [2, 3, 10], "ingest": [2, 9], "ingest_manifest": 12, "initi": [0, 10], "input": [4, 10, 11], "input_manifest": 11, "instal": [0, 2, 11], "instanc": [1, 3, 6, 7, 8, 9, 10], "instead": [1, 7, 11], "int": [1, 3, 5, 7, 8, 10, 11, 12], "integ": [1, 3, 8], "intend": 0, "interact": [1, 3, 4, 5, 6, 8, 13], "interest": 10, "interpret": 0, "introspect": 8, "involv": 9, "is_healthi": [2, 3, 4, 5], "is_indexed_file_object": 12, "isn": 1, "issu": 0, "its": [1, 3], "job": 2, "job_id": 4, "job_input": 4, "job_nam": 4, "json": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "just": [5, 11, 12], "jwt": 0, "kei": [0, 3, 5, 13], "know": 11, "known": 10, "kwarg": [3, 4, 5], "l": [2, 13], "larg": 9, "last": 10, "latest": 3, "least": 3, "level": 6, "librari": 11, "like": [3, 5, 9, 11, 12], "limit": [1, 3, 5, 12], "linear": 4, "linux": 10, "list": [0, 1, 3, 4, 5, 7, 8, 10, 11, 13], "list_access_in_drs_manifest": [2, 9, 10], "list_drs_object": [2, 9, 10], "list_files_in_drs_manifest": [2, 9, 10], "list_job": [2, 4], "live": [11, 12], "load": [2, 9, 10], "load_manifest": [2, 9, 10], "local": [0, 13], "locat": [1, 6], "lock": 12, "log": [8, 10, 11, 12], "logic": [5, 12], "loop": 11, "ls_path": [2, 13], "maco": 11, "made": 3, "mai": [0, 9, 11], "main": 10, "make": [9, 11], "manag": [1, 5, 10], "mani": [8, 11], "manifest": [2, 8, 9, 10, 11, 12], "manifest_1": 10, "manifest_fil": [11, 12], "manifest_file_delimit": [11, 12], "manifest_row_pars": [11, 12], "map": [0, 11], "mark": 8, "master": 7, "match": [3, 5, 12], "max": 5, "max_concurrent_request": [2, 9, 11, 12], "max_presigned_url_ttl": 1, "max_tri": 8, "maximum": [11, 12], "md": [5, 7, 10, 12], "md5": [2, 3, 9, 11], "md5_hash": 11, "md5sum": [2, 9, 10], "mean": 8, "mechan": 3, "merg": 5, "metadata": [2, 3, 6, 9, 11], "metadata_list": 5, "metadata_sourc": 12, "metadata_typ": 12, "metdata": 12, "method": [1, 7, 10], "minimum": 10, "minut": 0, "mode": 7, "modul": [2, 10, 11], "more": [2, 5, 7, 9, 10], "most": 9, "mostli": 2, "multipl": [8, 11], "must": [1, 5], "my_common": 10, "my_credenti": 10, "my_field": 7, "my_index": 7, "my_program": 7, "my_project": 7, "name": [3, 4, 8, 10, 11, 12, 13], "namespac": [0, 12], "necessari": [3, 5], "need": [3, 7, 10, 11], "nest": 5, "net": 11, "never": 0, "new": [0, 3], "node": 8, "node_nam": 8, "node_typ": 8, "none": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "note": [0, 3, 11, 12], "noth": [3, 6], "now": [1, 8], "num": 5, "num_process": 11, "num_total_fil": 11, "number": [3, 7, 8, 11, 12], "o": 0, "object": [1, 2, 3, 4, 5, 7, 8, 9, 10, 11, 13], "object_id": [1, 2, 9, 10], "object_list": 10, "object_typ": [2, 9, 10], "objectid": 10, "obtain": [0, 10], "occur": 10, "off": 5, "offset": [5, 7], "oidc": 0, "old": 3, "one": [3, 5, 10, 11], "onli": [3, 5, 7, 8, 10, 11], "open": [8, 10, 11], "open_project": [2, 8], "openid": 0, "opt": 0, "option": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11], "order": [0, 8], "ordered_node_list": 8, "org": 10, "otherwis": 10, "output": [4, 5, 11, 12], "output_dir": 10, "output_filenam": [11, 12], "overrid": [0, 11, 12], "overwrit": 5, "own": 0, "packag": 10, "page": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 13], "pagin": 3, "parallel": 11, "param": [3, 5, 8, 10], "paramet": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "pars": [10, 11, 12, 13], "parser": [11, 12], "particular": 0, "pass": [0, 7, 8, 10], "password": [11, 12], "path": [0, 1, 5, 10, 11, 13], "path_to_manifest": 11, "pattern": [3, 12], "pdcdatastor": 11, "pend": 10, "per": [11, 12], "peregrin": 8, "permiss": 10, "persist": 9, "phs0001": 11, "phs0002": 11, "pick": 1, "pla": 11, "place": 11, "planx": 11, "point": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "popul": [10, 12], "posit": [1, 7], "possibl": 10, "post": [0, 11], "pprint": [2, 9, 10], "prefix": 3, "presign": 1, "pretti": 10, "prev_guid": [2, 9, 11], "previou": [3, 11], "previous": 4, "print": [8, 10], "process": 11, "processed_fil": 11, "profil": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "program": [8, 11], "progress": [8, 10], "project": [8, 11], "project_id": [7, 8], "protocol": 1, "provid": [0, 1, 3, 5, 7, 8, 12], "public": [3, 5], "put": 0, "py": 11, "python": [2, 9, 11], "python3": 11, "python_subprocess_command": 11, "queri": [1, 2, 3, 5, 8, 11, 12], "query_str": 7, "query_txt": [7, 8], "query_url": [2, 3], "quickstart": 2, "rather": 0, "raw": [7, 11], "raw_data_download": [2, 7], "rbac": 3, "read": [3, 5, 11], "readm": 2, "reason": 10, "record": [1, 3, 5, 7, 8, 11, 12], "refresh": [0, 10], "refresh_access_token": [0, 2], "refresh_fil": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "refresh_token": 0, "regist": 8, "regular": 7, "relat": 9, "remov": [1, 6, 11, 13], "replac": 11, "replace_url": 11, "repo": 2, "repres": [3, 5, 10], "represent": [1, 3], "request": [0, 1, 3, 5, 8, 11, 12], "requir": 10, "resolv": 10, "resolve_object": [2, 9, 10], "respect": 7, "respons": [0, 1, 3, 4, 5], "result": [1, 8, 10, 11], "retri": 8, "retriev": [1, 8, 10, 12], "return": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11], "return_full_metadata": 5, "rev": 3, "revers": 8, "revis": 3, "right": 1, "rm": [2, 13], "rm_path": [2, 13], "root": [11, 12], "row": [7, 8, 11, 12], "row_offset": 8, "rtype": 3, "run": [8, 11], "s3": [1, 10, 11], "safe": 11, "same": [5, 11, 13], "sampl": [8, 10], "sandbox": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "save": 10, "save_directori": 10, "schema": 8, "scope": [0, 1], "screen": 8, "script": 2, "search": [0, 2, 3], "second": [1, 4], "secret": 0, "see": [7, 10, 11], "self": 10, "semaphon": 12, "semaphor": 12, "separ": [0, 11], "server": 10, "servic": [1, 3, 4, 5, 6, 8, 11, 12, 13], "service_loc": [3, 4, 5], "session": 11, "set": [0, 1, 5, 10], "setup": 2, "sheepdog": 8, "should": [0, 8, 11], "show": 10, "show_progress": 10, "shown": 11, "sign": 1, "signpost": 3, "similar": 10, "simpl": 3, "simpli": 11, "sinc": 3, "singl": [1, 5, 8], "size": [2, 3, 9, 10, 11], "skip": 8, "sleep": 4, "so": 11, "some": [0, 2], "someth": 11, "sort": 7, "sort_field": 7, "sort_object": 7, "sourc": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "space": [0, 11], "specif": [5, 8, 11, 12], "specifi": [0, 1, 3, 11, 13], "spreadsheet": 8, "src_path": 13, "src_urlstr": 13, "src_w": 13, "src_wskei": 13, "ssl": [3, 4, 5], "start": [3, 4, 7, 8, 10], "start_tim": [2, 9, 10], "static": 10, "statu": [2, 4, 9, 10], "storag": [1, 2, 6], "store": [1, 3, 10], "str": [0, 1, 3, 4, 5, 7, 8, 10, 11, 12], "string": [0, 3, 5, 11, 13], "strip": 11, "sub": 8, "subject": [7, 8], "submiss": 2, "submit": [8, 11], "submit_additional_metadata_column": 11, "submit_fil": [2, 8], "submit_record": [2, 8], "submitter_id": 7, "success": 10, "successfulli": 10, "suffici": 3, "suppli": 3, "support": [0, 1, 5, 8, 11], "sure": 1, "synchron": 11, "syntax": 7, "system": [6, 7, 8, 9], "t": [1, 5, 11], "tab": 11, "task": 9, "temporari": 11, "test": 11, "test1": 11, "test2": 11, "test3": 11, "test4": 11, "test5": 11, "text": [1, 7, 8], "than": [0, 5], "thei": [0, 10], "them": [10, 11], "thi": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "those": 11, "thread": 11, "thread_num": 11, "threadcontrol": [2, 9, 11], "through": [8, 11], "tier": 7, "time": [1, 3, 8, 10, 11], "timestamp": 10, "tmp_folder": [2, 9, 11], "token": [0, 10], "tool": 2, "total": 11, "treat": [1, 5], "tree": 10, "true": [3, 4, 5, 6, 7, 8, 10, 11, 12], "try": 0, "tsv": [8, 11, 12], "tupl": [0, 3, 11, 12], "type": [1, 3, 4, 5, 7, 8, 10, 11, 12], "typic": 10, "uc": 7, "unaccess": 7, "under": [0, 8, 13], "uniqu": [1, 5], "unknown": 10, "unpack": 10, "unpack_packag": 10, "until": [4, 10], "up": [5, 9], "updat": [2, 3, 5, 10, 11], "update_alias": [2, 5], "update_blank": [2, 3], "update_record": [2, 3], "updated_tim": [2, 9, 10], "upload": [1, 2, 3, 8, 13], "upload_fil": [1, 2], "upload_file_to_guid": [1, 2], "upload_url": [2, 13], "url": [1, 2, 3, 9, 10, 11, 12, 13], "urls_metadata": 3, "us": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "usag": 11, "use_agg_md": 5, "user": [0, 10, 12], "user_access": [2, 9, 10], "usual": 12, "utcnow": 1, "util": 9, "uuid": [1, 3, 8], "uuid1": 8, "uuid2": 8, "valid": [3, 7], "valu": [0, 1, 3, 5, 7, 10, 11], "value_from_indexd": 11, "value_from_manifest": 11, "variabl": [0, 7, 8], "variou": 2, "verbos": [7, 8], "verif": 11, "verifi": [2, 9], "verify_manifest": 11, "verify_object_manifest": 11, "version": [3, 4, 5], "vital_statu": 7, "w": 13, "wa": 0, "wai": 10, "wait": 4, "want": [0, 3, 8], "warn": 11, "we": [3, 11], "web": 0, "what": 5, "when": [0, 3, 7, 10, 12], "where": [0, 3, 5, 11, 12], "whether": [3, 4, 5, 8, 11, 12], "which": [8, 10], "while": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "whose": 5, "within": [0, 2, 9], "without": [3, 5], "won": 5, "work": [0, 10], "workaround": 11, "worksheet": 8, "workspac": [0, 2], "wrapper": 10, "write": 11, "ws_urlstr": 13, "wskei": 13, "wss": 13, "wt": [0, 10], "x": 11, "xlsx": 8, "you": [0, 3, 8, 11], "your": 0}, "titles": ["Gen3 Auth Helper", "Gen3 File Class", "Welcome to Gen3 SDK\u2019s documentation!", "Gen3 Index Class", "Gen3 Jobs Class", "Gen3 Metadata Class", "Gen3 Object Class", "Gen3 Query Class", "Gen3 Submission Class", "Gen3 Tools", "DRS Download Tools", "Indexing Tools", "Metadata Tools", "Gen3 Workspace Storage"], "titleterms": {"": 2, "auth": 0, "class": [1, 3, 4, 5, 6, 7, 8], "document": 2, "download": [10, 11], "dr": 10, "file": 1, "gen3": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 13], "helper": 0, "index": [3, 11], "indic": 2, "ingest": 12, "job": 4, "metadata": [5, 12], "object": 6, "queri": 7, "sdk": 2, "storag": 13, "submiss": 8, "tabl": 2, "tool": [9, 10, 11, 12], "verifi": 11, "welcom": 2, "workspac": 13}}) \ No newline at end of file +Search.setIndex({"alltitles": {"DRS Download Tools": [[10, "module-gen3.tools.download.drs_download"]], "Download": [[11, "module-gen3.tools.indexing.download_manifest"]], "Gen3 Auth Helper": [[0, "gen3-auth-helper"]], "Gen3 File Class": [[1, "gen3-file-class"]], "Gen3 Index Class": [[3, "gen3-index-class"]], "Gen3 Jobs Class": [[4, "gen3-jobs-class"]], "Gen3 Metadata Class": [[5, "gen3-metadata-class"]], "Gen3 Object Class": [[6, "gen3-object-class"]], "Gen3 Query Class": [[7, "gen3-query-class"]], "Gen3 Submission Class": [[8, "gen3-submission-class"]], "Gen3 Tools": [[9, "gen3-tools"]], "Gen3 Workspace Storage": [[13, "gen3-workspace-storage"]], "Index": [[11, "module-gen3.tools.indexing.index_manifest"]], "Indexing Tools": [[11, "indexing-tools"]], "Indices and tables": [[2, "indices-and-tables"]], "Ingest": [[12, "module-gen3.tools.metadata.ingest_manifest"]], "Metadata Tools": [[12, "metadata-tools"]], "Verify": [[11, "module-gen3.tools.indexing.verify_manifest"]], "Welcome to Gen3 SDK\u2019s documentation!": [[2, "welcome-to-gen3-sdk-s-documentation"]]}, "docnames": ["auth", "file", "index", "indexing", "jobs", "metadata", "object", "query", "submission", "tools", "tools/drs_pull", "tools/indexing", "tools/metadata", "wss"], "envversion": {"sphinx": 61, "sphinx.domains.c": 3, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 9, "sphinx.domains.index": 1, "sphinx.domains.javascript": 3, "sphinx.domains.math": 2, "sphinx.domains.python": 4, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx.ext.viewcode": 1}, "filenames": ["auth.rst", "file.rst", "index.rst", "indexing.rst", "jobs.rst", "metadata.rst", "object.rst", "query.rst", "submission.rst", "tools.rst", "tools/drs_pull.rst", "tools/indexing.rst", "tools/metadata.rst", "wss.rst"], "indexentries": {"_manager (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable._manager", false]], "access_methods (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.access_methods", false]], "acls (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.ACLS", false]], "async_create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_create", false]], "async_create_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_create_aliases", false]], "async_create_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_create_record", false]], "async_delete_alias() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_delete_alias", false]], "async_delete_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_delete_aliases", false]], "async_download_object_manifest() (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.async_download_object_manifest", false]], "async_get() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_get", false]], "async_get_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_get_aliases", false]], "async_get_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_record", false]], "async_get_records_from_checksum() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_records_from_checksum", false]], "async_get_records_on_page() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_records_on_page", false]], "async_get_with_params() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_with_params", false]], "async_ingest_metadata_manifest() (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.async_ingest_metadata_manifest", false]], "async_query_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_query_urls", false]], "async_query_urls_from_indexd() (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.async_query_urls_from_indexd", false]], "async_run_job_and_wait() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.async_run_job_and_wait", false]], "async_update() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_update", false]], "async_update_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_update_aliases", false]], "async_update_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_update_record", false]], "async_verify_object_manifest() (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.async_verify_object_manifest", false]], "auth_provider (gen3.metadata.gen3metadata attribute)": [[5, "gen3.metadata.Gen3Metadata.auth_provider", false]], "authz (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.AUTHZ", false]], "batch_create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.batch_create", false]], "cache_hosts_wts_tokens() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.cache_hosts_wts_tokens", false]], "children (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.children", false]], "column_to_use_as_guid (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.COLUMN_TO_USE_AS_GUID", false]], "commons_url (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.commons_url", false]], "copy() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.copy", false]], "create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create", false]], "create_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create_aliases", false]], "create_blank() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_blank", false]], "create_index_key_path() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create_index_key_path", false]], "create_job() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.create_job", false]], "create_new_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_new_version", false]], "create_object_list() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.create_object_list", false]], "create_program() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.create_program", false]], "create_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.create_project", false]], "create_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_record", false]], "created_time (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.created_time", false]], "curl() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.curl", false]], "current_dir (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.CURRENT_DIR", false]], "current_dir (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.CURRENT_DIR", false]], "current_dir (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.CURRENT_DIR", false]], "delete() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete", false]], "delete_alias() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_alias", false]], "delete_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_aliases", false]], "delete_all_guids() (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.delete_all_guids", false]], "delete_file() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.delete_file", false]], "delete_file_locations() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.delete_file_locations", false]], "delete_index_key_path() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_index_key_path", false]], "delete_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_node", false]], "delete_nodes() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_nodes", false]], "delete_object() (gen3.object.gen3object method)": [[6, "gen3.object.Gen3Object.delete_object", false]], "delete_program() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_program", false]], "delete_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_project", false]], "delete_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.delete_record", false]], "delete_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_record", false]], "delete_records() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_records", false]], "download() (gen3.tools.download.drs_download.downloadable method)": [[10, "gen3.tools.download.drs_download.Downloadable.download", false]], "download() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.download", false]], "download() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.download", false]], "download_files_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.download_files_in_drs_manifest", false]], "download_single() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.download_single", false]], "download_url() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.download_url", false]], "downloadable (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.Downloadable", false]], "downloadmanager (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.DownloadManager", false]], "downloadstatus (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.DownloadStatus", false]], "end_time (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.end_time", false]], "endpoint (gen3.metadata.gen3metadata attribute)": [[5, "gen3.metadata.Gen3Metadata.endpoint", false]], "export_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.export_node", false]], "export_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.export_record", false]], "file_name (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.file_name", false]], "file_name (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.file_name", false]], "file_size (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.file_size", false]], "file_size (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.file_size", false]], "gen3.tools": [[9, "module-gen3.tools", false]], "gen3.tools.download.drs_download": [[10, "module-gen3.tools.download.drs_download", false]], "gen3.tools.indexing.download_manifest": [[11, "module-gen3.tools.indexing.download_manifest", false]], "gen3.tools.indexing.index_manifest": [[11, "module-gen3.tools.indexing.index_manifest", false]], "gen3.tools.indexing.verify_manifest": [[11, "module-gen3.tools.indexing.verify_manifest", false]], "gen3.tools.metadata.ingest_manifest": [[12, "module-gen3.tools.metadata.ingest_manifest", false]], "gen3auth (class in gen3.auth)": [[0, "gen3.auth.Gen3Auth", false]], "gen3file (class in gen3.file)": [[1, "gen3.file.Gen3File", false]], "gen3index (class in gen3.index)": [[3, "gen3.index.Gen3Index", false]], "gen3jobs (class in gen3.jobs)": [[4, "gen3.jobs.Gen3Jobs", false]], "gen3metadata (class in gen3.metadata)": [[5, "gen3.metadata.Gen3Metadata", false]], "gen3object (class in gen3.object)": [[6, "gen3.object.Gen3Object", false]], "gen3query (class in gen3.query)": [[7, "gen3.query.Gen3Query", false]], "gen3submission (class in gen3.submission)": [[8, "gen3.submission.Gen3Submission", false]], "gen3wsstorage (class in gen3.wss)": [[13, "gen3.wss.Gen3WsStorage", false]], "get() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get", false]], "get() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get", false]], "get_access_token() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.get_access_token", false]], "get_access_token_from_wts() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.get_access_token_from_wts", false]], "get_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_aliases", false]], "get_all_records() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_all_records", false]], "get_dictionary_all() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_dictionary_all", false]], "get_dictionary_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_dictionary_node", false]], "get_fresh_token() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.get_fresh_token", false]], "get_graphql_schema() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_graphql_schema", false]], "get_guids_prefix() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_guids_prefix", false]], "get_index_key_paths() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_index_key_paths", false]], "get_latest_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_latest_version", false]], "get_output() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_output", false]], "get_presigned_url() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.get_presigned_url", false]], "get_programs() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_programs", false]], "get_project_dictionary() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_project_dictionary", false]], "get_project_manifest() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_project_manifest", false]], "get_projects() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_projects", false]], "get_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_record", false]], "get_record_doc() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_record_doc", false]], "get_records() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_records", false]], "get_records_on_page() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_records_on_page", false]], "get_stats() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_stats", false]], "get_status() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_status", false]], "get_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_urls", false]], "get_valid_guids() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_valid_guids", false]], "get_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_version", false]], "get_version() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_version", false]], "get_version() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_version", false]], "get_versions() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_versions", false]], "get_with_params() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_with_params", false]], "graphql_query() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.graphql_query", false]], "guid (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.GUID", false]], "guid_type_for_indexed_file_object (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.GUID_TYPE_FOR_INDEXED_FILE_OBJECT", false]], "guid_type_for_non_indexed_file_object (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.GUID_TYPE_FOR_NON_INDEXED_FILE_OBJECT", false]], "hostname (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.hostname", false]], "index_object_manifest() (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.index_object_manifest", false]], "indexd_record_page_size (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.INDEXD_RECORD_PAGE_SIZE", false]], "is_healthy() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.is_healthy", false]], "is_healthy() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.is_healthy", false]], "is_healthy() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.is_healthy", false]], "list_access_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_access_in_drs_manifest", false]], "list_drs_object() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_drs_object", false]], "list_files_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_files_in_drs_manifest", false]], "list_jobs() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.list_jobs", false]], "load() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.load", false]], "load_manifest() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.load_manifest", false]], "ls() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.ls", false]], "ls_path() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.ls_path", false]], "manifest (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.Manifest", false]], "max_concurrent_requests (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.MAX_CONCURRENT_REQUESTS", false]], "max_concurrent_requests (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.MAX_CONCURRENT_REQUESTS", false]], "max_concurrent_requests (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.MAX_CONCURRENT_REQUESTS", false]], "md5 (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.MD5", false]], "md5sum (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.md5sum", false]], "module": [[9, "module-gen3.tools", false], [10, "module-gen3.tools.download.drs_download", false], [11, "module-gen3.tools.indexing.download_manifest", false], [11, "module-gen3.tools.indexing.index_manifest", false], [11, "module-gen3.tools.indexing.verify_manifest", false], [12, "module-gen3.tools.metadata.ingest_manifest", false]], "object_id (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.object_id", false]], "object_id (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.object_id", false]], "object_type (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.object_type", false]], "open_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.open_project", false]], "pprint() (gen3.tools.download.drs_download.downloadable method)": [[10, "gen3.tools.download.drs_download.Downloadable.pprint", false]], "prev_guid (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.PREV_GUID", false]], "query() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.query", false]], "query() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.query", false]], "query() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.query", false]], "query_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.query_urls", false]], "raw_data_download() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.raw_data_download", false]], "refresh_access_token() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.refresh_access_token", false]], "resolve_objects() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.resolve_objects", false]], "rm() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.rm", false]], "rm_path() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.rm_path", false]], "size (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.SIZE", false]], "start_time (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.start_time", false]], "status (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.status", false]], "submit_file() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.submit_file", false]], "submit_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.submit_record", false]], "threadcontrol (class in gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.ThreadControl", false]], "tmp_folder (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.TMP_FOLDER", false]], "update() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.update", false]], "update_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.update_aliases", false]], "update_blank() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.update_blank", false]], "update_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.update_record", false]], "updated_time (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.updated_time", false]], "upload() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.upload", false]], "upload_file() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.upload_file", false]], "upload_file_to_guid() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.upload_file_to_guid", false]], "upload_url() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.upload_url", false]], "urls (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.URLS", false]], "user_access() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.user_access", false]]}, "objects": {"gen3": [[9, 3, 0, "-", "tools"]], "gen3.auth": [[0, 0, 1, "", "Gen3Auth"]], "gen3.auth.Gen3Auth": [[0, 1, 1, "", "curl"], [0, 1, 1, "", "get_access_token"], [0, 1, 1, "", "get_access_token_from_wts"], [0, 1, 1, "", "refresh_access_token"]], "gen3.file": [[1, 0, 1, "", "Gen3File"]], "gen3.file.Gen3File": [[1, 1, 1, "", "delete_file"], [1, 1, 1, "", "delete_file_locations"], [1, 1, 1, "", "download_single"], [1, 1, 1, "", "get_presigned_url"], [1, 1, 1, "", "upload_file"], [1, 1, 1, "", "upload_file_to_guid"]], "gen3.index": [[3, 0, 1, "", "Gen3Index"]], "gen3.index.Gen3Index": [[3, 1, 1, "", "async_create_record"], [3, 1, 1, "", "async_get_record"], [3, 1, 1, "", "async_get_records_from_checksum"], [3, 1, 1, "", "async_get_records_on_page"], [3, 1, 1, "", "async_get_with_params"], [3, 1, 1, "", "async_query_urls"], [3, 1, 1, "", "async_update_record"], [3, 1, 1, "", "create_blank"], [3, 1, 1, "", "create_new_version"], [3, 1, 1, "", "create_record"], [3, 1, 1, "", "delete_record"], [3, 1, 1, "", "get"], [3, 1, 1, "", "get_all_records"], [3, 1, 1, "", "get_guids_prefix"], [3, 1, 1, "", "get_latest_version"], [3, 1, 1, "", "get_record"], [3, 1, 1, "", "get_record_doc"], [3, 1, 1, "", "get_records"], [3, 1, 1, "", "get_records_on_page"], [3, 1, 1, "", "get_stats"], [3, 1, 1, "", "get_urls"], [3, 1, 1, "", "get_valid_guids"], [3, 1, 1, "", "get_version"], [3, 1, 1, "", "get_versions"], [3, 1, 1, "", "get_with_params"], [3, 1, 1, "", "is_healthy"], [3, 1, 1, "", "query_urls"], [3, 1, 1, "", "update_blank"], [3, 1, 1, "", "update_record"]], "gen3.jobs": [[4, 0, 1, "", "Gen3Jobs"]], "gen3.jobs.Gen3Jobs": [[4, 1, 1, "", "async_run_job_and_wait"], [4, 1, 1, "", "create_job"], [4, 1, 1, "", "get_output"], [4, 1, 1, "", "get_status"], [4, 1, 1, "", "get_version"], [4, 1, 1, "", "is_healthy"], [4, 1, 1, "", "list_jobs"]], "gen3.metadata": [[5, 0, 1, "", "Gen3Metadata"]], "gen3.metadata.Gen3Metadata": [[5, 1, 1, "", "async_create"], [5, 1, 1, "", "async_create_aliases"], [5, 1, 1, "", "async_delete_alias"], [5, 1, 1, "", "async_delete_aliases"], [5, 1, 1, "", "async_get"], [5, 1, 1, "", "async_get_aliases"], [5, 1, 1, "", "async_update"], [5, 1, 1, "", "async_update_aliases"], [5, 2, 1, "", "auth_provider"], [5, 1, 1, "", "batch_create"], [5, 1, 1, "", "create"], [5, 1, 1, "", "create_aliases"], [5, 1, 1, "", "create_index_key_path"], [5, 1, 1, "", "delete"], [5, 1, 1, "", "delete_alias"], [5, 1, 1, "", "delete_aliases"], [5, 1, 1, "", "delete_index_key_path"], [5, 2, 1, "", "endpoint"], [5, 1, 1, "", "get"], [5, 1, 1, "", "get_aliases"], [5, 1, 1, "", "get_index_key_paths"], [5, 1, 1, "", "get_version"], [5, 1, 1, "", "is_healthy"], [5, 1, 1, "", "query"], [5, 1, 1, "", "update"], [5, 1, 1, "", "update_aliases"]], "gen3.object": [[6, 0, 1, "", "Gen3Object"]], "gen3.object.Gen3Object": [[6, 1, 1, "", "delete_object"]], "gen3.query": [[7, 0, 1, "", "Gen3Query"]], "gen3.query.Gen3Query": [[7, 1, 1, "", "graphql_query"], [7, 1, 1, "", "query"], [7, 1, 1, "", "raw_data_download"]], "gen3.submission": [[8, 0, 1, "", "Gen3Submission"]], "gen3.submission.Gen3Submission": [[8, 1, 1, "", "create_program"], [8, 1, 1, "", "create_project"], [8, 1, 1, "", "delete_node"], [8, 1, 1, "", "delete_nodes"], [8, 1, 1, "", "delete_program"], [8, 1, 1, "", "delete_project"], [8, 1, 1, "", "delete_record"], [8, 1, 1, "", "delete_records"], [8, 1, 1, "", "export_node"], [8, 1, 1, "", "export_record"], [8, 1, 1, "", "get_dictionary_all"], [8, 1, 1, "", "get_dictionary_node"], [8, 1, 1, "", "get_graphql_schema"], [8, 1, 1, "", "get_programs"], [8, 1, 1, "", "get_project_dictionary"], [8, 1, 1, "", "get_project_manifest"], [8, 1, 1, "", "get_projects"], [8, 1, 1, "", "open_project"], [8, 1, 1, "", "query"], [8, 1, 1, "", "submit_file"], [8, 1, 1, "", "submit_record"]], "gen3.tools.download": [[10, 3, 0, "-", "drs_download"]], "gen3.tools.download.drs_download": [[10, 0, 1, "", "DownloadManager"], [10, 0, 1, "", "DownloadStatus"], [10, 0, 1, "", "Downloadable"], [10, 0, 1, "", "Manifest"], [10, 4, 1, "", "download_files_in_drs_manifest"], [10, 4, 1, "", "list_access_in_drs_manifest"], [10, 4, 1, "", "list_drs_object"], [10, 4, 1, "", "list_files_in_drs_manifest"]], "gen3.tools.download.drs_download.DownloadManager": [[10, 1, 1, "", "cache_hosts_wts_tokens"], [10, 1, 1, "", "download"], [10, 1, 1, "", "get_fresh_token"], [10, 1, 1, "", "resolve_objects"], [10, 1, 1, "", "user_access"]], "gen3.tools.download.drs_download.DownloadStatus": [[10, 2, 1, "", "end_time"], [10, 2, 1, "", "start_time"], [10, 2, 1, "", "status"]], "gen3.tools.download.drs_download.Downloadable": [[10, 2, 1, "", "_manager"], [10, 2, 1, "", "access_methods"], [10, 2, 1, "", "children"], [10, 2, 1, "", "created_time"], [10, 1, 1, "", "download"], [10, 2, 1, "", "file_name"], [10, 2, 1, "", "file_size"], [10, 2, 1, "", "hostname"], [10, 2, 1, "", "object_id"], [10, 2, 1, "", "object_type"], [10, 1, 1, "", "pprint"], [10, 2, 1, "", "updated_time"]], "gen3.tools.download.drs_download.Manifest": [[10, 2, 1, "", "commons_url"], [10, 1, 1, "", "create_object_list"], [10, 2, 1, "", "file_name"], [10, 2, 1, "", "file_size"], [10, 1, 1, "", "load"], [10, 1, 1, "", "load_manifest"], [10, 2, 1, "", "md5sum"], [10, 2, 1, "", "object_id"]], "gen3.tools.indexing": [[11, 3, 0, "-", "download_manifest"], [11, 3, 0, "-", "index_manifest"], [11, 3, 0, "-", "verify_manifest"]], "gen3.tools.indexing.download_manifest": [[11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "INDEXD_RECORD_PAGE_SIZE"], [11, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [11, 2, 1, "", "TMP_FOLDER"], [11, 4, 1, "", "async_download_object_manifest"]], "gen3.tools.indexing.index_manifest": [[11, 2, 1, "", "ACLS"], [11, 2, 1, "", "AUTHZ"], [11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "GUID"], [11, 2, 1, "", "MD5"], [11, 2, 1, "", "PREV_GUID"], [11, 2, 1, "", "SIZE"], [11, 0, 1, "", "ThreadControl"], [11, 2, 1, "", "URLS"], [11, 4, 1, "", "delete_all_guids"], [11, 4, 1, "", "index_object_manifest"]], "gen3.tools.indexing.verify_manifest": [[11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [11, 4, 1, "", "async_verify_object_manifest"]], "gen3.tools.metadata": [[12, 3, 0, "-", "ingest_manifest"]], "gen3.tools.metadata.ingest_manifest": [[12, 2, 1, "", "COLUMN_TO_USE_AS_GUID"], [12, 2, 1, "", "GUID_TYPE_FOR_INDEXED_FILE_OBJECT"], [12, 2, 1, "", "GUID_TYPE_FOR_NON_INDEXED_FILE_OBJECT"], [12, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [12, 4, 1, "", "async_ingest_metadata_manifest"], [12, 4, 1, "", "async_query_urls_from_indexd"]], "gen3.wss": [[13, 0, 1, "", "Gen3WsStorage"]], "gen3.wss.Gen3WsStorage": [[13, 1, 1, "", "copy"], [13, 1, 1, "", "download"], [13, 1, 1, "", "download_url"], [13, 1, 1, "", "ls"], [13, 1, 1, "", "ls_path"], [13, 1, 1, "", "rm"], [13, 1, 1, "", "rm_path"], [13, 1, 1, "", "upload"], [13, 1, 1, "", "upload_url"]]}, "objnames": {"0": ["py", "class", "Python class"], "1": ["py", "method", "Python method"], "2": ["py", "attribute", "Python attribute"], "3": ["py", "module", "Python module"], "4": ["py", "function", "Python function"]}, "objtypes": {"0": "py:class", "1": "py:method", "2": "py:attribute", "3": "py:module", "4": "py:function"}, "terms": {"": [1, 4, 8, 10, 11], "0": [5, 7, 8, 11], "0046513": [], "052073": 12, "064572": [], "07464": [], "0a80fada010c": 11, "0a80fada096c": 11, "0a80fada097c": 11, "0a80fada098c": 11, "0a80fada099c": 11, "1": [4, 5, 8, 10, 11], "10": [5, 7, 11], "100": [8, 11], "11e9": 11, "1713542306": [], "1713542765": [], "1713543033": [], "1713543225": [], "1713543506": [], "1713543956": [], "1713544131": [], "1713544132": [], "1713544397": [], "1713544598": [], "1713545857": 11, "1713545858": 12, "1771936": [], "1913438": [], "2": [5, 11], "24": [11, 12], "255e396f": 11, "2877355": [], "2995": [], "3": [5, 11], "30": 8, "33": 5, "333": 5, "343434344": 11, "363455714": 11, "4": [5, 11], "4017086": [], "4052968": [], "4463434": [], "450c": 11, "4649727": [], "4714": 8, "473d83400bc1bc9dc635e334fadd433c": 11, "473d83400bc1bc9dc635e334faddd33c": 11, "473d83400bc1bc9dc635e334fadde33c": 11, "473d83400bc1bc9dc635e334faddf33c": 11, "5": [0, 5], "50": 7, "543434443": 11, "5669184": [], "5899982": [], "6692646": [], "6f90": 8, "7232893": 11, "760149": [], "7d3d8d2083b4": 11, "8044841": [], "8375325": [], "8420": 8, "8882551": [], "93d9af72": 11, "9a07": 11, "A": [1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "AND": 5, "Be": 1, "But": 5, "By": 11, "For": [1, 5, 6, 7, 8, 9, 11], "IF": 11, "If": [0, 1, 7, 11, 12], "In": 10, "It": 10, "NOT": 12, "OR": 5, "One": 7, "Such": 9, "THE": 11, "That": 3, "The": [0, 1, 2, 3, 5, 8, 10, 11], "There": 11, "These": 9, "To": 11, "Will": [4, 7, 10], "_get_acl_from_row": 11, "_get_authz_from_row": 11, "_get_file_name_from_row": 11, "_get_file_size_from_row": 11, "_get_guid_for_row": 12, "_get_guid_from_row": 11, "_get_md5_from_row": 11, "_get_urls_from_row": 11, "_guid_typ": 12, "_manag": [2, 9, 10], "_query_for_associated_indexd_record_guid": 12, "_ssl": [3, 4, 5], "a5c6": 11, "ab167e49d25b488939b1ede42752458b": 3, "about": [2, 3], "abov": 11, "access": [0, 1, 3, 7, 10], "access_method": [2, 9, 10], "access_token": 0, "accesstoken": 0, "acl": [2, 3, 9, 11], "across": 11, "act": 0, "action": [9, 11], "actual": 11, "ad": 3, "add": [3, 5], "addit": [3, 5, 10, 11], "admin": [5, 11], "admin_endpoint_suffix": 5, "after": 10, "against": [3, 7, 8, 11, 12], "algorithm": 3, "alia": [3, 5], "alias": 5, "aliv": 7, "all": [1, 3, 4, 5, 6, 7, 8, 10, 11, 12], "allow": [0, 6, 8, 10, 11, 12], "allowed_data_upload_bucket": 1, "along": 2, "alreadi": 9, "also": 1, "altern": [5, 11], "alwai": 5, "ammount": 12, "amount": [1, 9], "an": [0, 3, 6, 8, 10, 11], "ani": [0, 5, 10, 11], "anoth": 5, "api": [0, 5, 8, 11], "api_kei": 11, "appli": 7, "appropri": 13, "ar": [5, 7, 8, 9, 10, 11], "arbitrari": 0, "argument": [0, 13], "arrai": 8, "asc": 7, "assign": 9, "assist": 10, "associ": [3, 5], "assum": 11, "async": [3, 4, 5, 9, 11, 12], "async_cr": [2, 5], "async_create_alias": [2, 5], "async_create_record": [2, 3], "async_delete_alia": [2, 5], "async_delete_alias": [2, 5], "async_download_object_manifest": [2, 9, 11], "async_get": [2, 5], "async_get_alias": [2, 5], "async_get_record": [2, 3], "async_get_records_from_checksum": [2, 3], "async_get_records_on_pag": [2, 3], "async_get_with_param": [2, 3], "async_ingest_metadata_manifest": [2, 9, 12], "async_query_url": [2, 3], "async_query_urls_from_indexd": [2, 9, 12], "async_run_job_and_wait": [2, 4], "async_upd": [2, 5], "async_update_alias": [2, 5], "async_update_record": [2, 3], "async_verify_object_manifest": [2, 9, 11], "asynchron": [3, 4, 5], "asyncio": [11, 12], "asyncron": 5, "attach": [3, 5], "attempt": 11, "attribut": [10, 11], "auth": [1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "auth_provid": [1, 2, 3, 4, 5, 6, 7, 8, 13], "authbas": 0, "authent": 0, "author": 1, "authz": [0, 1, 2, 3, 9, 10, 11], "auto": [0, 2], "automat": 0, "avail": [1, 2, 10, 11], "az": 1, "b": [5, 11], "b0f1": 11, "bar": 10, "base": [0, 1, 3, 4, 5, 6, 7, 8, 9, 11, 13], "baseid": 3, "basic": [3, 11, 12], "batch_creat": [2, 5], "batch_siz": 8, "behalf": 0, "behavior": 11, "being": 3, "belong": 8, "below": 11, "blank": 3, "blob": [5, 7], "bodi": 3, "bool": [4, 5, 8, 10, 11, 12], "boolean": 3, "bownload": 10, "broad": 9, "broken": 9, "bucket": [1, 6], "bundl": 10, "byte": 10, "c": [5, 11], "cach": 10, "cache_hosts_wts_token": [2, 9, 10], "call": [10, 13], "can": [0, 3, 4, 8, 11, 12], "capabl": 9, "case": [0, 10], "categori": 9, "ccle": 8, "ccle_one_record": 8, "ccle_sample_nod": 8, "cdi": 7, "chang": [3, 11], "checksum": [3, 10], "checksum_typ": 3, "child": 10, "children": [2, 9, 10], "chunk_siz": 8, "class": [0, 2, 10, 11, 13], "cli": 10, "client": [0, 3], "client_credenti": 0, "client_id": 0, "client_scop": 0, "client_secret": 0, "code": [2, 8], "column": [11, 12], "column_to_use_as_guid": [2, 9, 12], "columna": 11, "columnb": 11, "columnc": 11, "com": 7, "comma": 11, "command": [10, 11], "common": [0, 1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13], "commons_url": [2, 9, 10, 11, 12], "complet": [4, 11], "complex": 7, "concat": 11, "concurr": [11, 12], "configur": 1, "connect": 12, "consist": 3, "constructor": 0, "contain": [0, 2, 5, 8, 9, 10, 11, 12], "content": [3, 13], "content_created_d": 3, "content_updated_d": 3, "continu": 10, "control": 3, "conveni": 10, "copi": [2, 13], "coroutin": 11, "correspond": 3, "count": 3, "crdc": 0, "creat": [2, 3, 4, 5, 6, 8, 10, 11], "create_alias": [2, 5], "create_blank": [2, 3], "create_index_key_path": [2, 5], "create_job": [2, 4], "create_new_vers": [2, 3], "create_object_list": [2, 9, 10], "create_program": [2, 8], "create_project": [2, 8], "create_record": [2, 3], "created_tim": [2, 9, 10], "creation": [3, 11], "cred": 3, "credenti": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "csv": [8, 11, 12], "curl": [0, 2], "current": [6, 8, 10], "current_dir": [2, 9, 11], "custom": 11, "d": 5, "d70b41b9": 8, "data": [0, 1, 3, 5, 7, 8, 10, 11], "data_spreadsheet": 8, "data_typ": 7, "data_upload_bucket": 1, "dataa": 11, "datab": 11, "databas": 5, "datacommon": 0, "datafil": 10, "datamanag": 10, "date": 3, "datetim": [1, 3, 10], "dbgap": 12, "dcf": 8, "def": 11, "default": [0, 1, 3, 7, 8, 11, 12], "defin": [5, 8, 10], "delai": 4, "delet": [0, 1, 2, 3, 5, 6, 8, 10, 11], "delete_alia": [2, 5], "delete_alias": [2, 5], "delete_all_guid": [2, 9, 11], "delete_fil": [1, 2], "delete_file_loc": [1, 2, 6], "delete_index_key_path": [2, 5], "delete_nod": [2, 8], "delete_object": [2, 6], "delete_program": [2, 8], "delete_project": [2, 8], "delete_record": [2, 3, 8], "delete_unpacked_packag": 10, "delimet": [11, 12], "delimit": 11, "demograph": 8, "deprec": 1, "descript": [3, 5], "desir": 11, "dest_path": 13, "dest_urlstr": 13, "dest_w": 13, "dest_wskei": 13, "detail": [2, 7, 10], "determin": [10, 11, 12], "dev": 11, "dict": [3, 4, 5, 10, 11, 12], "dictionari": [3, 4, 5, 7, 8], "did": 3, "differ": 5, "direct": 0, "directori": [10, 11], "disabl": 10, "discoveri": 10, "disk": 13, "dispatch": 4, "dist_resolut": 3, "distribut": 3, "doc": [7, 10], "docstr": 2, "document": [1, 3], "doe": [0, 12], "domain": [11, 12], "done": 4, "download": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 13], "download_files_in_drs_manifest": [2, 9, 10], "download_list": 10, "download_manifest": 11, "download_singl": [1, 2], "download_url": [2, 13], "downloadmanag": [2, 9, 10], "downloadstatu": [2, 9, 10], "dr": [2, 9], "drs_download": 10, "drs_hostnam": 10, "drsdownload": 10, "drsobjecttyp": 10, "e": [5, 10], "e043ab8b77b9": 8, "each": [3, 8, 10, 11], "effici": 9, "eg": 3, "either": 8, "elasticsearch": 7, "els": [0, 12], "elsewher": 12, "empti": [8, 11], "enabl": 11, "end": [5, 10], "end_tim": [2, 9, 10], "endpoint": [0, 1, 2, 3, 4, 5, 7, 8, 13], "entir": 8, "entri": [3, 11], "env": 0, "environ": 0, "equal": 7, "error": [10, 11, 12], "error_nam": 11, "etc": 8, "even": 11, "everi": [9, 11], "everyth": 11, "ex": [0, 11, 12], "exampl": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "exclud": 3, "execut": [7, 8, 11], "exist": [1, 3, 5, 6, 9, 12], "expect": [5, 9, 11], "experi": 8, "expir": [0, 1], "expires_in": 1, "export": [8, 10], "export_nod": [2, 8], "export_record": [2, 8], "f1f8": 11, "factori": 10, "fail": [8, 10], "fals": [3, 5, 6, 10, 11], "featur": [1, 6], "fenc": [0, 1], "fetch": 0, "field": [3, 5, 7, 11, 12], "fieldnam": 11, "file": [0, 2, 3, 4, 8, 9, 10, 11, 12, 13], "file_nam": [1, 2, 3, 9, 10, 11], "file_s": [2, 9, 10, 11], "file_st": 3, "fileformat": 8, "filenam": [0, 8, 10, 11, 12], "files": 10, "fill": 12, "filter": [5, 7], "filter_object": 7, "first": [7, 8], "flag": 11, "folder": 11, "follow": [0, 11], "forc": 11, "force_metadata_columns_even_if_empti": 11, "form": 13, "format": [3, 5, 8, 11], "from": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13], "func_to_parse_row": [11, 12], "function": [2, 3, 4, 5, 9, 10, 11, 12], "g": 10, "gen3": [10, 11, 12], "gen3_api_kei": 0, "gen3_oidc_client_creds_secret": 0, "gen3auth": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "gen3fil": [1, 2], "gen3index": [2, 3], "gen3job": [2, 4, 10], "gen3metadata": [2, 5], "gen3object": [2, 6], "gen3queri": [2, 7], "gen3submiss": [2, 8], "gen3wsstorag": [2, 13], "gener": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 13], "get": [0, 1, 2, 3, 4, 5, 8, 10, 11, 12, 13], "get_access_token": [0, 2], "get_access_token_from_wt": [0, 2], "get_alias": [2, 5], "get_all_record": [2, 3], "get_dictionary_al": [2, 8], "get_dictionary_nod": [2, 8], "get_fresh_token": [2, 9, 10], "get_graphql_schema": [2, 8], "get_guid_from_fil": 12, "get_guids_prefix": [2, 3], "get_index_key_path": [2, 5], "get_latest_vers": [2, 3], "get_output": [2, 4], "get_presigned_url": [1, 2], "get_program": [2, 8], "get_project": [2, 8], "get_project_dictionari": [2, 8], "get_project_manifest": [2, 8], "get_record": [2, 3], "get_record_doc": [2, 3], "get_records_on_pag": [2, 3], "get_stat": [2, 3], "get_statu": [2, 4], "get_url": [2, 3], "get_valid_guid": [2, 3], "get_vers": [2, 3, 4, 5], "get_with_param": [2, 3], "giangb": 11, "github": [2, 7], "give": 1, "given": [0, 3, 4, 5, 8, 10, 12, 13], "global": [4, 5], "good": 3, "grant": 0, "graph": 8, "graphql": [7, 8], "graphql_queri": [2, 7], "group": 3, "guid": [1, 2, 3, 5, 6, 9, 11, 12], "guid_exampl": 11, "guid_for_row": 12, "guid_from_fil": 12, "guid_type_for_indexed_file_object": [2, 9, 12], "guid_type_for_non_indexed_file_object": [2, 9, 12], "guppi": 7, "ha": [0, 11], "handl": [3, 10], "hardcod": 0, "has_vers": 3, "hash": [3, 11], "hash_typ": 3, "have": [5, 11], "header": 11, "healthi": [3, 4, 5], "help": 11, "helper": 2, "hit": 11, "host": 10, "hostnam": [2, 9, 10], "how": [8, 11], "howto": 10, "http": [0, 7, 11, 12], "i": [0, 1, 2, 3, 4, 5, 8, 10, 11, 12], "id": [0, 1, 3, 5, 10, 11], "idea": 3, "identifi": [3, 5, 9, 11], "idp": 0, "illustr": 11, "immut": 3, "implement": 0, "implic": 11, "import": 11, "includ": [0, 3], "indent": 10, "index": [0, 2, 5, 9], "index_manifest": 11, "index_object_manifest": [2, 9, 11], "indexd": [1, 3, 6, 10, 11, 12], "indexd_field": [11, 12], "indexd_record_page_s": [2, 9, 11], "indexed_file_object_guid": 12, "indic": [0, 11], "infil": 10, "info": [3, 11], "inform": [2, 3, 10], "ingest": [2, 9], "ingest_manifest": 12, "initi": [0, 10], "input": [4, 10, 11], "input_manifest": 11, "instal": [0, 2, 11], "instanc": [1, 3, 6, 7, 8, 9, 10], "instead": [1, 7, 11], "int": [1, 3, 5, 7, 8, 10, 11, 12], "integ": [1, 3, 8], "intend": 0, "interact": [1, 3, 4, 5, 6, 8, 13], "interest": 10, "interpret": 0, "introspect": 8, "involv": 9, "is_healthi": [2, 3, 4, 5], "is_indexed_file_object": 12, "isn": 1, "issu": 0, "its": [1, 3], "job": 2, "job_id": 4, "job_input": 4, "job_nam": 4, "json": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "just": [5, 11, 12], "jwt": 0, "kei": [0, 3, 5, 13], "know": 11, "known": 10, "kwarg": [3, 4, 5], "l": [2, 13], "larg": 9, "last": 10, "latest": 3, "least": 3, "level": 6, "librari": 11, "like": [3, 5, 9, 11, 12], "limit": [1, 3, 5, 12], "linear": 4, "linux": 10, "list": [0, 1, 3, 4, 5, 7, 8, 10, 11, 13], "list_access_in_drs_manifest": [2, 9, 10], "list_drs_object": [2, 9, 10], "list_files_in_drs_manifest": [2, 9, 10], "list_job": [2, 4], "live": [11, 12], "load": [2, 9, 10], "load_manifest": [2, 9, 10], "local": [0, 13], "locat": [1, 6], "lock": 12, "log": [8, 10, 11, 12], "logic": [5, 12], "loop": 11, "ls_path": [2, 13], "maco": 11, "made": 3, "mai": [0, 9, 11], "main": 10, "make": [9, 11], "manag": [1, 5, 10], "mani": [8, 11], "manifest": [2, 8, 9, 10, 11, 12], "manifest_1": 10, "manifest_fil": [11, 12], "manifest_file_delimit": [11, 12], "manifest_row_pars": [11, 12], "map": [0, 11], "mark": 8, "master": 7, "match": [3, 5, 12], "max": 5, "max_concurrent_request": [2, 9, 11, 12], "max_presigned_url_ttl": 1, "max_tri": 8, "maximum": [11, 12], "md": [5, 7, 10, 12], "md5": [2, 3, 9, 11], "md5_hash": 11, "md5sum": [2, 9, 10], "mean": 8, "mechan": 3, "merg": 5, "metadata": [2, 3, 6, 9, 11], "metadata_list": 5, "metadata_sourc": 12, "metadata_typ": 12, "metdata": 12, "method": [1, 7, 10], "minimum": 10, "minut": 0, "mode": 7, "modul": [2, 10, 11], "more": [2, 5, 7, 9, 10], "most": 9, "mostli": 2, "multipl": [8, 11], "must": [1, 5], "my_common": 10, "my_credenti": 10, "my_field": 7, "my_index": 7, "my_program": 7, "my_project": 7, "name": [3, 4, 8, 10, 11, 12, 13], "namespac": [0, 12], "necessari": [3, 5], "need": [3, 7, 10, 11], "nest": 5, "net": 11, "never": 0, "new": [0, 3], "node": 8, "node_nam": 8, "node_typ": 8, "none": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "note": [0, 3, 11, 12], "noth": [3, 6], "now": [1, 8], "num": 5, "num_process": 11, "num_total_fil": 11, "number": [3, 7, 8, 11, 12], "o": 0, "object": [1, 2, 3, 4, 5, 7, 8, 9, 10, 11, 13], "object_id": [1, 2, 9, 10], "object_list": 10, "object_typ": [2, 9, 10], "objectid": 10, "obtain": [0, 10], "occur": 10, "off": 5, "offset": [5, 7], "oidc": 0, "old": 3, "one": [3, 5, 10, 11], "onli": [3, 5, 7, 8, 10, 11], "open": [8, 10, 11], "open_project": [2, 8], "openid": 0, "opt": 0, "option": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11], "order": [0, 8], "ordered_node_list": 8, "org": 10, "otherwis": 10, "output": [4, 5, 11, 12], "output_dir": 10, "output_filenam": [11, 12], "overrid": [0, 11, 12], "overwrit": 5, "own": 0, "packag": 10, "page": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 13], "pagin": 3, "parallel": 11, "param": [3, 5, 8, 10], "paramet": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "pars": [10, 11, 12, 13], "parser": [11, 12], "particular": 0, "pass": [0, 7, 8, 10], "password": [11, 12], "path": [0, 1, 5, 10, 11, 13], "path_to_manifest": 11, "pattern": [3, 12], "pdcdatastor": 11, "pend": 10, "per": [11, 12], "peregrin": 8, "permiss": 10, "persist": 9, "phs0001": 11, "phs0002": 11, "pick": 1, "pla": 11, "place": 11, "planx": 11, "point": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "popul": [10, 12], "posit": [1, 7], "possibl": 10, "post": [0, 11], "pprint": [2, 9, 10], "prefix": 3, "presign": 1, "pretti": 10, "prev_guid": [2, 9, 11], "previou": [3, 11], "previous": 4, "print": [8, 10], "process": 11, "processed_fil": 11, "profil": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "program": [8, 11], "progress": [8, 10], "project": [8, 11], "project_id": [7, 8], "protocol": 1, "provid": [0, 1, 3, 5, 7, 8, 12], "public": [3, 5], "put": 0, "py": 11, "python": [2, 9, 11], "python3": 11, "python_subprocess_command": 11, "queri": [1, 2, 3, 5, 8, 11, 12], "query_str": 7, "query_txt": [7, 8], "query_url": [2, 3], "quickstart": 2, "rather": 0, "raw": [7, 11], "raw_data_download": [2, 7], "rbac": 3, "read": [3, 5, 11], "readm": 2, "reason": 10, "record": [1, 3, 5, 7, 8, 11, 12], "refresh": [0, 10], "refresh_access_token": [0, 2], "refresh_fil": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "refresh_token": 0, "regist": 8, "regular": 7, "relat": 9, "remov": [1, 6, 11, 13], "replac": 11, "replace_url": 11, "repo": 2, "repres": [3, 5, 10], "represent": [1, 3], "request": [0, 1, 3, 5, 8, 11, 12], "requir": 10, "resolv": 10, "resolve_object": [2, 9, 10], "respect": 7, "respons": [0, 1, 3, 4, 5], "result": [1, 8, 10, 11], "retri": 8, "retriev": [1, 8, 10, 12], "return": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11], "return_full_metadata": 5, "rev": 3, "revers": 8, "revis": 3, "right": 1, "rm": [2, 13], "rm_path": [2, 13], "root": [11, 12], "row": [7, 8, 11, 12], "row_offset": 8, "rtype": 3, "run": [8, 11], "s3": [1, 10, 11], "safe": 11, "same": [5, 11, 13], "sampl": [8, 10], "sandbox": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "save": 10, "save_directori": 10, "schema": 8, "scope": [0, 1], "screen": 8, "script": 2, "search": [0, 2, 3], "second": [1, 4], "secret": 0, "see": [7, 10, 11], "self": 10, "semaphon": 12, "semaphor": 12, "separ": [0, 11], "server": 10, "servic": [1, 3, 4, 5, 6, 8, 11, 12, 13], "service_loc": [3, 4, 5], "session": 11, "set": [0, 1, 5, 10], "setup": 2, "sheepdog": 8, "should": [0, 8, 11], "show": 10, "show_progress": 10, "shown": 11, "sign": 1, "signpost": 3, "similar": 10, "simpl": 3, "simpli": 11, "sinc": 3, "singl": [1, 5, 8], "size": [2, 3, 9, 10, 11], "skip": 8, "sleep": 4, "so": 11, "some": [0, 2], "someth": 11, "sort": 7, "sort_field": 7, "sort_object": 7, "sourc": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "space": [0, 11], "specif": [5, 8, 11, 12], "specifi": [0, 1, 3, 11, 13], "spreadsheet": 8, "src_path": 13, "src_urlstr": 13, "src_w": 13, "src_wskei": 13, "ssl": [3, 4, 5], "start": [3, 4, 7, 8, 10], "start_tim": [2, 9, 10], "static": 10, "statu": [2, 4, 9, 10], "storag": [1, 2, 6], "store": [1, 3, 10], "str": [0, 1, 3, 4, 5, 7, 8, 10, 11, 12], "string": [0, 3, 5, 11, 13], "strip": 11, "sub": 8, "subject": [7, 8], "submiss": 2, "submit": [8, 11], "submit_additional_metadata_column": 11, "submit_fil": [2, 8], "submit_record": [2, 8], "submitter_id": 7, "success": 10, "successfulli": 10, "suffici": 3, "suppli": 3, "support": [0, 1, 5, 8, 11], "sure": 1, "synchron": 11, "syntax": 7, "system": [6, 7, 8, 9], "t": [1, 5, 11], "tab": 11, "task": 9, "temporari": 11, "test": 11, "test1": 11, "test2": 11, "test3": 11, "test4": 11, "test5": 11, "text": [1, 7, 8], "than": [0, 5], "thei": [0, 10], "them": [10, 11], "thi": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "those": 11, "thread": 11, "thread_num": 11, "threadcontrol": [2, 9, 11], "through": [8, 11], "tier": 7, "time": [1, 3, 8, 10, 11], "timestamp": 10, "tmp_folder": [2, 9, 11], "token": [0, 10], "tool": 2, "total": 11, "treat": [1, 5], "tree": 10, "true": [3, 4, 5, 6, 7, 8, 10, 11, 12], "try": 0, "tsv": [8, 11, 12], "tupl": [0, 3, 11, 12], "type": [1, 3, 4, 5, 7, 8, 10, 11, 12], "typic": 10, "uc": 7, "unaccess": 7, "under": [0, 8, 13], "uniqu": [1, 5], "unknown": 10, "unpack": 10, "unpack_packag": 10, "until": [4, 10], "up": [5, 9], "updat": [2, 3, 5, 10, 11], "update_alias": [2, 5], "update_blank": [2, 3], "update_record": [2, 3], "updated_tim": [2, 9, 10], "upload": [1, 2, 3, 8, 13], "upload_fil": [1, 2], "upload_file_to_guid": [1, 2], "upload_url": [2, 13], "url": [1, 2, 3, 9, 10, 11, 12, 13], "urls_metadata": 3, "us": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "usag": 11, "use_agg_md": 5, "user": [0, 10, 12], "user_access": [2, 9, 10], "usual": 12, "utcnow": 1, "util": 9, "uuid": [1, 3, 8], "uuid1": 8, "uuid2": 8, "valid": [3, 7], "valu": [0, 1, 3, 5, 7, 10, 11], "value_from_indexd": 11, "value_from_manifest": 11, "variabl": [0, 7, 8], "variou": 2, "verbos": [7, 8], "verif": 11, "verifi": [2, 9], "verify_manifest": 11, "verify_object_manifest": 11, "version": [3, 4, 5], "vital_statu": 7, "w": 13, "wa": 0, "wai": 10, "wait": 4, "want": [0, 3, 8], "warn": 11, "we": [3, 11], "web": 0, "what": 5, "when": [0, 3, 7, 10, 12], "where": [0, 3, 5, 11, 12], "whether": [3, 4, 5, 8, 11, 12], "which": [8, 10], "while": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "whose": 5, "within": [0, 2, 9], "without": [3, 5], "won": 5, "work": [0, 10], "workaround": 11, "worksheet": 8, "workspac": [0, 2], "wrapper": 10, "write": 11, "ws_urlstr": 13, "wskei": 13, "wss": 13, "wt": [0, 10], "x": 11, "xlsx": 8, "you": [0, 3, 8, 11], "your": 0}, "titles": ["Gen3 Auth Helper", "Gen3 File Class", "Welcome to Gen3 SDK\u2019s documentation!", "Gen3 Index Class", "Gen3 Jobs Class", "Gen3 Metadata Class", "Gen3 Object Class", "Gen3 Query Class", "Gen3 Submission Class", "Gen3 Tools", "DRS Download Tools", "Indexing Tools", "Metadata Tools", "Gen3 Workspace Storage"], "titleterms": {"": 2, "auth": 0, "class": [1, 3, 4, 5, 6, 7, 8], "document": 2, "download": [10, 11], "dr": 10, "file": 1, "gen3": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 13], "helper": 0, "index": [3, 11], "indic": 2, "ingest": 12, "job": 4, "metadata": [5, 12], "object": 6, "queri": 7, "sdk": 2, "storag": 13, "submiss": 8, "tabl": 2, "tool": [9, 10, 11, 12], "verifi": 11, "welcom": 2, "workspac": 13}}) \ No newline at end of file diff --git a/docs/_build/html/tools/indexing.html b/docs/_build/html/tools/indexing.html index 4e8c00596..38d230610 100644 --- a/docs/_build/html/tools/indexing.html +++ b/docs/_build/html/tools/indexing.html @@ -381,7 +381,7 @@

Indexing Tools
-async gen3.tools.indexing.verify_manifest.async_verify_object_manifest(commons_url, manifest_file, max_concurrent_requests=24, manifest_row_parsers={'acl': <function _get_acl_from_row>, 'authz': <function _get_authz_from_row>, 'file_name': <function _get_file_name_from_row>, 'file_size': <function _get_file_size_from_row>, 'guid': <function _get_guid_from_row>, 'md5': <function _get_md5_from_row>, 'urls': <function _get_urls_from_row>}, manifest_file_delimiter=None, output_filename='verify-manifest-errors-1713544598.07464.log')[source]
+async gen3.tools.indexing.verify_manifest.async_verify_object_manifest(commons_url, manifest_file, max_concurrent_requests=24, manifest_row_parsers={'acl': <function _get_acl_from_row>, 'authz': <function _get_authz_from_row>, 'file_name': <function _get_file_name_from_row>, 'file_size': <function _get_file_size_from_row>, 'guid': <function _get_guid_from_row>, 'md5': <function _get_md5_from_row>, 'urls': <function _get_urls_from_row>}, manifest_file_delimiter=None, output_filename='verify-manifest-errors-1713545857.7232893.log')[source]

Verify all file object records into a manifest csv

Parameters:
diff --git a/docs/_build/html/tools/metadata.html b/docs/_build/html/tools/metadata.html index bbfd78ae9..224954387 100644 --- a/docs/_build/html/tools/metadata.html +++ b/docs/_build/html/tools/metadata.html @@ -102,7 +102,7 @@

Metadata Tools
-async gen3.tools.metadata.ingest_manifest.async_ingest_metadata_manifest(commons_url, manifest_file, metadata_source, auth=None, max_concurrent_requests=24, manifest_row_parsers={'guid_for_row': <function _get_guid_for_row>, 'indexed_file_object_guid': <function _query_for_associated_indexd_record_guid>}, manifest_file_delimiter=None, output_filename='ingest-metadata-manifest-errors-1713544598.4463434.log', get_guid_from_file=True, metadata_type=None)[source]
+async gen3.tools.metadata.ingest_manifest.async_ingest_metadata_manifest(commons_url, manifest_file, metadata_source, auth=None, max_concurrent_requests=24, manifest_row_parsers={'guid_for_row': <function _get_guid_for_row>, 'indexed_file_object_guid': <function _query_for_associated_indexd_record_guid>}, manifest_file_delimiter=None, output_filename='ingest-metadata-manifest-errors-1713545858.052073.log', get_guid_from_file=True, metadata_type=None)[source]

Ingest all metadata records into a manifest csv

Parameters:
From b7901c65a8b8f29abe21bd57165b6980cfb732a2 Mon Sep 17 00:00:00 2001 From: Alex Date: Fri, 19 Apr 2024 12:54:46 -0500 Subject: [PATCH 21/62] chore(debug): add debug logs --- .github/workflows/build.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index a96aa800c..74c96a185 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -40,7 +40,7 @@ jobs: - name: Build using pyinstaller run: | pip install pyinstaller==6.6.0 - pyinstaller --name gen3 --hidden-import gen3users --onefile ./gen3/cli/__main__.py + pyinstaller --log-level=DEBUG --clean --name gen3 --hidden-import gen3users --onefile ./gen3/cli/__main__.py - name: Test build run: | cd ./dist From d77fef7da869c166814b7ee79d9aac8f253fdb43 Mon Sep 17 00:00:00 2001 From: Avantol13 Date: Fri, 19 Apr 2024 17:56:14 +0000 Subject: [PATCH 22/62] Apply automatic documentation changes --- docs/_build/doctrees/environment.pickle | Bin 1579888 -> 1579888 bytes docs/_build/doctrees/tools/indexing.doctree | Bin 100291 -> 100291 bytes docs/_build/doctrees/tools/metadata.doctree | Bin 35929 -> 35929 bytes docs/_build/html/searchindex.js | 2 +- docs/_build/html/tools/indexing.html | 2 +- docs/_build/html/tools/metadata.html | 2 +- 6 files changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/_build/doctrees/environment.pickle b/docs/_build/doctrees/environment.pickle index 6125f39ff69a5e9ed991af707c55a687018e30d1..c7a44f64455a3a910bf7e9c2d13a93e02d0e8f32 100644 GIT binary patch delta 9990 zcmZ`MM56{!v20W@U`r8OR1gIPIZ13J zYK$FGnV7_u=CediVxBR^*wS9&4;92%UhsEj<__pDpWi>6@2PWU?wK=l?{cdu{Z>_a z#m>k)&sjM+rG=)+)5d4cMml{)<|}hb3(cILJZ&PvshPPM<1=zIN(=3|Sy@wZV#dFc zla@VW%9PSVudK1|%yGF5nno`ZH!UqRPMAC;v$W7VXU5p6lXG$=XH7$yJ8LYC$)kDa z#K`z19or1byJ_(7D748q(XZs>mbz~EXfW z;Z_)8GjJOiVtKng8DjamjSR6w-6n=ua&9k%SW<44A(oHZ%up>u7KT_3Zf}MjFl0qE zW5(D*b!O%(d!22gJ@b60jQDD%znA+jR2QhL{xynoY_SW}8P^5JmbpNk-z}Z%Sc(Oz zpI-*&SegZ@&zqT?W2qLXOMev{OSeFMbZi3Gv6Kr`r(+)HSlR_@_wLUNmStR^Ms8lj zl`QK5bwj&loMV}zX;>lW*enawpAE~unptu`CQrFtGAA~;DNCxTG@{TE9UU_jrQd^P|7pJlT(Y@r=_#nTA z5E(OaCq-k3!iebTvLlXGo~4CPmxLyCC^;Bs*PL=7UXjeKq-nxSC8hEHo>9@!P`=b2 zS#mDk&ofdmeo)=b=}?(nvHL-Zf5LcXYJW0H$@+wNrF!Al3H0j(Wy5UcCQRRpQU z?S)ns_1~k6G6=X}ukwNp|Jbh_BXIGg-H(2GTuC#)A-BUtJDyU$?98Qb{;EPCdz5Do z?P)ShOctger5a)a1+1TJSP~}SI|T;MCc^9Ybq3w*@_U93;X)tzx#4cS(6{NEZ_ zta1sx+2Z+Uv<^Fa{xng*hZ{VX^%HQ-ub%Df0$#e~`J)(%p7t@?R3W|TYdqyG;Mr!z z0H=WejWM<{3)ro*ai?zkcQ4~_zCwC`nDHrH8avu}!beCQZezK~3^va)>eIRXnsJ<- z!sG&DvF>GGWh~RZ4s0-<(+%F+Wn3c+VDVlVAg{`}E?5i@_l@yvf`I;BruCu9eNYxE zzVvtt(@O^BK8Y(XD*x1=bApL2R1;UyrF1n$MX^?cN8ewW0Af4l~OkQTm44P$H z;3Xq;eEo?C&bg)oR%!TCzA3{dnPFw7)Ij+2sLPKY*likXfL=XaF50%z^i6B9O>y}_ zzY7@YR-9K5?frx4)fQYx&(xcGM+n%Wwbwaa>NCjevoPT`Yl4^VrA_s+g$m*Lg;JQl z%&WYW5GL)B!o*6i@Hi24_I0miQ35t`sMm!*bw;bVf`nJUBvp@}I6z$!EKF<0t04{n zTjZ)uoDBNIn+sJhrleUxydIRo%YAV8rigrA@$Q zb!vqf@V%(+tWj`qg#wECMf=qG;q_=2lh|%`;f)o)V&hmX@$& zD9-lrqldFCkDh^dPCNbJ_-+eDkzzfdkDG6`iuCAyyVdOCdbl4Vg^!w91FgcTU6l2NML=5z>u^1Tnf?Oag(g?`3q@Ko;AvX)9$y_nrTG3qtF_vPw(;uYnO06_)+Wh<~?}N>=xqTF{U&k zg&(%8-Lf-;QFdG{F3oiJ7Y5=m=I1ceWJ0V_Yfl}&Sa-%NwR|6gIlxBX%2}TvS|4D` zx9DQJHr)19w6wXCqT5uZ+QOxjcARVL;4kgxmD(bmk~y@=mKG(QC!di6q@A_3?j>#3 zIDG2Tm0G$o+b7m8h5w%G6P_R$Tcyvp4d!=l`^*WJngu>~Q^Uw>o7=Ai=o)yTi(Q}1 zk#6=}mvk5~*xt%l+9ah(n>`u!ABeOmpJDIzJZ#Ih_|aP@?TKqSg!>r|0u`I>dPmEh zeeLA3Y^& zVr#g4!W2xmG1#bcm-xA3EE6JuU&1^nh-CRp(}D7jFS440pZn&moL>S$d^RaZT2Q{?uI8R+oSU z#V$NWSpYb;Nt*86>^iFJ^QmjBh+6fj>kG4R`r(AjO<>$rS96&7lPec~yN0O#C)Z2x zA12GY>>2~VTu1civMU3Ayo@NM+#Cq?mt0=(-W6AG7_WPH!MeA#CeZvU$|f+6#aCV9 z;Nnk+vd^KS#Whs)W$d&Y)*uMIh5@!P*|jSu%WFlNLaXb@rZcwbJf}ZwxbEr)qxp~% zNDFBDvnx~F=*zk)`i*`gL;OZx!4SWG9b|~#!A>y5FJk8z;CoKoui#g!NWuu%(vY@25gI5%tUp`wq$#Fno;+%;%P z(5pgof%8{<1Y6c4!1)M>Lq?(hNenWggK40yGVwyZyAQA_`y>e|k7T zyQGKO6{y`85K=o6l^zM!YIQ!guNDBsT|HIkmB;>AH5Yvtq8)x*9eT~v4!ifE#t^3M z*JBt9B7 zbZ=Bw^e}o;pElYzdW_pq+8rJK)s9Vptr43YH?_j8LSmuqVzpCxq|kbo3R@D4z7V~f zc+s};+DYBr(q604jd-@9vyC>Gltf(gnU2~)U4vr;Lu|g$OgnYf&gep1y8yVdoLFhs zt__pJ7^ZFk?cZOUrZDKDUnXf^=y2^owjxXl<-;_8==q|_N{rm}iJv_#|p~H30Ye5Fsm5G&%tsxxxkHpNv zCgI|hkJR2&7}RK|QQ8q5TE?&qWFhjejYqBP4 z&6&^+_L-VSUmd3%)1y6?$@T#s1C0~`0iS?M^C!!JVBS9D-+ozp@YqNcN5UFpuE68R zO!srZ;bL6J`Yi3}W0ou@e<*jUKJ?*qwpiQ;AH7Pi2be%(M#g|>4w|Eihnd2*Yc z^RPWQ6IGRl&2E?sa|Cqshx!~ zA`Q3v0=6Oe0;DctyPw1HizNh{ zxH4L{&DEQDqF3s5J6b==uyj57?1CdOpK|kFOT+C>06cBzx5bcfTsTw z!w!MbxLDs;Juxugz(FwYfVYia_)z;!cR%tGTX{al%}DHrIIke6xajAg)`Qw*-RQrE zG{--T%9~jUefB8pP23$P6AtAuR+XlGrv0pY4*x>)6`u69V{AV)nmR{XZS?cw4Vi2| zsXf#~@lAI4D^^3?o~;{CzwD@01;=Wu2?Fk7Z5z(A15B9g)51|}r|LIsc|Z5Uy2w7K zrNcZwc~agvhbQG-y8SyXT7jVk+&^b;yM{h?RhV=h`%6zxETMDfwV4WoSVHqOGYozT zuMX)S*c^1l1y)QwsuJOf3B82eQt!|TIg z@if5E5DN9!mbq!;Q?1yBXL%eU*y{LrzJA0wEWA4XqN@n$fz-{dap)d3!_@2cze>pM5UP%Ox zc+P)vL-T=lHb)bvxZ?1G7bCEtmJTH6b@j>Ti7)hyAo#vniP5K2+7eTl1@z{U+S)X zGo%s42GY|2L;B&+Arr_HC>|PKTyx1P^2; z#aja2?3-m1yb2;8NG-3B>(U{I;8lZ30i_zGRS`1{o=LE$Fjx9u7QyQYgTQYcWqVy3 z#D3+n((qSFs3C>@_KreqU;Wl9d1h8>dmnUI809_8Qp8u~)%Hj=c^xa_ps#b8Qe5^Q;)l zjEec(8#%TFoP$5#Ac0=|welwQo=e^^m|41G@CP&~nn%{-_uT0DBvz?`wE3hcj-|$C z{Ly+`ti*D*2rNG)Dtiw_wHxt|-~0H-YX?)_gJuiJOgoE@Af<_lu`}mMWm^(@54WC8u zkhTI_^=-&m!2|CWVU6s{vYysno#VrDPD2fvdT2>1u9rYBkqsWn7n5hKbd{J7pvh$)z%U zPBjn#oO>B?X=`97;40R@AHbtTyv5z8y+z`cJMivXn9?1%_7)cFEg)~>dfbAcZ{x&n zLH^q$5h}Le3ZG?yd!W99v$+S)3bN)M($B`fv3#}<*L&=TaCAM15cg&$@mAF@Us60G zu$J4b;cmHt99o03$5?ActhHEC_u#FyTzGXY8H`-aI+B89?mEt$T1WaL=ewRfi)6xj zG6YH0dM>ONq~8Xd#XVTEfd@Oifd>mHC#{sb(6gL`;@8kI<+xn6u&tboLt=lI3`a8l zT{0TUQ9(lABO{QT^&UyK@!r(w7o1nlA8>RNiO1WXA1eJflIM|3-AINZ`E(;rq84nM z$a6^2H}RlVo5)b)EStG-j39e9b3gO@oTRtNOnG7`zxf<)~^lRB8a6IZJaU?)jOa&ITbtb;zgu<+_&i6AF;VR6-geK+Z2 zu@|s!Q?6&n=x_>TY5~ zR#XWNQo$1_uD}V`!IcVJ;5z8A2RBC@%-@5F*TIE7Jh^*&@Tt|o@Jd|n2e7@8WFYa` zOEQt<>_y85aB?qNK7c>=l9!MS*oO`e;Qf7A^3`x*AL)d|wI3ToH4NU5yBE*2{iK79 zfBsvNfJuGd9(q-gFo;>UX$p=T#3RKNHlJd zL}`m9%3dnb{Cu|ZeBf;b6749IsQU_u1{X<`SuD||l@ifa60Ize=#AA9J@<}8jlTTo?qrA#U*or8 zS|0ED<$F=WQ3mV&9BtY!(Q^kRn)Hc88xKk}?65?$k4lvGxkL%aBzonzM3E;XYJZZ| z4WqvKuhu=z6`yE5H%G-a-7kRwxPrrx~j!c&&>UB+` zJ=Y~V@Uuiy*+IcQ4*Vfe%NmISY9%UZKuHg!tk2&P?X7Psq3$g{IVl?^DVi!Phtel|wIio^epivC|hGJ+Za delta 10023 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 diff --git a/docs/_build/doctrees/tools/indexing.doctree b/docs/_build/doctrees/tools/indexing.doctree index ed8f3f5f5ee6d818f2ac3af1526b37710d067a38..39988cbf4389c91f236677c0fb9053955840dd3b 100644 GIT binary patch delta 104 zcmX@y&vv+Indexing Tools
-async gen3.tools.indexing.verify_manifest.async_verify_object_manifest(commons_url, manifest_file, max_concurrent_requests=24, manifest_row_parsers={'acl': <function _get_acl_from_row>, 'authz': <function _get_authz_from_row>, 'file_name': <function _get_file_name_from_row>, 'file_size': <function _get_file_size_from_row>, 'guid': <function _get_guid_from_row>, 'md5': <function _get_md5_from_row>, 'urls': <function _get_urls_from_row>}, manifest_file_delimiter=None, output_filename='verify-manifest-errors-1713545857.7232893.log')[source]
+async gen3.tools.indexing.verify_manifest.async_verify_object_manifest(commons_url, manifest_file, max_concurrent_requests=24, manifest_row_parsers={'acl': <function _get_acl_from_row>, 'authz': <function _get_authz_from_row>, 'file_name': <function _get_file_name_from_row>, 'file_size': <function _get_file_size_from_row>, 'guid': <function _get_guid_from_row>, 'md5': <function _get_md5_from_row>, 'urls': <function _get_urls_from_row>}, manifest_file_delimiter=None, output_filename='verify-manifest-errors-1713549370.2930224.log')[source]

Verify all file object records into a manifest csv

Parameters:
diff --git a/docs/_build/html/tools/metadata.html b/docs/_build/html/tools/metadata.html index 224954387..16b01b5f6 100644 --- a/docs/_build/html/tools/metadata.html +++ b/docs/_build/html/tools/metadata.html @@ -102,7 +102,7 @@

Metadata Tools
-async gen3.tools.metadata.ingest_manifest.async_ingest_metadata_manifest(commons_url, manifest_file, metadata_source, auth=None, max_concurrent_requests=24, manifest_row_parsers={'guid_for_row': <function _get_guid_for_row>, 'indexed_file_object_guid': <function _query_for_associated_indexd_record_guid>}, manifest_file_delimiter=None, output_filename='ingest-metadata-manifest-errors-1713545858.052073.log', get_guid_from_file=True, metadata_type=None)[source]
+async gen3.tools.metadata.ingest_manifest.async_ingest_metadata_manifest(commons_url, manifest_file, metadata_source, auth=None, max_concurrent_requests=24, manifest_row_parsers={'guid_for_row': <function _get_guid_for_row>, 'indexed_file_object_guid': <function _query_for_associated_indexd_record_guid>}, manifest_file_delimiter=None, output_filename='ingest-metadata-manifest-errors-1713549370.674552.log', get_guid_from_file=True, metadata_type=None)[source]

Ingest all metadata records into a manifest csv

Parameters:
From f5885c8142c2dc1e56c7ce62f302aedee35d4475 Mon Sep 17 00:00:00 2001 From: Alex Date: Fri, 19 Apr 2024 13:00:24 -0500 Subject: [PATCH 23/62] chore(pyinstaller): more debug --- .github/workflows/build.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index 74c96a185..fd115a8e9 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -40,7 +40,7 @@ jobs: - name: Build using pyinstaller run: | pip install pyinstaller==6.6.0 - pyinstaller --log-level=DEBUG --clean --name gen3 --hidden-import gen3users --onefile ./gen3/cli/__main__.py + pyinstaller --log-level=DEBUG --debug=imports --clean --name gen3 --hidden-import gen3users --onefile ./gen3/cli/__main__.py - name: Test build run: | cd ./dist From b9c17e9e93d244b645a12707d20d79ee4e92dbd5 Mon Sep 17 00:00:00 2001 From: Avantol13 Date: Fri, 19 Apr 2024 18:01:33 +0000 Subject: [PATCH 24/62] Apply automatic documentation changes --- docs/_build/doctrees/environment.pickle | Bin 1579888 -> 1579893 bytes docs/_build/doctrees/tools/indexing.doctree | Bin 100291 -> 100291 bytes docs/_build/doctrees/tools/metadata.doctree | Bin 35929 -> 35934 bytes docs/_build/html/searchindex.js | 2 +- docs/_build/html/tools/indexing.html | 2 +- docs/_build/html/tools/metadata.html | 2 +- 6 files changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/_build/doctrees/environment.pickle b/docs/_build/doctrees/environment.pickle index c7a44f64455a3a910bf7e9c2d13a93e02d0e8f32..6c6bf6770236d950cc615f9010bc2c0b51a29ede 100644 GIT binary patch delta 10929 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 V^(ZM(lTCLIjh3+DrcWOe^}jd%184vM delta 10904 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 IZ&4o%0O&LIndexing Tools
-async gen3.tools.indexing.verify_manifest.async_verify_object_manifest(commons_url, manifest_file, max_concurrent_requests=24, manifest_row_parsers={'acl': <function _get_acl_from_row>, 'authz': <function _get_authz_from_row>, 'file_name': <function _get_file_name_from_row>, 'file_size': <function _get_file_size_from_row>, 'guid': <function _get_guid_from_row>, 'md5': <function _get_md5_from_row>, 'urls': <function _get_urls_from_row>}, manifest_file_delimiter=None, output_filename='verify-manifest-errors-1713549370.2930224.log')[source]
+async gen3.tools.indexing.verify_manifest.async_verify_object_manifest(commons_url, manifest_file, max_concurrent_requests=24, manifest_row_parsers={'acl': <function _get_acl_from_row>, 'authz': <function _get_authz_from_row>, 'file_name': <function _get_file_name_from_row>, 'file_size': <function _get_file_size_from_row>, 'guid': <function _get_guid_from_row>, 'md5': <function _get_md5_from_row>, 'urls': <function _get_urls_from_row>}, manifest_file_delimiter=None, output_filename='verify-manifest-errors-1713549689.3102272.log')[source]

Verify all file object records into a manifest csv

Parameters:
diff --git a/docs/_build/html/tools/metadata.html b/docs/_build/html/tools/metadata.html index 16b01b5f6..1a5187a53 100644 --- a/docs/_build/html/tools/metadata.html +++ b/docs/_build/html/tools/metadata.html @@ -102,7 +102,7 @@

Metadata Tools
-async gen3.tools.metadata.ingest_manifest.async_ingest_metadata_manifest(commons_url, manifest_file, metadata_source, auth=None, max_concurrent_requests=24, manifest_row_parsers={'guid_for_row': <function _get_guid_for_row>, 'indexed_file_object_guid': <function _query_for_associated_indexd_record_guid>}, manifest_file_delimiter=None, output_filename='ingest-metadata-manifest-errors-1713549370.674552.log', get_guid_from_file=True, metadata_type=None)[source]
+async gen3.tools.metadata.ingest_manifest.async_ingest_metadata_manifest(commons_url, manifest_file, metadata_source, auth=None, max_concurrent_requests=24, manifest_row_parsers={'guid_for_row': <function _get_guid_for_row>, 'indexed_file_object_guid': <function _query_for_associated_indexd_record_guid>}, manifest_file_delimiter=None, output_filename='ingest-metadata-manifest-errors-1713549689.6739478.log', get_guid_from_file=True, metadata_type=None)[source]

Ingest all metadata records into a manifest csv

Parameters:
From bb3f810c6d8a811ff412f462d11c2b55c8a7d364 Mon Sep 17 00:00:00 2001 From: Alex Date: Fri, 19 Apr 2024 13:15:00 -0500 Subject: [PATCH 25/62] chore(pyinstaller): try combining steps --- .github/workflows/build.yaml | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index fd115a8e9..507e0808c 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -32,14 +32,14 @@ jobs: # on all OSes was getting difficult. This is a quick hack to move forward pip install poetry python -m poetry --version - - name: Install dependencies + - name: Install dependencies and then build using pyinstaller run: | python -m poetry install -vv --all-extras --no-interaction --no-cache python -m poetry show -vv - shell: bash - - name: Build using pyinstaller - run: | + python -m poetry env info + pip install pyinstaller==6.6.0 + # pyinstaller --clean --name gen3 --hidden-import gen3users --onefile ./gen3/cli/__main__.py pyinstaller --log-level=DEBUG --debug=imports --clean --name gen3 --hidden-import gen3users --onefile ./gen3/cli/__main__.py - name: Test build run: | From b31715885784b7637b9f0e6c03cf7add9a0e5ac7 Mon Sep 17 00:00:00 2001 From: Avantol13 Date: Fri, 19 Apr 2024 18:16:15 +0000 Subject: [PATCH 26/62] Apply automatic documentation changes --- docs/_build/doctrees/environment.pickle | Bin 1579893 -> 1579888 bytes docs/_build/doctrees/tools/indexing.doctree | Bin 100291 -> 100291 bytes docs/_build/doctrees/tools/metadata.doctree | Bin 35934 -> 35929 bytes docs/_build/html/searchindex.js | 2 +- docs/_build/html/tools/indexing.html | 2 +- docs/_build/html/tools/metadata.html | 2 +- 6 files changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/_build/doctrees/environment.pickle b/docs/_build/doctrees/environment.pickle index 6c6bf6770236d950cc615f9010bc2c0b51a29ede..d7cd5f9591619440f46a3c0c4a386a023e2a2c05 100644 GIT binary patch delta 10497 zcma)CcU)A*_UA6U?84T2haw;du_B5nc8wY}M#Ppx6HPRNie+O#0X4=JH7bNCy6A~5 z_7)q0FxIG_w5KMDPZMME>@7tBqkzg&e`jXytmeJn=lA*X$DZ#gbIzHWGc$MYrJ^{w zyf`_3XUt4T#`y7L(wmGPH#~L9=y4Dg=vB-Gj-wz z=rtuXV^m&_@8on(`-XK}J~sIHx$dV5bK58!Vt^a?avTP*B!vn!-7Vw zeP^;nvdxcks{$tn`|)J5&B1FPbB-mHZN5_^IF?kl`BchNu49R1n~NGe;~Yya+dQkv z5X8K&1hdUYdi!#Y%|Nz!T%eJ2EYECnEfUJP2c0=vo+Mb7X0|!z%?Pe!sb-tseB~w1 zvC+&n-;J!zIo7po^FQt)=Xum5(agHBD6fG>NeEQ#dESc;Q_4NFnudCo#78KVp8WVo zrNVPMzNYfXb0c1yc~&$XTvd2?#ldia4j0!95UBL%41qj*Pwe$YdFAs`=T*)NoYyvMEDD;} zay2D8mA`x;yuhT=;62K_1_5UmDsSuXk0Rwe0#kFs8%8^r3?q}ckRIr3Xc8*m)6s_cQ39^WHu%;Mt$tf=&|6(zZ)g!M^f6x> zDw_#?y`QB%rOL2G6?%)m@1JoxZ0&n#q=40Hd_Up5sRL(8*OGG zEekY$A0S{!En|pFz<)O}Hna%XuC;NeZu_L8@phn)KI&(DNtebCGM=ytsncy-D>8#k zlZ|?J?tN$+rl&AE+nB4jax5_}(_8IdV?3uDtlwo^DGXp

!~_*tj}e1ZetCV@ZO5 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 P`}HOYR$ON0(768rhQoA) delta 10471 zcma)Cc|cUv{^t$@cbFMw=HA1AfFdX^h_brj{@jvC#M08IhKQ()8wQ$Mi3_P9E;-28 z+;hp)R0QQ@<<@I?F1eItR_30qf&z+B`1_u7?ge}A{qge;zMt=UzTdN-J64vDttlT{ zvNs~vD|6cTjM+tnww&qHr({P@&B#d`pO%wWROtC~c6L#rF>PkfBqXls7(5_`}71Nkm==2;R zf5e@6`$F)L32cqo3F!lF#(O~s>X<;rUJz_0V^z^hdXYj?^MuBo5NXS;enO!4m@utC z&CEha>iFsD)6%A9q~=Ud%}T=#eyymjixusvXMb3^uE*>TtJCG-iGOMtk{G(rkbxmq ztILxiR-?AK7eRg|{x>Y2+DDUg3k zm~d^Dzc){&KsNm~iE}KW0y#v<*+>fFYo3b)i7PT$3M@2V?m01?r7Cwx zOo;TzeJ-Y{^w9lVOtAF8ZHf(*>f8~r;Zlt|IW|^i&0;9`i}6{;!pNv7*s|0X;hqsU zFr4VY8^#$MD0Jx3nK_wLvfXQAW26Z8rq}?u+udPz_l*k)`5#HKYFNGz82{RNM;rH; zc&GAT@!eD7)1}I?3-Nn`;DK3ky1OQj)$4=GjwT;6z?@!^QkFM#SRz-I{l4ylV1bU5 zH#G}%_xL=4+y_r_$9<=-1-M^Lc9w0s`J%y{Jya=Ef83zBr<``Wy=w?$MMyzql@GlM zlTeFA`bi*DbLj&=F8d~4ddtilX+bY(u8;*jC*6r=T1Z?di6FG^A}K0jG+()L#8B^9 zRD)DYTc44>?#e}Q={l=#lxGm_LnSf6QF5-Q-j0)uB0;q}u-gXVR0 ztD#ev&_{f1cn~M_t-sOrX%7vn6`?ozc>Wrt!LFV^Ocbzgv*)sb0N3g(i&|Z9L^G zq;{8ai^vRiylm9Ux%Y}OT}vUez_?2DvaL22YhH&p8!u`GTlX2)3jP*u^vfAL??_+sE19SOH+2yC3jrd6}wdzds8acXwNtaCKKwYyi$P}EYGo|UK^#K|K zBeP9fE-PO#6?TB#Sw2o0v&%Hr0J#Pqg}$}N^s%3i&OL7WArzXOw>s(6>n2N?0yIJw`4!0|+LP&xJK zVu0XMFNF>|>|-U+BTshH%ridQtsFv|uQW?KKKO`z8XW|>||uy z9y^>EW#`A@q72tl!ayAG{A_2M42UtR9jX1cWp5k=?=m^T6o9>b?YwUgtq-u~V7XuHLvP>zH@?wbfK@!OKWyROWTbA5$lBn>?vNr z@$R-9MVKZIwzc*X`a!9>{y>`TTO#yZX4<+xFI9`hR(aaicZ0^jqcl5#k{vc52yKE} zOU@+w(*~)U9&_2V%(~5-9Ltt53LQ72EH)rOnGwj?Y zKA~fmt~BU9N2Sr2i$&0L<&NI}p$1gYKvTR@eVqs$h8znp$PIHDUChl=w^iOIc6u_f7UU#uYkQ2Wo0|~pt;cr5nUAm zeP$~`)ZRmhF+i&`IFc#7lrk$U-)D5vCP_+y8U8dHoOHr)zJD|w2Nslvvs zs6R7L*`)~6f>jD0h0F^++pe3I?NCl=`h2R46H&`QQa&*Wr*BVTDCr)gT~k^>{SS&a zY`(2DfxIh9AL$Pv&Ap1!->)byz?~aPOPKhBk^>WNB0}>Yp#Kku9$!_`;KnsX&9;~V zq5cYbY`v!Rf$_|Phu!$5+5}o&N7?sRQMUNHk`A|7l&p)W2)}`fu`Ix}-z-58asvbG zWU`;Hqb#>IX$q}xBAd?Grt=;Cu=%Dk5WZuLH=97hq5UmoD1Q>TUhO7nZiAJvATg-YZFiJX4Nm-7`AvfvzbcY}8^HX7 zs!Vf#SL%fdQo0hE7FQ_E3^*zndm8AY5&*sLD}&(iZ6%!Uxvxx<7*uGxYUO_g3l?FUeE@|q=50$?(b##B#1ahrn2m2CYr}2L%Uuv4>Jya8I{-^T0=7fPBYN{c5 zs_9S%wUq%Jtw}S;vU&!AV~5%iO8ObR*c9mq4-D!c=o3d2z`_ZP^Hj^FyEM?K?vSsn-=K6Dna(Ci2n?0c{@Q5Go*t3a=@R2r+RI1%Sis_1MW(?P71Q9Fa9`DI5U`J3 zB^u07R38C%&L^rsfTqppey4i9F%n=Te|juHy`qKN7pOiGP;~h5V6{r)WBRKBu&SG< z483#NAB(Ecx@PLJC)FW0JZ-T5AZiSu>LD%W$uJfBk7Wy?J=9=WZZlfw-InS_O@FbK ziX*}GY>)xlbigW4qY+jH8g10tRz0h!>nEc+st>A5dK%5tx1IWh7UN!|TCKr{9rO}d zU$F|gxdkcCh18>ZXS~r5qLveH+CEM_t%dOEsNUC%c*Y^KjaHa6h$wVG zXZ47t!FGZnCf{hHUAn60G$Hn109;#6EVNs<;A8PJQ zO|igVo($LgSECG-Ul_gU;J)ewp`kb$OZ?zjgW3$v-&3At`%f4=H4-OKFHbd`mW@FQ^iQ%VU2`DcdeDJ&^k8Z;-qX7V%H4CU?T9z@eOC#!#GJjM@)iUZyIbRI{M_*Z{ zp|jQRG$C^Ybo7V%Y*_|e;0o2=uz*br4wn=*3hvd0nWx-1=&ROak;I@%JFQWV3&_@-Ol_bB;Zy8u^wiIy zu~2deXG+*Qw#y(?pr;S^@2>SK)p)iq(m5N|9|ccwCgHN+rfm14ue_x;H2@ufLA|%D zlZ#U^2HWZAn(b}dCWsMV&toG|loT@7x5SCg^tSnYJhWj1w~hCcrtn;IN0x}rJ-gsgO81K(R}YpD1^wbS3O zs+YA$jhao1tqvM=gDpYs{`jU^sJY`Nf#>us+&;$MuzJ(8KdRd`_fP|AU%ZXj=#ih) z^P1zPUsS7>!Uw;pi?tYHl8kRBFQZ+1#H**i4-7Yg0ByqVI+7SG9Q}a-JtJn#|1gvL}qFBZ0Dl&X7Y&^{(*yZ zppq}an+ zed9r}H@H3kMzzI$-5E@t5gKX?ApuVWp(&wyy?j1VoKKInOopV0`Qi_uQ*6O>LpaHi zK)Q$%6Ys<0;rvCMj&d79BnA~4*_M=Q@NNXbotR4v?TKB3EusjXQcNnE>KW5uH8hSy zYgTV`B>P1ez=CWvwKKV@@pw|0Ah{a}fh>#Ni_YyzK6pYyQG=t+%k;1h5T9 zO@Fp{L(k!45cDq54~$*Ii9=$%N>4ve@TS6H@dy@}!w>&S!Zmn*G{K{cNg*YL_=0t@ zBM_3JNCcglNOXQ~Rl}+$U(x3uVsgPPuOf+~F z!Oe$<{^MnWcNuPk7e^V2%M=x2K36O>Y%XyaMzb&EN#d8CBolwfB^mf5E~zfZ}WcD`1k5u9}t^fD8 zcy!9((U~iM4vNoL5b_#n%HN>)`v}h$f5JiIMvlEe8#(q0ZRFTXw2@=4(MFEFNEVWf`&#cz+YVefw@Q_jfY2?s|L0$#6@2X8H>m)sRF)VL?We1Fy)a&L)hr&^Zv`{eVNaPKA(?# zJ|FmeKJNLv*?d0g`Ml74J}CLT+T}@-&i!d@>Np{Cx5cEB^p7BNn>^zaxe%#jh6l_O!v{d?KTXTtIpv8Bl<^ z)Ixp%Hd_n-7DQe~IwIF&875H+uPx&Z9b3jNJqt;96!tE}ifSRZkn}+EVIfaRT8`gA-TNU7jCOsVfMSg@S5fYcRuqSQk63LbU8Aiu8QxkapGNzq9w ziEO}mko5*OSp_9;U|UsC^9H6<1qrK35|Ybr5@Q+x#*1~8OgkjoIA6TJcXR!CNdPsgiT}!lJZSl zSTD%H%~-_)ShAT1JG+?&3)n(hOLfp|3ki{GV9XZmt{T|Ag`^{~y+wv28UGfph8j2_ zNXS+)0=bvBk|ZnN(7N2ly0U+P6Wd7~-YlJ{^xsCFM>2IA8HVJeZCFGNShthskc{2V zgO+b6&m!lugA2z9a$pDdGri48>f5}f_ul4~mYtluD9C}GxNvH~@D2`B4Gek*%dLU6 zg8U>%*Im4p*LPu$)WD@(JXp+b9Qqn~WjAm3+-@=oxyU_Sm$!#IT-ZZiKw-qY*ss;_ z^1Eatk_&=F?nRSon7tQ!s~TW08H=QLFUG8fe*19ZRl^cNPVd9XRSmZNq@R^<`MYfR z#V^?o$@@rq!263Atk{ohxf+W1!3L$&9H}iGExnr z1eqfUFj7GeQF3Wg1pnPT*NpQ^AghjoeRV`RqK88L9)$Pg$MQA@>cj!9=qQ8e=$4<3 z;sbQFGl(Jj(*VD{vvc{zd#WW$ILeRE(fCLmUF@KvqG%nN;&kNESw~&F=;&@Y9i8l} zqu@b0YL%#?>ZfycI4Vg;wr6zIda#amG@zEry6l}HI!e9OLep$pY;`Qcz1!0-YwKoj}Y-c|o3;#9XL%h|v9?{vaI**1l=f4U} z+l~^Be%z^}se2is!`C}kOv~k`!j>|WaFoW*2adKM($RB=bu{Ti9c??JqhZH%H2Z{( zQa{#F{AW6P>7YR=;F6ijJFLhM)6+^V# z?7#DqTz)Xj_zoo;d0o{}?;AQga8pNzZ|P_%J4(36;a_yr>b{Nws&wRTK!fUZS--z@ zR94?!hklQBRDwTUiqOX-9hp2CqNWS}p(#=|jR*@!9OmR(a4QPLB{Ks?c1N4* zB>{AZh5v>V*dA>v4sC0a9whz`T0{&A`0jYA0p-Q%vfFIOo!a2IiX5!&eU(^V054S-rP(OS(9E)e!BYPgE_(wIVlXeDH-gsQ!>PQz*H0RC z1GSDbGuCgG)N?|U-JGu9%E9O{`K`Gbnl^n435d8fig9{5`RVFYGT39MWQg@((YN`Q HMSU;;XW}i= diff --git a/docs/_build/html/searchindex.js b/docs/_build/html/searchindex.js index f5315791b..fab7d92d3 100644 --- a/docs/_build/html/searchindex.js +++ b/docs/_build/html/searchindex.js @@ -1 +1 @@ -Search.setIndex({"alltitles": {"DRS Download Tools": [[10, "module-gen3.tools.download.drs_download"]], "Download": [[11, "module-gen3.tools.indexing.download_manifest"]], "Gen3 Auth Helper": [[0, "gen3-auth-helper"]], "Gen3 File Class": [[1, "gen3-file-class"]], "Gen3 Index Class": [[3, "gen3-index-class"]], "Gen3 Jobs Class": [[4, "gen3-jobs-class"]], "Gen3 Metadata Class": [[5, "gen3-metadata-class"]], "Gen3 Object Class": [[6, "gen3-object-class"]], "Gen3 Query Class": [[7, "gen3-query-class"]], "Gen3 Submission Class": [[8, "gen3-submission-class"]], "Gen3 Tools": [[9, "gen3-tools"]], "Gen3 Workspace Storage": [[13, "gen3-workspace-storage"]], "Index": [[11, "module-gen3.tools.indexing.index_manifest"]], "Indexing Tools": [[11, "indexing-tools"]], "Indices and tables": [[2, "indices-and-tables"]], "Ingest": [[12, "module-gen3.tools.metadata.ingest_manifest"]], "Metadata Tools": [[12, "metadata-tools"]], "Verify": [[11, "module-gen3.tools.indexing.verify_manifest"]], "Welcome to Gen3 SDK\u2019s documentation!": [[2, "welcome-to-gen3-sdk-s-documentation"]]}, "docnames": ["auth", "file", "index", "indexing", "jobs", "metadata", "object", "query", "submission", "tools", "tools/drs_pull", "tools/indexing", "tools/metadata", "wss"], "envversion": {"sphinx": 61, "sphinx.domains.c": 3, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 9, "sphinx.domains.index": 1, "sphinx.domains.javascript": 3, "sphinx.domains.math": 2, "sphinx.domains.python": 4, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx.ext.viewcode": 1}, "filenames": ["auth.rst", "file.rst", "index.rst", "indexing.rst", "jobs.rst", "metadata.rst", "object.rst", "query.rst", "submission.rst", "tools.rst", "tools/drs_pull.rst", "tools/indexing.rst", "tools/metadata.rst", "wss.rst"], "indexentries": {"_manager (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable._manager", false]], "access_methods (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.access_methods", false]], "acls (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.ACLS", false]], "async_create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_create", false]], "async_create_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_create_aliases", false]], "async_create_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_create_record", false]], "async_delete_alias() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_delete_alias", false]], "async_delete_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_delete_aliases", false]], "async_download_object_manifest() (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.async_download_object_manifest", false]], "async_get() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_get", false]], "async_get_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_get_aliases", false]], "async_get_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_record", false]], "async_get_records_from_checksum() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_records_from_checksum", false]], "async_get_records_on_page() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_records_on_page", false]], "async_get_with_params() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_with_params", false]], "async_ingest_metadata_manifest() (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.async_ingest_metadata_manifest", false]], "async_query_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_query_urls", false]], "async_query_urls_from_indexd() (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.async_query_urls_from_indexd", false]], "async_run_job_and_wait() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.async_run_job_and_wait", false]], "async_update() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_update", false]], "async_update_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_update_aliases", false]], "async_update_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_update_record", false]], "async_verify_object_manifest() (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.async_verify_object_manifest", false]], "auth_provider (gen3.metadata.gen3metadata attribute)": [[5, "gen3.metadata.Gen3Metadata.auth_provider", false]], "authz (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.AUTHZ", false]], "batch_create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.batch_create", false]], "cache_hosts_wts_tokens() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.cache_hosts_wts_tokens", false]], "children (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.children", false]], "column_to_use_as_guid (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.COLUMN_TO_USE_AS_GUID", false]], "commons_url (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.commons_url", false]], "copy() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.copy", false]], "create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create", false]], "create_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create_aliases", false]], "create_blank() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_blank", false]], "create_index_key_path() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create_index_key_path", false]], "create_job() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.create_job", false]], "create_new_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_new_version", false]], "create_object_list() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.create_object_list", false]], "create_program() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.create_program", false]], "create_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.create_project", false]], "create_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_record", false]], "created_time (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.created_time", false]], "curl() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.curl", false]], "current_dir (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.CURRENT_DIR", false]], "current_dir (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.CURRENT_DIR", false]], "current_dir (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.CURRENT_DIR", false]], "delete() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete", false]], "delete_alias() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_alias", false]], "delete_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_aliases", false]], "delete_all_guids() (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.delete_all_guids", false]], "delete_file() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.delete_file", false]], "delete_file_locations() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.delete_file_locations", false]], "delete_index_key_path() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_index_key_path", false]], "delete_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_node", false]], "delete_nodes() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_nodes", false]], "delete_object() (gen3.object.gen3object method)": [[6, "gen3.object.Gen3Object.delete_object", false]], "delete_program() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_program", false]], "delete_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_project", false]], "delete_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.delete_record", false]], "delete_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_record", false]], "delete_records() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_records", false]], "download() (gen3.tools.download.drs_download.downloadable method)": [[10, "gen3.tools.download.drs_download.Downloadable.download", false]], "download() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.download", false]], "download() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.download", false]], "download_files_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.download_files_in_drs_manifest", false]], "download_single() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.download_single", false]], "download_url() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.download_url", false]], "downloadable (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.Downloadable", false]], "downloadmanager (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.DownloadManager", false]], "downloadstatus (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.DownloadStatus", false]], "end_time (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.end_time", false]], "endpoint (gen3.metadata.gen3metadata attribute)": [[5, "gen3.metadata.Gen3Metadata.endpoint", false]], "export_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.export_node", false]], "export_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.export_record", false]], "file_name (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.file_name", false]], "file_name (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.file_name", false]], "file_size (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.file_size", false]], "file_size (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.file_size", false]], "gen3.tools": [[9, "module-gen3.tools", false]], "gen3.tools.download.drs_download": [[10, "module-gen3.tools.download.drs_download", false]], "gen3.tools.indexing.download_manifest": [[11, "module-gen3.tools.indexing.download_manifest", false]], "gen3.tools.indexing.index_manifest": [[11, "module-gen3.tools.indexing.index_manifest", false]], "gen3.tools.indexing.verify_manifest": [[11, "module-gen3.tools.indexing.verify_manifest", false]], "gen3.tools.metadata.ingest_manifest": [[12, "module-gen3.tools.metadata.ingest_manifest", false]], "gen3auth (class in gen3.auth)": [[0, "gen3.auth.Gen3Auth", false]], "gen3file (class in gen3.file)": [[1, "gen3.file.Gen3File", false]], "gen3index (class in gen3.index)": [[3, "gen3.index.Gen3Index", false]], "gen3jobs (class in gen3.jobs)": [[4, "gen3.jobs.Gen3Jobs", false]], "gen3metadata (class in gen3.metadata)": [[5, "gen3.metadata.Gen3Metadata", false]], "gen3object (class in gen3.object)": [[6, "gen3.object.Gen3Object", false]], "gen3query (class in gen3.query)": [[7, "gen3.query.Gen3Query", false]], "gen3submission (class in gen3.submission)": [[8, "gen3.submission.Gen3Submission", false]], "gen3wsstorage (class in gen3.wss)": [[13, "gen3.wss.Gen3WsStorage", false]], "get() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get", false]], "get() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get", false]], "get_access_token() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.get_access_token", false]], "get_access_token_from_wts() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.get_access_token_from_wts", false]], "get_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_aliases", false]], "get_all_records() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_all_records", false]], "get_dictionary_all() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_dictionary_all", false]], "get_dictionary_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_dictionary_node", false]], "get_fresh_token() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.get_fresh_token", false]], "get_graphql_schema() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_graphql_schema", false]], "get_guids_prefix() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_guids_prefix", false]], "get_index_key_paths() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_index_key_paths", false]], "get_latest_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_latest_version", false]], "get_output() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_output", false]], "get_presigned_url() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.get_presigned_url", false]], "get_programs() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_programs", false]], "get_project_dictionary() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_project_dictionary", false]], "get_project_manifest() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_project_manifest", false]], "get_projects() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_projects", false]], "get_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_record", false]], "get_record_doc() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_record_doc", false]], "get_records() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_records", false]], "get_records_on_page() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_records_on_page", false]], "get_stats() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_stats", false]], "get_status() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_status", false]], "get_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_urls", false]], "get_valid_guids() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_valid_guids", false]], "get_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_version", false]], "get_version() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_version", false]], "get_version() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_version", false]], "get_versions() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_versions", false]], "get_with_params() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_with_params", false]], "graphql_query() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.graphql_query", false]], "guid (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.GUID", false]], "guid_type_for_indexed_file_object (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.GUID_TYPE_FOR_INDEXED_FILE_OBJECT", false]], "guid_type_for_non_indexed_file_object (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.GUID_TYPE_FOR_NON_INDEXED_FILE_OBJECT", false]], "hostname (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.hostname", false]], "index_object_manifest() (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.index_object_manifest", false]], "indexd_record_page_size (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.INDEXD_RECORD_PAGE_SIZE", false]], "is_healthy() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.is_healthy", false]], "is_healthy() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.is_healthy", false]], "is_healthy() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.is_healthy", false]], "list_access_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_access_in_drs_manifest", false]], "list_drs_object() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_drs_object", false]], "list_files_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_files_in_drs_manifest", false]], "list_jobs() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.list_jobs", false]], "load() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.load", false]], "load_manifest() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.load_manifest", false]], "ls() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.ls", false]], "ls_path() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.ls_path", false]], "manifest (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.Manifest", false]], "max_concurrent_requests (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.MAX_CONCURRENT_REQUESTS", false]], "max_concurrent_requests (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.MAX_CONCURRENT_REQUESTS", false]], "max_concurrent_requests (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.MAX_CONCURRENT_REQUESTS", false]], "md5 (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.MD5", false]], "md5sum (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.md5sum", false]], "module": [[9, "module-gen3.tools", false], [10, "module-gen3.tools.download.drs_download", false], [11, "module-gen3.tools.indexing.download_manifest", false], [11, "module-gen3.tools.indexing.index_manifest", false], [11, "module-gen3.tools.indexing.verify_manifest", false], [12, "module-gen3.tools.metadata.ingest_manifest", false]], "object_id (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.object_id", false]], "object_id (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.object_id", false]], "object_type (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.object_type", false]], "open_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.open_project", false]], "pprint() (gen3.tools.download.drs_download.downloadable method)": [[10, "gen3.tools.download.drs_download.Downloadable.pprint", false]], "prev_guid (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.PREV_GUID", false]], "query() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.query", false]], "query() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.query", false]], "query() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.query", false]], "query_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.query_urls", false]], "raw_data_download() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.raw_data_download", false]], "refresh_access_token() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.refresh_access_token", false]], "resolve_objects() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.resolve_objects", false]], "rm() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.rm", false]], "rm_path() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.rm_path", false]], "size (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.SIZE", false]], "start_time (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.start_time", false]], "status (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.status", false]], "submit_file() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.submit_file", false]], "submit_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.submit_record", false]], "threadcontrol (class in gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.ThreadControl", false]], "tmp_folder (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.TMP_FOLDER", false]], "update() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.update", false]], "update_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.update_aliases", false]], "update_blank() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.update_blank", false]], "update_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.update_record", false]], "updated_time (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.updated_time", false]], "upload() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.upload", false]], "upload_file() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.upload_file", false]], "upload_file_to_guid() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.upload_file_to_guid", false]], "upload_url() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.upload_url", false]], "urls (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.URLS", false]], "user_access() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.user_access", false]]}, "objects": {"gen3": [[9, 3, 0, "-", "tools"]], "gen3.auth": [[0, 0, 1, "", "Gen3Auth"]], "gen3.auth.Gen3Auth": [[0, 1, 1, "", "curl"], [0, 1, 1, "", "get_access_token"], [0, 1, 1, "", "get_access_token_from_wts"], [0, 1, 1, "", "refresh_access_token"]], "gen3.file": [[1, 0, 1, "", "Gen3File"]], "gen3.file.Gen3File": [[1, 1, 1, "", "delete_file"], [1, 1, 1, "", "delete_file_locations"], [1, 1, 1, "", "download_single"], [1, 1, 1, "", "get_presigned_url"], [1, 1, 1, "", "upload_file"], [1, 1, 1, "", "upload_file_to_guid"]], "gen3.index": [[3, 0, 1, "", "Gen3Index"]], "gen3.index.Gen3Index": [[3, 1, 1, "", "async_create_record"], [3, 1, 1, "", "async_get_record"], [3, 1, 1, "", "async_get_records_from_checksum"], [3, 1, 1, "", "async_get_records_on_page"], [3, 1, 1, "", "async_get_with_params"], [3, 1, 1, "", "async_query_urls"], [3, 1, 1, "", "async_update_record"], [3, 1, 1, "", "create_blank"], [3, 1, 1, "", "create_new_version"], [3, 1, 1, "", "create_record"], [3, 1, 1, "", "delete_record"], [3, 1, 1, "", "get"], [3, 1, 1, "", "get_all_records"], [3, 1, 1, "", "get_guids_prefix"], [3, 1, 1, "", "get_latest_version"], [3, 1, 1, "", "get_record"], [3, 1, 1, "", "get_record_doc"], [3, 1, 1, "", "get_records"], [3, 1, 1, "", "get_records_on_page"], [3, 1, 1, "", "get_stats"], [3, 1, 1, "", "get_urls"], [3, 1, 1, "", "get_valid_guids"], [3, 1, 1, "", "get_version"], [3, 1, 1, "", "get_versions"], [3, 1, 1, "", "get_with_params"], [3, 1, 1, "", "is_healthy"], [3, 1, 1, "", "query_urls"], [3, 1, 1, "", "update_blank"], [3, 1, 1, "", "update_record"]], "gen3.jobs": [[4, 0, 1, "", "Gen3Jobs"]], "gen3.jobs.Gen3Jobs": [[4, 1, 1, "", "async_run_job_and_wait"], [4, 1, 1, "", "create_job"], [4, 1, 1, "", "get_output"], [4, 1, 1, "", "get_status"], [4, 1, 1, "", "get_version"], [4, 1, 1, "", "is_healthy"], [4, 1, 1, "", "list_jobs"]], "gen3.metadata": [[5, 0, 1, "", "Gen3Metadata"]], "gen3.metadata.Gen3Metadata": [[5, 1, 1, "", "async_create"], [5, 1, 1, "", "async_create_aliases"], [5, 1, 1, "", "async_delete_alias"], [5, 1, 1, "", "async_delete_aliases"], [5, 1, 1, "", "async_get"], [5, 1, 1, "", "async_get_aliases"], [5, 1, 1, "", "async_update"], [5, 1, 1, "", "async_update_aliases"], [5, 2, 1, "", "auth_provider"], [5, 1, 1, "", "batch_create"], [5, 1, 1, "", "create"], [5, 1, 1, "", "create_aliases"], [5, 1, 1, "", "create_index_key_path"], [5, 1, 1, "", "delete"], [5, 1, 1, "", "delete_alias"], [5, 1, 1, "", "delete_aliases"], [5, 1, 1, "", "delete_index_key_path"], [5, 2, 1, "", "endpoint"], [5, 1, 1, "", "get"], [5, 1, 1, "", "get_aliases"], [5, 1, 1, "", "get_index_key_paths"], [5, 1, 1, "", "get_version"], [5, 1, 1, "", "is_healthy"], [5, 1, 1, "", "query"], [5, 1, 1, "", "update"], [5, 1, 1, "", "update_aliases"]], "gen3.object": [[6, 0, 1, "", "Gen3Object"]], "gen3.object.Gen3Object": [[6, 1, 1, "", "delete_object"]], "gen3.query": [[7, 0, 1, "", "Gen3Query"]], "gen3.query.Gen3Query": [[7, 1, 1, "", "graphql_query"], [7, 1, 1, "", "query"], [7, 1, 1, "", "raw_data_download"]], "gen3.submission": [[8, 0, 1, "", "Gen3Submission"]], "gen3.submission.Gen3Submission": [[8, 1, 1, "", "create_program"], [8, 1, 1, "", "create_project"], [8, 1, 1, "", "delete_node"], [8, 1, 1, "", "delete_nodes"], [8, 1, 1, "", "delete_program"], [8, 1, 1, "", "delete_project"], [8, 1, 1, "", "delete_record"], [8, 1, 1, "", "delete_records"], [8, 1, 1, "", "export_node"], [8, 1, 1, "", "export_record"], [8, 1, 1, "", "get_dictionary_all"], [8, 1, 1, "", "get_dictionary_node"], [8, 1, 1, "", "get_graphql_schema"], [8, 1, 1, "", "get_programs"], [8, 1, 1, "", "get_project_dictionary"], [8, 1, 1, "", "get_project_manifest"], [8, 1, 1, "", "get_projects"], [8, 1, 1, "", "open_project"], [8, 1, 1, "", "query"], [8, 1, 1, "", "submit_file"], [8, 1, 1, "", "submit_record"]], "gen3.tools.download": [[10, 3, 0, "-", "drs_download"]], "gen3.tools.download.drs_download": [[10, 0, 1, "", "DownloadManager"], [10, 0, 1, "", "DownloadStatus"], [10, 0, 1, "", "Downloadable"], [10, 0, 1, "", "Manifest"], [10, 4, 1, "", "download_files_in_drs_manifest"], [10, 4, 1, "", "list_access_in_drs_manifest"], [10, 4, 1, "", "list_drs_object"], [10, 4, 1, "", "list_files_in_drs_manifest"]], "gen3.tools.download.drs_download.DownloadManager": [[10, 1, 1, "", "cache_hosts_wts_tokens"], [10, 1, 1, "", "download"], [10, 1, 1, "", "get_fresh_token"], [10, 1, 1, "", "resolve_objects"], [10, 1, 1, "", "user_access"]], "gen3.tools.download.drs_download.DownloadStatus": [[10, 2, 1, "", "end_time"], [10, 2, 1, "", "start_time"], [10, 2, 1, "", "status"]], "gen3.tools.download.drs_download.Downloadable": [[10, 2, 1, "", "_manager"], [10, 2, 1, "", "access_methods"], [10, 2, 1, "", "children"], [10, 2, 1, "", "created_time"], [10, 1, 1, "", "download"], [10, 2, 1, "", "file_name"], [10, 2, 1, "", "file_size"], [10, 2, 1, "", "hostname"], [10, 2, 1, "", "object_id"], [10, 2, 1, "", "object_type"], [10, 1, 1, "", "pprint"], [10, 2, 1, "", "updated_time"]], "gen3.tools.download.drs_download.Manifest": [[10, 2, 1, "", "commons_url"], [10, 1, 1, "", "create_object_list"], [10, 2, 1, "", "file_name"], [10, 2, 1, "", "file_size"], [10, 1, 1, "", "load"], [10, 1, 1, "", "load_manifest"], [10, 2, 1, "", "md5sum"], [10, 2, 1, "", "object_id"]], "gen3.tools.indexing": [[11, 3, 0, "-", "download_manifest"], [11, 3, 0, "-", "index_manifest"], [11, 3, 0, "-", "verify_manifest"]], "gen3.tools.indexing.download_manifest": [[11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "INDEXD_RECORD_PAGE_SIZE"], [11, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [11, 2, 1, "", "TMP_FOLDER"], [11, 4, 1, "", "async_download_object_manifest"]], "gen3.tools.indexing.index_manifest": [[11, 2, 1, "", "ACLS"], [11, 2, 1, "", "AUTHZ"], [11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "GUID"], [11, 2, 1, "", "MD5"], [11, 2, 1, "", "PREV_GUID"], [11, 2, 1, "", "SIZE"], [11, 0, 1, "", "ThreadControl"], [11, 2, 1, "", "URLS"], [11, 4, 1, "", "delete_all_guids"], [11, 4, 1, "", "index_object_manifest"]], "gen3.tools.indexing.verify_manifest": [[11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [11, 4, 1, "", "async_verify_object_manifest"]], "gen3.tools.metadata": [[12, 3, 0, "-", "ingest_manifest"]], "gen3.tools.metadata.ingest_manifest": [[12, 2, 1, "", "COLUMN_TO_USE_AS_GUID"], [12, 2, 1, "", "GUID_TYPE_FOR_INDEXED_FILE_OBJECT"], [12, 2, 1, "", "GUID_TYPE_FOR_NON_INDEXED_FILE_OBJECT"], [12, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [12, 4, 1, "", "async_ingest_metadata_manifest"], [12, 4, 1, "", "async_query_urls_from_indexd"]], "gen3.wss": [[13, 0, 1, "", "Gen3WsStorage"]], "gen3.wss.Gen3WsStorage": [[13, 1, 1, "", "copy"], [13, 1, 1, "", "download"], [13, 1, 1, "", "download_url"], [13, 1, 1, "", "ls"], [13, 1, 1, "", "ls_path"], [13, 1, 1, "", "rm"], [13, 1, 1, "", "rm_path"], [13, 1, 1, "", "upload"], [13, 1, 1, "", "upload_url"]]}, "objnames": {"0": ["py", "class", "Python class"], "1": ["py", "method", "Python method"], "2": ["py", "attribute", "Python attribute"], "3": ["py", "module", "Python module"], "4": ["py", "function", "Python function"]}, "objtypes": {"0": "py:class", "1": "py:method", "2": "py:attribute", "3": "py:module", "4": "py:function"}, "terms": {"": [1, 4, 8, 10, 11], "0": [5, 7, 8, 11], "0046513": [], "052073": [], "064572": [], "07464": [], "0a80fada010c": 11, "0a80fada096c": 11, "0a80fada097c": 11, "0a80fada098c": 11, "0a80fada099c": 11, "1": [4, 5, 8, 10, 11], "10": [5, 7, 11], "100": [8, 11], "11e9": 11, "1713542306": [], "1713542765": [], "1713543033": [], "1713543225": [], "1713543506": [], "1713543956": [], "1713544131": [], "1713544132": [], "1713544397": [], "1713544598": [], "1713545857": [], "1713545858": [], "1713549370": [], "1713549689": [11, 12], "1771936": [], "1913438": [], "2": [5, 11], "24": [11, 12], "255e396f": 11, "2877355": [], "2930224": [], "2995": [], "3": [5, 11], "30": 8, "3102272": 11, "33": 5, "333": 5, "343434344": 11, "363455714": 11, "4": [5, 11], "4017086": [], "4052968": [], "4463434": [], "450c": 11, "4649727": [], "4714": 8, "473d83400bc1bc9dc635e334fadd433c": 11, "473d83400bc1bc9dc635e334faddd33c": 11, "473d83400bc1bc9dc635e334fadde33c": 11, "473d83400bc1bc9dc635e334faddf33c": 11, "5": [0, 5], "50": 7, "543434443": 11, "5669184": [], "5899982": [], "6692646": [], "6739478": 12, "674552": [], "6f90": 8, "7232893": [], "760149": [], "7d3d8d2083b4": 11, "8044841": [], "8375325": [], "8420": 8, "8882551": [], "93d9af72": 11, "9a07": 11, "A": [1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "AND": 5, "Be": 1, "But": 5, "By": 11, "For": [1, 5, 6, 7, 8, 9, 11], "IF": 11, "If": [0, 1, 7, 11, 12], "In": 10, "It": 10, "NOT": 12, "OR": 5, "One": 7, "Such": 9, "THE": 11, "That": 3, "The": [0, 1, 2, 3, 5, 8, 10, 11], "There": 11, "These": 9, "To": 11, "Will": [4, 7, 10], "_get_acl_from_row": 11, "_get_authz_from_row": 11, "_get_file_name_from_row": 11, "_get_file_size_from_row": 11, "_get_guid_for_row": 12, "_get_guid_from_row": 11, "_get_md5_from_row": 11, "_get_urls_from_row": 11, "_guid_typ": 12, "_manag": [2, 9, 10], "_query_for_associated_indexd_record_guid": 12, "_ssl": [3, 4, 5], "a5c6": 11, "ab167e49d25b488939b1ede42752458b": 3, "about": [2, 3], "abov": 11, "access": [0, 1, 3, 7, 10], "access_method": [2, 9, 10], "access_token": 0, "accesstoken": 0, "acl": [2, 3, 9, 11], "across": 11, "act": 0, "action": [9, 11], "actual": 11, "ad": 3, "add": [3, 5], "addit": [3, 5, 10, 11], "admin": [5, 11], "admin_endpoint_suffix": 5, "after": 10, "against": [3, 7, 8, 11, 12], "algorithm": 3, "alia": [3, 5], "alias": 5, "aliv": 7, "all": [1, 3, 4, 5, 6, 7, 8, 10, 11, 12], "allow": [0, 6, 8, 10, 11, 12], "allowed_data_upload_bucket": 1, "along": 2, "alreadi": 9, "also": 1, "altern": [5, 11], "alwai": 5, "ammount": 12, "amount": [1, 9], "an": [0, 3, 6, 8, 10, 11], "ani": [0, 5, 10, 11], "anoth": 5, "api": [0, 5, 8, 11], "api_kei": 11, "appli": 7, "appropri": 13, "ar": [5, 7, 8, 9, 10, 11], "arbitrari": 0, "argument": [0, 13], "arrai": 8, "asc": 7, "assign": 9, "assist": 10, "associ": [3, 5], "assum": 11, "async": [3, 4, 5, 9, 11, 12], "async_cr": [2, 5], "async_create_alias": [2, 5], "async_create_record": [2, 3], "async_delete_alia": [2, 5], "async_delete_alias": [2, 5], "async_download_object_manifest": [2, 9, 11], "async_get": [2, 5], "async_get_alias": [2, 5], "async_get_record": [2, 3], "async_get_records_from_checksum": [2, 3], "async_get_records_on_pag": [2, 3], "async_get_with_param": [2, 3], "async_ingest_metadata_manifest": [2, 9, 12], "async_query_url": [2, 3], "async_query_urls_from_indexd": [2, 9, 12], "async_run_job_and_wait": [2, 4], "async_upd": [2, 5], "async_update_alias": [2, 5], "async_update_record": [2, 3], "async_verify_object_manifest": [2, 9, 11], "asynchron": [3, 4, 5], "asyncio": [11, 12], "asyncron": 5, "attach": [3, 5], "attempt": 11, "attribut": [10, 11], "auth": [1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "auth_provid": [1, 2, 3, 4, 5, 6, 7, 8, 13], "authbas": 0, "authent": 0, "author": 1, "authz": [0, 1, 2, 3, 9, 10, 11], "auto": [0, 2], "automat": 0, "avail": [1, 2, 10, 11], "az": 1, "b": [5, 11], "b0f1": 11, "bar": 10, "base": [0, 1, 3, 4, 5, 6, 7, 8, 9, 11, 13], "baseid": 3, "basic": [3, 11, 12], "batch_creat": [2, 5], "batch_siz": 8, "behalf": 0, "behavior": 11, "being": 3, "belong": 8, "below": 11, "blank": 3, "blob": [5, 7], "bodi": 3, "bool": [4, 5, 8, 10, 11, 12], "boolean": 3, "bownload": 10, "broad": 9, "broken": 9, "bucket": [1, 6], "bundl": 10, "byte": 10, "c": [5, 11], "cach": 10, "cache_hosts_wts_token": [2, 9, 10], "call": [10, 13], "can": [0, 3, 4, 8, 11, 12], "capabl": 9, "case": [0, 10], "categori": 9, "ccle": 8, "ccle_one_record": 8, "ccle_sample_nod": 8, "cdi": 7, "chang": [3, 11], "checksum": [3, 10], "checksum_typ": 3, "child": 10, "children": [2, 9, 10], "chunk_siz": 8, "class": [0, 2, 10, 11, 13], "cli": 10, "client": [0, 3], "client_credenti": 0, "client_id": 0, "client_scop": 0, "client_secret": 0, "code": [2, 8], "column": [11, 12], "column_to_use_as_guid": [2, 9, 12], "columna": 11, "columnb": 11, "columnc": 11, "com": 7, "comma": 11, "command": [10, 11], "common": [0, 1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13], "commons_url": [2, 9, 10, 11, 12], "complet": [4, 11], "complex": 7, "concat": 11, "concurr": [11, 12], "configur": 1, "connect": 12, "consist": 3, "constructor": 0, "contain": [0, 2, 5, 8, 9, 10, 11, 12], "content": [3, 13], "content_created_d": 3, "content_updated_d": 3, "continu": 10, "control": 3, "conveni": 10, "copi": [2, 13], "coroutin": 11, "correspond": 3, "count": 3, "crdc": 0, "creat": [2, 3, 4, 5, 6, 8, 10, 11], "create_alias": [2, 5], "create_blank": [2, 3], "create_index_key_path": [2, 5], "create_job": [2, 4], "create_new_vers": [2, 3], "create_object_list": [2, 9, 10], "create_program": [2, 8], "create_project": [2, 8], "create_record": [2, 3], "created_tim": [2, 9, 10], "creation": [3, 11], "cred": 3, "credenti": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "csv": [8, 11, 12], "curl": [0, 2], "current": [6, 8, 10], "current_dir": [2, 9, 11], "custom": 11, "d": 5, "d70b41b9": 8, "data": [0, 1, 3, 5, 7, 8, 10, 11], "data_spreadsheet": 8, "data_typ": 7, "data_upload_bucket": 1, "dataa": 11, "datab": 11, "databas": 5, "datacommon": 0, "datafil": 10, "datamanag": 10, "date": 3, "datetim": [1, 3, 10], "dbgap": 12, "dcf": 8, "def": 11, "default": [0, 1, 3, 7, 8, 11, 12], "defin": [5, 8, 10], "delai": 4, "delet": [0, 1, 2, 3, 5, 6, 8, 10, 11], "delete_alia": [2, 5], "delete_alias": [2, 5], "delete_all_guid": [2, 9, 11], "delete_fil": [1, 2], "delete_file_loc": [1, 2, 6], "delete_index_key_path": [2, 5], "delete_nod": [2, 8], "delete_object": [2, 6], "delete_program": [2, 8], "delete_project": [2, 8], "delete_record": [2, 3, 8], "delete_unpacked_packag": 10, "delimet": [11, 12], "delimit": 11, "demograph": 8, "deprec": 1, "descript": [3, 5], "desir": 11, "dest_path": 13, "dest_urlstr": 13, "dest_w": 13, "dest_wskei": 13, "detail": [2, 7, 10], "determin": [10, 11, 12], "dev": 11, "dict": [3, 4, 5, 10, 11, 12], "dictionari": [3, 4, 5, 7, 8], "did": 3, "differ": 5, "direct": 0, "directori": [10, 11], "disabl": 10, "discoveri": 10, "disk": 13, "dispatch": 4, "dist_resolut": 3, "distribut": 3, "doc": [7, 10], "docstr": 2, "document": [1, 3], "doe": [0, 12], "domain": [11, 12], "done": 4, "download": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 13], "download_files_in_drs_manifest": [2, 9, 10], "download_list": 10, "download_manifest": 11, "download_singl": [1, 2], "download_url": [2, 13], "downloadmanag": [2, 9, 10], "downloadstatu": [2, 9, 10], "dr": [2, 9], "drs_download": 10, "drs_hostnam": 10, "drsdownload": 10, "drsobjecttyp": 10, "e": [5, 10], "e043ab8b77b9": 8, "each": [3, 8, 10, 11], "effici": 9, "eg": 3, "either": 8, "elasticsearch": 7, "els": [0, 12], "elsewher": 12, "empti": [8, 11], "enabl": 11, "end": [5, 10], "end_tim": [2, 9, 10], "endpoint": [0, 1, 2, 3, 4, 5, 7, 8, 13], "entir": 8, "entri": [3, 11], "env": 0, "environ": 0, "equal": 7, "error": [10, 11, 12], "error_nam": 11, "etc": 8, "even": 11, "everi": [9, 11], "everyth": 11, "ex": [0, 11, 12], "exampl": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "exclud": 3, "execut": [7, 8, 11], "exist": [1, 3, 5, 6, 9, 12], "expect": [5, 9, 11], "experi": 8, "expir": [0, 1], "expires_in": 1, "export": [8, 10], "export_nod": [2, 8], "export_record": [2, 8], "f1f8": 11, "factori": 10, "fail": [8, 10], "fals": [3, 5, 6, 10, 11], "featur": [1, 6], "fenc": [0, 1], "fetch": 0, "field": [3, 5, 7, 11, 12], "fieldnam": 11, "file": [0, 2, 3, 4, 8, 9, 10, 11, 12, 13], "file_nam": [1, 2, 3, 9, 10, 11], "file_s": [2, 9, 10, 11], "file_st": 3, "fileformat": 8, "filenam": [0, 8, 10, 11, 12], "files": 10, "fill": 12, "filter": [5, 7], "filter_object": 7, "first": [7, 8], "flag": 11, "folder": 11, "follow": [0, 11], "forc": 11, "force_metadata_columns_even_if_empti": 11, "form": 13, "format": [3, 5, 8, 11], "from": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13], "func_to_parse_row": [11, 12], "function": [2, 3, 4, 5, 9, 10, 11, 12], "g": 10, "gen3": [10, 11, 12], "gen3_api_kei": 0, "gen3_oidc_client_creds_secret": 0, "gen3auth": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "gen3fil": [1, 2], "gen3index": [2, 3], "gen3job": [2, 4, 10], "gen3metadata": [2, 5], "gen3object": [2, 6], "gen3queri": [2, 7], "gen3submiss": [2, 8], "gen3wsstorag": [2, 13], "gener": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 13], "get": [0, 1, 2, 3, 4, 5, 8, 10, 11, 12, 13], "get_access_token": [0, 2], "get_access_token_from_wt": [0, 2], "get_alias": [2, 5], "get_all_record": [2, 3], "get_dictionary_al": [2, 8], "get_dictionary_nod": [2, 8], "get_fresh_token": [2, 9, 10], "get_graphql_schema": [2, 8], "get_guid_from_fil": 12, "get_guids_prefix": [2, 3], "get_index_key_path": [2, 5], "get_latest_vers": [2, 3], "get_output": [2, 4], "get_presigned_url": [1, 2], "get_program": [2, 8], "get_project": [2, 8], "get_project_dictionari": [2, 8], "get_project_manifest": [2, 8], "get_record": [2, 3], "get_record_doc": [2, 3], "get_records_on_pag": [2, 3], "get_stat": [2, 3], "get_statu": [2, 4], "get_url": [2, 3], "get_valid_guid": [2, 3], "get_vers": [2, 3, 4, 5], "get_with_param": [2, 3], "giangb": 11, "github": [2, 7], "give": 1, "given": [0, 3, 4, 5, 8, 10, 12, 13], "global": [4, 5], "good": 3, "grant": 0, "graph": 8, "graphql": [7, 8], "graphql_queri": [2, 7], "group": 3, "guid": [1, 2, 3, 5, 6, 9, 11, 12], "guid_exampl": 11, "guid_for_row": 12, "guid_from_fil": 12, "guid_type_for_indexed_file_object": [2, 9, 12], "guid_type_for_non_indexed_file_object": [2, 9, 12], "guppi": 7, "ha": [0, 11], "handl": [3, 10], "hardcod": 0, "has_vers": 3, "hash": [3, 11], "hash_typ": 3, "have": [5, 11], "header": 11, "healthi": [3, 4, 5], "help": 11, "helper": 2, "hit": 11, "host": 10, "hostnam": [2, 9, 10], "how": [8, 11], "howto": 10, "http": [0, 7, 11, 12], "i": [0, 1, 2, 3, 4, 5, 8, 10, 11, 12], "id": [0, 1, 3, 5, 10, 11], "idea": 3, "identifi": [3, 5, 9, 11], "idp": 0, "illustr": 11, "immut": 3, "implement": 0, "implic": 11, "import": 11, "includ": [0, 3], "indent": 10, "index": [0, 2, 5, 9], "index_manifest": 11, "index_object_manifest": [2, 9, 11], "indexd": [1, 3, 6, 10, 11, 12], "indexd_field": [11, 12], "indexd_record_page_s": [2, 9, 11], "indexed_file_object_guid": 12, "indic": [0, 11], "infil": 10, "info": [3, 11], "inform": [2, 3, 10], "ingest": [2, 9], "ingest_manifest": 12, "initi": [0, 10], "input": [4, 10, 11], "input_manifest": 11, "instal": [0, 2, 11], "instanc": [1, 3, 6, 7, 8, 9, 10], "instead": [1, 7, 11], "int": [1, 3, 5, 7, 8, 10, 11, 12], "integ": [1, 3, 8], "intend": 0, "interact": [1, 3, 4, 5, 6, 8, 13], "interest": 10, "interpret": 0, "introspect": 8, "involv": 9, "is_healthi": [2, 3, 4, 5], "is_indexed_file_object": 12, "isn": 1, "issu": 0, "its": [1, 3], "job": 2, "job_id": 4, "job_input": 4, "job_nam": 4, "json": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "just": [5, 11, 12], "jwt": 0, "kei": [0, 3, 5, 13], "know": 11, "known": 10, "kwarg": [3, 4, 5], "l": [2, 13], "larg": 9, "last": 10, "latest": 3, "least": 3, "level": 6, "librari": 11, "like": [3, 5, 9, 11, 12], "limit": [1, 3, 5, 12], "linear": 4, "linux": 10, "list": [0, 1, 3, 4, 5, 7, 8, 10, 11, 13], "list_access_in_drs_manifest": [2, 9, 10], "list_drs_object": [2, 9, 10], "list_files_in_drs_manifest": [2, 9, 10], "list_job": [2, 4], "live": [11, 12], "load": [2, 9, 10], "load_manifest": [2, 9, 10], "local": [0, 13], "locat": [1, 6], "lock": 12, "log": [8, 10, 11, 12], "logic": [5, 12], "loop": 11, "ls_path": [2, 13], "maco": 11, "made": 3, "mai": [0, 9, 11], "main": 10, "make": [9, 11], "manag": [1, 5, 10], "mani": [8, 11], "manifest": [2, 8, 9, 10, 11, 12], "manifest_1": 10, "manifest_fil": [11, 12], "manifest_file_delimit": [11, 12], "manifest_row_pars": [11, 12], "map": [0, 11], "mark": 8, "master": 7, "match": [3, 5, 12], "max": 5, "max_concurrent_request": [2, 9, 11, 12], "max_presigned_url_ttl": 1, "max_tri": 8, "maximum": [11, 12], "md": [5, 7, 10, 12], "md5": [2, 3, 9, 11], "md5_hash": 11, "md5sum": [2, 9, 10], "mean": 8, "mechan": 3, "merg": 5, "metadata": [2, 3, 6, 9, 11], "metadata_list": 5, "metadata_sourc": 12, "metadata_typ": 12, "metdata": 12, "method": [1, 7, 10], "minimum": 10, "minut": 0, "mode": 7, "modul": [2, 10, 11], "more": [2, 5, 7, 9, 10], "most": 9, "mostli": 2, "multipl": [8, 11], "must": [1, 5], "my_common": 10, "my_credenti": 10, "my_field": 7, "my_index": 7, "my_program": 7, "my_project": 7, "name": [3, 4, 8, 10, 11, 12, 13], "namespac": [0, 12], "necessari": [3, 5], "need": [3, 7, 10, 11], "nest": 5, "net": 11, "never": 0, "new": [0, 3], "node": 8, "node_nam": 8, "node_typ": 8, "none": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "note": [0, 3, 11, 12], "noth": [3, 6], "now": [1, 8], "num": 5, "num_process": 11, "num_total_fil": 11, "number": [3, 7, 8, 11, 12], "o": 0, "object": [1, 2, 3, 4, 5, 7, 8, 9, 10, 11, 13], "object_id": [1, 2, 9, 10], "object_list": 10, "object_typ": [2, 9, 10], "objectid": 10, "obtain": [0, 10], "occur": 10, "off": 5, "offset": [5, 7], "oidc": 0, "old": 3, "one": [3, 5, 10, 11], "onli": [3, 5, 7, 8, 10, 11], "open": [8, 10, 11], "open_project": [2, 8], "openid": 0, "opt": 0, "option": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11], "order": [0, 8], "ordered_node_list": 8, "org": 10, "otherwis": 10, "output": [4, 5, 11, 12], "output_dir": 10, "output_filenam": [11, 12], "overrid": [0, 11, 12], "overwrit": 5, "own": 0, "packag": 10, "page": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 13], "pagin": 3, "parallel": 11, "param": [3, 5, 8, 10], "paramet": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "pars": [10, 11, 12, 13], "parser": [11, 12], "particular": 0, "pass": [0, 7, 8, 10], "password": [11, 12], "path": [0, 1, 5, 10, 11, 13], "path_to_manifest": 11, "pattern": [3, 12], "pdcdatastor": 11, "pend": 10, "per": [11, 12], "peregrin": 8, "permiss": 10, "persist": 9, "phs0001": 11, "phs0002": 11, "pick": 1, "pla": 11, "place": 11, "planx": 11, "point": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "popul": [10, 12], "posit": [1, 7], "possibl": 10, "post": [0, 11], "pprint": [2, 9, 10], "prefix": 3, "presign": 1, "pretti": 10, "prev_guid": [2, 9, 11], "previou": [3, 11], "previous": 4, "print": [8, 10], "process": 11, "processed_fil": 11, "profil": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "program": [8, 11], "progress": [8, 10], "project": [8, 11], "project_id": [7, 8], "protocol": 1, "provid": [0, 1, 3, 5, 7, 8, 12], "public": [3, 5], "put": 0, "py": 11, "python": [2, 9, 11], "python3": 11, "python_subprocess_command": 11, "queri": [1, 2, 3, 5, 8, 11, 12], "query_str": 7, "query_txt": [7, 8], "query_url": [2, 3], "quickstart": 2, "rather": 0, "raw": [7, 11], "raw_data_download": [2, 7], "rbac": 3, "read": [3, 5, 11], "readm": 2, "reason": 10, "record": [1, 3, 5, 7, 8, 11, 12], "refresh": [0, 10], "refresh_access_token": [0, 2], "refresh_fil": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "refresh_token": 0, "regist": 8, "regular": 7, "relat": 9, "remov": [1, 6, 11, 13], "replac": 11, "replace_url": 11, "repo": 2, "repres": [3, 5, 10], "represent": [1, 3], "request": [0, 1, 3, 5, 8, 11, 12], "requir": 10, "resolv": 10, "resolve_object": [2, 9, 10], "respect": 7, "respons": [0, 1, 3, 4, 5], "result": [1, 8, 10, 11], "retri": 8, "retriev": [1, 8, 10, 12], "return": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11], "return_full_metadata": 5, "rev": 3, "revers": 8, "revis": 3, "right": 1, "rm": [2, 13], "rm_path": [2, 13], "root": [11, 12], "row": [7, 8, 11, 12], "row_offset": 8, "rtype": 3, "run": [8, 11], "s3": [1, 10, 11], "safe": 11, "same": [5, 11, 13], "sampl": [8, 10], "sandbox": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "save": 10, "save_directori": 10, "schema": 8, "scope": [0, 1], "screen": 8, "script": 2, "search": [0, 2, 3], "second": [1, 4], "secret": 0, "see": [7, 10, 11], "self": 10, "semaphon": 12, "semaphor": 12, "separ": [0, 11], "server": 10, "servic": [1, 3, 4, 5, 6, 8, 11, 12, 13], "service_loc": [3, 4, 5], "session": 11, "set": [0, 1, 5, 10], "setup": 2, "sheepdog": 8, "should": [0, 8, 11], "show": 10, "show_progress": 10, "shown": 11, "sign": 1, "signpost": 3, "similar": 10, "simpl": 3, "simpli": 11, "sinc": 3, "singl": [1, 5, 8], "size": [2, 3, 9, 10, 11], "skip": 8, "sleep": 4, "so": 11, "some": [0, 2], "someth": 11, "sort": 7, "sort_field": 7, "sort_object": 7, "sourc": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "space": [0, 11], "specif": [5, 8, 11, 12], "specifi": [0, 1, 3, 11, 13], "spreadsheet": 8, "src_path": 13, "src_urlstr": 13, "src_w": 13, "src_wskei": 13, "ssl": [3, 4, 5], "start": [3, 4, 7, 8, 10], "start_tim": [2, 9, 10], "static": 10, "statu": [2, 4, 9, 10], "storag": [1, 2, 6], "store": [1, 3, 10], "str": [0, 1, 3, 4, 5, 7, 8, 10, 11, 12], "string": [0, 3, 5, 11, 13], "strip": 11, "sub": 8, "subject": [7, 8], "submiss": 2, "submit": [8, 11], "submit_additional_metadata_column": 11, "submit_fil": [2, 8], "submit_record": [2, 8], "submitter_id": 7, "success": 10, "successfulli": 10, "suffici": 3, "suppli": 3, "support": [0, 1, 5, 8, 11], "sure": 1, "synchron": 11, "syntax": 7, "system": [6, 7, 8, 9], "t": [1, 5, 11], "tab": 11, "task": 9, "temporari": 11, "test": 11, "test1": 11, "test2": 11, "test3": 11, "test4": 11, "test5": 11, "text": [1, 7, 8], "than": [0, 5], "thei": [0, 10], "them": [10, 11], "thi": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "those": 11, "thread": 11, "thread_num": 11, "threadcontrol": [2, 9, 11], "through": [8, 11], "tier": 7, "time": [1, 3, 8, 10, 11], "timestamp": 10, "tmp_folder": [2, 9, 11], "token": [0, 10], "tool": 2, "total": 11, "treat": [1, 5], "tree": 10, "true": [3, 4, 5, 6, 7, 8, 10, 11, 12], "try": 0, "tsv": [8, 11, 12], "tupl": [0, 3, 11, 12], "type": [1, 3, 4, 5, 7, 8, 10, 11, 12], "typic": 10, "uc": 7, "unaccess": 7, "under": [0, 8, 13], "uniqu": [1, 5], "unknown": 10, "unpack": 10, "unpack_packag": 10, "until": [4, 10], "up": [5, 9], "updat": [2, 3, 5, 10, 11], "update_alias": [2, 5], "update_blank": [2, 3], "update_record": [2, 3], "updated_tim": [2, 9, 10], "upload": [1, 2, 3, 8, 13], "upload_fil": [1, 2], "upload_file_to_guid": [1, 2], "upload_url": [2, 13], "url": [1, 2, 3, 9, 10, 11, 12, 13], "urls_metadata": 3, "us": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "usag": 11, "use_agg_md": 5, "user": [0, 10, 12], "user_access": [2, 9, 10], "usual": 12, "utcnow": 1, "util": 9, "uuid": [1, 3, 8], "uuid1": 8, "uuid2": 8, "valid": [3, 7], "valu": [0, 1, 3, 5, 7, 10, 11], "value_from_indexd": 11, "value_from_manifest": 11, "variabl": [0, 7, 8], "variou": 2, "verbos": [7, 8], "verif": 11, "verifi": [2, 9], "verify_manifest": 11, "verify_object_manifest": 11, "version": [3, 4, 5], "vital_statu": 7, "w": 13, "wa": 0, "wai": 10, "wait": 4, "want": [0, 3, 8], "warn": 11, "we": [3, 11], "web": 0, "what": 5, "when": [0, 3, 7, 10, 12], "where": [0, 3, 5, 11, 12], "whether": [3, 4, 5, 8, 11, 12], "which": [8, 10], "while": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "whose": 5, "within": [0, 2, 9], "without": [3, 5], "won": 5, "work": [0, 10], "workaround": 11, "worksheet": 8, "workspac": [0, 2], "wrapper": 10, "write": 11, "ws_urlstr": 13, "wskei": 13, "wss": 13, "wt": [0, 10], "x": 11, "xlsx": 8, "you": [0, 3, 8, 11], "your": 0}, "titles": ["Gen3 Auth Helper", "Gen3 File Class", "Welcome to Gen3 SDK\u2019s documentation!", "Gen3 Index Class", "Gen3 Jobs Class", "Gen3 Metadata Class", "Gen3 Object Class", "Gen3 Query Class", "Gen3 Submission Class", "Gen3 Tools", "DRS Download Tools", "Indexing Tools", "Metadata Tools", "Gen3 Workspace Storage"], "titleterms": {"": 2, "auth": 0, "class": [1, 3, 4, 5, 6, 7, 8], "document": 2, "download": [10, 11], "dr": 10, "file": 1, "gen3": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 13], "helper": 0, "index": [3, 11], "indic": 2, "ingest": 12, "job": 4, "metadata": [5, 12], "object": 6, "queri": 7, "sdk": 2, "storag": 13, "submiss": 8, "tabl": 2, "tool": [9, 10, 11, 12], "verifi": 11, "welcom": 2, "workspac": 13}}) \ No newline at end of file +Search.setIndex({"alltitles": {"DRS Download Tools": [[10, "module-gen3.tools.download.drs_download"]], "Download": [[11, "module-gen3.tools.indexing.download_manifest"]], "Gen3 Auth Helper": [[0, "gen3-auth-helper"]], "Gen3 File Class": [[1, "gen3-file-class"]], "Gen3 Index Class": [[3, "gen3-index-class"]], "Gen3 Jobs Class": [[4, "gen3-jobs-class"]], "Gen3 Metadata Class": [[5, "gen3-metadata-class"]], "Gen3 Object Class": [[6, "gen3-object-class"]], "Gen3 Query Class": [[7, "gen3-query-class"]], "Gen3 Submission Class": [[8, "gen3-submission-class"]], "Gen3 Tools": [[9, "gen3-tools"]], "Gen3 Workspace Storage": [[13, "gen3-workspace-storage"]], "Index": [[11, "module-gen3.tools.indexing.index_manifest"]], "Indexing Tools": [[11, "indexing-tools"]], "Indices and tables": [[2, "indices-and-tables"]], "Ingest": [[12, "module-gen3.tools.metadata.ingest_manifest"]], "Metadata Tools": [[12, "metadata-tools"]], "Verify": [[11, "module-gen3.tools.indexing.verify_manifest"]], "Welcome to Gen3 SDK\u2019s documentation!": [[2, "welcome-to-gen3-sdk-s-documentation"]]}, "docnames": ["auth", "file", "index", "indexing", "jobs", "metadata", "object", "query", "submission", "tools", "tools/drs_pull", "tools/indexing", "tools/metadata", "wss"], "envversion": {"sphinx": 61, "sphinx.domains.c": 3, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 9, "sphinx.domains.index": 1, "sphinx.domains.javascript": 3, "sphinx.domains.math": 2, "sphinx.domains.python": 4, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx.ext.viewcode": 1}, "filenames": ["auth.rst", "file.rst", "index.rst", "indexing.rst", "jobs.rst", "metadata.rst", "object.rst", "query.rst", "submission.rst", "tools.rst", "tools/drs_pull.rst", "tools/indexing.rst", "tools/metadata.rst", "wss.rst"], "indexentries": {"_manager (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable._manager", false]], "access_methods (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.access_methods", false]], "acls (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.ACLS", false]], "async_create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_create", false]], "async_create_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_create_aliases", false]], "async_create_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_create_record", false]], "async_delete_alias() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_delete_alias", false]], "async_delete_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_delete_aliases", false]], "async_download_object_manifest() (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.async_download_object_manifest", false]], "async_get() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_get", false]], "async_get_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_get_aliases", false]], "async_get_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_record", false]], "async_get_records_from_checksum() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_records_from_checksum", false]], "async_get_records_on_page() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_records_on_page", false]], "async_get_with_params() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_with_params", false]], "async_ingest_metadata_manifest() (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.async_ingest_metadata_manifest", false]], "async_query_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_query_urls", false]], "async_query_urls_from_indexd() (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.async_query_urls_from_indexd", false]], "async_run_job_and_wait() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.async_run_job_and_wait", false]], "async_update() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_update", false]], "async_update_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_update_aliases", false]], "async_update_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_update_record", false]], "async_verify_object_manifest() (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.async_verify_object_manifest", false]], "auth_provider (gen3.metadata.gen3metadata attribute)": [[5, "gen3.metadata.Gen3Metadata.auth_provider", false]], "authz (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.AUTHZ", false]], "batch_create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.batch_create", false]], "cache_hosts_wts_tokens() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.cache_hosts_wts_tokens", false]], "children (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.children", false]], "column_to_use_as_guid (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.COLUMN_TO_USE_AS_GUID", false]], "commons_url (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.commons_url", false]], "copy() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.copy", false]], "create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create", false]], "create_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create_aliases", false]], "create_blank() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_blank", false]], "create_index_key_path() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create_index_key_path", false]], "create_job() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.create_job", false]], "create_new_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_new_version", false]], "create_object_list() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.create_object_list", false]], "create_program() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.create_program", false]], "create_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.create_project", false]], "create_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_record", false]], "created_time (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.created_time", false]], "curl() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.curl", false]], "current_dir (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.CURRENT_DIR", false]], "current_dir (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.CURRENT_DIR", false]], "current_dir (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.CURRENT_DIR", false]], "delete() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete", false]], "delete_alias() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_alias", false]], "delete_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_aliases", false]], "delete_all_guids() (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.delete_all_guids", false]], "delete_file() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.delete_file", false]], "delete_file_locations() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.delete_file_locations", false]], "delete_index_key_path() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_index_key_path", false]], "delete_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_node", false]], "delete_nodes() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_nodes", false]], "delete_object() (gen3.object.gen3object method)": [[6, "gen3.object.Gen3Object.delete_object", false]], "delete_program() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_program", false]], "delete_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_project", false]], "delete_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.delete_record", false]], "delete_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_record", false]], "delete_records() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_records", false]], "download() (gen3.tools.download.drs_download.downloadable method)": [[10, "gen3.tools.download.drs_download.Downloadable.download", false]], "download() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.download", false]], "download() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.download", false]], "download_files_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.download_files_in_drs_manifest", false]], "download_single() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.download_single", false]], "download_url() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.download_url", false]], "downloadable (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.Downloadable", false]], "downloadmanager (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.DownloadManager", false]], "downloadstatus (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.DownloadStatus", false]], "end_time (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.end_time", false]], "endpoint (gen3.metadata.gen3metadata attribute)": [[5, "gen3.metadata.Gen3Metadata.endpoint", false]], "export_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.export_node", false]], "export_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.export_record", false]], "file_name (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.file_name", false]], "file_name (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.file_name", false]], "file_size (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.file_size", false]], "file_size (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.file_size", false]], "gen3.tools": [[9, "module-gen3.tools", false]], "gen3.tools.download.drs_download": [[10, "module-gen3.tools.download.drs_download", false]], "gen3.tools.indexing.download_manifest": [[11, "module-gen3.tools.indexing.download_manifest", false]], "gen3.tools.indexing.index_manifest": [[11, "module-gen3.tools.indexing.index_manifest", false]], "gen3.tools.indexing.verify_manifest": [[11, "module-gen3.tools.indexing.verify_manifest", false]], "gen3.tools.metadata.ingest_manifest": [[12, "module-gen3.tools.metadata.ingest_manifest", false]], "gen3auth (class in gen3.auth)": [[0, "gen3.auth.Gen3Auth", false]], "gen3file (class in gen3.file)": [[1, "gen3.file.Gen3File", false]], "gen3index (class in gen3.index)": [[3, "gen3.index.Gen3Index", false]], "gen3jobs (class in gen3.jobs)": [[4, "gen3.jobs.Gen3Jobs", false]], "gen3metadata (class in gen3.metadata)": [[5, "gen3.metadata.Gen3Metadata", false]], "gen3object (class in gen3.object)": [[6, "gen3.object.Gen3Object", false]], "gen3query (class in gen3.query)": [[7, "gen3.query.Gen3Query", false]], "gen3submission (class in gen3.submission)": [[8, "gen3.submission.Gen3Submission", false]], "gen3wsstorage (class in gen3.wss)": [[13, "gen3.wss.Gen3WsStorage", false]], "get() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get", false]], "get() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get", false]], "get_access_token() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.get_access_token", false]], "get_access_token_from_wts() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.get_access_token_from_wts", false]], "get_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_aliases", false]], "get_all_records() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_all_records", false]], "get_dictionary_all() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_dictionary_all", false]], "get_dictionary_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_dictionary_node", false]], "get_fresh_token() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.get_fresh_token", false]], "get_graphql_schema() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_graphql_schema", false]], "get_guids_prefix() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_guids_prefix", false]], "get_index_key_paths() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_index_key_paths", false]], "get_latest_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_latest_version", false]], "get_output() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_output", false]], "get_presigned_url() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.get_presigned_url", false]], "get_programs() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_programs", false]], "get_project_dictionary() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_project_dictionary", false]], "get_project_manifest() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_project_manifest", false]], "get_projects() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_projects", false]], "get_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_record", false]], "get_record_doc() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_record_doc", false]], "get_records() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_records", false]], "get_records_on_page() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_records_on_page", false]], "get_stats() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_stats", false]], "get_status() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_status", false]], "get_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_urls", false]], "get_valid_guids() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_valid_guids", false]], "get_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_version", false]], "get_version() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_version", false]], "get_version() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_version", false]], "get_versions() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_versions", false]], "get_with_params() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_with_params", false]], "graphql_query() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.graphql_query", false]], "guid (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.GUID", false]], "guid_type_for_indexed_file_object (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.GUID_TYPE_FOR_INDEXED_FILE_OBJECT", false]], "guid_type_for_non_indexed_file_object (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.GUID_TYPE_FOR_NON_INDEXED_FILE_OBJECT", false]], "hostname (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.hostname", false]], "index_object_manifest() (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.index_object_manifest", false]], "indexd_record_page_size (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.INDEXD_RECORD_PAGE_SIZE", false]], "is_healthy() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.is_healthy", false]], "is_healthy() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.is_healthy", false]], "is_healthy() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.is_healthy", false]], "list_access_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_access_in_drs_manifest", false]], "list_drs_object() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_drs_object", false]], "list_files_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_files_in_drs_manifest", false]], "list_jobs() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.list_jobs", false]], "load() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.load", false]], "load_manifest() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.load_manifest", false]], "ls() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.ls", false]], "ls_path() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.ls_path", false]], "manifest (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.Manifest", false]], "max_concurrent_requests (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.MAX_CONCURRENT_REQUESTS", false]], "max_concurrent_requests (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.MAX_CONCURRENT_REQUESTS", false]], "max_concurrent_requests (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.MAX_CONCURRENT_REQUESTS", false]], "md5 (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.MD5", false]], "md5sum (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.md5sum", false]], "module": [[9, "module-gen3.tools", false], [10, "module-gen3.tools.download.drs_download", false], [11, "module-gen3.tools.indexing.download_manifest", false], [11, "module-gen3.tools.indexing.index_manifest", false], [11, "module-gen3.tools.indexing.verify_manifest", false], [12, "module-gen3.tools.metadata.ingest_manifest", false]], "object_id (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.object_id", false]], "object_id (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.object_id", false]], "object_type (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.object_type", false]], "open_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.open_project", false]], "pprint() (gen3.tools.download.drs_download.downloadable method)": [[10, "gen3.tools.download.drs_download.Downloadable.pprint", false]], "prev_guid (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.PREV_GUID", false]], "query() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.query", false]], "query() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.query", false]], "query() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.query", false]], "query_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.query_urls", false]], "raw_data_download() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.raw_data_download", false]], "refresh_access_token() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.refresh_access_token", false]], "resolve_objects() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.resolve_objects", false]], "rm() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.rm", false]], "rm_path() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.rm_path", false]], "size (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.SIZE", false]], "start_time (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.start_time", false]], "status (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.status", false]], "submit_file() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.submit_file", false]], "submit_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.submit_record", false]], "threadcontrol (class in gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.ThreadControl", false]], "tmp_folder (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.TMP_FOLDER", false]], "update() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.update", false]], "update_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.update_aliases", false]], "update_blank() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.update_blank", false]], "update_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.update_record", false]], "updated_time (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.updated_time", false]], "upload() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.upload", false]], "upload_file() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.upload_file", false]], "upload_file_to_guid() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.upload_file_to_guid", false]], "upload_url() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.upload_url", false]], "urls (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.URLS", false]], "user_access() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.user_access", false]]}, "objects": {"gen3": [[9, 3, 0, "-", "tools"]], "gen3.auth": [[0, 0, 1, "", "Gen3Auth"]], "gen3.auth.Gen3Auth": [[0, 1, 1, "", "curl"], [0, 1, 1, "", "get_access_token"], [0, 1, 1, "", "get_access_token_from_wts"], [0, 1, 1, "", "refresh_access_token"]], "gen3.file": [[1, 0, 1, "", "Gen3File"]], "gen3.file.Gen3File": [[1, 1, 1, "", "delete_file"], [1, 1, 1, "", "delete_file_locations"], [1, 1, 1, "", "download_single"], [1, 1, 1, "", "get_presigned_url"], [1, 1, 1, "", "upload_file"], [1, 1, 1, "", "upload_file_to_guid"]], "gen3.index": [[3, 0, 1, "", "Gen3Index"]], "gen3.index.Gen3Index": [[3, 1, 1, "", "async_create_record"], [3, 1, 1, "", "async_get_record"], [3, 1, 1, "", "async_get_records_from_checksum"], [3, 1, 1, "", "async_get_records_on_page"], [3, 1, 1, "", "async_get_with_params"], [3, 1, 1, "", "async_query_urls"], [3, 1, 1, "", "async_update_record"], [3, 1, 1, "", "create_blank"], [3, 1, 1, "", "create_new_version"], [3, 1, 1, "", "create_record"], [3, 1, 1, "", "delete_record"], [3, 1, 1, "", "get"], [3, 1, 1, "", "get_all_records"], [3, 1, 1, "", "get_guids_prefix"], [3, 1, 1, "", "get_latest_version"], [3, 1, 1, "", "get_record"], [3, 1, 1, "", "get_record_doc"], [3, 1, 1, "", "get_records"], [3, 1, 1, "", "get_records_on_page"], [3, 1, 1, "", "get_stats"], [3, 1, 1, "", "get_urls"], [3, 1, 1, "", "get_valid_guids"], [3, 1, 1, "", "get_version"], [3, 1, 1, "", "get_versions"], [3, 1, 1, "", "get_with_params"], [3, 1, 1, "", "is_healthy"], [3, 1, 1, "", "query_urls"], [3, 1, 1, "", "update_blank"], [3, 1, 1, "", "update_record"]], "gen3.jobs": [[4, 0, 1, "", "Gen3Jobs"]], "gen3.jobs.Gen3Jobs": [[4, 1, 1, "", "async_run_job_and_wait"], [4, 1, 1, "", "create_job"], [4, 1, 1, "", "get_output"], [4, 1, 1, "", "get_status"], [4, 1, 1, "", "get_version"], [4, 1, 1, "", "is_healthy"], [4, 1, 1, "", "list_jobs"]], "gen3.metadata": [[5, 0, 1, "", "Gen3Metadata"]], "gen3.metadata.Gen3Metadata": [[5, 1, 1, "", "async_create"], [5, 1, 1, "", "async_create_aliases"], [5, 1, 1, "", "async_delete_alias"], [5, 1, 1, "", "async_delete_aliases"], [5, 1, 1, "", "async_get"], [5, 1, 1, "", "async_get_aliases"], [5, 1, 1, "", "async_update"], [5, 1, 1, "", "async_update_aliases"], [5, 2, 1, "", "auth_provider"], [5, 1, 1, "", "batch_create"], [5, 1, 1, "", "create"], [5, 1, 1, "", "create_aliases"], [5, 1, 1, "", "create_index_key_path"], [5, 1, 1, "", "delete"], [5, 1, 1, "", "delete_alias"], [5, 1, 1, "", "delete_aliases"], [5, 1, 1, "", "delete_index_key_path"], [5, 2, 1, "", "endpoint"], [5, 1, 1, "", "get"], [5, 1, 1, "", "get_aliases"], [5, 1, 1, "", "get_index_key_paths"], [5, 1, 1, "", "get_version"], [5, 1, 1, "", "is_healthy"], [5, 1, 1, "", "query"], [5, 1, 1, "", "update"], [5, 1, 1, "", "update_aliases"]], "gen3.object": [[6, 0, 1, "", "Gen3Object"]], "gen3.object.Gen3Object": [[6, 1, 1, "", "delete_object"]], "gen3.query": [[7, 0, 1, "", "Gen3Query"]], "gen3.query.Gen3Query": [[7, 1, 1, "", "graphql_query"], [7, 1, 1, "", "query"], [7, 1, 1, "", "raw_data_download"]], "gen3.submission": [[8, 0, 1, "", "Gen3Submission"]], "gen3.submission.Gen3Submission": [[8, 1, 1, "", "create_program"], [8, 1, 1, "", "create_project"], [8, 1, 1, "", "delete_node"], [8, 1, 1, "", "delete_nodes"], [8, 1, 1, "", "delete_program"], [8, 1, 1, "", "delete_project"], [8, 1, 1, "", "delete_record"], [8, 1, 1, "", "delete_records"], [8, 1, 1, "", "export_node"], [8, 1, 1, "", "export_record"], [8, 1, 1, "", "get_dictionary_all"], [8, 1, 1, "", "get_dictionary_node"], [8, 1, 1, "", "get_graphql_schema"], [8, 1, 1, "", "get_programs"], [8, 1, 1, "", "get_project_dictionary"], [8, 1, 1, "", "get_project_manifest"], [8, 1, 1, "", "get_projects"], [8, 1, 1, "", "open_project"], [8, 1, 1, "", "query"], [8, 1, 1, "", "submit_file"], [8, 1, 1, "", "submit_record"]], "gen3.tools.download": [[10, 3, 0, "-", "drs_download"]], "gen3.tools.download.drs_download": [[10, 0, 1, "", "DownloadManager"], [10, 0, 1, "", "DownloadStatus"], [10, 0, 1, "", "Downloadable"], [10, 0, 1, "", "Manifest"], [10, 4, 1, "", "download_files_in_drs_manifest"], [10, 4, 1, "", "list_access_in_drs_manifest"], [10, 4, 1, "", "list_drs_object"], [10, 4, 1, "", "list_files_in_drs_manifest"]], "gen3.tools.download.drs_download.DownloadManager": [[10, 1, 1, "", "cache_hosts_wts_tokens"], [10, 1, 1, "", "download"], [10, 1, 1, "", "get_fresh_token"], [10, 1, 1, "", "resolve_objects"], [10, 1, 1, "", "user_access"]], "gen3.tools.download.drs_download.DownloadStatus": [[10, 2, 1, "", "end_time"], [10, 2, 1, "", "start_time"], [10, 2, 1, "", "status"]], "gen3.tools.download.drs_download.Downloadable": [[10, 2, 1, "", "_manager"], [10, 2, 1, "", "access_methods"], [10, 2, 1, "", "children"], [10, 2, 1, "", "created_time"], [10, 1, 1, "", "download"], [10, 2, 1, "", "file_name"], [10, 2, 1, "", "file_size"], [10, 2, 1, "", "hostname"], [10, 2, 1, "", "object_id"], [10, 2, 1, "", "object_type"], [10, 1, 1, "", "pprint"], [10, 2, 1, "", "updated_time"]], "gen3.tools.download.drs_download.Manifest": [[10, 2, 1, "", "commons_url"], [10, 1, 1, "", "create_object_list"], [10, 2, 1, "", "file_name"], [10, 2, 1, "", "file_size"], [10, 1, 1, "", "load"], [10, 1, 1, "", "load_manifest"], [10, 2, 1, "", "md5sum"], [10, 2, 1, "", "object_id"]], "gen3.tools.indexing": [[11, 3, 0, "-", "download_manifest"], [11, 3, 0, "-", "index_manifest"], [11, 3, 0, "-", "verify_manifest"]], "gen3.tools.indexing.download_manifest": [[11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "INDEXD_RECORD_PAGE_SIZE"], [11, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [11, 2, 1, "", "TMP_FOLDER"], [11, 4, 1, "", "async_download_object_manifest"]], "gen3.tools.indexing.index_manifest": [[11, 2, 1, "", "ACLS"], [11, 2, 1, "", "AUTHZ"], [11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "GUID"], [11, 2, 1, "", "MD5"], [11, 2, 1, "", "PREV_GUID"], [11, 2, 1, "", "SIZE"], [11, 0, 1, "", "ThreadControl"], [11, 2, 1, "", "URLS"], [11, 4, 1, "", "delete_all_guids"], [11, 4, 1, "", "index_object_manifest"]], "gen3.tools.indexing.verify_manifest": [[11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [11, 4, 1, "", "async_verify_object_manifest"]], "gen3.tools.metadata": [[12, 3, 0, "-", "ingest_manifest"]], "gen3.tools.metadata.ingest_manifest": [[12, 2, 1, "", "COLUMN_TO_USE_AS_GUID"], [12, 2, 1, "", "GUID_TYPE_FOR_INDEXED_FILE_OBJECT"], [12, 2, 1, "", "GUID_TYPE_FOR_NON_INDEXED_FILE_OBJECT"], [12, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [12, 4, 1, "", "async_ingest_metadata_manifest"], [12, 4, 1, "", "async_query_urls_from_indexd"]], "gen3.wss": [[13, 0, 1, "", "Gen3WsStorage"]], "gen3.wss.Gen3WsStorage": [[13, 1, 1, "", "copy"], [13, 1, 1, "", "download"], [13, 1, 1, "", "download_url"], [13, 1, 1, "", "ls"], [13, 1, 1, "", "ls_path"], [13, 1, 1, "", "rm"], [13, 1, 1, "", "rm_path"], [13, 1, 1, "", "upload"], [13, 1, 1, "", "upload_url"]]}, "objnames": {"0": ["py", "class", "Python class"], "1": ["py", "method", "Python method"], "2": ["py", "attribute", "Python attribute"], "3": ["py", "module", "Python module"], "4": ["py", "function", "Python function"]}, "objtypes": {"0": "py:class", "1": "py:method", "2": "py:attribute", "3": "py:module", "4": "py:function"}, "terms": {"": [1, 4, 8, 10, 11], "0": [5, 7, 8, 11], "0046513": [], "052073": [], "064572": [], "07464": [], "0a80fada010c": 11, "0a80fada096c": 11, "0a80fada097c": 11, "0a80fada098c": 11, "0a80fada099c": 11, "1": [4, 5, 8, 10, 11], "10": [5, 7, 11], "100": [8, 11], "11e9": 11, "1713542306": [], "1713542765": [], "1713543033": [], "1713543225": [], "1713543506": [], "1713543956": [], "1713544131": [], "1713544132": [], "1713544397": [], "1713544598": [], "1713545857": [], "1713545858": [], "1713549370": [], "1713549689": [], "1713550571": [11, 12], "1771936": [], "1913438": [], "2": [5, 11], "24": [11, 12], "255e396f": 11, "2877355": [], "2930224": [], "2995": [], "3": [5, 11], "30": 8, "3102272": [], "33": 5, "333": 5, "343434344": 11, "363455714": 11, "4": [5, 11], "4017086": [], "4052968": [], "4463434": [], "450c": 11, "4649727": [], "4714": 8, "473d83400bc1bc9dc635e334fadd433c": 11, "473d83400bc1bc9dc635e334faddd33c": 11, "473d83400bc1bc9dc635e334fadde33c": 11, "473d83400bc1bc9dc635e334faddf33c": 11, "4756553": 11, "5": [0, 5], "50": 7, "543434443": 11, "5669184": [], "5899982": [], "6692646": [], "6739478": [], "674552": [], "6f90": 8, "7232893": [], "756255": 12, "760149": [], "7d3d8d2083b4": 11, "8044841": [], "8375325": [], "8420": 8, "8882551": [], "93d9af72": 11, "9a07": 11, "A": [1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "AND": 5, "Be": 1, "But": 5, "By": 11, "For": [1, 5, 6, 7, 8, 9, 11], "IF": 11, "If": [0, 1, 7, 11, 12], "In": 10, "It": 10, "NOT": 12, "OR": 5, "One": 7, "Such": 9, "THE": 11, "That": 3, "The": [0, 1, 2, 3, 5, 8, 10, 11], "There": 11, "These": 9, "To": 11, "Will": [4, 7, 10], "_get_acl_from_row": 11, "_get_authz_from_row": 11, "_get_file_name_from_row": 11, "_get_file_size_from_row": 11, "_get_guid_for_row": 12, "_get_guid_from_row": 11, "_get_md5_from_row": 11, "_get_urls_from_row": 11, "_guid_typ": 12, "_manag": [2, 9, 10], "_query_for_associated_indexd_record_guid": 12, "_ssl": [3, 4, 5], "a5c6": 11, "ab167e49d25b488939b1ede42752458b": 3, "about": [2, 3], "abov": 11, "access": [0, 1, 3, 7, 10], "access_method": [2, 9, 10], "access_token": 0, "accesstoken": 0, "acl": [2, 3, 9, 11], "across": 11, "act": 0, "action": [9, 11], "actual": 11, "ad": 3, "add": [3, 5], "addit": [3, 5, 10, 11], "admin": [5, 11], "admin_endpoint_suffix": 5, "after": 10, "against": [3, 7, 8, 11, 12], "algorithm": 3, "alia": [3, 5], "alias": 5, "aliv": 7, "all": [1, 3, 4, 5, 6, 7, 8, 10, 11, 12], "allow": [0, 6, 8, 10, 11, 12], "allowed_data_upload_bucket": 1, "along": 2, "alreadi": 9, "also": 1, "altern": [5, 11], "alwai": 5, "ammount": 12, "amount": [1, 9], "an": [0, 3, 6, 8, 10, 11], "ani": [0, 5, 10, 11], "anoth": 5, "api": [0, 5, 8, 11], "api_kei": 11, "appli": 7, "appropri": 13, "ar": [5, 7, 8, 9, 10, 11], "arbitrari": 0, "argument": [0, 13], "arrai": 8, "asc": 7, "assign": 9, "assist": 10, "associ": [3, 5], "assum": 11, "async": [3, 4, 5, 9, 11, 12], "async_cr": [2, 5], "async_create_alias": [2, 5], "async_create_record": [2, 3], "async_delete_alia": [2, 5], "async_delete_alias": [2, 5], "async_download_object_manifest": [2, 9, 11], "async_get": [2, 5], "async_get_alias": [2, 5], "async_get_record": [2, 3], "async_get_records_from_checksum": [2, 3], "async_get_records_on_pag": [2, 3], "async_get_with_param": [2, 3], "async_ingest_metadata_manifest": [2, 9, 12], "async_query_url": [2, 3], "async_query_urls_from_indexd": [2, 9, 12], "async_run_job_and_wait": [2, 4], "async_upd": [2, 5], "async_update_alias": [2, 5], "async_update_record": [2, 3], "async_verify_object_manifest": [2, 9, 11], "asynchron": [3, 4, 5], "asyncio": [11, 12], "asyncron": 5, "attach": [3, 5], "attempt": 11, "attribut": [10, 11], "auth": [1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "auth_provid": [1, 2, 3, 4, 5, 6, 7, 8, 13], "authbas": 0, "authent": 0, "author": 1, "authz": [0, 1, 2, 3, 9, 10, 11], "auto": [0, 2], "automat": 0, "avail": [1, 2, 10, 11], "az": 1, "b": [5, 11], "b0f1": 11, "bar": 10, "base": [0, 1, 3, 4, 5, 6, 7, 8, 9, 11, 13], "baseid": 3, "basic": [3, 11, 12], "batch_creat": [2, 5], "batch_siz": 8, "behalf": 0, "behavior": 11, "being": 3, "belong": 8, "below": 11, "blank": 3, "blob": [5, 7], "bodi": 3, "bool": [4, 5, 8, 10, 11, 12], "boolean": 3, "bownload": 10, "broad": 9, "broken": 9, "bucket": [1, 6], "bundl": 10, "byte": 10, "c": [5, 11], "cach": 10, "cache_hosts_wts_token": [2, 9, 10], "call": [10, 13], "can": [0, 3, 4, 8, 11, 12], "capabl": 9, "case": [0, 10], "categori": 9, "ccle": 8, "ccle_one_record": 8, "ccle_sample_nod": 8, "cdi": 7, "chang": [3, 11], "checksum": [3, 10], "checksum_typ": 3, "child": 10, "children": [2, 9, 10], "chunk_siz": 8, "class": [0, 2, 10, 11, 13], "cli": 10, "client": [0, 3], "client_credenti": 0, "client_id": 0, "client_scop": 0, "client_secret": 0, "code": [2, 8], "column": [11, 12], "column_to_use_as_guid": [2, 9, 12], "columna": 11, "columnb": 11, "columnc": 11, "com": 7, "comma": 11, "command": [10, 11], "common": [0, 1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13], "commons_url": [2, 9, 10, 11, 12], "complet": [4, 11], "complex": 7, "concat": 11, "concurr": [11, 12], "configur": 1, "connect": 12, "consist": 3, "constructor": 0, "contain": [0, 2, 5, 8, 9, 10, 11, 12], "content": [3, 13], "content_created_d": 3, "content_updated_d": 3, "continu": 10, "control": 3, "conveni": 10, "copi": [2, 13], "coroutin": 11, "correspond": 3, "count": 3, "crdc": 0, "creat": [2, 3, 4, 5, 6, 8, 10, 11], "create_alias": [2, 5], "create_blank": [2, 3], "create_index_key_path": [2, 5], "create_job": [2, 4], "create_new_vers": [2, 3], "create_object_list": [2, 9, 10], "create_program": [2, 8], "create_project": [2, 8], "create_record": [2, 3], "created_tim": [2, 9, 10], "creation": [3, 11], "cred": 3, "credenti": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "csv": [8, 11, 12], "curl": [0, 2], "current": [6, 8, 10], "current_dir": [2, 9, 11], "custom": 11, "d": 5, "d70b41b9": 8, "data": [0, 1, 3, 5, 7, 8, 10, 11], "data_spreadsheet": 8, "data_typ": 7, "data_upload_bucket": 1, "dataa": 11, "datab": 11, "databas": 5, "datacommon": 0, "datafil": 10, "datamanag": 10, "date": 3, "datetim": [1, 3, 10], "dbgap": 12, "dcf": 8, "def": 11, "default": [0, 1, 3, 7, 8, 11, 12], "defin": [5, 8, 10], "delai": 4, "delet": [0, 1, 2, 3, 5, 6, 8, 10, 11], "delete_alia": [2, 5], "delete_alias": [2, 5], "delete_all_guid": [2, 9, 11], "delete_fil": [1, 2], "delete_file_loc": [1, 2, 6], "delete_index_key_path": [2, 5], "delete_nod": [2, 8], "delete_object": [2, 6], "delete_program": [2, 8], "delete_project": [2, 8], "delete_record": [2, 3, 8], "delete_unpacked_packag": 10, "delimet": [11, 12], "delimit": 11, "demograph": 8, "deprec": 1, "descript": [3, 5], "desir": 11, "dest_path": 13, "dest_urlstr": 13, "dest_w": 13, "dest_wskei": 13, "detail": [2, 7, 10], "determin": [10, 11, 12], "dev": 11, "dict": [3, 4, 5, 10, 11, 12], "dictionari": [3, 4, 5, 7, 8], "did": 3, "differ": 5, "direct": 0, "directori": [10, 11], "disabl": 10, "discoveri": 10, "disk": 13, "dispatch": 4, "dist_resolut": 3, "distribut": 3, "doc": [7, 10], "docstr": 2, "document": [1, 3], "doe": [0, 12], "domain": [11, 12], "done": 4, "download": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 13], "download_files_in_drs_manifest": [2, 9, 10], "download_list": 10, "download_manifest": 11, "download_singl": [1, 2], "download_url": [2, 13], "downloadmanag": [2, 9, 10], "downloadstatu": [2, 9, 10], "dr": [2, 9], "drs_download": 10, "drs_hostnam": 10, "drsdownload": 10, "drsobjecttyp": 10, "e": [5, 10], "e043ab8b77b9": 8, "each": [3, 8, 10, 11], "effici": 9, "eg": 3, "either": 8, "elasticsearch": 7, "els": [0, 12], "elsewher": 12, "empti": [8, 11], "enabl": 11, "end": [5, 10], "end_tim": [2, 9, 10], "endpoint": [0, 1, 2, 3, 4, 5, 7, 8, 13], "entir": 8, "entri": [3, 11], "env": 0, "environ": 0, "equal": 7, "error": [10, 11, 12], "error_nam": 11, "etc": 8, "even": 11, "everi": [9, 11], "everyth": 11, "ex": [0, 11, 12], "exampl": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "exclud": 3, "execut": [7, 8, 11], "exist": [1, 3, 5, 6, 9, 12], "expect": [5, 9, 11], "experi": 8, "expir": [0, 1], "expires_in": 1, "export": [8, 10], "export_nod": [2, 8], "export_record": [2, 8], "f1f8": 11, "factori": 10, "fail": [8, 10], "fals": [3, 5, 6, 10, 11], "featur": [1, 6], "fenc": [0, 1], "fetch": 0, "field": [3, 5, 7, 11, 12], "fieldnam": 11, "file": [0, 2, 3, 4, 8, 9, 10, 11, 12, 13], "file_nam": [1, 2, 3, 9, 10, 11], "file_s": [2, 9, 10, 11], "file_st": 3, "fileformat": 8, "filenam": [0, 8, 10, 11, 12], "files": 10, "fill": 12, "filter": [5, 7], "filter_object": 7, "first": [7, 8], "flag": 11, "folder": 11, "follow": [0, 11], "forc": 11, "force_metadata_columns_even_if_empti": 11, "form": 13, "format": [3, 5, 8, 11], "from": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13], "func_to_parse_row": [11, 12], "function": [2, 3, 4, 5, 9, 10, 11, 12], "g": 10, "gen3": [10, 11, 12], "gen3_api_kei": 0, "gen3_oidc_client_creds_secret": 0, "gen3auth": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "gen3fil": [1, 2], "gen3index": [2, 3], "gen3job": [2, 4, 10], "gen3metadata": [2, 5], "gen3object": [2, 6], "gen3queri": [2, 7], "gen3submiss": [2, 8], "gen3wsstorag": [2, 13], "gener": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 13], "get": [0, 1, 2, 3, 4, 5, 8, 10, 11, 12, 13], "get_access_token": [0, 2], "get_access_token_from_wt": [0, 2], "get_alias": [2, 5], "get_all_record": [2, 3], "get_dictionary_al": [2, 8], "get_dictionary_nod": [2, 8], "get_fresh_token": [2, 9, 10], "get_graphql_schema": [2, 8], "get_guid_from_fil": 12, "get_guids_prefix": [2, 3], "get_index_key_path": [2, 5], "get_latest_vers": [2, 3], "get_output": [2, 4], "get_presigned_url": [1, 2], "get_program": [2, 8], "get_project": [2, 8], "get_project_dictionari": [2, 8], "get_project_manifest": [2, 8], "get_record": [2, 3], "get_record_doc": [2, 3], "get_records_on_pag": [2, 3], "get_stat": [2, 3], "get_statu": [2, 4], "get_url": [2, 3], "get_valid_guid": [2, 3], "get_vers": [2, 3, 4, 5], "get_with_param": [2, 3], "giangb": 11, "github": [2, 7], "give": 1, "given": [0, 3, 4, 5, 8, 10, 12, 13], "global": [4, 5], "good": 3, "grant": 0, "graph": 8, "graphql": [7, 8], "graphql_queri": [2, 7], "group": 3, "guid": [1, 2, 3, 5, 6, 9, 11, 12], "guid_exampl": 11, "guid_for_row": 12, "guid_from_fil": 12, "guid_type_for_indexed_file_object": [2, 9, 12], "guid_type_for_non_indexed_file_object": [2, 9, 12], "guppi": 7, "ha": [0, 11], "handl": [3, 10], "hardcod": 0, "has_vers": 3, "hash": [3, 11], "hash_typ": 3, "have": [5, 11], "header": 11, "healthi": [3, 4, 5], "help": 11, "helper": 2, "hit": 11, "host": 10, "hostnam": [2, 9, 10], "how": [8, 11], "howto": 10, "http": [0, 7, 11, 12], "i": [0, 1, 2, 3, 4, 5, 8, 10, 11, 12], "id": [0, 1, 3, 5, 10, 11], "idea": 3, "identifi": [3, 5, 9, 11], "idp": 0, "illustr": 11, "immut": 3, "implement": 0, "implic": 11, "import": 11, "includ": [0, 3], "indent": 10, "index": [0, 2, 5, 9], "index_manifest": 11, "index_object_manifest": [2, 9, 11], "indexd": [1, 3, 6, 10, 11, 12], "indexd_field": [11, 12], "indexd_record_page_s": [2, 9, 11], "indexed_file_object_guid": 12, "indic": [0, 11], "infil": 10, "info": [3, 11], "inform": [2, 3, 10], "ingest": [2, 9], "ingest_manifest": 12, "initi": [0, 10], "input": [4, 10, 11], "input_manifest": 11, "instal": [0, 2, 11], "instanc": [1, 3, 6, 7, 8, 9, 10], "instead": [1, 7, 11], "int": [1, 3, 5, 7, 8, 10, 11, 12], "integ": [1, 3, 8], "intend": 0, "interact": [1, 3, 4, 5, 6, 8, 13], "interest": 10, "interpret": 0, "introspect": 8, "involv": 9, "is_healthi": [2, 3, 4, 5], "is_indexed_file_object": 12, "isn": 1, "issu": 0, "its": [1, 3], "job": 2, "job_id": 4, "job_input": 4, "job_nam": 4, "json": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "just": [5, 11, 12], "jwt": 0, "kei": [0, 3, 5, 13], "know": 11, "known": 10, "kwarg": [3, 4, 5], "l": [2, 13], "larg": 9, "last": 10, "latest": 3, "least": 3, "level": 6, "librari": 11, "like": [3, 5, 9, 11, 12], "limit": [1, 3, 5, 12], "linear": 4, "linux": 10, "list": [0, 1, 3, 4, 5, 7, 8, 10, 11, 13], "list_access_in_drs_manifest": [2, 9, 10], "list_drs_object": [2, 9, 10], "list_files_in_drs_manifest": [2, 9, 10], "list_job": [2, 4], "live": [11, 12], "load": [2, 9, 10], "load_manifest": [2, 9, 10], "local": [0, 13], "locat": [1, 6], "lock": 12, "log": [8, 10, 11, 12], "logic": [5, 12], "loop": 11, "ls_path": [2, 13], "maco": 11, "made": 3, "mai": [0, 9, 11], "main": 10, "make": [9, 11], "manag": [1, 5, 10], "mani": [8, 11], "manifest": [2, 8, 9, 10, 11, 12], "manifest_1": 10, "manifest_fil": [11, 12], "manifest_file_delimit": [11, 12], "manifest_row_pars": [11, 12], "map": [0, 11], "mark": 8, "master": 7, "match": [3, 5, 12], "max": 5, "max_concurrent_request": [2, 9, 11, 12], "max_presigned_url_ttl": 1, "max_tri": 8, "maximum": [11, 12], "md": [5, 7, 10, 12], "md5": [2, 3, 9, 11], "md5_hash": 11, "md5sum": [2, 9, 10], "mean": 8, "mechan": 3, "merg": 5, "metadata": [2, 3, 6, 9, 11], "metadata_list": 5, "metadata_sourc": 12, "metadata_typ": 12, "metdata": 12, "method": [1, 7, 10], "minimum": 10, "minut": 0, "mode": 7, "modul": [2, 10, 11], "more": [2, 5, 7, 9, 10], "most": 9, "mostli": 2, "multipl": [8, 11], "must": [1, 5], "my_common": 10, "my_credenti": 10, "my_field": 7, "my_index": 7, "my_program": 7, "my_project": 7, "name": [3, 4, 8, 10, 11, 12, 13], "namespac": [0, 12], "necessari": [3, 5], "need": [3, 7, 10, 11], "nest": 5, "net": 11, "never": 0, "new": [0, 3], "node": 8, "node_nam": 8, "node_typ": 8, "none": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "note": [0, 3, 11, 12], "noth": [3, 6], "now": [1, 8], "num": 5, "num_process": 11, "num_total_fil": 11, "number": [3, 7, 8, 11, 12], "o": 0, "object": [1, 2, 3, 4, 5, 7, 8, 9, 10, 11, 13], "object_id": [1, 2, 9, 10], "object_list": 10, "object_typ": [2, 9, 10], "objectid": 10, "obtain": [0, 10], "occur": 10, "off": 5, "offset": [5, 7], "oidc": 0, "old": 3, "one": [3, 5, 10, 11], "onli": [3, 5, 7, 8, 10, 11], "open": [8, 10, 11], "open_project": [2, 8], "openid": 0, "opt": 0, "option": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11], "order": [0, 8], "ordered_node_list": 8, "org": 10, "otherwis": 10, "output": [4, 5, 11, 12], "output_dir": 10, "output_filenam": [11, 12], "overrid": [0, 11, 12], "overwrit": 5, "own": 0, "packag": 10, "page": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 13], "pagin": 3, "parallel": 11, "param": [3, 5, 8, 10], "paramet": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "pars": [10, 11, 12, 13], "parser": [11, 12], "particular": 0, "pass": [0, 7, 8, 10], "password": [11, 12], "path": [0, 1, 5, 10, 11, 13], "path_to_manifest": 11, "pattern": [3, 12], "pdcdatastor": 11, "pend": 10, "per": [11, 12], "peregrin": 8, "permiss": 10, "persist": 9, "phs0001": 11, "phs0002": 11, "pick": 1, "pla": 11, "place": 11, "planx": 11, "point": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "popul": [10, 12], "posit": [1, 7], "possibl": 10, "post": [0, 11], "pprint": [2, 9, 10], "prefix": 3, "presign": 1, "pretti": 10, "prev_guid": [2, 9, 11], "previou": [3, 11], "previous": 4, "print": [8, 10], "process": 11, "processed_fil": 11, "profil": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "program": [8, 11], "progress": [8, 10], "project": [8, 11], "project_id": [7, 8], "protocol": 1, "provid": [0, 1, 3, 5, 7, 8, 12], "public": [3, 5], "put": 0, "py": 11, "python": [2, 9, 11], "python3": 11, "python_subprocess_command": 11, "queri": [1, 2, 3, 5, 8, 11, 12], "query_str": 7, "query_txt": [7, 8], "query_url": [2, 3], "quickstart": 2, "rather": 0, "raw": [7, 11], "raw_data_download": [2, 7], "rbac": 3, "read": [3, 5, 11], "readm": 2, "reason": 10, "record": [1, 3, 5, 7, 8, 11, 12], "refresh": [0, 10], "refresh_access_token": [0, 2], "refresh_fil": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "refresh_token": 0, "regist": 8, "regular": 7, "relat": 9, "remov": [1, 6, 11, 13], "replac": 11, "replace_url": 11, "repo": 2, "repres": [3, 5, 10], "represent": [1, 3], "request": [0, 1, 3, 5, 8, 11, 12], "requir": 10, "resolv": 10, "resolve_object": [2, 9, 10], "respect": 7, "respons": [0, 1, 3, 4, 5], "result": [1, 8, 10, 11], "retri": 8, "retriev": [1, 8, 10, 12], "return": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11], "return_full_metadata": 5, "rev": 3, "revers": 8, "revis": 3, "right": 1, "rm": [2, 13], "rm_path": [2, 13], "root": [11, 12], "row": [7, 8, 11, 12], "row_offset": 8, "rtype": 3, "run": [8, 11], "s3": [1, 10, 11], "safe": 11, "same": [5, 11, 13], "sampl": [8, 10], "sandbox": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "save": 10, "save_directori": 10, "schema": 8, "scope": [0, 1], "screen": 8, "script": 2, "search": [0, 2, 3], "second": [1, 4], "secret": 0, "see": [7, 10, 11], "self": 10, "semaphon": 12, "semaphor": 12, "separ": [0, 11], "server": 10, "servic": [1, 3, 4, 5, 6, 8, 11, 12, 13], "service_loc": [3, 4, 5], "session": 11, "set": [0, 1, 5, 10], "setup": 2, "sheepdog": 8, "should": [0, 8, 11], "show": 10, "show_progress": 10, "shown": 11, "sign": 1, "signpost": 3, "similar": 10, "simpl": 3, "simpli": 11, "sinc": 3, "singl": [1, 5, 8], "size": [2, 3, 9, 10, 11], "skip": 8, "sleep": 4, "so": 11, "some": [0, 2], "someth": 11, "sort": 7, "sort_field": 7, "sort_object": 7, "sourc": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "space": [0, 11], "specif": [5, 8, 11, 12], "specifi": [0, 1, 3, 11, 13], "spreadsheet": 8, "src_path": 13, "src_urlstr": 13, "src_w": 13, "src_wskei": 13, "ssl": [3, 4, 5], "start": [3, 4, 7, 8, 10], "start_tim": [2, 9, 10], "static": 10, "statu": [2, 4, 9, 10], "storag": [1, 2, 6], "store": [1, 3, 10], "str": [0, 1, 3, 4, 5, 7, 8, 10, 11, 12], "string": [0, 3, 5, 11, 13], "strip": 11, "sub": 8, "subject": [7, 8], "submiss": 2, "submit": [8, 11], "submit_additional_metadata_column": 11, "submit_fil": [2, 8], "submit_record": [2, 8], "submitter_id": 7, "success": 10, "successfulli": 10, "suffici": 3, "suppli": 3, "support": [0, 1, 5, 8, 11], "sure": 1, "synchron": 11, "syntax": 7, "system": [6, 7, 8, 9], "t": [1, 5, 11], "tab": 11, "task": 9, "temporari": 11, "test": 11, "test1": 11, "test2": 11, "test3": 11, "test4": 11, "test5": 11, "text": [1, 7, 8], "than": [0, 5], "thei": [0, 10], "them": [10, 11], "thi": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "those": 11, "thread": 11, "thread_num": 11, "threadcontrol": [2, 9, 11], "through": [8, 11], "tier": 7, "time": [1, 3, 8, 10, 11], "timestamp": 10, "tmp_folder": [2, 9, 11], "token": [0, 10], "tool": 2, "total": 11, "treat": [1, 5], "tree": 10, "true": [3, 4, 5, 6, 7, 8, 10, 11, 12], "try": 0, "tsv": [8, 11, 12], "tupl": [0, 3, 11, 12], "type": [1, 3, 4, 5, 7, 8, 10, 11, 12], "typic": 10, "uc": 7, "unaccess": 7, "under": [0, 8, 13], "uniqu": [1, 5], "unknown": 10, "unpack": 10, "unpack_packag": 10, "until": [4, 10], "up": [5, 9], "updat": [2, 3, 5, 10, 11], "update_alias": [2, 5], "update_blank": [2, 3], "update_record": [2, 3], "updated_tim": [2, 9, 10], "upload": [1, 2, 3, 8, 13], "upload_fil": [1, 2], "upload_file_to_guid": [1, 2], "upload_url": [2, 13], "url": [1, 2, 3, 9, 10, 11, 12, 13], "urls_metadata": 3, "us": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "usag": 11, "use_agg_md": 5, "user": [0, 10, 12], "user_access": [2, 9, 10], "usual": 12, "utcnow": 1, "util": 9, "uuid": [1, 3, 8], "uuid1": 8, "uuid2": 8, "valid": [3, 7], "valu": [0, 1, 3, 5, 7, 10, 11], "value_from_indexd": 11, "value_from_manifest": 11, "variabl": [0, 7, 8], "variou": 2, "verbos": [7, 8], "verif": 11, "verifi": [2, 9], "verify_manifest": 11, "verify_object_manifest": 11, "version": [3, 4, 5], "vital_statu": 7, "w": 13, "wa": 0, "wai": 10, "wait": 4, "want": [0, 3, 8], "warn": 11, "we": [3, 11], "web": 0, "what": 5, "when": [0, 3, 7, 10, 12], "where": [0, 3, 5, 11, 12], "whether": [3, 4, 5, 8, 11, 12], "which": [8, 10], "while": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "whose": 5, "within": [0, 2, 9], "without": [3, 5], "won": 5, "work": [0, 10], "workaround": 11, "worksheet": 8, "workspac": [0, 2], "wrapper": 10, "write": 11, "ws_urlstr": 13, "wskei": 13, "wss": 13, "wt": [0, 10], "x": 11, "xlsx": 8, "you": [0, 3, 8, 11], "your": 0}, "titles": ["Gen3 Auth Helper", "Gen3 File Class", "Welcome to Gen3 SDK\u2019s documentation!", "Gen3 Index Class", "Gen3 Jobs Class", "Gen3 Metadata Class", "Gen3 Object Class", "Gen3 Query Class", "Gen3 Submission Class", "Gen3 Tools", "DRS Download Tools", "Indexing Tools", "Metadata Tools", "Gen3 Workspace Storage"], "titleterms": {"": 2, "auth": 0, "class": [1, 3, 4, 5, 6, 7, 8], "document": 2, "download": [10, 11], "dr": 10, "file": 1, "gen3": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 13], "helper": 0, "index": [3, 11], "indic": 2, "ingest": 12, "job": 4, "metadata": [5, 12], "object": 6, "queri": 7, "sdk": 2, "storag": 13, "submiss": 8, "tabl": 2, "tool": [9, 10, 11, 12], "verifi": 11, "welcom": 2, "workspac": 13}}) \ No newline at end of file diff --git a/docs/_build/html/tools/indexing.html b/docs/_build/html/tools/indexing.html index 775e9d7cb..1b43b2b45 100644 --- a/docs/_build/html/tools/indexing.html +++ b/docs/_build/html/tools/indexing.html @@ -381,7 +381,7 @@

Indexing Tools
-async gen3.tools.indexing.verify_manifest.async_verify_object_manifest(commons_url, manifest_file, max_concurrent_requests=24, manifest_row_parsers={'acl': <function _get_acl_from_row>, 'authz': <function _get_authz_from_row>, 'file_name': <function _get_file_name_from_row>, 'file_size': <function _get_file_size_from_row>, 'guid': <function _get_guid_from_row>, 'md5': <function _get_md5_from_row>, 'urls': <function _get_urls_from_row>}, manifest_file_delimiter=None, output_filename='verify-manifest-errors-1713549689.3102272.log')[source]
+async gen3.tools.indexing.verify_manifest.async_verify_object_manifest(commons_url, manifest_file, max_concurrent_requests=24, manifest_row_parsers={'acl': <function _get_acl_from_row>, 'authz': <function _get_authz_from_row>, 'file_name': <function _get_file_name_from_row>, 'file_size': <function _get_file_size_from_row>, 'guid': <function _get_guid_from_row>, 'md5': <function _get_md5_from_row>, 'urls': <function _get_urls_from_row>}, manifest_file_delimiter=None, output_filename='verify-manifest-errors-1713550571.4756553.log')[source]

Verify all file object records into a manifest csv

Parameters:
diff --git a/docs/_build/html/tools/metadata.html b/docs/_build/html/tools/metadata.html index 1a5187a53..664e0ecae 100644 --- a/docs/_build/html/tools/metadata.html +++ b/docs/_build/html/tools/metadata.html @@ -102,7 +102,7 @@

Metadata Tools
-async gen3.tools.metadata.ingest_manifest.async_ingest_metadata_manifest(commons_url, manifest_file, metadata_source, auth=None, max_concurrent_requests=24, manifest_row_parsers={'guid_for_row': <function _get_guid_for_row>, 'indexed_file_object_guid': <function _query_for_associated_indexd_record_guid>}, manifest_file_delimiter=None, output_filename='ingest-metadata-manifest-errors-1713549689.6739478.log', get_guid_from_file=True, metadata_type=None)[source]
+async gen3.tools.metadata.ingest_manifest.async_ingest_metadata_manifest(commons_url, manifest_file, metadata_source, auth=None, max_concurrent_requests=24, manifest_row_parsers={'guid_for_row': <function _get_guid_for_row>, 'indexed_file_object_guid': <function _query_for_associated_indexd_record_guid>}, manifest_file_delimiter=None, output_filename='ingest-metadata-manifest-errors-1713550571.756255.log', get_guid_from_file=True, metadata_type=None)[source]

Ingest all metadata records into a manifest csv

Parameters:
From f65b5990e9d39495ad23dc82681cc53e381a0afc Mon Sep 17 00:00:00 2001 From: Alex Date: Fri, 19 Apr 2024 15:06:14 -0500 Subject: [PATCH 27/62] tmp(test): try removing gen3users and see if that fixes the issue --- poetry.lock | 326 +++++++++++++++++++++++-------------------------- pyproject.toml | 9 +- 2 files changed, 162 insertions(+), 173 deletions(-) diff --git a/poetry.lock b/poetry.lock index d2822a747..bd88f168b 100644 --- a/poetry.lock +++ b/poetry.lock @@ -1,4 +1,4 @@ -# This file is automatically @generated by Poetry 1.7.1 and should not be changed by hand. +# This file is automatically @generated by Poetry 1.8.2 and should not be changed by hand. [[package]] name = "aiofiles" @@ -13,87 +13,87 @@ files = [ [[package]] name = "aiohttp" -version = "3.9.3" +version = "3.9.5" description = "Async http client/server framework (asyncio)" optional = false python-versions = ">=3.8" files = [ - {file = "aiohttp-3.9.3-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:939677b61f9d72a4fa2a042a5eee2a99a24001a67c13da113b2e30396567db54"}, - {file = "aiohttp-3.9.3-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:1f5cd333fcf7590a18334c90f8c9147c837a6ec8a178e88d90a9b96ea03194cc"}, - {file = "aiohttp-3.9.3-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:82e6aa28dd46374f72093eda8bcd142f7771ee1eb9d1e223ff0fa7177a96b4a5"}, - {file = "aiohttp-3.9.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f56455b0c2c7cc3b0c584815264461d07b177f903a04481dfc33e08a89f0c26b"}, - {file = "aiohttp-3.9.3-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:bca77a198bb6e69795ef2f09a5f4c12758487f83f33d63acde5f0d4919815768"}, - {file = "aiohttp-3.9.3-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e083c285857b78ee21a96ba1eb1b5339733c3563f72980728ca2b08b53826ca5"}, - {file = "aiohttp-3.9.3-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ab40e6251c3873d86ea9b30a1ac6d7478c09277b32e14745d0d3c6e76e3c7e29"}, - {file = "aiohttp-3.9.3-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:df822ee7feaaeffb99c1a9e5e608800bd8eda6e5f18f5cfb0dc7eeb2eaa6bbec"}, - {file = "aiohttp-3.9.3-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:acef0899fea7492145d2bbaaaec7b345c87753168589cc7faf0afec9afe9b747"}, - {file = "aiohttp-3.9.3-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:cd73265a9e5ea618014802ab01babf1940cecb90c9762d8b9e7d2cc1e1969ec6"}, - {file = "aiohttp-3.9.3-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:a78ed8a53a1221393d9637c01870248a6f4ea5b214a59a92a36f18151739452c"}, - {file = "aiohttp-3.9.3-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:6b0e029353361f1746bac2e4cc19b32f972ec03f0f943b390c4ab3371840aabf"}, - {file = "aiohttp-3.9.3-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:7cf5c9458e1e90e3c390c2639f1017a0379a99a94fdfad3a1fd966a2874bba52"}, - {file = "aiohttp-3.9.3-cp310-cp310-win32.whl", hash = "sha256:3e59c23c52765951b69ec45ddbbc9403a8761ee6f57253250c6e1536cacc758b"}, - {file = "aiohttp-3.9.3-cp310-cp310-win_amd64.whl", hash = "sha256:055ce4f74b82551678291473f66dc9fb9048a50d8324278751926ff0ae7715e5"}, - {file = "aiohttp-3.9.3-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:6b88f9386ff1ad91ace19d2a1c0225896e28815ee09fc6a8932fded8cda97c3d"}, - {file = "aiohttp-3.9.3-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:c46956ed82961e31557b6857a5ca153c67e5476972e5f7190015018760938da2"}, - {file = "aiohttp-3.9.3-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:07b837ef0d2f252f96009e9b8435ec1fef68ef8b1461933253d318748ec1acdc"}, - {file = "aiohttp-3.9.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:dad46e6f620574b3b4801c68255492e0159d1712271cc99d8bdf35f2043ec266"}, - {file = "aiohttp-3.9.3-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:5ed3e046ea7b14938112ccd53d91c1539af3e6679b222f9469981e3dac7ba1ce"}, - {file = "aiohttp-3.9.3-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:039df344b45ae0b34ac885ab5b53940b174530d4dd8a14ed8b0e2155b9dddccb"}, - {file = "aiohttp-3.9.3-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7943c414d3a8d9235f5f15c22ace69787c140c80b718dcd57caaade95f7cd93b"}, - {file = "aiohttp-3.9.3-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:84871a243359bb42c12728f04d181a389718710129b36b6aad0fc4655a7647d4"}, - {file = "aiohttp-3.9.3-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:5eafe2c065df5401ba06821b9a054d9cb2848867f3c59801b5d07a0be3a380ae"}, - {file = "aiohttp-3.9.3-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:9d3c9b50f19704552f23b4eaea1fc082fdd82c63429a6506446cbd8737823da3"}, - {file = "aiohttp-3.9.3-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:f033d80bc6283092613882dfe40419c6a6a1527e04fc69350e87a9df02bbc283"}, - {file = "aiohttp-3.9.3-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:2c895a656dd7e061b2fd6bb77d971cc38f2afc277229ce7dd3552de8313a483e"}, - {file = "aiohttp-3.9.3-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:1f5a71d25cd8106eab05f8704cd9167b6e5187bcdf8f090a66c6d88b634802b4"}, - {file = "aiohttp-3.9.3-cp311-cp311-win32.whl", hash = "sha256:50fca156d718f8ced687a373f9e140c1bb765ca16e3d6f4fe116e3df7c05b2c5"}, - {file = "aiohttp-3.9.3-cp311-cp311-win_amd64.whl", hash = "sha256:5fe9ce6c09668063b8447f85d43b8d1c4e5d3d7e92c63173e6180b2ac5d46dd8"}, - {file = "aiohttp-3.9.3-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:38a19bc3b686ad55804ae931012f78f7a534cce165d089a2059f658f6c91fa60"}, - {file = "aiohttp-3.9.3-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:770d015888c2a598b377bd2f663adfd947d78c0124cfe7b959e1ef39f5b13869"}, - {file = "aiohttp-3.9.3-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:ee43080e75fc92bf36219926c8e6de497f9b247301bbf88c5c7593d931426679"}, - {file = "aiohttp-3.9.3-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:52df73f14ed99cee84865b95a3d9e044f226320a87af208f068ecc33e0c35b96"}, - {file = "aiohttp-3.9.3-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:dc9b311743a78043b26ffaeeb9715dc360335e5517832f5a8e339f8a43581e4d"}, - {file = "aiohttp-3.9.3-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b955ed993491f1a5da7f92e98d5dad3c1e14dc175f74517c4e610b1f2456fb11"}, - {file = "aiohttp-3.9.3-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:504b6981675ace64c28bf4a05a508af5cde526e36492c98916127f5a02354d53"}, - {file = "aiohttp-3.9.3-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a6fe5571784af92b6bc2fda8d1925cccdf24642d49546d3144948a6a1ed58ca5"}, - {file = "aiohttp-3.9.3-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:ba39e9c8627edc56544c8628cc180d88605df3892beeb2b94c9bc857774848ca"}, - {file = "aiohttp-3.9.3-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:e5e46b578c0e9db71d04c4b506a2121c0cb371dd89af17a0586ff6769d4c58c1"}, - {file = "aiohttp-3.9.3-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:938a9653e1e0c592053f815f7028e41a3062e902095e5a7dc84617c87267ebd5"}, - {file = "aiohttp-3.9.3-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:c3452ea726c76e92f3b9fae4b34a151981a9ec0a4847a627c43d71a15ac32aa6"}, - {file = "aiohttp-3.9.3-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:ff30218887e62209942f91ac1be902cc80cddb86bf00fbc6783b7a43b2bea26f"}, - {file = "aiohttp-3.9.3-cp312-cp312-win32.whl", hash = "sha256:38f307b41e0bea3294a9a2a87833191e4bcf89bb0365e83a8be3a58b31fb7f38"}, - {file = "aiohttp-3.9.3-cp312-cp312-win_amd64.whl", hash = "sha256:b791a3143681a520c0a17e26ae7465f1b6f99461a28019d1a2f425236e6eedb5"}, - {file = "aiohttp-3.9.3-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:0ed621426d961df79aa3b963ac7af0d40392956ffa9be022024cd16297b30c8c"}, - {file = "aiohttp-3.9.3-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:7f46acd6a194287b7e41e87957bfe2ad1ad88318d447caf5b090012f2c5bb528"}, - {file = "aiohttp-3.9.3-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:feeb18a801aacb098220e2c3eea59a512362eb408d4afd0c242044c33ad6d542"}, - {file = "aiohttp-3.9.3-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f734e38fd8666f53da904c52a23ce517f1b07722118d750405af7e4123933511"}, - {file = "aiohttp-3.9.3-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:b40670ec7e2156d8e57f70aec34a7216407848dfe6c693ef131ddf6e76feb672"}, - {file = "aiohttp-3.9.3-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:fdd215b7b7fd4a53994f238d0f46b7ba4ac4c0adb12452beee724ddd0743ae5d"}, - {file = "aiohttp-3.9.3-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:017a21b0df49039c8f46ca0971b3a7fdc1f56741ab1240cb90ca408049766168"}, - {file = "aiohttp-3.9.3-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:e99abf0bba688259a496f966211c49a514e65afa9b3073a1fcee08856e04425b"}, - {file = "aiohttp-3.9.3-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:648056db9a9fa565d3fa851880f99f45e3f9a771dd3ff3bb0c048ea83fb28194"}, - {file = "aiohttp-3.9.3-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:8aacb477dc26797ee089721536a292a664846489c49d3ef9725f992449eda5a8"}, - {file = "aiohttp-3.9.3-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:522a11c934ea660ff8953eda090dcd2154d367dec1ae3c540aff9f8a5c109ab4"}, - {file = "aiohttp-3.9.3-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:5bce0dc147ca85caa5d33debc4f4d65e8e8b5c97c7f9f660f215fa74fc49a321"}, - {file = "aiohttp-3.9.3-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:4b4af9f25b49a7be47c0972139e59ec0e8285c371049df1a63b6ca81fdd216a2"}, - {file = "aiohttp-3.9.3-cp38-cp38-win32.whl", hash = "sha256:298abd678033b8571995650ccee753d9458dfa0377be4dba91e4491da3f2be63"}, - {file = "aiohttp-3.9.3-cp38-cp38-win_amd64.whl", hash = "sha256:69361bfdca5468c0488d7017b9b1e5ce769d40b46a9f4a2eed26b78619e9396c"}, - {file = "aiohttp-3.9.3-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:0fa43c32d1643f518491d9d3a730f85f5bbaedcbd7fbcae27435bb8b7a061b29"}, - {file = "aiohttp-3.9.3-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:835a55b7ca49468aaaac0b217092dfdff370e6c215c9224c52f30daaa735c1c1"}, - {file = "aiohttp-3.9.3-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:06a9b2c8837d9a94fae16c6223acc14b4dfdff216ab9b7202e07a9a09541168f"}, - {file = "aiohttp-3.9.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:abf151955990d23f84205286938796c55ff11bbfb4ccfada8c9c83ae6b3c89a3"}, - {file = "aiohttp-3.9.3-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:59c26c95975f26e662ca78fdf543d4eeaef70e533a672b4113dd888bd2423caa"}, - {file = "aiohttp-3.9.3-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:f95511dd5d0e05fd9728bac4096319f80615aaef4acbecb35a990afebe953b0e"}, - {file = "aiohttp-3.9.3-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:595f105710293e76b9dc09f52e0dd896bd064a79346234b521f6b968ffdd8e58"}, - {file = "aiohttp-3.9.3-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:c7c8b816c2b5af5c8a436df44ca08258fc1a13b449393a91484225fcb7545533"}, - {file = "aiohttp-3.9.3-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:f1088fa100bf46e7b398ffd9904f4808a0612e1d966b4aa43baa535d1b6341eb"}, - {file = "aiohttp-3.9.3-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:f59dfe57bb1ec82ac0698ebfcdb7bcd0e99c255bd637ff613760d5f33e7c81b3"}, - {file = "aiohttp-3.9.3-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:361a1026c9dd4aba0109e4040e2aecf9884f5cfe1b1b1bd3d09419c205e2e53d"}, - {file = "aiohttp-3.9.3-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:363afe77cfcbe3a36353d8ea133e904b108feea505aa4792dad6585a8192c55a"}, - {file = "aiohttp-3.9.3-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:8e2c45c208c62e955e8256949eb225bd8b66a4c9b6865729a786f2aa79b72e9d"}, - {file = "aiohttp-3.9.3-cp39-cp39-win32.whl", hash = "sha256:f7217af2e14da0856e082e96ff637f14ae45c10a5714b63c77f26d8884cf1051"}, - {file = "aiohttp-3.9.3-cp39-cp39-win_amd64.whl", hash = "sha256:27468897f628c627230dba07ec65dc8d0db566923c48f29e084ce382119802bc"}, - {file = "aiohttp-3.9.3.tar.gz", hash = "sha256:90842933e5d1ff760fae6caca4b2b3edba53ba8f4b71e95dacf2818a2aca06f7"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_10_9_universal2.whl", hash = "sha256:fcde4c397f673fdec23e6b05ebf8d4751314fa7c24f93334bf1f1364c1c69ac7"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:5d6b3f1fabe465e819aed2c421a6743d8debbde79b6a8600739300630a01bf2c"}, + {file = "aiohttp-3.9.5-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:6ae79c1bc12c34082d92bf9422764f799aee4746fd7a392db46b7fd357d4a17a"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4d3ebb9e1316ec74277d19c5f482f98cc65a73ccd5430540d6d11682cd857430"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:84dabd95154f43a2ea80deffec9cb44d2e301e38a0c9d331cc4aa0166fe28ae3"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:c8a02fbeca6f63cb1f0475c799679057fc9268b77075ab7cf3f1c600e81dd46b"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c26959ca7b75ff768e2776d8055bf9582a6267e24556bb7f7bd29e677932be72"}, + {file = "aiohttp-3.9.5-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:714d4e5231fed4ba2762ed489b4aec07b2b9953cf4ee31e9871caac895a839c0"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:e7a6a8354f1b62e15d48e04350f13e726fa08b62c3d7b8401c0a1314f02e3558"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:c413016880e03e69d166efb5a1a95d40f83d5a3a648d16486592c49ffb76d0db"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:ff84aeb864e0fac81f676be9f4685f0527b660f1efdc40dcede3c251ef1e867f"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_s390x.whl", hash = "sha256:ad7f2919d7dac062f24d6f5fe95d401597fbb015a25771f85e692d043c9d7832"}, + {file = "aiohttp-3.9.5-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:702e2c7c187c1a498a4e2b03155d52658fdd6fda882d3d7fbb891a5cf108bb10"}, + {file = "aiohttp-3.9.5-cp310-cp310-win32.whl", hash = "sha256:67c3119f5ddc7261d47163ed86d760ddf0e625cd6246b4ed852e82159617b5fb"}, + {file = "aiohttp-3.9.5-cp310-cp310-win_amd64.whl", hash = "sha256:471f0ef53ccedec9995287f02caf0c068732f026455f07db3f01a46e49d76bbb"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_10_9_universal2.whl", hash = "sha256:e0ae53e33ee7476dd3d1132f932eeb39bf6125083820049d06edcdca4381f342"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:c088c4d70d21f8ca5c0b8b5403fe84a7bc8e024161febdd4ef04575ef35d474d"}, + {file = "aiohttp-3.9.5-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:639d0042b7670222f33b0028de6b4e2fad6451462ce7df2af8aee37dcac55424"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f26383adb94da5e7fb388d441bf09c61e5e35f455a3217bfd790c6b6bc64b2ee"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:66331d00fb28dc90aa606d9a54304af76b335ae204d1836f65797d6fe27f1ca2"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:4ff550491f5492ab5ed3533e76b8567f4b37bd2995e780a1f46bca2024223233"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f22eb3a6c1080d862befa0a89c380b4dafce29dc6cd56083f630073d102eb595"}, + {file = "aiohttp-3.9.5-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:a81b1143d42b66ffc40a441379387076243ef7b51019204fd3ec36b9f69e77d6"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:f64fd07515dad67f24b6ea4a66ae2876c01031de91c93075b8093f07c0a2d93d"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:93e22add827447d2e26d67c9ac0161756007f152fdc5210277d00a85f6c92323"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:55b39c8684a46e56ef8c8d24faf02de4a2b2ac60d26cee93bc595651ff545de9"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_s390x.whl", hash = "sha256:4715a9b778f4293b9f8ae7a0a7cef9829f02ff8d6277a39d7f40565c737d3771"}, + {file = "aiohttp-3.9.5-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:afc52b8d969eff14e069a710057d15ab9ac17cd4b6753042c407dcea0e40bf75"}, + {file = "aiohttp-3.9.5-cp311-cp311-win32.whl", hash = "sha256:b3df71da99c98534be076196791adca8819761f0bf6e08e07fd7da25127150d6"}, + {file = "aiohttp-3.9.5-cp311-cp311-win_amd64.whl", hash = "sha256:88e311d98cc0bf45b62fc46c66753a83445f5ab20038bcc1b8a1cc05666f428a"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_10_9_universal2.whl", hash = "sha256:c7a4b7a6cf5b6eb11e109a9755fd4fda7d57395f8c575e166d363b9fc3ec4678"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:0a158704edf0abcac8ac371fbb54044f3270bdbc93e254a82b6c82be1ef08f3c"}, + {file = "aiohttp-3.9.5-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:d153f652a687a8e95ad367a86a61e8d53d528b0530ef382ec5aaf533140ed00f"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:82a6a97d9771cb48ae16979c3a3a9a18b600a8505b1115cfe354dfb2054468b4"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:60cdbd56f4cad9f69c35eaac0fbbdf1f77b0ff9456cebd4902f3dd1cf096464c"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:8676e8fd73141ded15ea586de0b7cda1542960a7b9ad89b2b06428e97125d4fa"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:da00da442a0e31f1c69d26d224e1efd3a1ca5bcbf210978a2ca7426dfcae9f58"}, + {file = "aiohttp-3.9.5-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:18f634d540dd099c262e9f887c8bbacc959847cfe5da7a0e2e1cf3f14dbf2daf"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:320e8618eda64e19d11bdb3bd04ccc0a816c17eaecb7e4945d01deee2a22f95f"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:2faa61a904b83142747fc6a6d7ad8fccff898c849123030f8e75d5d967fd4a81"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:8c64a6dc3fe5db7b1b4d2b5cb84c4f677768bdc340611eca673afb7cf416ef5a"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_s390x.whl", hash = "sha256:393c7aba2b55559ef7ab791c94b44f7482a07bf7640d17b341b79081f5e5cd1a"}, + {file = "aiohttp-3.9.5-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:c671dc117c2c21a1ca10c116cfcd6e3e44da7fcde37bf83b2be485ab377b25da"}, + {file = "aiohttp-3.9.5-cp312-cp312-win32.whl", hash = "sha256:5a7ee16aab26e76add4afc45e8f8206c95d1d75540f1039b84a03c3b3800dd59"}, + {file = "aiohttp-3.9.5-cp312-cp312-win_amd64.whl", hash = "sha256:5ca51eadbd67045396bc92a4345d1790b7301c14d1848feaac1d6a6c9289e888"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_10_9_universal2.whl", hash = "sha256:694d828b5c41255e54bc2dddb51a9f5150b4eefa9886e38b52605a05d96566e8"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:0605cc2c0088fcaae79f01c913a38611ad09ba68ff482402d3410bf59039bfb8"}, + {file = "aiohttp-3.9.5-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:4558e5012ee03d2638c681e156461d37b7a113fe13970d438d95d10173d25f78"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:9dbc053ac75ccc63dc3a3cc547b98c7258ec35a215a92bd9f983e0aac95d3d5b"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:4109adee842b90671f1b689901b948f347325045c15f46b39797ae1bf17019de"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:a6ea1a5b409a85477fd8e5ee6ad8f0e40bf2844c270955e09360418cfd09abac"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f3c2890ca8c59ee683fd09adf32321a40fe1cf164e3387799efb2acebf090c11"}, + {file = "aiohttp-3.9.5-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3916c8692dbd9d55c523374a3b8213e628424d19116ac4308e434dbf6d95bbdd"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:8d1964eb7617907c792ca00b341b5ec3e01ae8c280825deadbbd678447b127e1"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:d5ab8e1f6bee051a4bf6195e38a5c13e5e161cb7bad83d8854524798bd9fcd6e"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:52c27110f3862a1afbcb2af4281fc9fdc40327fa286c4625dfee247c3ba90156"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_s390x.whl", hash = "sha256:7f64cbd44443e80094309875d4f9c71d0401e966d191c3d469cde4642bc2e031"}, + {file = "aiohttp-3.9.5-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:8b4f72fbb66279624bfe83fd5eb6aea0022dad8eec62b71e7bf63ee1caadeafe"}, + {file = "aiohttp-3.9.5-cp38-cp38-win32.whl", hash = "sha256:6380c039ec52866c06d69b5c7aad5478b24ed11696f0e72f6b807cfb261453da"}, + {file = "aiohttp-3.9.5-cp38-cp38-win_amd64.whl", hash = "sha256:da22dab31d7180f8c3ac7c7635f3bcd53808f374f6aa333fe0b0b9e14b01f91a"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_10_9_universal2.whl", hash = "sha256:1732102949ff6087589408d76cd6dea656b93c896b011ecafff418c9661dc4ed"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:c6021d296318cb6f9414b48e6a439a7f5d1f665464da507e8ff640848ee2a58a"}, + {file = "aiohttp-3.9.5-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:239f975589a944eeb1bad26b8b140a59a3a320067fb3cd10b75c3092405a1372"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:3b7b30258348082826d274504fbc7c849959f1989d86c29bc355107accec6cfb"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:cd2adf5c87ff6d8b277814a28a535b59e20bfea40a101db6b3bdca7e9926bc24"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:e9a3d838441bebcf5cf442700e3963f58b5c33f015341f9ea86dcd7d503c07e2"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:9e3a1ae66e3d0c17cf65c08968a5ee3180c5a95920ec2731f53343fac9bad106"}, + {file = "aiohttp-3.9.5-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9c69e77370cce2d6df5d12b4e12bdcca60c47ba13d1cbbc8645dd005a20b738b"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:0cbf56238f4bbf49dab8c2dc2e6b1b68502b1e88d335bea59b3f5b9f4c001475"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:d1469f228cd9ffddd396d9948b8c9cd8022b6d1bf1e40c6f25b0fb90b4f893ed"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:45731330e754f5811c314901cebdf19dd776a44b31927fa4b4dbecab9e457b0c"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_s390x.whl", hash = "sha256:3fcb4046d2904378e3aeea1df51f697b0467f2aac55d232c87ba162709478c46"}, + {file = "aiohttp-3.9.5-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:8cf142aa6c1a751fcb364158fd710b8a9be874b81889c2bd13aa8893197455e2"}, + {file = "aiohttp-3.9.5-cp39-cp39-win32.whl", hash = "sha256:7b179eea70833c8dee51ec42f3b4097bd6370892fa93f510f76762105568cf09"}, + {file = "aiohttp-3.9.5-cp39-cp39-win_amd64.whl", hash = "sha256:38d80498e2e169bc61418ff36170e0aad0cd268da8b38a17c4cf29d254a8b3f1"}, + {file = "aiohttp-3.9.5.tar.gz", hash = "sha256:edea7d15772ceeb29db4aff55e482d4bcfb6ae160ce144f2682de02f6d693551"}, ] [package.dependencies] @@ -741,13 +741,13 @@ resolved_reference = "69bab0408def585d6f98bb64b0edccbde01dca6d" [[package]] name = "exceptiongroup" -version = "1.2.0" +version = "1.2.1" description = "Backport of PEP 654 (exception groups)" optional = false python-versions = ">=3.7" files = [ - {file = "exceptiongroup-1.2.0-py3-none-any.whl", hash = "sha256:4bfd3996ac73b41e9b9628b04e079f193850720ea5945fc96a08633c66912f14"}, - {file = "exceptiongroup-1.2.0.tar.gz", hash = "sha256:91f5c769735f051a4290d52edd0858999b57e5876e9f85937691bd4c9fa3ed68"}, + {file = "exceptiongroup-1.2.1-py3-none-any.whl", hash = "sha256:5258b9ed329c5bbdd31a309f53cbfb0b155341807f6ff7606a1e801a891b29ad"}, + {file = "exceptiongroup-1.2.1.tar.gz", hash = "sha256:a4785e48b045528f5bfe627b6ad554ff32def154f42372786903b7abcfe1aa16"}, ] [package.extras] @@ -955,22 +955,6 @@ dictionaryutils = "*" jsonschema = "*" PyYAML = "*" -[[package]] -name = "gen3users" -version = "1.0.3" -description = "Utils for Gen3 Commons user management" -optional = false -python-versions = ">=3.9,<4.0" -files = [ - {file = "gen3users-1.0.3-py3-none-any.whl", hash = "sha256:faf07717b7df28ea2c25a308e49c65d8ed69e14945c6f36e99deb697240bb8bb"}, - {file = "gen3users-1.0.3.tar.gz", hash = "sha256:a2269433ab886c23db37050144821405c7d5dfcbbadccc43302611aad9e34525"}, -] - -[package.dependencies] -cdislogging = ">=1,<2" -click = "*" -pyyaml = ">=6,<7" - [[package]] name = "h11" version = "0.14.0" @@ -1060,24 +1044,24 @@ pyreadline3 = {version = "*", markers = "sys_platform == \"win32\" and python_ve [[package]] name = "idna" -version = "3.6" +version = "3.7" description = "Internationalized Domain Names in Applications (IDNA)" optional = false python-versions = ">=3.5" files = [ - {file = "idna-3.6-py3-none-any.whl", hash = "sha256:c05567e9c24a6b9faaa835c4821bad0590fbb9d5779e7caa6e1cc4978e7eb24f"}, - {file = "idna-3.6.tar.gz", hash = "sha256:9ecdbbd083b06798ae1e86adcbfe8ab1479cf864e4ee30fe4e46a003d12491ca"}, + {file = "idna-3.7-py3-none-any.whl", hash = "sha256:82fee1fc78add43492d3a1898bfa6d8a904cc97d8427f683ed8e798d07761aa0"}, + {file = "idna-3.7.tar.gz", hash = "sha256:028ff3aadf0609c1fd278d8ea3089299412a7a8b9bd005dd08b9f8285bcb5cfc"}, ] [[package]] name = "importlib-metadata" -version = "7.0.2" +version = "7.1.0" description = "Read metadata from Python packages" optional = false python-versions = ">=3.8" files = [ - {file = "importlib_metadata-7.0.2-py3-none-any.whl", hash = "sha256:f4bc4c0c070c490abf4ce96d715f68e95923320370efb66143df00199bb6c100"}, - {file = "importlib_metadata-7.0.2.tar.gz", hash = "sha256:198f568f3230878cb1b44fbd7975f87906c22336dba2e4a7f05278c281fbd792"}, + {file = "importlib_metadata-7.1.0-py3-none-any.whl", hash = "sha256:30962b96c0c223483ed6cc7280e7f0199feb01a0e40cfae4d4450fc6fab1f570"}, + {file = "importlib_metadata-7.1.0.tar.gz", hash = "sha256:b78938b926ee8d5f020fc4772d487045805a55ddbad2ecf21c6d60938dc7fcd2"}, ] [package.dependencies] @@ -1086,7 +1070,7 @@ zipp = ">=0.5" [package.extras] docs = ["furo", "jaraco.packaging (>=9.3)", "jaraco.tidelift (>=1.4)", "rst.linker (>=1.9)", "sphinx (>=3.5)", "sphinx-lint"] perf = ["ipython"] -testing = ["flufl.flake8", "importlib-resources (>=1.3)", "packaging", "pyfakefs", "pytest (>=6)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=2.2)", "pytest-mypy", "pytest-perf (>=0.9.2)", "pytest-ruff (>=0.2.1)"] +testing = ["flufl.flake8", "importlib-resources (>=1.3)", "jaraco.test (>=5.4)", "packaging", "pyfakefs", "pytest (>=6)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=2.2)", "pytest-mypy", "pytest-perf (>=0.9.2)", "pytest-ruff (>=0.2.1)"] [[package]] name = "indexclient" @@ -1165,13 +1149,13 @@ six = "*" [[package]] name = "itsdangerous" -version = "2.1.2" +version = "2.2.0" description = "Safely pass data to untrusted environments and back." optional = false -python-versions = ">=3.7" +python-versions = ">=3.8" files = [ - {file = "itsdangerous-2.1.2-py3-none-any.whl", hash = "sha256:2c2349112351b88699d8d4b6b075022c0808887cb7ad10069318a8b0bc88db44"}, - {file = "itsdangerous-2.1.2.tar.gz", hash = "sha256:5dbbc68b317e5e42f327f9021763545dc3fc3bfe22e6deb96aaf1fc38874156a"}, + {file = "itsdangerous-2.2.0-py3-none-any.whl", hash = "sha256:c6242fc49e35958c8b15141343aa660db5fc54d4f13a1db01a3f5891b98700ef"}, + {file = "itsdangerous-2.2.0.tar.gz", hash = "sha256:e0050c0b7da1eea53ffaf149c0cfbb5c6e2e2b69c4bef22c81fa6eb73e5f6173"}, ] [[package]] @@ -1214,13 +1198,13 @@ format-nongpl = ["idna", "jsonpointer (>1.13)", "rfc3339-validator", "rfc3986-va [[package]] name = "mako" -version = "1.3.2" +version = "1.3.3" description = "A super-fast templating language that borrows the best ideas from the existing templating languages." optional = false python-versions = ">=3.8" files = [ - {file = "Mako-1.3.2-py3-none-any.whl", hash = "sha256:32a99d70754dfce237019d17ffe4a282d2d3351b9c476e90d8a60e63f133b80c"}, - {file = "Mako-1.3.2.tar.gz", hash = "sha256:2a0c8ad7f6274271b3bb7467dd37cf9cc6dab4bc19cb69a4ef10669402de698e"}, + {file = "Mako-1.3.3-py3-none-any.whl", hash = "sha256:5324b88089a8978bf76d1629774fcc2f1c07b82acdf00f4c5dd8ceadfffc4b40"}, + {file = "Mako-1.3.3.tar.gz", hash = "sha256:e16c01d9ab9c11f7290eef1cfefc093fb5a45ee4a3da09e2fec2e4d1bae54e73"}, ] [package.dependencies] @@ -1501,47 +1485,47 @@ files = [ [[package]] name = "pandas" -version = "2.2.1" +version = "2.2.2" description = "Powerful data structures for data analysis, time series, and statistics" optional = false python-versions = ">=3.9" files = [ - {file = "pandas-2.2.1-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:8df8612be9cd1c7797c93e1c5df861b2ddda0b48b08f2c3eaa0702cf88fb5f88"}, - {file = "pandas-2.2.1-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:0f573ab277252ed9aaf38240f3b54cfc90fff8e5cab70411ee1d03f5d51f3944"}, - {file = "pandas-2.2.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f02a3a6c83df4026e55b63c1f06476c9aa3ed6af3d89b4f04ea656ccdaaaa359"}, - {file = "pandas-2.2.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c38ce92cb22a4bea4e3929429aa1067a454dcc9c335799af93ba9be21b6beb51"}, - {file = "pandas-2.2.1-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:c2ce852e1cf2509a69e98358e8458775f89599566ac3775e70419b98615f4b06"}, - {file = "pandas-2.2.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:53680dc9b2519cbf609c62db3ed7c0b499077c7fefda564e330286e619ff0dd9"}, - {file = "pandas-2.2.1-cp310-cp310-win_amd64.whl", hash = "sha256:94e714a1cca63e4f5939cdce5f29ba8d415d85166be3441165edd427dc9f6bc0"}, - {file = "pandas-2.2.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:f821213d48f4ab353d20ebc24e4faf94ba40d76680642fb7ce2ea31a3ad94f9b"}, - {file = "pandas-2.2.1-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:c70e00c2d894cb230e5c15e4b1e1e6b2b478e09cf27cc593a11ef955b9ecc81a"}, - {file = "pandas-2.2.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e97fbb5387c69209f134893abc788a6486dbf2f9e511070ca05eed4b930b1b02"}, - {file = "pandas-2.2.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:101d0eb9c5361aa0146f500773395a03839a5e6ecde4d4b6ced88b7e5a1a6403"}, - {file = "pandas-2.2.1-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:7d2ed41c319c9fb4fd454fe25372028dfa417aacb9790f68171b2e3f06eae8cd"}, - {file = "pandas-2.2.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:af5d3c00557d657c8773ef9ee702c61dd13b9d7426794c9dfeb1dc4a0bf0ebc7"}, - {file = "pandas-2.2.1-cp311-cp311-win_amd64.whl", hash = "sha256:06cf591dbaefb6da9de8472535b185cba556d0ce2e6ed28e21d919704fef1a9e"}, - {file = "pandas-2.2.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:88ecb5c01bb9ca927ebc4098136038519aa5d66b44671861ffab754cae75102c"}, - {file = "pandas-2.2.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:04f6ec3baec203c13e3f8b139fb0f9f86cd8c0b94603ae3ae8ce9a422e9f5bee"}, - {file = "pandas-2.2.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a935a90a76c44fe170d01e90a3594beef9e9a6220021acfb26053d01426f7dc2"}, - {file = "pandas-2.2.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c391f594aae2fd9f679d419e9a4d5ba4bce5bb13f6a989195656e7dc4b95c8f0"}, - {file = "pandas-2.2.1-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:9d1265545f579edf3f8f0cb6f89f234f5e44ba725a34d86535b1a1d38decbccc"}, - {file = "pandas-2.2.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:11940e9e3056576ac3244baef2fedade891977bcc1cb7e5cc8f8cc7d603edc89"}, - {file = "pandas-2.2.1-cp312-cp312-win_amd64.whl", hash = "sha256:4acf681325ee1c7f950d058b05a820441075b0dd9a2adf5c4835b9bc056bf4fb"}, - {file = "pandas-2.2.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:9bd8a40f47080825af4317d0340c656744f2bfdb6819f818e6ba3cd24c0e1397"}, - {file = "pandas-2.2.1-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:df0c37ebd19e11d089ceba66eba59a168242fc6b7155cba4ffffa6eccdfb8f16"}, - {file = "pandas-2.2.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:739cc70eaf17d57608639e74d63387b0d8594ce02f69e7a0b046f117974b3019"}, - {file = "pandas-2.2.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:f9d3558d263073ed95e46f4650becff0c5e1ffe0fc3a015de3c79283dfbdb3df"}, - {file = "pandas-2.2.1-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:4aa1d8707812a658debf03824016bf5ea0d516afdea29b7dc14cf687bc4d4ec6"}, - {file = "pandas-2.2.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:76f27a809cda87e07f192f001d11adc2b930e93a2b0c4a236fde5429527423be"}, - {file = "pandas-2.2.1-cp39-cp39-win_amd64.whl", hash = "sha256:1ba21b1d5c0e43416218db63037dbe1a01fc101dc6e6024bcad08123e48004ab"}, - {file = "pandas-2.2.1.tar.gz", hash = "sha256:0ab90f87093c13f3e8fa45b48ba9f39181046e8f3317d3aadb2fffbb1b978572"}, + {file = "pandas-2.2.2-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:90c6fca2acf139569e74e8781709dccb6fe25940488755716d1d354d6bc58bce"}, + {file = "pandas-2.2.2-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:c7adfc142dac335d8c1e0dcbd37eb8617eac386596eb9e1a1b77791cf2498238"}, + {file = "pandas-2.2.2-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:4abfe0be0d7221be4f12552995e58723c7422c80a659da13ca382697de830c08"}, + {file = "pandas-2.2.2-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8635c16bf3d99040fdf3ca3db669a7250ddf49c55dc4aa8fe0ae0fa8d6dcc1f0"}, + {file = "pandas-2.2.2-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:40ae1dffb3967a52203105a077415a86044a2bea011b5f321c6aa64b379a3f51"}, + {file = "pandas-2.2.2-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:8e5a0b00e1e56a842f922e7fae8ae4077aee4af0acb5ae3622bd4b4c30aedf99"}, + {file = "pandas-2.2.2-cp310-cp310-win_amd64.whl", hash = "sha256:ddf818e4e6c7c6f4f7c8a12709696d193976b591cc7dc50588d3d1a6b5dc8772"}, + {file = "pandas-2.2.2-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:696039430f7a562b74fa45f540aca068ea85fa34c244d0deee539cb6d70aa288"}, + {file = "pandas-2.2.2-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:8e90497254aacacbc4ea6ae5e7a8cd75629d6ad2b30025a4a8b09aa4faf55151"}, + {file = "pandas-2.2.2-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:58b84b91b0b9f4bafac2a0ac55002280c094dfc6402402332c0913a59654ab2b"}, + {file = "pandas-2.2.2-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6d2123dc9ad6a814bcdea0f099885276b31b24f7edf40f6cdbc0912672e22eee"}, + {file = "pandas-2.2.2-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:2925720037f06e89af896c70bca73459d7e6a4be96f9de79e2d440bd499fe0db"}, + {file = "pandas-2.2.2-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:0cace394b6ea70c01ca1595f839cf193df35d1575986e484ad35c4aeae7266c1"}, + {file = "pandas-2.2.2-cp311-cp311-win_amd64.whl", hash = "sha256:873d13d177501a28b2756375d59816c365e42ed8417b41665f346289adc68d24"}, + {file = "pandas-2.2.2-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:9dfde2a0ddef507a631dc9dc4af6a9489d5e2e740e226ad426a05cabfbd7c8ef"}, + {file = "pandas-2.2.2-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:e9b79011ff7a0f4b1d6da6a61aa1aa604fb312d6647de5bad20013682d1429ce"}, + {file = "pandas-2.2.2-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1cb51fe389360f3b5a4d57dbd2848a5f033350336ca3b340d1c53a1fad33bcad"}, + {file = "pandas-2.2.2-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:eee3a87076c0756de40b05c5e9a6069c035ba43e8dd71c379e68cab2c20f16ad"}, + {file = "pandas-2.2.2-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:3e374f59e440d4ab45ca2fffde54b81ac3834cf5ae2cdfa69c90bc03bde04d76"}, + {file = "pandas-2.2.2-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:43498c0bdb43d55cb162cdc8c06fac328ccb5d2eabe3cadeb3529ae6f0517c32"}, + {file = "pandas-2.2.2-cp312-cp312-win_amd64.whl", hash = "sha256:d187d355ecec3629624fccb01d104da7d7f391db0311145817525281e2804d23"}, + {file = "pandas-2.2.2-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:0ca6377b8fca51815f382bd0b697a0814c8bda55115678cbc94c30aacbb6eff2"}, + {file = "pandas-2.2.2-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:9057e6aa78a584bc93a13f0a9bf7e753a5e9770a30b4d758b8d5f2a62a9433cd"}, + {file = "pandas-2.2.2-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:001910ad31abc7bf06f49dcc903755d2f7f3a9186c0c040b827e522e9cef0863"}, + {file = "pandas-2.2.2-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:66b479b0bd07204e37583c191535505410daa8df638fd8e75ae1b383851fe921"}, + {file = "pandas-2.2.2-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:a77e9d1c386196879aa5eb712e77461aaee433e54c68cf253053a73b7e49c33a"}, + {file = "pandas-2.2.2-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:92fd6b027924a7e178ac202cfbe25e53368db90d56872d20ffae94b96c7acc57"}, + {file = "pandas-2.2.2-cp39-cp39-win_amd64.whl", hash = "sha256:640cef9aa381b60e296db324337a554aeeb883ead99dc8f6c18e81a93942f5f4"}, + {file = "pandas-2.2.2.tar.gz", hash = "sha256:9e79019aba43cb4fda9e4d983f8e88ca0373adbb697ae9c6c43093218de28b54"}, ] [package.dependencies] numpy = [ - {version = ">=1.22.4,<2", markers = "python_version < \"3.11\""}, - {version = ">=1.23.2,<2", markers = "python_version == \"3.11\""}, - {version = ">=1.26.0,<2", markers = "python_version >= \"3.12\""}, + {version = ">=1.22.4", markers = "python_version < \"3.11\""}, + {version = ">=1.23.2", markers = "python_version == \"3.11\""}, + {version = ">=1.26.0", markers = "python_version >= \"3.12\""}, ] python-dateutil = ">=2.8.2" pytz = ">=2020.1" @@ -1622,13 +1606,13 @@ files = [ [[package]] name = "pycparser" -version = "2.21" +version = "2.22" description = "C parser in Python" optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" +python-versions = ">=3.8" files = [ - {file = "pycparser-2.21-py2.py3-none-any.whl", hash = "sha256:8ee45429555515e1f6b185e78100aea234072576aa43ab53aefcae078162fca9"}, - {file = "pycparser-2.21.tar.gz", hash = "sha256:e644fdec12f7872f86c58ff790da456218b10f863970249516d60a5eaca77206"}, + {file = "pycparser-2.22-py3-none-any.whl", hash = "sha256:c3702b6d3dd8c7abc1afa565d7e63d53a1d0bd86cdc24edd75470f4de499cfcc"}, + {file = "pycparser-2.22.tar.gz", hash = "sha256:491c8be9c040f5390f5bf44a5b07752bd07f56edf992381b05c701439eec10f6"}, ] [[package]] @@ -1755,13 +1739,13 @@ testing = ["argcomplete", "hypothesis (>=3.56)", "mock", "nose", "requests", "xm [[package]] name = "pytest-cov" -version = "4.1.0" +version = "5.0.0" description = "Pytest plugin for measuring coverage." optional = false -python-versions = ">=3.7" +python-versions = ">=3.8" files = [ - {file = "pytest-cov-4.1.0.tar.gz", hash = "sha256:3904b13dfbfec47f003b8e77fd5b589cd11904a21ddf1ab38a64f204d6a10ef6"}, - {file = "pytest_cov-4.1.0-py3-none-any.whl", hash = "sha256:6ba70b9e97e69fcc3fb45bfeab2d0a138fb65c4d0d6a41ef33983ad114be8c3a"}, + {file = "pytest-cov-5.0.0.tar.gz", hash = "sha256:5837b58e9f6ebd335b0f8060eecce69b662415b16dc503883a02f45dfeb14857"}, + {file = "pytest_cov-5.0.0-py3-none-any.whl", hash = "sha256:4f0764a1219df53214206bf1feea4633c3b558a2925c8b59f144f682861ce652"}, ] [package.dependencies] @@ -1769,7 +1753,7 @@ coverage = {version = ">=5.2.1", extras = ["toml"]} pytest = ">=4.6" [package.extras] -testing = ["fields", "hunter", "process-tests", "pytest-xdist", "six", "virtualenv"] +testing = ["fields", "hunter", "process-tests", "pytest-xdist", "virtualenv"] [[package]] name = "python-dateutil" @@ -1889,22 +1873,20 @@ use-chardet-on-py3 = ["chardet (>=3.0.2,<6)"] [[package]] name = "requests-mock" -version = "1.11.0" +version = "1.12.1" description = "Mock out responses from the requests package" optional = false -python-versions = "*" +python-versions = ">=3.5" files = [ - {file = "requests-mock-1.11.0.tar.gz", hash = "sha256:ef10b572b489a5f28e09b708697208c4a3b2b89ef80a9f01584340ea357ec3c4"}, - {file = "requests_mock-1.11.0-py2.py3-none-any.whl", hash = "sha256:f7fae383f228633f6bececebdab236c478ace2284d6292c6e7e2867b9ab74d15"}, + {file = "requests-mock-1.12.1.tar.gz", hash = "sha256:e9e12e333b525156e82a3c852f22016b9158220d2f47454de9cae8a77d371401"}, + {file = "requests_mock-1.12.1-py2.py3-none-any.whl", hash = "sha256:b1e37054004cdd5e56c84454cc7df12b25f90f382159087f4b6915aaeef39563"}, ] [package.dependencies] -requests = ">=2.3,<3" -six = "*" +requests = ">=2.22,<3" [package.extras] fixture = ["fixtures"] -test = ["fixtures", "mock", "purl", "pytest", "requests-futures", "sphinx", "testtools"] [[package]] name = "rfc3986" @@ -1925,18 +1907,18 @@ idna2008 = ["idna"] [[package]] name = "setuptools" -version = "69.2.0" +version = "69.5.1" description = "Easily download, build, install, upgrade, and uninstall Python packages" optional = false python-versions = ">=3.8" files = [ - {file = "setuptools-69.2.0-py3-none-any.whl", hash = "sha256:c21c49fb1042386df081cb5d86759792ab89efca84cf114889191cd09aacc80c"}, - {file = "setuptools-69.2.0.tar.gz", hash = "sha256:0ff4183f8f42cd8fa3acea16c45205521a4ef28f73c6391d8a25e92893134f2e"}, + {file = "setuptools-69.5.1-py3-none-any.whl", hash = "sha256:c636ac361bc47580504644275c9ad802c50415c7522212252c033bd15f301f32"}, + {file = "setuptools-69.5.1.tar.gz", hash = "sha256:6c1fccdac05a97e598fb0ae3bbed5904ccb317337a51139dcd51453611bbb987"}, ] [package.extras] -docs = ["furo", "jaraco.packaging (>=9.3)", "jaraco.tidelift (>=1.4)", "pygments-github-lexers (==0.0.5)", "rst.linker (>=1.9)", "sphinx (<7.2.5)", "sphinx (>=3.5)", "sphinx-favicon", "sphinx-inline-tabs", "sphinx-lint", "sphinx-notfound-page (>=1,<2)", "sphinx-reredirects", "sphinxcontrib-towncrier"] -testing = ["build[virtualenv]", "filelock (>=3.4.0)", "importlib-metadata", "ini2toml[lite] (>=0.9)", "jaraco.develop (>=7.21)", "jaraco.envs (>=2.2)", "jaraco.path (>=3.2.0)", "mypy (==1.9)", "packaging (>=23.2)", "pip (>=19.1)", "pytest (>=6)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=2.2)", "pytest-home (>=0.5)", "pytest-mypy (>=0.9.1)", "pytest-perf", "pytest-ruff (>=0.2.1)", "pytest-timeout", "pytest-xdist (>=3)", "tomli", "tomli-w (>=1.0.0)", "virtualenv (>=13.0.0)", "wheel"] +docs = ["furo", "jaraco.packaging (>=9.3)", "jaraco.tidelift (>=1.4)", "pygments-github-lexers (==0.0.5)", "rst.linker (>=1.9)", "sphinx (>=3.5)", "sphinx-favicon", "sphinx-inline-tabs", "sphinx-lint", "sphinx-notfound-page (>=1,<2)", "sphinx-reredirects", "sphinxcontrib-towncrier"] +testing = ["build[virtualenv]", "filelock (>=3.4.0)", "importlib-metadata", "ini2toml[lite] (>=0.9)", "jaraco.develop (>=7.21)", "jaraco.envs (>=2.2)", "jaraco.path (>=3.2.0)", "mypy (==1.9)", "packaging (>=23.2)", "pip (>=19.1)", "pytest (>=6,!=8.1.1)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=2.2)", "pytest-home (>=0.5)", "pytest-mypy", "pytest-perf", "pytest-ruff (>=0.2.1)", "pytest-timeout", "pytest-xdist (>=3)", "tomli", "tomli-w (>=1.0.0)", "virtualenv (>=13.0.0)", "wheel"] testing-integration = ["build[virtualenv] (>=1.0.3)", "filelock (>=3.4.0)", "jaraco.envs (>=2.2)", "jaraco.path (>=3.2.0)", "packaging (>=23.2)", "pytest", "pytest-enabler", "pytest-xdist", "tomli", "virtualenv (>=13.0.0)", "wheel"] [[package]] @@ -2089,13 +2071,13 @@ telegram = ["requests"] [[package]] name = "typing-extensions" -version = "4.10.0" +version = "4.11.0" description = "Backported and Experimental Type Hints for Python 3.8+" optional = false python-versions = ">=3.8" files = [ - {file = "typing_extensions-4.10.0-py3-none-any.whl", hash = "sha256:69b1a937c3a517342112fb4c6df7e72fc39a38e7891a5730ed4985b5214b5475"}, - {file = "typing_extensions-4.10.0.tar.gz", hash = "sha256:b0abd7c89e8fb96f98db18d86106ff1d90ab692004eb746cf6eda2682f91b3cb"}, + {file = "typing_extensions-4.11.0-py3-none-any.whl", hash = "sha256:c1f94d72897edaf4ce775bb7558d5b79d8126906a14ea5ed1635921406c0387a"}, + {file = "typing_extensions-4.11.0.tar.gz", hash = "sha256:83f085bd5ca59c80295fc2a82ab5dac679cbe02b9f33f7d83af68e241bea51b0"}, ] [[package]] @@ -2143,13 +2125,13 @@ zstd = ["zstandard (>=0.18.0)"] [[package]] name = "werkzeug" -version = "3.0.1" +version = "3.0.2" description = "The comprehensive WSGI web application library." optional = false python-versions = ">=3.8" files = [ - {file = "werkzeug-3.0.1-py3-none-any.whl", hash = "sha256:90a285dc0e42ad56b34e696398b8122ee4c681833fb35b8334a095d82c56da10"}, - {file = "werkzeug-3.0.1.tar.gz", hash = "sha256:507e811ecea72b18a404947aded4b3390e1db8f826b494d76550ef45bb3b1dcc"}, + {file = "werkzeug-3.0.2-py3-none-any.whl", hash = "sha256:3aac3f5da756f93030740bc235d3e09449efcf65f2f55e3602e1d851b8f48795"}, + {file = "werkzeug-3.0.2.tar.gz", hash = "sha256:e39b645a6ac92822588e7b39a692e7828724ceae0b0d702ef96701f90e70128d"}, ] [package.dependencies] @@ -2293,4 +2275,4 @@ fhir = ["fhirclient"] [metadata] lock-version = "2.0" python-versions = ">=3.9, <4" -content-hash = "f123fc10ee0d55ae9d502be7145a52ea0a864e4aee076f4f16c64c401a7d1831" +content-hash = "ed0a7aadae6368d3349d2058dd833cc7fe52aeca1a00e777a034122dcb45627d" diff --git a/pyproject.toml b/pyproject.toml index 364f17a9f..2ea7424c8 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -39,7 +39,7 @@ urllib3 = ">2.0.0" httpx = "*" xmltodict = "^0.13.0" pyyaml = ">=6.0.1" -gen3users = "*" +# gen3users = "*" # A list of all of the optional dependencies, some of which are included in the # below `extras`. They can be opted into by apps. @@ -70,3 +70,10 @@ addopts = "-vv" testpaths = [ "tests", ] + +[tool.poetry-pyinstaller-plugin.scripts] +gen3 = { source = "./gen3/cli/__main__.py", type = "onedir", bundle = false } + +[tool.poetry-pyinstaller-plugin.collect] +# Collect all submodules, data files & binaries for 'package_A' and 'package_B' +all = ['gen3'] From 6d2660970e25d64e5b1ee5d9d1a52812a7e0006c Mon Sep 17 00:00:00 2001 From: Avantol13 Date: Fri, 19 Apr 2024 20:07:29 +0000 Subject: [PATCH 28/62] Apply automatic documentation changes --- docs/_build/doctrees/environment.pickle | Bin 1579888 -> 1579893 bytes docs/_build/doctrees/tools/indexing.doctree | Bin 100291 -> 100291 bytes docs/_build/doctrees/tools/metadata.doctree | Bin 35929 -> 35934 bytes docs/_build/html/searchindex.js | 2 +- docs/_build/html/tools/indexing.html | 2 +- docs/_build/html/tools/metadata.html | 2 +- 6 files changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/_build/doctrees/environment.pickle b/docs/_build/doctrees/environment.pickle index d7cd5f9591619440f46a3c0c4a386a023e2a2c05..1f4e1e8253146f3682d7026851f2759029925e01 100644 GIT binary patch delta 9596 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 AI{*Lx delta 9605 zcma)i30zgx_CM!xC*a=8J!dmd;tURq;w+k)p(vU;k07FQ9Y6u66vt4I6uroLhGouH z4k*G-)2v^;N-eXOFSDNW)GI|a1eMg^+Iyb^`riNZ|NQ!VWPR7L*IIk;wb$9_+#XgY zS63#N9S&cTK5KH?{PbBAm{nY8Zj|e%q|ZnzF4Q|RCS?^D8n^;! zc1FewZ3l`=DJ zVs^&F%oLo@;^Hs|n~CEY`@`noc+UQ?q+7 zh)rW%aaf^eL`3A&v{|u{ta2hU7Zevc?mH($1xVG-1yO-PEbEudcv*0>T4z~QH!OiW zQQf5)XLxiAsm_@c9W7O%JV;j<=3E!!>)aAeoE|YmYRfpdcf{u9EQ|JXu8nEu{4(0# zX4j(UWT(%_a-NP!a7M+9cP(-}VosbvvF+JtXLQUsXJWK_`OmRC0-)Ai@^*IaLN=5J zlz*C3p@RkSl3c#>^8sSJxSdDx@AB(r*onxry|Nm!|nSR@&;$z0iVqX<>uh z{|)JOq;#KRq>S)!{J5FYW@XPwPs=JEUmTXi3p=kkiB}S%tZEo#E6*sa6h>K%Fv_Zf zQC1g>vg&2D9=_cx`A6_`!jA|)6Z|;vlfVxF8!RfH7kxb?`=kf1@TtR7ralLyu{r^l zmrEm6_Y@@Y?EUO`lSy z+aL>9W;fSAB2?Jf_0m)U>$kYB=_g?6E!Xxoi1-qdy;$S=FADB4n ze^Z}o6TZ?5^hN3@+Xj7!I_k(4{W%*XNw^-{_UlW90pyiy4wh8v-whNFqW_^k8!MoX z(ePe~^ne#EJ=wxAK_@++VXX~uiYkQdoecz%Uop5rsGlU$EnN%)wE>l*3_-ry;OGp4 z(X258=NXn8H4hyZz2w23YdGSe8D7daq*yd&SczeXzjINNH$8H|FiGdkdR?aN4jKN@ z+BxI2H}t!JZmOe=0kqdIhJ`JdjDG*j&?}6i7Ojovgv>h7_(domF>i`d9ihxLT0*#N z@(N9syvF!`D=teosL6UCGB%Co{^nmdu4&7WpQq_MA4}~Krs@DbqF;hZ_1wF^sWgz= zJ(z3?_T;EVw#m=V?N+YP>~dF{PV=#J!WPp9-rO#z!lZ~1eZDj;6X?Q^CWjZ-j{41X z$ih*Rho(q@QYEvyKbI{JFbDSM=uoP;)R!R`on==K`bbiI7*E=6FpQh=&}1zCEJnZ+P5{fe$m?yus{iA#mlaHGn?zwdA{T zA>G{6(kw#gYm!ubJGQ+9{{YR$to>l07%C$C)70`0X`lC9k=Du}7ppY)N+6-#g&CPAse1)%(U2Lka z&$`*NWntQXkgb)M&?ijP^aoRHzYw8+KgZT>gj6L?SoLXJ@69R$k5fDelu{kc-=&8IgG_%C>w!@^jNG|vv%sylbr>i7; zO;b54u2XbGhfZ-Fq`sU*sY%b?aBH1Lw|5|u}4~7bOF!0*n7Vup#!_xPfFSXwCQeNu~6Df_gC6eBo96k zvx|v~qk$jWtM&R^oC5v6(%$Q3<=9W{RuAblIDOLI$^OD9J|~ums%!F}x?;ydykd*>LHtm$Xs~-LsY4C;%$L!eYmf79t*)#SDy@ha|T^2&o{xW5GQX4qtYw@PH zyUF8qQayb&UjD)Y(~D6QoG5p3hoVfYH=RCQ-sK~tt!Bt23WwnRCVGoXl<^4U%8O*7 zUsojK1A#kOvs128rE94?N%dv;ANlWQVQ~4BoUTYu;OZqg%xR8OV8unbAN0Q@H-|eH zC5{CG_Vmm|pa#6+*zhN9_h+i{K zF~sj0=NaNx?Hdg7{&b%qe!+gm5N|*p-4L<<vyX=EtdsbJ{)Ku&@n!R%`@3X?X~iCA*6;!@?R<>Pvl1`4E{^5d0`aAQTJ4S@oMzasYbR|^i=$G;N6M@ zL#D+w0G=C_F05KQK)p^$fT-?7WCK%Ol}hPP8lqSBNldK3MT2q&j*U_>8fq%JWT7Hc zT&Cp`B8B#GQ@#|)-$QvOP`Fib*D)>3G~+@H^i(W@9qdm`usc?7hhA324rNEZ+-a$- z{LF_z`@M>Z782#LV9^V%+;J}tdcs@zNysopFjV;{Rv6tEgJ1VmK4l7jdemQeAWYcW z!@bt%zNo7!p}z$xXSsr&3RWHp6GXlca?RBSWBTG`Orc7JFgepyxhv3j&6OttU1+I1 z6~p+hqUUPCw(Esn%6jPC;b9ZZr9~U%GofJBL7%o&UBTOhxDTP76)$++O>d@6B3_sb zci;h=m+9O97ec0eqLfcWTr7e+!r$|GV%5B8cn9UYkYRp-5HeqHp9IG5d9Rn9uuT zev^AEC&XC3h^VzuT*N057|&sqG89V?dD%11Bl%s0&Z6lNb9kxU41+yC3p%Dg-#`LG()jGn*qm?-l;}zO{Ebg;_ zxY2bg^qq)R!lmNyw@+!{Kg&>>L$4Z~^vqOTcy3g(2e)csn&PSxW4KMxY;RAxYpU|S z>Il!aiLOmoWBAkern7ZsN$?neF@oUUL8FPDo2mRFG!#AQRj0gOFV0r5A&5b}u@LV*+SBdi?0E2|5XKUIjwpdpin8HfB0bHZhk=@)CYRDjR;(mE`+ol`N% ze-|z ziSY^~HY3d;d5^^ta`c$P&I`&;p`qh`RRVRwsB{#u!guvb2n^XuWcv4u*kQSb9=P0K zgfNzRUQ=!eRWWHxqi!h4stYV56aC;8wie;Chn}>BJl#Ru=-!9gNWhU% zFk~ljr+=^eFQEax?_f31OOLVTi$Iv6Rhv=05=A|qDVK%nF!53qIJGEPGREpgC+Z0H z8@A3Ag;=G0$+>=UChFH28}#^KTP*bSFLzA}OTWew7N3C45?9{`&OWu8p(uT)!YNTiACgAjK#u}*n8XR zMd$fy<96doQfG$?s@g0KuzAwbKr&vPmwO2DX>=1h!)AcczBXSN7=ksmJe1&Vg)bH6 zU{r^swjhTjpujX<92lb=9!qONB*rT=I*c3?5Uw1Y3E z0)|BpNrl~_h`S0$#*hdVLI<*6b%Rr~LVJs+A6?Xue60$x1-67t4^IPK(wShtVgXq5 zY)NN#B_~v#pVR)`$;B7-YK(d^Yg$crKcY)Zy$1;swVZdg2{(AX%>3^J6z4iC|mf_QQt|+$in} z&nusw8!Z}2TI*m~KkOEG^A3XE!*P|1258-4|8QcL7_U%_aYTjK6R_a9^z$*Kg$nD& zkpLAopGdq_I3Pun0*`9Rv-`u@qjn?QC9*F)l1lJ7bm=FI|I&Rw35srE32&J~@-XNv zjNfS*TXY7cAh0p~f@Gi_$ zfGU3)lufWzaGqb7QLn(ha@kBn=MwBR+zH;DupM)wNPHMjw}qs=ZXElpnJ7NDCz|=o zNTQCvi6l1RuOW$U{2e4Qh`)d&y7IS=L<4{INc83J9f=Zu=}2tJ-#AdnUN_KLJ#1J+ z`Yd5DIQZ2>{Lt`!{(y>u(ztgvl)ux6?s-NFg9ec}a)Uh|MMvlF0HFE5YtC3@GU5y-jwQA&8&WsCYMn!yS z7%MooLY#x@#l+vp-vMi=XD*4<;k#|mrKBl-{!Up++M31cIjW&}DR~dS6UHthQFuq2 zyo_v<9)oE)aoU(me8D&W?BbH*sDnMr$>;dB!LfqOl^(&>6{M|H57w1r#bCDA`FvgS z`NZ@2M(6W=&ga{l&v!YWZ*o50<9wcRKHq|TK8t+5zxlYmmsgT;m~QvCNGy`fw@6PU zWp9xLB#+-BeUS9XBM~^28F{2DlHGZvFOoZXBpylIRiqcwtrEIbq&ITEufq9NL*Qz( ztcK*({gAws&vjqtb4yDB>4Cxl1*8vT05QOZ0(4sq-xXl2 zYOt&!9gw`ThV-)V_v}^!@Rc|y5sLCj2voOJWV7R|36e_~uJo5{G#{2i(g{cPEyS5s z!^%R^9m(f~JfQJy?*EmyNf#8p`8Lj_8jih9x{L5ng}l>RE}y@abVK!FL8{mCTqD-; z)Ml>3C3*mx*O6B({KfzM37FbzDUeb`g4pffViK7>fS@7__5el*QdEQ)Jb=@JGpr|_ zk&9nXI%0j~tjCmVp<+GeS_@Cs<7U)C{05SUq+kQ-kK~--LY;i+!h#!0#W@+hGtf}C@`y|!EE!zBwBR2gC znL9`fyBPYx*-cn7Gq;jaQXPD?m5dX12d<&rn>Qe17uqFnBY~)0v<;W04!+q&h9U{v zPDWU{&!+!I+fV-O0{6=ZfuLs|A^egE`|nuX;ly@gLhG-$>o57fuqSawi#qI_oY@Chy{j9pA+*?YlWiMI!P(x*J!$4orJ+5$j;k9x@ooyMo*m zq{j!`q~HVcI_m!Q0rwa8A#O|^Ed7v2KKCIRi(J%4T$le5AMn#hWF!hB_L4!^Qx@$d zqmlfC1imlF73;7MtELJT?;{~dHt!?JNS^LPw^fj^A1k8@3I#d4A9t||$N?@KDM;x7 zEYB*qa)5gYFXLVk$}n;jY%IfRRKd+MG7L%AgShHdkav)b6p^nTBmpRRdJtPs6^uEA zOZf=O4v`cjN;yeGGQS*ie*|aC(d{F+S577%Nji)J9>GV4Nes5dONa4**Mm<59?yCh zT0weR_y@99G5D!$UM$!uNhlnzAnvIBrUHw)9$YI)9Fi`ToXf7n6Il=YE3u60;Z7y# z)T5z9r?s8d_Js<)natXYR-rD9+8R9u6WS_BrX(0Alq<+)Mjp|ll$@Uy&VPYi;*Mn| zkVQj*Rt-^(=+RKG+7>NNz`Ac}OJk=Z} z9OZ{=XmVQ(oolb5;z$jdV>IN_QA3?OX{f5JhEDd@P+)?FTK3ma&448u9Gj>i+dvJq z8l<6}4XAmNCfhSuL!Lu419 zriNm(G;|XDRPeYljHMA_BtvnC>VS$GB7HX*bS`7_a zr=heW4P9KXA-X|B>zx`}yir4MyrUt{%__=q9G&Xog8!F}2aU|~wuCj|-@0e*Ks86V zc57(nK899}DfOmfN`1_6OZdT>%^EvLhRYi2$(lHq9lWlgBR4cO^QMN5{H~#v4>aWa zr-qyjD4|}H^?9nH@@MTd==EGfW%zTH2z)})klB?XYW=|{bO`>`717kU|1fWUvkfGu z;pibpv@pkabT_oQRpv_vd+<;A{_W7_QN@;ydEjxM&#s7iuhmjkSitt diff --git a/docs/_build/doctrees/tools/indexing.doctree b/docs/_build/doctrees/tools/indexing.doctree index c217c051eadf0ae29ce7d96538a025654bd17710..76862d505bcf3f87cc67b5e26243f0e3b5dd1004 100644 GIT binary patch delta 104 zcmX@y&vv+7b4HcioUY%>!RRsht+_d>CVdMDh_Dp0S$aA7>FQH5*kh+;i1lFV+I-8R GJ{SOeH!L^+ delta 154 zcmcaNgX!iBCYA=)seT(-mT0idVPs&KT&pX$`ILqOBe#L6xuKr9shN?f>Euj(o6SL5 z$C(-HHcRO_qsVQ})Nkcrbf5g*+*|-ji(XECy87gUIl>SrNpz_x8SJrBGQ@ho8jIndexing Tools
-async gen3.tools.indexing.verify_manifest.async_verify_object_manifest(commons_url, manifest_file, max_concurrent_requests=24, manifest_row_parsers={'acl': <function _get_acl_from_row>, 'authz': <function _get_authz_from_row>, 'file_name': <function _get_file_name_from_row>, 'file_size': <function _get_file_size_from_row>, 'guid': <function _get_guid_from_row>, 'md5': <function _get_md5_from_row>, 'urls': <function _get_urls_from_row>}, manifest_file_delimiter=None, output_filename='verify-manifest-errors-1713550571.4756553.log')[source]
+async gen3.tools.indexing.verify_manifest.async_verify_object_manifest(commons_url, manifest_file, max_concurrent_requests=24, manifest_row_parsers={'acl': <function _get_acl_from_row>, 'authz': <function _get_authz_from_row>, 'file_name': <function _get_file_name_from_row>, 'file_size': <function _get_file_size_from_row>, 'guid': <function _get_guid_from_row>, 'md5': <function _get_md5_from_row>, 'urls': <function _get_urls_from_row>}, manifest_file_delimiter=None, output_filename='verify-manifest-errors-1713557245.1676264.log')[source]

Verify all file object records into a manifest csv

Parameters:
diff --git a/docs/_build/html/tools/metadata.html b/docs/_build/html/tools/metadata.html index 664e0ecae..74d1e7e30 100644 --- a/docs/_build/html/tools/metadata.html +++ b/docs/_build/html/tools/metadata.html @@ -102,7 +102,7 @@

Metadata Tools
-async gen3.tools.metadata.ingest_manifest.async_ingest_metadata_manifest(commons_url, manifest_file, metadata_source, auth=None, max_concurrent_requests=24, manifest_row_parsers={'guid_for_row': <function _get_guid_for_row>, 'indexed_file_object_guid': <function _query_for_associated_indexd_record_guid>}, manifest_file_delimiter=None, output_filename='ingest-metadata-manifest-errors-1713550571.756255.log', get_guid_from_file=True, metadata_type=None)[source]
+async gen3.tools.metadata.ingest_manifest.async_ingest_metadata_manifest(commons_url, manifest_file, metadata_source, auth=None, max_concurrent_requests=24, manifest_row_parsers={'guid_for_row': <function _get_guid_for_row>, 'indexed_file_object_guid': <function _query_for_associated_indexd_record_guid>}, manifest_file_delimiter=None, output_filename='ingest-metadata-manifest-errors-1713557245.4752307.log', get_guid_from_file=True, metadata_type=None)[source]

Ingest all metadata records into a manifest csv

Parameters:
From 56d4312bbbe3b7a19ad3a2aad4d32874dd8f1ecb Mon Sep 17 00:00:00 2001 From: Alex Date: Fri, 19 Apr 2024 15:41:42 -0500 Subject: [PATCH 29/62] chore(deps): attempt branch of gen3users without .json --- poetry.lock | 22 +++++++++++++++++++++- pyproject.toml | 2 +- 2 files changed, 22 insertions(+), 2 deletions(-) diff --git a/poetry.lock b/poetry.lock index bd88f168b..2784ff0ed 100644 --- a/poetry.lock +++ b/poetry.lock @@ -955,6 +955,26 @@ dictionaryutils = "*" jsonschema = "*" PyYAML = "*" +[[package]] +name = "gen3users" +version = "1.1.0" +description = "Utils for Gen3 Commons user management" +optional = false +python-versions = "^3.9" +files = [] +develop = false + +[package.dependencies] +cdislogging = "^1" +click = "*" +pyyaml = "^6" + +[package.source] +type = "git" +url = "https://github.com/uc-cdis/gen3users.git" +reference = "feat/python" +resolved_reference = "0a8afbc42315d44dca5da3c67efa087746135b94" + [[package]] name = "h11" version = "0.14.0" @@ -2275,4 +2295,4 @@ fhir = ["fhirclient"] [metadata] lock-version = "2.0" python-versions = ">=3.9, <4" -content-hash = "ed0a7aadae6368d3349d2058dd833cc7fe52aeca1a00e777a034122dcb45627d" +content-hash = "2abb0a0a475f434e858aa42b8fe8af0e69978cc970cc0a8035ac3f55188b1e79" diff --git a/pyproject.toml b/pyproject.toml index 2ea7424c8..9d2091429 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -39,7 +39,7 @@ urllib3 = ">2.0.0" httpx = "*" xmltodict = "^0.13.0" pyyaml = ">=6.0.1" -# gen3users = "*" +gen3users = { git = "https://github.com/uc-cdis/gen3users.git", branch = "feat/python" } # A list of all of the optional dependencies, some of which are included in the # below `extras`. They can be opted into by apps. From 9415ef21fd8f8d7bb2ac1e542325b4a1047e0d40 Mon Sep 17 00:00:00 2001 From: Avantol13 Date: Fri, 19 Apr 2024 20:43:00 +0000 Subject: [PATCH 30/62] Apply automatic documentation changes --- docs/_build/doctrees/environment.pickle | Bin 1579893 -> 1579893 bytes docs/_build/doctrees/tools/indexing.doctree | Bin 100291 -> 100291 bytes docs/_build/doctrees/tools/metadata.doctree | Bin 35934 -> 35934 bytes docs/_build/html/searchindex.js | 2 +- docs/_build/html/tools/indexing.html | 2 +- docs/_build/html/tools/metadata.html | 2 +- 6 files changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/_build/doctrees/environment.pickle b/docs/_build/doctrees/environment.pickle index 1f4e1e8253146f3682d7026851f2759029925e01..d393ddf38f2abd409c3544b8d3ad4a7956126812 100644 GIT binary patch delta 10914 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 RS(fLOSRGbeR@R7^{{f={7f}EJ diff --git a/docs/_build/doctrees/tools/indexing.doctree b/docs/_build/doctrees/tools/indexing.doctree index 76862d505bcf3f87cc67b5e26243f0e3b5dd1004..b03977f4a27fe931d5ed4aea9b1437b313bbff7e 100644 GIT binary patch delta 104 zcmX@y&vv+Indexing Tools
-async gen3.tools.indexing.verify_manifest.async_verify_object_manifest(commons_url, manifest_file, max_concurrent_requests=24, manifest_row_parsers={'acl': <function _get_acl_from_row>, 'authz': <function _get_authz_from_row>, 'file_name': <function _get_file_name_from_row>, 'file_size': <function _get_file_size_from_row>, 'guid': <function _get_guid_from_row>, 'md5': <function _get_md5_from_row>, 'urls': <function _get_urls_from_row>}, manifest_file_delimiter=None, output_filename='verify-manifest-errors-1713557245.1676264.log')[source]
+async gen3.tools.indexing.verify_manifest.async_verify_object_manifest(commons_url, manifest_file, max_concurrent_requests=24, manifest_row_parsers={'acl': <function _get_acl_from_row>, 'authz': <function _get_authz_from_row>, 'file_name': <function _get_file_name_from_row>, 'file_size': <function _get_file_size_from_row>, 'guid': <function _get_guid_from_row>, 'md5': <function _get_md5_from_row>, 'urls': <function _get_urls_from_row>}, manifest_file_delimiter=None, output_filename='verify-manifest-errors-1713559376.0576868.log')[source]

Verify all file object records into a manifest csv

Parameters:
diff --git a/docs/_build/html/tools/metadata.html b/docs/_build/html/tools/metadata.html index 74d1e7e30..cc5917d10 100644 --- a/docs/_build/html/tools/metadata.html +++ b/docs/_build/html/tools/metadata.html @@ -102,7 +102,7 @@

Metadata Tools
-async gen3.tools.metadata.ingest_manifest.async_ingest_metadata_manifest(commons_url, manifest_file, metadata_source, auth=None, max_concurrent_requests=24, manifest_row_parsers={'guid_for_row': <function _get_guid_for_row>, 'indexed_file_object_guid': <function _query_for_associated_indexd_record_guid>}, manifest_file_delimiter=None, output_filename='ingest-metadata-manifest-errors-1713557245.4752307.log', get_guid_from_file=True, metadata_type=None)[source]
+async gen3.tools.metadata.ingest_manifest.async_ingest_metadata_manifest(commons_url, manifest_file, metadata_source, auth=None, max_concurrent_requests=24, manifest_row_parsers={'guid_for_row': <function _get_guid_for_row>, 'indexed_file_object_guid': <function _query_for_associated_indexd_record_guid>}, manifest_file_delimiter=None, output_filename='ingest-metadata-manifest-errors-1713559376.4632835.log', get_guid_from_file=True, metadata_type=None)[source]

Ingest all metadata records into a manifest csv

Parameters:
From 4c52fe2d7755686cc41eb0f465772cb1d7b5f013 Mon Sep 17 00:00:00 2001 From: Alex Date: Fri, 19 Apr 2024 15:53:25 -0500 Subject: [PATCH 31/62] chore(deps): update gen3users --- poetry.lock | 2 +- pyproject.toml | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/poetry.lock b/poetry.lock index 2784ff0ed..6fb303339 100644 --- a/poetry.lock +++ b/poetry.lock @@ -973,7 +973,7 @@ pyyaml = "^6" type = "git" url = "https://github.com/uc-cdis/gen3users.git" reference = "feat/python" -resolved_reference = "0a8afbc42315d44dca5da3c67efa087746135b94" +resolved_reference = "b0d3907f83305b4b46dad5d9dba100d32eed6ef2" [[package]] name = "h11" diff --git a/pyproject.toml b/pyproject.toml index 9d2091429..07f399549 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -74,6 +74,6 @@ testpaths = [ [tool.poetry-pyinstaller-plugin.scripts] gen3 = { source = "./gen3/cli/__main__.py", type = "onedir", bundle = false } -[tool.poetry-pyinstaller-plugin.collect] +# [tool.poetry-pyinstaller-plugin.collect] # Collect all submodules, data files & binaries for 'package_A' and 'package_B' -all = ['gen3'] +# all = ['gen3'] From dc3be490a7e6775daf2729090ea373914f2eb781 Mon Sep 17 00:00:00 2001 From: Avantol13 Date: Fri, 19 Apr 2024 20:54:44 +0000 Subject: [PATCH 32/62] Apply automatic documentation changes --- docs/_build/doctrees/environment.pickle | Bin 1579893 -> 1579888 bytes docs/_build/doctrees/tools/indexing.doctree | Bin 100291 -> 100291 bytes docs/_build/doctrees/tools/metadata.doctree | Bin 35934 -> 35929 bytes docs/_build/html/searchindex.js | 2 +- docs/_build/html/tools/indexing.html | 2 +- docs/_build/html/tools/metadata.html | 2 +- 6 files changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/_build/doctrees/environment.pickle b/docs/_build/doctrees/environment.pickle index d393ddf38f2abd409c3544b8d3ad4a7956126812..700191bb513905062865bb5ac67a6bc1b940d070 100644 GIT binary patch delta 11117 zcma)Cd0bW1_UByg1b5(`vzbA}91uyoNU5lynU#v7m70|XsH9v6NI}h1OihJIQP5S1 zL(b)dl5EG!*YtBJ@nxCyoTml@Q5=xe-`abhebx8g=lA*f2kX1$wf9+j@3ZgmMrHcd z%JlM0vH8}lvBNVbWsMzCTI9^l&K^C!&6v#GjNuu%8Kp%gt}89_oj87cX_4`btkIdJ zMds|Gp3GsnUh@b3#*Dn&k?8eiUgo&BN{jr*=M5c`HGX_n_E>cGWDms{)`x=gY^pcT z@NwhQa`HxxE_td|v-}$dAD<#COBg?Hd~T`d8sq(VDj~Sa1a_HQ$f~&$OC; zvU(=-7ef$|>rCRuYZii=2A@=)BIkqZh4>b?<3$U>9VW2g)Cjhgv6`4dIToR5D2a~? z%ddM#|7cA$sL3mGr47#>Ha25SW?F7`T22Pe8JY^)vwLu`Z|UxwJoJVu6aNF9AVCI;CsJZ6Si{T>TLtaOi+p$3Nh7-Hpm{28j* z_IL+h{zM8b@i+ITycKNb#S~gvIQDan6;x>XwuRtWQH7Ql+kee38YQ?M< z`uBvtjfS9#zdqU>A<*8+NPk$m5@pq2O!McmlFtru$IXY%gh0e6)}V@2=U+EK@dm3} zp<$#tpA(gj{kbMiYvJ%lB`lt=F}}R`dg4oouOhyHn6p?le8JRGvPrq-t6Zh#t;#3^(s32a z2u6R|t{f*yH7GNcK>E!ACC#8z(-w!7pE~G5IDVE5?KR(Unrt$RNRhU?`Wf1UN#mKt>L(<=>6Hjy^5Um0$;l{PJYmNpr;3=36hWA*d>Gv3Q|@I5s` zG7Zap-+N9nOD_4gb_ynlo~rZxRpzGOJB)UVG^+_T9`=_^Rbyj_OEQ1AF}AWwrc(#w zCa=%kF2>7&Qd8gG_?TDY9&9}5keUFGafPfJ)=V_&1Fn7BI7}}rkY*Jci@n~?g~r8R z@14ty$Gm1MHyf8oGnic=L*-W*mqy5R3I8-!B}yjPY+4otlZ(|LdZ3vJTfBR+s?rWI zrsf*#nWhH8stzUs=}(*dAUaf0>GC8~?x-e|By$4K=`t?U?8BZKi+5=yG`O1V*}=U=F8Ue=$vN zCe4rBGj(k#nPxHOV_uD;xB1IxrJf!gZSE5#qYR&kifX_VvD($h;&rZ0SW*zohZ5Ng?KkAmW?+L&Dx_-wMzg-E!bWW7N8YkeUp8kC_ z0Rsm6KOQPzzg+(rjRd^Bz<*1OfE#xD&(dM{v;G;;Lb^+_?bP!Y*leOgy4`8Bs$38C zjim5?V_TR_IJJ(m9rP2>{-kYyUcrRtZJ)b@wC5n3Nr%Hm+ExY&X?VUZ&QFYd;9T1P zqkwygY)*ZUrI^+um%N#P``wjeLCgX3x%gwpp|Dlu>pR&MwXLJTDByD+_;H zsiDU&*eAetpfgcyrvL^P&;)T90Ro7Scvo{ek+HRWt$zWkQ zz0@A-67ciY_Ov+RlyyV~O{=oUbP@U`0gfB#LVqCJp(p)kj-$pQ^gm5=G)WZDzRmH2 z?p0Uocq>9kXE>ZDJ#AT2=eZCO>*XYzAU=REIyrMyVcN5gvqhlL_ehiatr^Z=h|sUd zb9NdCopSwy=+#5cZe<)oeMSI*@-P9p@FW~!V zA)K`65zm~(0hc`%%}4RUfAHouXDpqgxUM(R+PU2w-0@GiliUeO?c+yhkBEWVgQf@= zxx-aJ-OXG-naF>d#6m)MOE}E$>I#D7z0U5msFlke@Lyt;?7tBPo+MYi}W{v%TBhJ}HSt>~LK*8mHkf=#ffSmw(f~_PNVp zQ=W%I2VCvchyD1#STVXX`ahJVp2_&iJfze!7fF!_@o4JIgRYK7_%z2a2u|#A;d%0o z%a2xl?|QwP5KeTdLMRTI9913K3L08lg6QQ=>JS4&Y{T7XK(bn4hcV&SAlfKJP4b7% zv(RAF0CjCJgTXXrw7N)xK5tutAn0uj=uS~_Axu-JsBm&Pn$9m)F9!;*_tvP@x^x~@ zhw8CR|4_fS3WL)J)hrFpoKj;;tWRn%^Q8J5WS&u*!j+Ti5EykH(dbiZE>xdIwCtj4 zhGdHt3QbO{UEvR=-56{Nf#hqb_?XFho+B dygC>zvkK=i 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 diff --git a/docs/_build/doctrees/tools/indexing.doctree b/docs/_build/doctrees/tools/indexing.doctree index b03977f4a27fe931d5ed4aea9b1437b313bbff7e..2b9739c2e9cf0591bcf85042c96b4bacf7f03229 100644 GIT binary patch delta 109 zcmX@y&vv+knT46f_9AOWUsg1+GY*W8xlzTY@9|-DLlffn NWkfeE+?O%O3II&A8_NIy diff --git a/docs/_build/doctrees/tools/metadata.doctree b/docs/_build/doctrees/tools/metadata.doctree index 546134ee06bbc1bb079bc79fa9117e69f2d7d6b2..25641a570ba972419aa5b4be18aa4d69c2d7f447 100644 GIT binary patch delta 159 zcmcaNgX!iBCYA=)seT(-mT0idVPs&KT&pX$`ILq|BafMZfrWvdxq*SXrRC&IeVffe zTF03g>o!a2IiX5!&eU(^V054S-rP(OS(9E)e!BYPgE_(wIVlXeDH-gsQ!>PQz*H0RC z1GSDbGuCgG)N?|U-JGu9%E9O{`K`Gbnl^n435d8fig9{5`RVFYGT39MWQg@((YN`Q HMSU;;Pd6=d diff --git a/docs/_build/html/searchindex.js b/docs/_build/html/searchindex.js index 8d1e23dec..6c9a0c077 100644 --- a/docs/_build/html/searchindex.js +++ b/docs/_build/html/searchindex.js @@ -1 +1 @@ -Search.setIndex({"alltitles": {"DRS Download Tools": [[10, "module-gen3.tools.download.drs_download"]], "Download": [[11, "module-gen3.tools.indexing.download_manifest"]], "Gen3 Auth Helper": [[0, "gen3-auth-helper"]], "Gen3 File Class": [[1, "gen3-file-class"]], "Gen3 Index Class": [[3, "gen3-index-class"]], "Gen3 Jobs Class": [[4, "gen3-jobs-class"]], "Gen3 Metadata Class": [[5, "gen3-metadata-class"]], "Gen3 Object Class": [[6, "gen3-object-class"]], "Gen3 Query Class": [[7, "gen3-query-class"]], "Gen3 Submission Class": [[8, "gen3-submission-class"]], "Gen3 Tools": [[9, "gen3-tools"]], "Gen3 Workspace Storage": [[13, "gen3-workspace-storage"]], "Index": [[11, "module-gen3.tools.indexing.index_manifest"]], "Indexing Tools": [[11, "indexing-tools"]], "Indices and tables": [[2, "indices-and-tables"]], "Ingest": [[12, "module-gen3.tools.metadata.ingest_manifest"]], "Metadata Tools": [[12, "metadata-tools"]], "Verify": [[11, "module-gen3.tools.indexing.verify_manifest"]], "Welcome to Gen3 SDK\u2019s documentation!": [[2, "welcome-to-gen3-sdk-s-documentation"]]}, "docnames": ["auth", "file", "index", "indexing", "jobs", "metadata", "object", "query", "submission", "tools", "tools/drs_pull", "tools/indexing", "tools/metadata", "wss"], "envversion": {"sphinx": 61, "sphinx.domains.c": 3, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 9, "sphinx.domains.index": 1, "sphinx.domains.javascript": 3, "sphinx.domains.math": 2, "sphinx.domains.python": 4, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx.ext.viewcode": 1}, "filenames": ["auth.rst", "file.rst", "index.rst", "indexing.rst", "jobs.rst", "metadata.rst", "object.rst", "query.rst", "submission.rst", "tools.rst", "tools/drs_pull.rst", "tools/indexing.rst", "tools/metadata.rst", "wss.rst"], "indexentries": {"_manager (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable._manager", false]], "access_methods (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.access_methods", false]], "acls (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.ACLS", false]], "async_create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_create", false]], "async_create_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_create_aliases", false]], "async_create_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_create_record", false]], "async_delete_alias() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_delete_alias", false]], "async_delete_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_delete_aliases", false]], "async_download_object_manifest() (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.async_download_object_manifest", false]], "async_get() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_get", false]], "async_get_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_get_aliases", false]], "async_get_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_record", false]], "async_get_records_from_checksum() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_records_from_checksum", false]], "async_get_records_on_page() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_records_on_page", false]], "async_get_with_params() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_with_params", false]], "async_ingest_metadata_manifest() (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.async_ingest_metadata_manifest", false]], "async_query_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_query_urls", false]], "async_query_urls_from_indexd() (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.async_query_urls_from_indexd", false]], "async_run_job_and_wait() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.async_run_job_and_wait", false]], "async_update() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_update", false]], "async_update_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_update_aliases", false]], "async_update_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_update_record", false]], "async_verify_object_manifest() (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.async_verify_object_manifest", false]], "auth_provider (gen3.metadata.gen3metadata attribute)": [[5, "gen3.metadata.Gen3Metadata.auth_provider", false]], "authz (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.AUTHZ", false]], "batch_create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.batch_create", false]], "cache_hosts_wts_tokens() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.cache_hosts_wts_tokens", false]], "children (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.children", false]], "column_to_use_as_guid (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.COLUMN_TO_USE_AS_GUID", false]], "commons_url (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.commons_url", false]], "copy() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.copy", false]], "create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create", false]], "create_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create_aliases", false]], "create_blank() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_blank", false]], "create_index_key_path() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create_index_key_path", false]], "create_job() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.create_job", false]], "create_new_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_new_version", false]], "create_object_list() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.create_object_list", false]], "create_program() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.create_program", false]], "create_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.create_project", false]], "create_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_record", false]], "created_time (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.created_time", false]], "curl() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.curl", false]], "current_dir (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.CURRENT_DIR", false]], "current_dir (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.CURRENT_DIR", false]], "current_dir (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.CURRENT_DIR", false]], "delete() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete", false]], "delete_alias() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_alias", false]], "delete_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_aliases", false]], "delete_all_guids() (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.delete_all_guids", false]], "delete_file() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.delete_file", false]], "delete_file_locations() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.delete_file_locations", false]], "delete_index_key_path() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_index_key_path", false]], "delete_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_node", false]], "delete_nodes() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_nodes", false]], "delete_object() (gen3.object.gen3object method)": [[6, "gen3.object.Gen3Object.delete_object", false]], "delete_program() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_program", false]], "delete_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_project", false]], "delete_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.delete_record", false]], "delete_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_record", false]], "delete_records() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_records", false]], "download() (gen3.tools.download.drs_download.downloadable method)": [[10, "gen3.tools.download.drs_download.Downloadable.download", false]], "download() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.download", false]], "download() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.download", false]], "download_files_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.download_files_in_drs_manifest", false]], "download_single() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.download_single", false]], "download_url() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.download_url", false]], "downloadable (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.Downloadable", false]], "downloadmanager (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.DownloadManager", false]], "downloadstatus (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.DownloadStatus", false]], "end_time (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.end_time", false]], "endpoint (gen3.metadata.gen3metadata attribute)": [[5, "gen3.metadata.Gen3Metadata.endpoint", false]], "export_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.export_node", false]], "export_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.export_record", false]], "file_name (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.file_name", false]], "file_name (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.file_name", false]], "file_size (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.file_size", false]], "file_size (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.file_size", false]], "gen3.tools": [[9, "module-gen3.tools", false]], "gen3.tools.download.drs_download": [[10, "module-gen3.tools.download.drs_download", false]], "gen3.tools.indexing.download_manifest": [[11, "module-gen3.tools.indexing.download_manifest", false]], "gen3.tools.indexing.index_manifest": [[11, "module-gen3.tools.indexing.index_manifest", false]], "gen3.tools.indexing.verify_manifest": [[11, "module-gen3.tools.indexing.verify_manifest", false]], "gen3.tools.metadata.ingest_manifest": [[12, "module-gen3.tools.metadata.ingest_manifest", false]], "gen3auth (class in gen3.auth)": [[0, "gen3.auth.Gen3Auth", false]], "gen3file (class in gen3.file)": [[1, "gen3.file.Gen3File", false]], "gen3index (class in gen3.index)": [[3, "gen3.index.Gen3Index", false]], "gen3jobs (class in gen3.jobs)": [[4, "gen3.jobs.Gen3Jobs", false]], "gen3metadata (class in gen3.metadata)": [[5, "gen3.metadata.Gen3Metadata", false]], "gen3object (class in gen3.object)": [[6, "gen3.object.Gen3Object", false]], "gen3query (class in gen3.query)": [[7, "gen3.query.Gen3Query", false]], "gen3submission (class in gen3.submission)": [[8, "gen3.submission.Gen3Submission", false]], "gen3wsstorage (class in gen3.wss)": [[13, "gen3.wss.Gen3WsStorage", false]], "get() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get", false]], "get() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get", false]], "get_access_token() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.get_access_token", false]], "get_access_token_from_wts() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.get_access_token_from_wts", false]], "get_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_aliases", false]], "get_all_records() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_all_records", false]], "get_dictionary_all() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_dictionary_all", false]], "get_dictionary_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_dictionary_node", false]], "get_fresh_token() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.get_fresh_token", false]], "get_graphql_schema() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_graphql_schema", false]], "get_guids_prefix() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_guids_prefix", false]], "get_index_key_paths() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_index_key_paths", false]], "get_latest_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_latest_version", false]], "get_output() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_output", false]], "get_presigned_url() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.get_presigned_url", false]], "get_programs() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_programs", false]], "get_project_dictionary() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_project_dictionary", false]], "get_project_manifest() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_project_manifest", false]], "get_projects() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_projects", false]], "get_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_record", false]], "get_record_doc() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_record_doc", false]], "get_records() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_records", false]], "get_records_on_page() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_records_on_page", false]], "get_stats() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_stats", false]], "get_status() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_status", false]], "get_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_urls", false]], "get_valid_guids() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_valid_guids", false]], "get_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_version", false]], "get_version() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_version", false]], "get_version() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_version", false]], "get_versions() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_versions", false]], "get_with_params() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_with_params", false]], "graphql_query() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.graphql_query", false]], "guid (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.GUID", false]], "guid_type_for_indexed_file_object (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.GUID_TYPE_FOR_INDEXED_FILE_OBJECT", false]], "guid_type_for_non_indexed_file_object (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.GUID_TYPE_FOR_NON_INDEXED_FILE_OBJECT", false]], "hostname (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.hostname", false]], "index_object_manifest() (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.index_object_manifest", false]], "indexd_record_page_size (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.INDEXD_RECORD_PAGE_SIZE", false]], "is_healthy() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.is_healthy", false]], "is_healthy() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.is_healthy", false]], "is_healthy() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.is_healthy", false]], "list_access_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_access_in_drs_manifest", false]], "list_drs_object() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_drs_object", false]], "list_files_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_files_in_drs_manifest", false]], "list_jobs() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.list_jobs", false]], "load() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.load", false]], "load_manifest() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.load_manifest", false]], "ls() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.ls", false]], "ls_path() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.ls_path", false]], "manifest (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.Manifest", false]], "max_concurrent_requests (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.MAX_CONCURRENT_REQUESTS", false]], "max_concurrent_requests (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.MAX_CONCURRENT_REQUESTS", false]], "max_concurrent_requests (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.MAX_CONCURRENT_REQUESTS", false]], "md5 (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.MD5", false]], "md5sum (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.md5sum", false]], "module": [[9, "module-gen3.tools", false], [10, "module-gen3.tools.download.drs_download", false], [11, "module-gen3.tools.indexing.download_manifest", false], [11, "module-gen3.tools.indexing.index_manifest", false], [11, "module-gen3.tools.indexing.verify_manifest", false], [12, "module-gen3.tools.metadata.ingest_manifest", false]], "object_id (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.object_id", false]], "object_id (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.object_id", false]], "object_type (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.object_type", false]], "open_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.open_project", false]], "pprint() (gen3.tools.download.drs_download.downloadable method)": [[10, "gen3.tools.download.drs_download.Downloadable.pprint", false]], "prev_guid (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.PREV_GUID", false]], "query() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.query", false]], "query() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.query", false]], "query() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.query", false]], "query_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.query_urls", false]], "raw_data_download() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.raw_data_download", false]], "refresh_access_token() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.refresh_access_token", false]], "resolve_objects() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.resolve_objects", false]], "rm() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.rm", false]], "rm_path() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.rm_path", false]], "size (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.SIZE", false]], "start_time (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.start_time", false]], "status (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.status", false]], "submit_file() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.submit_file", false]], "submit_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.submit_record", false]], "threadcontrol (class in gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.ThreadControl", false]], "tmp_folder (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.TMP_FOLDER", false]], "update() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.update", false]], "update_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.update_aliases", false]], "update_blank() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.update_blank", false]], "update_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.update_record", false]], "updated_time (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.updated_time", false]], "upload() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.upload", false]], "upload_file() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.upload_file", false]], "upload_file_to_guid() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.upload_file_to_guid", false]], "upload_url() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.upload_url", false]], "urls (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.URLS", false]], "user_access() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.user_access", false]]}, "objects": {"gen3": [[9, 3, 0, "-", "tools"]], "gen3.auth": [[0, 0, 1, "", "Gen3Auth"]], "gen3.auth.Gen3Auth": [[0, 1, 1, "", "curl"], [0, 1, 1, "", "get_access_token"], [0, 1, 1, "", "get_access_token_from_wts"], [0, 1, 1, "", "refresh_access_token"]], "gen3.file": [[1, 0, 1, "", "Gen3File"]], "gen3.file.Gen3File": [[1, 1, 1, "", "delete_file"], [1, 1, 1, "", "delete_file_locations"], [1, 1, 1, "", "download_single"], [1, 1, 1, "", "get_presigned_url"], [1, 1, 1, "", "upload_file"], [1, 1, 1, "", "upload_file_to_guid"]], "gen3.index": [[3, 0, 1, "", "Gen3Index"]], "gen3.index.Gen3Index": [[3, 1, 1, "", "async_create_record"], [3, 1, 1, "", "async_get_record"], [3, 1, 1, "", "async_get_records_from_checksum"], [3, 1, 1, "", "async_get_records_on_page"], [3, 1, 1, "", "async_get_with_params"], [3, 1, 1, "", "async_query_urls"], [3, 1, 1, "", "async_update_record"], [3, 1, 1, "", "create_blank"], [3, 1, 1, "", "create_new_version"], [3, 1, 1, "", "create_record"], [3, 1, 1, "", "delete_record"], [3, 1, 1, "", "get"], [3, 1, 1, "", "get_all_records"], [3, 1, 1, "", "get_guids_prefix"], [3, 1, 1, "", "get_latest_version"], [3, 1, 1, "", "get_record"], [3, 1, 1, "", "get_record_doc"], [3, 1, 1, "", "get_records"], [3, 1, 1, "", "get_records_on_page"], [3, 1, 1, "", "get_stats"], [3, 1, 1, "", "get_urls"], [3, 1, 1, "", "get_valid_guids"], [3, 1, 1, "", "get_version"], [3, 1, 1, "", "get_versions"], [3, 1, 1, "", "get_with_params"], [3, 1, 1, "", "is_healthy"], [3, 1, 1, "", "query_urls"], [3, 1, 1, "", "update_blank"], [3, 1, 1, "", "update_record"]], "gen3.jobs": [[4, 0, 1, "", "Gen3Jobs"]], "gen3.jobs.Gen3Jobs": [[4, 1, 1, "", "async_run_job_and_wait"], [4, 1, 1, "", "create_job"], [4, 1, 1, "", "get_output"], [4, 1, 1, "", "get_status"], [4, 1, 1, "", "get_version"], [4, 1, 1, "", "is_healthy"], [4, 1, 1, "", "list_jobs"]], "gen3.metadata": [[5, 0, 1, "", "Gen3Metadata"]], "gen3.metadata.Gen3Metadata": [[5, 1, 1, "", "async_create"], [5, 1, 1, "", "async_create_aliases"], [5, 1, 1, "", "async_delete_alias"], [5, 1, 1, "", "async_delete_aliases"], [5, 1, 1, "", "async_get"], [5, 1, 1, "", "async_get_aliases"], [5, 1, 1, "", "async_update"], [5, 1, 1, "", "async_update_aliases"], [5, 2, 1, "", "auth_provider"], [5, 1, 1, "", "batch_create"], [5, 1, 1, "", "create"], [5, 1, 1, "", "create_aliases"], [5, 1, 1, "", "create_index_key_path"], [5, 1, 1, "", "delete"], [5, 1, 1, "", "delete_alias"], [5, 1, 1, "", "delete_aliases"], [5, 1, 1, "", "delete_index_key_path"], [5, 2, 1, "", "endpoint"], [5, 1, 1, "", "get"], [5, 1, 1, "", "get_aliases"], [5, 1, 1, "", "get_index_key_paths"], [5, 1, 1, "", "get_version"], [5, 1, 1, "", "is_healthy"], [5, 1, 1, "", "query"], [5, 1, 1, "", "update"], [5, 1, 1, "", "update_aliases"]], "gen3.object": [[6, 0, 1, "", "Gen3Object"]], "gen3.object.Gen3Object": [[6, 1, 1, "", "delete_object"]], "gen3.query": [[7, 0, 1, "", "Gen3Query"]], "gen3.query.Gen3Query": [[7, 1, 1, "", "graphql_query"], [7, 1, 1, "", "query"], [7, 1, 1, "", "raw_data_download"]], "gen3.submission": [[8, 0, 1, "", "Gen3Submission"]], "gen3.submission.Gen3Submission": [[8, 1, 1, "", "create_program"], [8, 1, 1, "", "create_project"], [8, 1, 1, "", "delete_node"], [8, 1, 1, "", "delete_nodes"], [8, 1, 1, "", "delete_program"], [8, 1, 1, "", "delete_project"], [8, 1, 1, "", "delete_record"], [8, 1, 1, "", "delete_records"], [8, 1, 1, "", "export_node"], [8, 1, 1, "", "export_record"], [8, 1, 1, "", "get_dictionary_all"], [8, 1, 1, "", "get_dictionary_node"], [8, 1, 1, "", "get_graphql_schema"], [8, 1, 1, "", "get_programs"], [8, 1, 1, "", "get_project_dictionary"], [8, 1, 1, "", "get_project_manifest"], [8, 1, 1, "", "get_projects"], [8, 1, 1, "", "open_project"], [8, 1, 1, "", "query"], [8, 1, 1, "", "submit_file"], [8, 1, 1, "", "submit_record"]], "gen3.tools.download": [[10, 3, 0, "-", "drs_download"]], "gen3.tools.download.drs_download": [[10, 0, 1, "", "DownloadManager"], [10, 0, 1, "", "DownloadStatus"], [10, 0, 1, "", "Downloadable"], [10, 0, 1, "", "Manifest"], [10, 4, 1, "", "download_files_in_drs_manifest"], [10, 4, 1, "", "list_access_in_drs_manifest"], [10, 4, 1, "", "list_drs_object"], [10, 4, 1, "", "list_files_in_drs_manifest"]], "gen3.tools.download.drs_download.DownloadManager": [[10, 1, 1, "", "cache_hosts_wts_tokens"], [10, 1, 1, "", "download"], [10, 1, 1, "", "get_fresh_token"], [10, 1, 1, "", "resolve_objects"], [10, 1, 1, "", "user_access"]], "gen3.tools.download.drs_download.DownloadStatus": [[10, 2, 1, "", "end_time"], [10, 2, 1, "", "start_time"], [10, 2, 1, "", "status"]], "gen3.tools.download.drs_download.Downloadable": [[10, 2, 1, "", "_manager"], [10, 2, 1, "", "access_methods"], [10, 2, 1, "", "children"], [10, 2, 1, "", "created_time"], [10, 1, 1, "", "download"], [10, 2, 1, "", "file_name"], [10, 2, 1, "", "file_size"], [10, 2, 1, "", "hostname"], [10, 2, 1, "", "object_id"], [10, 2, 1, "", "object_type"], [10, 1, 1, "", "pprint"], [10, 2, 1, "", "updated_time"]], "gen3.tools.download.drs_download.Manifest": [[10, 2, 1, "", "commons_url"], [10, 1, 1, "", "create_object_list"], [10, 2, 1, "", "file_name"], [10, 2, 1, "", "file_size"], [10, 1, 1, "", "load"], [10, 1, 1, "", "load_manifest"], [10, 2, 1, "", "md5sum"], [10, 2, 1, "", "object_id"]], "gen3.tools.indexing": [[11, 3, 0, "-", "download_manifest"], [11, 3, 0, "-", "index_manifest"], [11, 3, 0, "-", "verify_manifest"]], "gen3.tools.indexing.download_manifest": [[11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "INDEXD_RECORD_PAGE_SIZE"], [11, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [11, 2, 1, "", "TMP_FOLDER"], [11, 4, 1, "", "async_download_object_manifest"]], "gen3.tools.indexing.index_manifest": [[11, 2, 1, "", "ACLS"], [11, 2, 1, "", "AUTHZ"], [11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "GUID"], [11, 2, 1, "", "MD5"], [11, 2, 1, "", "PREV_GUID"], [11, 2, 1, "", "SIZE"], [11, 0, 1, "", "ThreadControl"], [11, 2, 1, "", "URLS"], [11, 4, 1, "", "delete_all_guids"], [11, 4, 1, "", "index_object_manifest"]], "gen3.tools.indexing.verify_manifest": [[11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [11, 4, 1, "", "async_verify_object_manifest"]], "gen3.tools.metadata": [[12, 3, 0, "-", "ingest_manifest"]], "gen3.tools.metadata.ingest_manifest": [[12, 2, 1, "", "COLUMN_TO_USE_AS_GUID"], [12, 2, 1, "", "GUID_TYPE_FOR_INDEXED_FILE_OBJECT"], [12, 2, 1, "", "GUID_TYPE_FOR_NON_INDEXED_FILE_OBJECT"], [12, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [12, 4, 1, "", "async_ingest_metadata_manifest"], [12, 4, 1, "", "async_query_urls_from_indexd"]], "gen3.wss": [[13, 0, 1, "", "Gen3WsStorage"]], "gen3.wss.Gen3WsStorage": [[13, 1, 1, "", "copy"], [13, 1, 1, "", "download"], [13, 1, 1, "", "download_url"], [13, 1, 1, "", "ls"], [13, 1, 1, "", "ls_path"], [13, 1, 1, "", "rm"], [13, 1, 1, "", "rm_path"], [13, 1, 1, "", "upload"], [13, 1, 1, "", "upload_url"]]}, "objnames": {"0": ["py", "class", "Python class"], "1": ["py", "method", "Python method"], "2": ["py", "attribute", "Python attribute"], "3": ["py", "module", "Python module"], "4": ["py", "function", "Python function"]}, "objtypes": {"0": "py:class", "1": "py:method", "2": "py:attribute", "3": "py:module", "4": "py:function"}, "terms": {"": [1, 4, 8, 10, 11], "0": [5, 7, 8, 11], "0046513": [], "052073": [], "0576868": 11, "064572": [], "07464": [], "0a80fada010c": 11, "0a80fada096c": 11, "0a80fada097c": 11, "0a80fada098c": 11, "0a80fada099c": 11, "1": [4, 5, 8, 10, 11], "10": [5, 7, 11], "100": [8, 11], "11e9": 11, "1676264": [], "1713542306": [], "1713542765": [], "1713543033": [], "1713543225": [], "1713543506": [], "1713543956": [], "1713544131": [], "1713544132": [], "1713544397": [], "1713544598": [], "1713545857": [], "1713545858": [], "1713549370": [], "1713549689": [], "1713550571": [], "1713557245": [], "1713559376": [11, 12], "1771936": [], "1913438": [], "2": [5, 11], "24": [11, 12], "255e396f": 11, "2877355": [], "2930224": [], "2995": [], "3": [5, 11], "30": 8, "3102272": [], "33": 5, "333": 5, "343434344": 11, "363455714": 11, "4": [5, 11], "4017086": [], "4052968": [], "4463434": [], "450c": 11, "4632835": 12, "4649727": [], "4714": 8, "473d83400bc1bc9dc635e334fadd433c": 11, "473d83400bc1bc9dc635e334faddd33c": 11, "473d83400bc1bc9dc635e334fadde33c": 11, "473d83400bc1bc9dc635e334faddf33c": 11, "4752307": [], "4756553": [], "5": [0, 5], "50": 7, "543434443": 11, "5669184": [], "5899982": [], "6692646": [], "6739478": [], "674552": [], "6f90": 8, "7232893": [], "756255": [], "760149": [], "7d3d8d2083b4": 11, "8044841": [], "8375325": [], "8420": 8, "8882551": [], "93d9af72": 11, "9a07": 11, "A": [1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "AND": 5, "Be": 1, "But": 5, "By": 11, "For": [1, 5, 6, 7, 8, 9, 11], "IF": 11, "If": [0, 1, 7, 11, 12], "In": 10, "It": 10, "NOT": 12, "OR": 5, "One": 7, "Such": 9, "THE": 11, "That": 3, "The": [0, 1, 2, 3, 5, 8, 10, 11], "There": 11, "These": 9, "To": 11, "Will": [4, 7, 10], "_get_acl_from_row": 11, "_get_authz_from_row": 11, "_get_file_name_from_row": 11, "_get_file_size_from_row": 11, "_get_guid_for_row": 12, "_get_guid_from_row": 11, "_get_md5_from_row": 11, "_get_urls_from_row": 11, "_guid_typ": 12, "_manag": [2, 9, 10], "_query_for_associated_indexd_record_guid": 12, "_ssl": [3, 4, 5], "a5c6": 11, "ab167e49d25b488939b1ede42752458b": 3, "about": [2, 3], "abov": 11, "access": [0, 1, 3, 7, 10], "access_method": [2, 9, 10], "access_token": 0, "accesstoken": 0, "acl": [2, 3, 9, 11], "across": 11, "act": 0, "action": [9, 11], "actual": 11, "ad": 3, "add": [3, 5], "addit": [3, 5, 10, 11], "admin": [5, 11], "admin_endpoint_suffix": 5, "after": 10, "against": [3, 7, 8, 11, 12], "algorithm": 3, "alia": [3, 5], "alias": 5, "aliv": 7, "all": [1, 3, 4, 5, 6, 7, 8, 10, 11, 12], "allow": [0, 6, 8, 10, 11, 12], "allowed_data_upload_bucket": 1, "along": 2, "alreadi": 9, "also": 1, "altern": [5, 11], "alwai": 5, "ammount": 12, "amount": [1, 9], "an": [0, 3, 6, 8, 10, 11], "ani": [0, 5, 10, 11], "anoth": 5, "api": [0, 5, 8, 11], "api_kei": 11, "appli": 7, "appropri": 13, "ar": [5, 7, 8, 9, 10, 11], "arbitrari": 0, "argument": [0, 13], "arrai": 8, "asc": 7, "assign": 9, "assist": 10, "associ": [3, 5], "assum": 11, "async": [3, 4, 5, 9, 11, 12], "async_cr": [2, 5], "async_create_alias": [2, 5], "async_create_record": [2, 3], "async_delete_alia": [2, 5], "async_delete_alias": [2, 5], "async_download_object_manifest": [2, 9, 11], "async_get": [2, 5], "async_get_alias": [2, 5], "async_get_record": [2, 3], "async_get_records_from_checksum": [2, 3], "async_get_records_on_pag": [2, 3], "async_get_with_param": [2, 3], "async_ingest_metadata_manifest": [2, 9, 12], "async_query_url": [2, 3], "async_query_urls_from_indexd": [2, 9, 12], "async_run_job_and_wait": [2, 4], "async_upd": [2, 5], "async_update_alias": [2, 5], "async_update_record": [2, 3], "async_verify_object_manifest": [2, 9, 11], "asynchron": [3, 4, 5], "asyncio": [11, 12], "asyncron": 5, "attach": [3, 5], "attempt": 11, "attribut": [10, 11], "auth": [1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "auth_provid": [1, 2, 3, 4, 5, 6, 7, 8, 13], "authbas": 0, "authent": 0, "author": 1, "authz": [0, 1, 2, 3, 9, 10, 11], "auto": [0, 2], "automat": 0, "avail": [1, 2, 10, 11], "az": 1, "b": [5, 11], "b0f1": 11, "bar": 10, "base": [0, 1, 3, 4, 5, 6, 7, 8, 9, 11, 13], "baseid": 3, "basic": [3, 11, 12], "batch_creat": [2, 5], "batch_siz": 8, "behalf": 0, "behavior": 11, "being": 3, "belong": 8, "below": 11, "blank": 3, "blob": [5, 7], "bodi": 3, "bool": [4, 5, 8, 10, 11, 12], "boolean": 3, "bownload": 10, "broad": 9, "broken": 9, "bucket": [1, 6], "bundl": 10, "byte": 10, "c": [5, 11], "cach": 10, "cache_hosts_wts_token": [2, 9, 10], "call": [10, 13], "can": [0, 3, 4, 8, 11, 12], "capabl": 9, "case": [0, 10], "categori": 9, "ccle": 8, "ccle_one_record": 8, "ccle_sample_nod": 8, "cdi": 7, "chang": [3, 11], "checksum": [3, 10], "checksum_typ": 3, "child": 10, "children": [2, 9, 10], "chunk_siz": 8, "class": [0, 2, 10, 11, 13], "cli": 10, "client": [0, 3], "client_credenti": 0, "client_id": 0, "client_scop": 0, "client_secret": 0, "code": [2, 8], "column": [11, 12], "column_to_use_as_guid": [2, 9, 12], "columna": 11, "columnb": 11, "columnc": 11, "com": 7, "comma": 11, "command": [10, 11], "common": [0, 1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13], "commons_url": [2, 9, 10, 11, 12], "complet": [4, 11], "complex": 7, "concat": 11, "concurr": [11, 12], "configur": 1, "connect": 12, "consist": 3, "constructor": 0, "contain": [0, 2, 5, 8, 9, 10, 11, 12], "content": [3, 13], "content_created_d": 3, "content_updated_d": 3, "continu": 10, "control": 3, "conveni": 10, "copi": [2, 13], "coroutin": 11, "correspond": 3, "count": 3, "crdc": 0, "creat": [2, 3, 4, 5, 6, 8, 10, 11], "create_alias": [2, 5], "create_blank": [2, 3], "create_index_key_path": [2, 5], "create_job": [2, 4], "create_new_vers": [2, 3], "create_object_list": [2, 9, 10], "create_program": [2, 8], "create_project": [2, 8], "create_record": [2, 3], "created_tim": [2, 9, 10], "creation": [3, 11], "cred": 3, "credenti": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "csv": [8, 11, 12], "curl": [0, 2], "current": [6, 8, 10], "current_dir": [2, 9, 11], "custom": 11, "d": 5, "d70b41b9": 8, "data": [0, 1, 3, 5, 7, 8, 10, 11], "data_spreadsheet": 8, "data_typ": 7, "data_upload_bucket": 1, "dataa": 11, "datab": 11, "databas": 5, "datacommon": 0, "datafil": 10, "datamanag": 10, "date": 3, "datetim": [1, 3, 10], "dbgap": 12, "dcf": 8, "def": 11, "default": [0, 1, 3, 7, 8, 11, 12], "defin": [5, 8, 10], "delai": 4, "delet": [0, 1, 2, 3, 5, 6, 8, 10, 11], "delete_alia": [2, 5], "delete_alias": [2, 5], "delete_all_guid": [2, 9, 11], "delete_fil": [1, 2], "delete_file_loc": [1, 2, 6], "delete_index_key_path": [2, 5], "delete_nod": [2, 8], "delete_object": [2, 6], "delete_program": [2, 8], "delete_project": [2, 8], "delete_record": [2, 3, 8], "delete_unpacked_packag": 10, "delimet": [11, 12], "delimit": 11, "demograph": 8, "deprec": 1, "descript": [3, 5], "desir": 11, "dest_path": 13, "dest_urlstr": 13, "dest_w": 13, "dest_wskei": 13, "detail": [2, 7, 10], "determin": [10, 11, 12], "dev": 11, "dict": [3, 4, 5, 10, 11, 12], "dictionari": [3, 4, 5, 7, 8], "did": 3, "differ": 5, "direct": 0, "directori": [10, 11], "disabl": 10, "discoveri": 10, "disk": 13, "dispatch": 4, "dist_resolut": 3, "distribut": 3, "doc": [7, 10], "docstr": 2, "document": [1, 3], "doe": [0, 12], "domain": [11, 12], "done": 4, "download": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 13], "download_files_in_drs_manifest": [2, 9, 10], "download_list": 10, "download_manifest": 11, "download_singl": [1, 2], "download_url": [2, 13], "downloadmanag": [2, 9, 10], "downloadstatu": [2, 9, 10], "dr": [2, 9], "drs_download": 10, "drs_hostnam": 10, "drsdownload": 10, "drsobjecttyp": 10, "e": [5, 10], "e043ab8b77b9": 8, "each": [3, 8, 10, 11], "effici": 9, "eg": 3, "either": 8, "elasticsearch": 7, "els": [0, 12], "elsewher": 12, "empti": [8, 11], "enabl": 11, "end": [5, 10], "end_tim": [2, 9, 10], "endpoint": [0, 1, 2, 3, 4, 5, 7, 8, 13], "entir": 8, "entri": [3, 11], "env": 0, "environ": 0, "equal": 7, "error": [10, 11, 12], "error_nam": 11, "etc": 8, "even": 11, "everi": [9, 11], "everyth": 11, "ex": [0, 11, 12], "exampl": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "exclud": 3, "execut": [7, 8, 11], "exist": [1, 3, 5, 6, 9, 12], "expect": [5, 9, 11], "experi": 8, "expir": [0, 1], "expires_in": 1, "export": [8, 10], "export_nod": [2, 8], "export_record": [2, 8], "f1f8": 11, "factori": 10, "fail": [8, 10], "fals": [3, 5, 6, 10, 11], "featur": [1, 6], "fenc": [0, 1], "fetch": 0, "field": [3, 5, 7, 11, 12], "fieldnam": 11, "file": [0, 2, 3, 4, 8, 9, 10, 11, 12, 13], "file_nam": [1, 2, 3, 9, 10, 11], "file_s": [2, 9, 10, 11], "file_st": 3, "fileformat": 8, "filenam": [0, 8, 10, 11, 12], "files": 10, "fill": 12, "filter": [5, 7], "filter_object": 7, "first": [7, 8], "flag": 11, "folder": 11, "follow": [0, 11], "forc": 11, "force_metadata_columns_even_if_empti": 11, "form": 13, "format": [3, 5, 8, 11], "from": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13], "func_to_parse_row": [11, 12], "function": [2, 3, 4, 5, 9, 10, 11, 12], "g": 10, "gen3": [10, 11, 12], "gen3_api_kei": 0, "gen3_oidc_client_creds_secret": 0, "gen3auth": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "gen3fil": [1, 2], "gen3index": [2, 3], "gen3job": [2, 4, 10], "gen3metadata": [2, 5], "gen3object": [2, 6], "gen3queri": [2, 7], "gen3submiss": [2, 8], "gen3wsstorag": [2, 13], "gener": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 13], "get": [0, 1, 2, 3, 4, 5, 8, 10, 11, 12, 13], "get_access_token": [0, 2], "get_access_token_from_wt": [0, 2], "get_alias": [2, 5], "get_all_record": [2, 3], "get_dictionary_al": [2, 8], "get_dictionary_nod": [2, 8], "get_fresh_token": [2, 9, 10], "get_graphql_schema": [2, 8], "get_guid_from_fil": 12, "get_guids_prefix": [2, 3], "get_index_key_path": [2, 5], "get_latest_vers": [2, 3], "get_output": [2, 4], "get_presigned_url": [1, 2], "get_program": [2, 8], "get_project": [2, 8], "get_project_dictionari": [2, 8], "get_project_manifest": [2, 8], "get_record": [2, 3], "get_record_doc": [2, 3], "get_records_on_pag": [2, 3], "get_stat": [2, 3], "get_statu": [2, 4], "get_url": [2, 3], "get_valid_guid": [2, 3], "get_vers": [2, 3, 4, 5], "get_with_param": [2, 3], "giangb": 11, "github": [2, 7], "give": 1, "given": [0, 3, 4, 5, 8, 10, 12, 13], "global": [4, 5], "good": 3, "grant": 0, "graph": 8, "graphql": [7, 8], "graphql_queri": [2, 7], "group": 3, "guid": [1, 2, 3, 5, 6, 9, 11, 12], "guid_exampl": 11, "guid_for_row": 12, "guid_from_fil": 12, "guid_type_for_indexed_file_object": [2, 9, 12], "guid_type_for_non_indexed_file_object": [2, 9, 12], "guppi": 7, "ha": [0, 11], "handl": [3, 10], "hardcod": 0, "has_vers": 3, "hash": [3, 11], "hash_typ": 3, "have": [5, 11], "header": 11, "healthi": [3, 4, 5], "help": 11, "helper": 2, "hit": 11, "host": 10, "hostnam": [2, 9, 10], "how": [8, 11], "howto": 10, "http": [0, 7, 11, 12], "i": [0, 1, 2, 3, 4, 5, 8, 10, 11, 12], "id": [0, 1, 3, 5, 10, 11], "idea": 3, "identifi": [3, 5, 9, 11], "idp": 0, "illustr": 11, "immut": 3, "implement": 0, "implic": 11, "import": 11, "includ": [0, 3], "indent": 10, "index": [0, 2, 5, 9], "index_manifest": 11, "index_object_manifest": [2, 9, 11], "indexd": [1, 3, 6, 10, 11, 12], "indexd_field": [11, 12], "indexd_record_page_s": [2, 9, 11], "indexed_file_object_guid": 12, "indic": [0, 11], "infil": 10, "info": [3, 11], "inform": [2, 3, 10], "ingest": [2, 9], "ingest_manifest": 12, "initi": [0, 10], "input": [4, 10, 11], "input_manifest": 11, "instal": [0, 2, 11], "instanc": [1, 3, 6, 7, 8, 9, 10], "instead": [1, 7, 11], "int": [1, 3, 5, 7, 8, 10, 11, 12], "integ": [1, 3, 8], "intend": 0, "interact": [1, 3, 4, 5, 6, 8, 13], "interest": 10, "interpret": 0, "introspect": 8, "involv": 9, "is_healthi": [2, 3, 4, 5], "is_indexed_file_object": 12, "isn": 1, "issu": 0, "its": [1, 3], "job": 2, "job_id": 4, "job_input": 4, "job_nam": 4, "json": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "just": [5, 11, 12], "jwt": 0, "kei": [0, 3, 5, 13], "know": 11, "known": 10, "kwarg": [3, 4, 5], "l": [2, 13], "larg": 9, "last": 10, "latest": 3, "least": 3, "level": 6, "librari": 11, "like": [3, 5, 9, 11, 12], "limit": [1, 3, 5, 12], "linear": 4, "linux": 10, "list": [0, 1, 3, 4, 5, 7, 8, 10, 11, 13], "list_access_in_drs_manifest": [2, 9, 10], "list_drs_object": [2, 9, 10], "list_files_in_drs_manifest": [2, 9, 10], "list_job": [2, 4], "live": [11, 12], "load": [2, 9, 10], "load_manifest": [2, 9, 10], "local": [0, 13], "locat": [1, 6], "lock": 12, "log": [8, 10, 11, 12], "logic": [5, 12], "loop": 11, "ls_path": [2, 13], "maco": 11, "made": 3, "mai": [0, 9, 11], "main": 10, "make": [9, 11], "manag": [1, 5, 10], "mani": [8, 11], "manifest": [2, 8, 9, 10, 11, 12], "manifest_1": 10, "manifest_fil": [11, 12], "manifest_file_delimit": [11, 12], "manifest_row_pars": [11, 12], "map": [0, 11], "mark": 8, "master": 7, "match": [3, 5, 12], "max": 5, "max_concurrent_request": [2, 9, 11, 12], "max_presigned_url_ttl": 1, "max_tri": 8, "maximum": [11, 12], "md": [5, 7, 10, 12], "md5": [2, 3, 9, 11], "md5_hash": 11, "md5sum": [2, 9, 10], "mean": 8, "mechan": 3, "merg": 5, "metadata": [2, 3, 6, 9, 11], "metadata_list": 5, "metadata_sourc": 12, "metadata_typ": 12, "metdata": 12, "method": [1, 7, 10], "minimum": 10, "minut": 0, "mode": 7, "modul": [2, 10, 11], "more": [2, 5, 7, 9, 10], "most": 9, "mostli": 2, "multipl": [8, 11], "must": [1, 5], "my_common": 10, "my_credenti": 10, "my_field": 7, "my_index": 7, "my_program": 7, "my_project": 7, "name": [3, 4, 8, 10, 11, 12, 13], "namespac": [0, 12], "necessari": [3, 5], "need": [3, 7, 10, 11], "nest": 5, "net": 11, "never": 0, "new": [0, 3], "node": 8, "node_nam": 8, "node_typ": 8, "none": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "note": [0, 3, 11, 12], "noth": [3, 6], "now": [1, 8], "num": 5, "num_process": 11, "num_total_fil": 11, "number": [3, 7, 8, 11, 12], "o": 0, "object": [1, 2, 3, 4, 5, 7, 8, 9, 10, 11, 13], "object_id": [1, 2, 9, 10], "object_list": 10, "object_typ": [2, 9, 10], "objectid": 10, "obtain": [0, 10], "occur": 10, "off": 5, "offset": [5, 7], "oidc": 0, "old": 3, "one": [3, 5, 10, 11], "onli": [3, 5, 7, 8, 10, 11], "open": [8, 10, 11], "open_project": [2, 8], "openid": 0, "opt": 0, "option": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11], "order": [0, 8], "ordered_node_list": 8, "org": 10, "otherwis": 10, "output": [4, 5, 11, 12], "output_dir": 10, "output_filenam": [11, 12], "overrid": [0, 11, 12], "overwrit": 5, "own": 0, "packag": 10, "page": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 13], "pagin": 3, "parallel": 11, "param": [3, 5, 8, 10], "paramet": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "pars": [10, 11, 12, 13], "parser": [11, 12], "particular": 0, "pass": [0, 7, 8, 10], "password": [11, 12], "path": [0, 1, 5, 10, 11, 13], "path_to_manifest": 11, "pattern": [3, 12], "pdcdatastor": 11, "pend": 10, "per": [11, 12], "peregrin": 8, "permiss": 10, "persist": 9, "phs0001": 11, "phs0002": 11, "pick": 1, "pla": 11, "place": 11, "planx": 11, "point": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "popul": [10, 12], "posit": [1, 7], "possibl": 10, "post": [0, 11], "pprint": [2, 9, 10], "prefix": 3, "presign": 1, "pretti": 10, "prev_guid": [2, 9, 11], "previou": [3, 11], "previous": 4, "print": [8, 10], "process": 11, "processed_fil": 11, "profil": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "program": [8, 11], "progress": [8, 10], "project": [8, 11], "project_id": [7, 8], "protocol": 1, "provid": [0, 1, 3, 5, 7, 8, 12], "public": [3, 5], "put": 0, "py": 11, "python": [2, 9, 11], "python3": 11, "python_subprocess_command": 11, "queri": [1, 2, 3, 5, 8, 11, 12], "query_str": 7, "query_txt": [7, 8], "query_url": [2, 3], "quickstart": 2, "rather": 0, "raw": [7, 11], "raw_data_download": [2, 7], "rbac": 3, "read": [3, 5, 11], "readm": 2, "reason": 10, "record": [1, 3, 5, 7, 8, 11, 12], "refresh": [0, 10], "refresh_access_token": [0, 2], "refresh_fil": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "refresh_token": 0, "regist": 8, "regular": 7, "relat": 9, "remov": [1, 6, 11, 13], "replac": 11, "replace_url": 11, "repo": 2, "repres": [3, 5, 10], "represent": [1, 3], "request": [0, 1, 3, 5, 8, 11, 12], "requir": 10, "resolv": 10, "resolve_object": [2, 9, 10], "respect": 7, "respons": [0, 1, 3, 4, 5], "result": [1, 8, 10, 11], "retri": 8, "retriev": [1, 8, 10, 12], "return": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11], "return_full_metadata": 5, "rev": 3, "revers": 8, "revis": 3, "right": 1, "rm": [2, 13], "rm_path": [2, 13], "root": [11, 12], "row": [7, 8, 11, 12], "row_offset": 8, "rtype": 3, "run": [8, 11], "s3": [1, 10, 11], "safe": 11, "same": [5, 11, 13], "sampl": [8, 10], "sandbox": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "save": 10, "save_directori": 10, "schema": 8, "scope": [0, 1], "screen": 8, "script": 2, "search": [0, 2, 3], "second": [1, 4], "secret": 0, "see": [7, 10, 11], "self": 10, "semaphon": 12, "semaphor": 12, "separ": [0, 11], "server": 10, "servic": [1, 3, 4, 5, 6, 8, 11, 12, 13], "service_loc": [3, 4, 5], "session": 11, "set": [0, 1, 5, 10], "setup": 2, "sheepdog": 8, "should": [0, 8, 11], "show": 10, "show_progress": 10, "shown": 11, "sign": 1, "signpost": 3, "similar": 10, "simpl": 3, "simpli": 11, "sinc": 3, "singl": [1, 5, 8], "size": [2, 3, 9, 10, 11], "skip": 8, "sleep": 4, "so": 11, "some": [0, 2], "someth": 11, "sort": 7, "sort_field": 7, "sort_object": 7, "sourc": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "space": [0, 11], "specif": [5, 8, 11, 12], "specifi": [0, 1, 3, 11, 13], "spreadsheet": 8, "src_path": 13, "src_urlstr": 13, "src_w": 13, "src_wskei": 13, "ssl": [3, 4, 5], "start": [3, 4, 7, 8, 10], "start_tim": [2, 9, 10], "static": 10, "statu": [2, 4, 9, 10], "storag": [1, 2, 6], "store": [1, 3, 10], "str": [0, 1, 3, 4, 5, 7, 8, 10, 11, 12], "string": [0, 3, 5, 11, 13], "strip": 11, "sub": 8, "subject": [7, 8], "submiss": 2, "submit": [8, 11], "submit_additional_metadata_column": 11, "submit_fil": [2, 8], "submit_record": [2, 8], "submitter_id": 7, "success": 10, "successfulli": 10, "suffici": 3, "suppli": 3, "support": [0, 1, 5, 8, 11], "sure": 1, "synchron": 11, "syntax": 7, "system": [6, 7, 8, 9], "t": [1, 5, 11], "tab": 11, "task": 9, "temporari": 11, "test": 11, "test1": 11, "test2": 11, "test3": 11, "test4": 11, "test5": 11, "text": [1, 7, 8], "than": [0, 5], "thei": [0, 10], "them": [10, 11], "thi": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "those": 11, "thread": 11, "thread_num": 11, "threadcontrol": [2, 9, 11], "through": [8, 11], "tier": 7, "time": [1, 3, 8, 10, 11], "timestamp": 10, "tmp_folder": [2, 9, 11], "token": [0, 10], "tool": 2, "total": 11, "treat": [1, 5], "tree": 10, "true": [3, 4, 5, 6, 7, 8, 10, 11, 12], "try": 0, "tsv": [8, 11, 12], "tupl": [0, 3, 11, 12], "type": [1, 3, 4, 5, 7, 8, 10, 11, 12], "typic": 10, "uc": 7, "unaccess": 7, "under": [0, 8, 13], "uniqu": [1, 5], "unknown": 10, "unpack": 10, "unpack_packag": 10, "until": [4, 10], "up": [5, 9], "updat": [2, 3, 5, 10, 11], "update_alias": [2, 5], "update_blank": [2, 3], "update_record": [2, 3], "updated_tim": [2, 9, 10], "upload": [1, 2, 3, 8, 13], "upload_fil": [1, 2], "upload_file_to_guid": [1, 2], "upload_url": [2, 13], "url": [1, 2, 3, 9, 10, 11, 12, 13], "urls_metadata": 3, "us": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "usag": 11, "use_agg_md": 5, "user": [0, 10, 12], "user_access": [2, 9, 10], "usual": 12, "utcnow": 1, "util": 9, "uuid": [1, 3, 8], "uuid1": 8, "uuid2": 8, "valid": [3, 7], "valu": [0, 1, 3, 5, 7, 10, 11], "value_from_indexd": 11, "value_from_manifest": 11, "variabl": [0, 7, 8], "variou": 2, "verbos": [7, 8], "verif": 11, "verifi": [2, 9], "verify_manifest": 11, "verify_object_manifest": 11, "version": [3, 4, 5], "vital_statu": 7, "w": 13, "wa": 0, "wai": 10, "wait": 4, "want": [0, 3, 8], "warn": 11, "we": [3, 11], "web": 0, "what": 5, "when": [0, 3, 7, 10, 12], "where": [0, 3, 5, 11, 12], "whether": [3, 4, 5, 8, 11, 12], "which": [8, 10], "while": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "whose": 5, "within": [0, 2, 9], "without": [3, 5], "won": 5, "work": [0, 10], "workaround": 11, "worksheet": 8, "workspac": [0, 2], "wrapper": 10, "write": 11, "ws_urlstr": 13, "wskei": 13, "wss": 13, "wt": [0, 10], "x": 11, "xlsx": 8, "you": [0, 3, 8, 11], "your": 0}, "titles": ["Gen3 Auth Helper", "Gen3 File Class", "Welcome to Gen3 SDK\u2019s documentation!", "Gen3 Index Class", "Gen3 Jobs Class", "Gen3 Metadata Class", "Gen3 Object Class", "Gen3 Query Class", "Gen3 Submission Class", "Gen3 Tools", "DRS Download Tools", "Indexing Tools", "Metadata Tools", "Gen3 Workspace Storage"], "titleterms": {"": 2, "auth": 0, "class": [1, 3, 4, 5, 6, 7, 8], "document": 2, "download": [10, 11], "dr": 10, "file": 1, "gen3": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 13], "helper": 0, "index": [3, 11], "indic": 2, "ingest": 12, "job": 4, "metadata": [5, 12], "object": 6, "queri": 7, "sdk": 2, "storag": 13, "submiss": 8, "tabl": 2, "tool": [9, 10, 11, 12], "verifi": 11, "welcom": 2, "workspac": 13}}) \ No newline at end of file +Search.setIndex({"alltitles": {"DRS Download Tools": [[10, "module-gen3.tools.download.drs_download"]], "Download": [[11, "module-gen3.tools.indexing.download_manifest"]], "Gen3 Auth Helper": [[0, "gen3-auth-helper"]], "Gen3 File Class": [[1, "gen3-file-class"]], "Gen3 Index Class": [[3, "gen3-index-class"]], "Gen3 Jobs Class": [[4, "gen3-jobs-class"]], "Gen3 Metadata Class": [[5, "gen3-metadata-class"]], "Gen3 Object Class": [[6, "gen3-object-class"]], "Gen3 Query Class": [[7, "gen3-query-class"]], "Gen3 Submission Class": [[8, "gen3-submission-class"]], "Gen3 Tools": [[9, "gen3-tools"]], "Gen3 Workspace Storage": [[13, "gen3-workspace-storage"]], "Index": [[11, "module-gen3.tools.indexing.index_manifest"]], "Indexing Tools": [[11, "indexing-tools"]], "Indices and tables": [[2, "indices-and-tables"]], "Ingest": [[12, "module-gen3.tools.metadata.ingest_manifest"]], "Metadata Tools": [[12, "metadata-tools"]], "Verify": [[11, "module-gen3.tools.indexing.verify_manifest"]], "Welcome to Gen3 SDK\u2019s documentation!": [[2, "welcome-to-gen3-sdk-s-documentation"]]}, "docnames": ["auth", "file", "index", "indexing", "jobs", "metadata", "object", "query", "submission", "tools", "tools/drs_pull", "tools/indexing", "tools/metadata", "wss"], "envversion": {"sphinx": 61, "sphinx.domains.c": 3, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 9, "sphinx.domains.index": 1, "sphinx.domains.javascript": 3, "sphinx.domains.math": 2, "sphinx.domains.python": 4, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx.ext.viewcode": 1}, "filenames": ["auth.rst", "file.rst", "index.rst", "indexing.rst", "jobs.rst", "metadata.rst", "object.rst", "query.rst", "submission.rst", "tools.rst", "tools/drs_pull.rst", "tools/indexing.rst", "tools/metadata.rst", "wss.rst"], "indexentries": {"_manager (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable._manager", false]], "access_methods (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.access_methods", false]], "acls (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.ACLS", false]], "async_create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_create", false]], "async_create_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_create_aliases", false]], "async_create_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_create_record", false]], "async_delete_alias() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_delete_alias", false]], "async_delete_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_delete_aliases", false]], "async_download_object_manifest() (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.async_download_object_manifest", false]], "async_get() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_get", false]], "async_get_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_get_aliases", false]], "async_get_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_record", false]], "async_get_records_from_checksum() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_records_from_checksum", false]], "async_get_records_on_page() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_records_on_page", false]], "async_get_with_params() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_with_params", false]], "async_ingest_metadata_manifest() (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.async_ingest_metadata_manifest", false]], "async_query_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_query_urls", false]], "async_query_urls_from_indexd() (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.async_query_urls_from_indexd", false]], "async_run_job_and_wait() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.async_run_job_and_wait", false]], "async_update() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_update", false]], "async_update_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_update_aliases", false]], "async_update_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_update_record", false]], "async_verify_object_manifest() (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.async_verify_object_manifest", false]], "auth_provider (gen3.metadata.gen3metadata attribute)": [[5, "gen3.metadata.Gen3Metadata.auth_provider", false]], "authz (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.AUTHZ", false]], "batch_create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.batch_create", false]], "cache_hosts_wts_tokens() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.cache_hosts_wts_tokens", false]], "children (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.children", false]], "column_to_use_as_guid (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.COLUMN_TO_USE_AS_GUID", false]], "commons_url (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.commons_url", false]], "copy() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.copy", false]], "create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create", false]], "create_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create_aliases", false]], "create_blank() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_blank", false]], "create_index_key_path() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create_index_key_path", false]], "create_job() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.create_job", false]], "create_new_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_new_version", false]], "create_object_list() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.create_object_list", false]], "create_program() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.create_program", false]], "create_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.create_project", false]], "create_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_record", false]], "created_time (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.created_time", false]], "curl() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.curl", false]], "current_dir (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.CURRENT_DIR", false]], "current_dir (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.CURRENT_DIR", false]], "current_dir (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.CURRENT_DIR", false]], "delete() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete", false]], "delete_alias() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_alias", false]], "delete_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_aliases", false]], "delete_all_guids() (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.delete_all_guids", false]], "delete_file() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.delete_file", false]], "delete_file_locations() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.delete_file_locations", false]], "delete_index_key_path() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_index_key_path", false]], "delete_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_node", false]], "delete_nodes() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_nodes", false]], "delete_object() (gen3.object.gen3object method)": [[6, "gen3.object.Gen3Object.delete_object", false]], "delete_program() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_program", false]], "delete_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_project", false]], "delete_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.delete_record", false]], "delete_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_record", false]], "delete_records() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_records", false]], "download() (gen3.tools.download.drs_download.downloadable method)": [[10, "gen3.tools.download.drs_download.Downloadable.download", false]], "download() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.download", false]], "download() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.download", false]], "download_files_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.download_files_in_drs_manifest", false]], "download_single() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.download_single", false]], "download_url() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.download_url", false]], "downloadable (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.Downloadable", false]], "downloadmanager (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.DownloadManager", false]], "downloadstatus (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.DownloadStatus", false]], "end_time (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.end_time", false]], "endpoint (gen3.metadata.gen3metadata attribute)": [[5, "gen3.metadata.Gen3Metadata.endpoint", false]], "export_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.export_node", false]], "export_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.export_record", false]], "file_name (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.file_name", false]], "file_name (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.file_name", false]], "file_size (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.file_size", false]], "file_size (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.file_size", false]], "gen3.tools": [[9, "module-gen3.tools", false]], "gen3.tools.download.drs_download": [[10, "module-gen3.tools.download.drs_download", false]], "gen3.tools.indexing.download_manifest": [[11, "module-gen3.tools.indexing.download_manifest", false]], "gen3.tools.indexing.index_manifest": [[11, "module-gen3.tools.indexing.index_manifest", false]], "gen3.tools.indexing.verify_manifest": [[11, "module-gen3.tools.indexing.verify_manifest", false]], "gen3.tools.metadata.ingest_manifest": [[12, "module-gen3.tools.metadata.ingest_manifest", false]], "gen3auth (class in gen3.auth)": [[0, "gen3.auth.Gen3Auth", false]], "gen3file (class in gen3.file)": [[1, "gen3.file.Gen3File", false]], "gen3index (class in gen3.index)": [[3, "gen3.index.Gen3Index", false]], "gen3jobs (class in gen3.jobs)": [[4, "gen3.jobs.Gen3Jobs", false]], "gen3metadata (class in gen3.metadata)": [[5, "gen3.metadata.Gen3Metadata", false]], "gen3object (class in gen3.object)": [[6, "gen3.object.Gen3Object", false]], "gen3query (class in gen3.query)": [[7, "gen3.query.Gen3Query", false]], "gen3submission (class in gen3.submission)": [[8, "gen3.submission.Gen3Submission", false]], "gen3wsstorage (class in gen3.wss)": [[13, "gen3.wss.Gen3WsStorage", false]], "get() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get", false]], "get() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get", false]], "get_access_token() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.get_access_token", false]], "get_access_token_from_wts() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.get_access_token_from_wts", false]], "get_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_aliases", false]], "get_all_records() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_all_records", false]], "get_dictionary_all() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_dictionary_all", false]], "get_dictionary_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_dictionary_node", false]], "get_fresh_token() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.get_fresh_token", false]], "get_graphql_schema() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_graphql_schema", false]], "get_guids_prefix() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_guids_prefix", false]], "get_index_key_paths() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_index_key_paths", false]], "get_latest_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_latest_version", false]], "get_output() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_output", false]], "get_presigned_url() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.get_presigned_url", false]], "get_programs() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_programs", false]], "get_project_dictionary() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_project_dictionary", false]], "get_project_manifest() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_project_manifest", false]], "get_projects() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_projects", false]], "get_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_record", false]], "get_record_doc() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_record_doc", false]], "get_records() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_records", false]], "get_records_on_page() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_records_on_page", false]], "get_stats() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_stats", false]], "get_status() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_status", false]], "get_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_urls", false]], "get_valid_guids() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_valid_guids", false]], "get_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_version", false]], "get_version() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_version", false]], "get_version() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_version", false]], "get_versions() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_versions", false]], "get_with_params() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_with_params", false]], "graphql_query() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.graphql_query", false]], "guid (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.GUID", false]], "guid_type_for_indexed_file_object (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.GUID_TYPE_FOR_INDEXED_FILE_OBJECT", false]], "guid_type_for_non_indexed_file_object (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.GUID_TYPE_FOR_NON_INDEXED_FILE_OBJECT", false]], "hostname (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.hostname", false]], "index_object_manifest() (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.index_object_manifest", false]], "indexd_record_page_size (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.INDEXD_RECORD_PAGE_SIZE", false]], "is_healthy() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.is_healthy", false]], "is_healthy() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.is_healthy", false]], "is_healthy() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.is_healthy", false]], "list_access_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_access_in_drs_manifest", false]], "list_drs_object() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_drs_object", false]], "list_files_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_files_in_drs_manifest", false]], "list_jobs() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.list_jobs", false]], "load() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.load", false]], "load_manifest() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.load_manifest", false]], "ls() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.ls", false]], "ls_path() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.ls_path", false]], "manifest (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.Manifest", false]], "max_concurrent_requests (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.MAX_CONCURRENT_REQUESTS", false]], "max_concurrent_requests (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.MAX_CONCURRENT_REQUESTS", false]], "max_concurrent_requests (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.MAX_CONCURRENT_REQUESTS", false]], "md5 (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.MD5", false]], "md5sum (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.md5sum", false]], "module": [[9, "module-gen3.tools", false], [10, "module-gen3.tools.download.drs_download", false], [11, "module-gen3.tools.indexing.download_manifest", false], [11, "module-gen3.tools.indexing.index_manifest", false], [11, "module-gen3.tools.indexing.verify_manifest", false], [12, "module-gen3.tools.metadata.ingest_manifest", false]], "object_id (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.object_id", false]], "object_id (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.object_id", false]], "object_type (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.object_type", false]], "open_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.open_project", false]], "pprint() (gen3.tools.download.drs_download.downloadable method)": [[10, "gen3.tools.download.drs_download.Downloadable.pprint", false]], "prev_guid (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.PREV_GUID", false]], "query() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.query", false]], "query() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.query", false]], "query() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.query", false]], "query_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.query_urls", false]], "raw_data_download() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.raw_data_download", false]], "refresh_access_token() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.refresh_access_token", false]], "resolve_objects() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.resolve_objects", false]], "rm() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.rm", false]], "rm_path() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.rm_path", false]], "size (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.SIZE", false]], "start_time (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.start_time", false]], "status (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.status", false]], "submit_file() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.submit_file", false]], "submit_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.submit_record", false]], "threadcontrol (class in gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.ThreadControl", false]], "tmp_folder (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.TMP_FOLDER", false]], "update() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.update", false]], "update_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.update_aliases", false]], "update_blank() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.update_blank", false]], "update_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.update_record", false]], "updated_time (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.updated_time", false]], "upload() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.upload", false]], "upload_file() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.upload_file", false]], "upload_file_to_guid() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.upload_file_to_guid", false]], "upload_url() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.upload_url", false]], "urls (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.URLS", false]], "user_access() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.user_access", false]]}, "objects": {"gen3": [[9, 3, 0, "-", "tools"]], "gen3.auth": [[0, 0, 1, "", "Gen3Auth"]], "gen3.auth.Gen3Auth": [[0, 1, 1, "", "curl"], [0, 1, 1, "", "get_access_token"], [0, 1, 1, "", "get_access_token_from_wts"], [0, 1, 1, "", "refresh_access_token"]], "gen3.file": [[1, 0, 1, "", "Gen3File"]], "gen3.file.Gen3File": [[1, 1, 1, "", "delete_file"], [1, 1, 1, "", "delete_file_locations"], [1, 1, 1, "", "download_single"], [1, 1, 1, "", "get_presigned_url"], [1, 1, 1, "", "upload_file"], [1, 1, 1, "", "upload_file_to_guid"]], "gen3.index": [[3, 0, 1, "", "Gen3Index"]], "gen3.index.Gen3Index": [[3, 1, 1, "", "async_create_record"], [3, 1, 1, "", "async_get_record"], [3, 1, 1, "", "async_get_records_from_checksum"], [3, 1, 1, "", "async_get_records_on_page"], [3, 1, 1, "", "async_get_with_params"], [3, 1, 1, "", "async_query_urls"], [3, 1, 1, "", "async_update_record"], [3, 1, 1, "", "create_blank"], [3, 1, 1, "", "create_new_version"], [3, 1, 1, "", "create_record"], [3, 1, 1, "", "delete_record"], [3, 1, 1, "", "get"], [3, 1, 1, "", "get_all_records"], [3, 1, 1, "", "get_guids_prefix"], [3, 1, 1, "", "get_latest_version"], [3, 1, 1, "", "get_record"], [3, 1, 1, "", "get_record_doc"], [3, 1, 1, "", "get_records"], [3, 1, 1, "", "get_records_on_page"], [3, 1, 1, "", "get_stats"], [3, 1, 1, "", "get_urls"], [3, 1, 1, "", "get_valid_guids"], [3, 1, 1, "", "get_version"], [3, 1, 1, "", "get_versions"], [3, 1, 1, "", "get_with_params"], [3, 1, 1, "", "is_healthy"], [3, 1, 1, "", "query_urls"], [3, 1, 1, "", "update_blank"], [3, 1, 1, "", "update_record"]], "gen3.jobs": [[4, 0, 1, "", "Gen3Jobs"]], "gen3.jobs.Gen3Jobs": [[4, 1, 1, "", "async_run_job_and_wait"], [4, 1, 1, "", "create_job"], [4, 1, 1, "", "get_output"], [4, 1, 1, "", "get_status"], [4, 1, 1, "", "get_version"], [4, 1, 1, "", "is_healthy"], [4, 1, 1, "", "list_jobs"]], "gen3.metadata": [[5, 0, 1, "", "Gen3Metadata"]], "gen3.metadata.Gen3Metadata": [[5, 1, 1, "", "async_create"], [5, 1, 1, "", "async_create_aliases"], [5, 1, 1, "", "async_delete_alias"], [5, 1, 1, "", "async_delete_aliases"], [5, 1, 1, "", "async_get"], [5, 1, 1, "", "async_get_aliases"], [5, 1, 1, "", "async_update"], [5, 1, 1, "", "async_update_aliases"], [5, 2, 1, "", "auth_provider"], [5, 1, 1, "", "batch_create"], [5, 1, 1, "", "create"], [5, 1, 1, "", "create_aliases"], [5, 1, 1, "", "create_index_key_path"], [5, 1, 1, "", "delete"], [5, 1, 1, "", "delete_alias"], [5, 1, 1, "", "delete_aliases"], [5, 1, 1, "", "delete_index_key_path"], [5, 2, 1, "", "endpoint"], [5, 1, 1, "", "get"], [5, 1, 1, "", "get_aliases"], [5, 1, 1, "", "get_index_key_paths"], [5, 1, 1, "", "get_version"], [5, 1, 1, "", "is_healthy"], [5, 1, 1, "", "query"], [5, 1, 1, "", "update"], [5, 1, 1, "", "update_aliases"]], "gen3.object": [[6, 0, 1, "", "Gen3Object"]], "gen3.object.Gen3Object": [[6, 1, 1, "", "delete_object"]], "gen3.query": [[7, 0, 1, "", "Gen3Query"]], "gen3.query.Gen3Query": [[7, 1, 1, "", "graphql_query"], [7, 1, 1, "", "query"], [7, 1, 1, "", "raw_data_download"]], "gen3.submission": [[8, 0, 1, "", "Gen3Submission"]], "gen3.submission.Gen3Submission": [[8, 1, 1, "", "create_program"], [8, 1, 1, "", "create_project"], [8, 1, 1, "", "delete_node"], [8, 1, 1, "", "delete_nodes"], [8, 1, 1, "", "delete_program"], [8, 1, 1, "", "delete_project"], [8, 1, 1, "", "delete_record"], [8, 1, 1, "", "delete_records"], [8, 1, 1, "", "export_node"], [8, 1, 1, "", "export_record"], [8, 1, 1, "", "get_dictionary_all"], [8, 1, 1, "", "get_dictionary_node"], [8, 1, 1, "", "get_graphql_schema"], [8, 1, 1, "", "get_programs"], [8, 1, 1, "", "get_project_dictionary"], [8, 1, 1, "", "get_project_manifest"], [8, 1, 1, "", "get_projects"], [8, 1, 1, "", "open_project"], [8, 1, 1, "", "query"], [8, 1, 1, "", "submit_file"], [8, 1, 1, "", "submit_record"]], "gen3.tools.download": [[10, 3, 0, "-", "drs_download"]], "gen3.tools.download.drs_download": [[10, 0, 1, "", "DownloadManager"], [10, 0, 1, "", "DownloadStatus"], [10, 0, 1, "", "Downloadable"], [10, 0, 1, "", "Manifest"], [10, 4, 1, "", "download_files_in_drs_manifest"], [10, 4, 1, "", "list_access_in_drs_manifest"], [10, 4, 1, "", "list_drs_object"], [10, 4, 1, "", "list_files_in_drs_manifest"]], "gen3.tools.download.drs_download.DownloadManager": [[10, 1, 1, "", "cache_hosts_wts_tokens"], [10, 1, 1, "", "download"], [10, 1, 1, "", "get_fresh_token"], [10, 1, 1, "", "resolve_objects"], [10, 1, 1, "", "user_access"]], "gen3.tools.download.drs_download.DownloadStatus": [[10, 2, 1, "", "end_time"], [10, 2, 1, "", "start_time"], [10, 2, 1, "", "status"]], "gen3.tools.download.drs_download.Downloadable": [[10, 2, 1, "", "_manager"], [10, 2, 1, "", "access_methods"], [10, 2, 1, "", "children"], [10, 2, 1, "", "created_time"], [10, 1, 1, "", "download"], [10, 2, 1, "", "file_name"], [10, 2, 1, "", "file_size"], [10, 2, 1, "", "hostname"], [10, 2, 1, "", "object_id"], [10, 2, 1, "", "object_type"], [10, 1, 1, "", "pprint"], [10, 2, 1, "", "updated_time"]], "gen3.tools.download.drs_download.Manifest": [[10, 2, 1, "", "commons_url"], [10, 1, 1, "", "create_object_list"], [10, 2, 1, "", "file_name"], [10, 2, 1, "", "file_size"], [10, 1, 1, "", "load"], [10, 1, 1, "", "load_manifest"], [10, 2, 1, "", "md5sum"], [10, 2, 1, "", "object_id"]], "gen3.tools.indexing": [[11, 3, 0, "-", "download_manifest"], [11, 3, 0, "-", "index_manifest"], [11, 3, 0, "-", "verify_manifest"]], "gen3.tools.indexing.download_manifest": [[11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "INDEXD_RECORD_PAGE_SIZE"], [11, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [11, 2, 1, "", "TMP_FOLDER"], [11, 4, 1, "", "async_download_object_manifest"]], "gen3.tools.indexing.index_manifest": [[11, 2, 1, "", "ACLS"], [11, 2, 1, "", "AUTHZ"], [11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "GUID"], [11, 2, 1, "", "MD5"], [11, 2, 1, "", "PREV_GUID"], [11, 2, 1, "", "SIZE"], [11, 0, 1, "", "ThreadControl"], [11, 2, 1, "", "URLS"], [11, 4, 1, "", "delete_all_guids"], [11, 4, 1, "", "index_object_manifest"]], "gen3.tools.indexing.verify_manifest": [[11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [11, 4, 1, "", "async_verify_object_manifest"]], "gen3.tools.metadata": [[12, 3, 0, "-", "ingest_manifest"]], "gen3.tools.metadata.ingest_manifest": [[12, 2, 1, "", "COLUMN_TO_USE_AS_GUID"], [12, 2, 1, "", "GUID_TYPE_FOR_INDEXED_FILE_OBJECT"], [12, 2, 1, "", "GUID_TYPE_FOR_NON_INDEXED_FILE_OBJECT"], [12, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [12, 4, 1, "", "async_ingest_metadata_manifest"], [12, 4, 1, "", "async_query_urls_from_indexd"]], "gen3.wss": [[13, 0, 1, "", "Gen3WsStorage"]], "gen3.wss.Gen3WsStorage": [[13, 1, 1, "", "copy"], [13, 1, 1, "", "download"], [13, 1, 1, "", "download_url"], [13, 1, 1, "", "ls"], [13, 1, 1, "", "ls_path"], [13, 1, 1, "", "rm"], [13, 1, 1, "", "rm_path"], [13, 1, 1, "", "upload"], [13, 1, 1, "", "upload_url"]]}, "objnames": {"0": ["py", "class", "Python class"], "1": ["py", "method", "Python method"], "2": ["py", "attribute", "Python attribute"], "3": ["py", "module", "Python module"], "4": ["py", "function", "Python function"]}, "objtypes": {"0": "py:class", "1": "py:method", "2": "py:attribute", "3": "py:module", "4": "py:function"}, "terms": {"": [1, 4, 8, 10, 11], "0": [5, 7, 8, 11], "0046513": [], "052073": [], "0576868": [], "064572": [], "07464": [], "0a80fada010c": 11, "0a80fada096c": 11, "0a80fada097c": 11, "0a80fada098c": 11, "0a80fada099c": 11, "1": [4, 5, 8, 10, 11], "10": [5, 7, 11], "100": [8, 11], "11e9": 11, "1676264": [], "1713542306": [], "1713542765": [], "1713543033": [], "1713543225": [], "1713543506": [], "1713543956": [], "1713544131": [], "1713544132": [], "1713544397": [], "1713544598": [], "1713545857": [], "1713545858": [], "1713549370": [], "1713549689": [], "1713550571": [], "1713557245": [], "1713559376": [], "1713560080": [11, 12], "1771936": [], "1913438": [], "2": [5, 11], "24": [11, 12], "255e396f": 11, "2877355": [], "2930224": [], "2995": [], "3": [5, 11], "30": 8, "3102272": [], "33": 5, "333": 5, "343434344": 11, "363455714": 11, "4": [5, 11], "4017086": [], "4052968": [], "4090197": 11, "4463434": [], "450c": 11, "4632835": [], "4649727": [], "4714": 8, "473d83400bc1bc9dc635e334fadd433c": 11, "473d83400bc1bc9dc635e334faddd33c": 11, "473d83400bc1bc9dc635e334fadde33c": 11, "473d83400bc1bc9dc635e334faddf33c": 11, "4752307": [], "4756553": [], "5": [0, 5], "50": 7, "543434443": 11, "5669184": [], "5899982": [], "6692646": [], "6739478": [], "674552": [], "6f90": 8, "700799": 12, "7232893": [], "756255": [], "760149": [], "7d3d8d2083b4": 11, "8044841": [], "8375325": [], "8420": 8, "8882551": [], "93d9af72": 11, "9a07": 11, "A": [1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "AND": 5, "Be": 1, "But": 5, "By": 11, "For": [1, 5, 6, 7, 8, 9, 11], "IF": 11, "If": [0, 1, 7, 11, 12], "In": 10, "It": 10, "NOT": 12, "OR": 5, "One": 7, "Such": 9, "THE": 11, "That": 3, "The": [0, 1, 2, 3, 5, 8, 10, 11], "There": 11, "These": 9, "To": 11, "Will": [4, 7, 10], "_get_acl_from_row": 11, "_get_authz_from_row": 11, "_get_file_name_from_row": 11, "_get_file_size_from_row": 11, "_get_guid_for_row": 12, "_get_guid_from_row": 11, "_get_md5_from_row": 11, "_get_urls_from_row": 11, "_guid_typ": 12, "_manag": [2, 9, 10], "_query_for_associated_indexd_record_guid": 12, "_ssl": [3, 4, 5], "a5c6": 11, "ab167e49d25b488939b1ede42752458b": 3, "about": [2, 3], "abov": 11, "access": [0, 1, 3, 7, 10], "access_method": [2, 9, 10], "access_token": 0, "accesstoken": 0, "acl": [2, 3, 9, 11], "across": 11, "act": 0, "action": [9, 11], "actual": 11, "ad": 3, "add": [3, 5], "addit": [3, 5, 10, 11], "admin": [5, 11], "admin_endpoint_suffix": 5, "after": 10, "against": [3, 7, 8, 11, 12], "algorithm": 3, "alia": [3, 5], "alias": 5, "aliv": 7, "all": [1, 3, 4, 5, 6, 7, 8, 10, 11, 12], "allow": [0, 6, 8, 10, 11, 12], "allowed_data_upload_bucket": 1, "along": 2, "alreadi": 9, "also": 1, "altern": [5, 11], "alwai": 5, "ammount": 12, "amount": [1, 9], "an": [0, 3, 6, 8, 10, 11], "ani": [0, 5, 10, 11], "anoth": 5, "api": [0, 5, 8, 11], "api_kei": 11, "appli": 7, "appropri": 13, "ar": [5, 7, 8, 9, 10, 11], "arbitrari": 0, "argument": [0, 13], "arrai": 8, "asc": 7, "assign": 9, "assist": 10, "associ": [3, 5], "assum": 11, "async": [3, 4, 5, 9, 11, 12], "async_cr": [2, 5], "async_create_alias": [2, 5], "async_create_record": [2, 3], "async_delete_alia": [2, 5], "async_delete_alias": [2, 5], "async_download_object_manifest": [2, 9, 11], "async_get": [2, 5], "async_get_alias": [2, 5], "async_get_record": [2, 3], "async_get_records_from_checksum": [2, 3], "async_get_records_on_pag": [2, 3], "async_get_with_param": [2, 3], "async_ingest_metadata_manifest": [2, 9, 12], "async_query_url": [2, 3], "async_query_urls_from_indexd": [2, 9, 12], "async_run_job_and_wait": [2, 4], "async_upd": [2, 5], "async_update_alias": [2, 5], "async_update_record": [2, 3], "async_verify_object_manifest": [2, 9, 11], "asynchron": [3, 4, 5], "asyncio": [11, 12], "asyncron": 5, "attach": [3, 5], "attempt": 11, "attribut": [10, 11], "auth": [1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "auth_provid": [1, 2, 3, 4, 5, 6, 7, 8, 13], "authbas": 0, "authent": 0, "author": 1, "authz": [0, 1, 2, 3, 9, 10, 11], "auto": [0, 2], "automat": 0, "avail": [1, 2, 10, 11], "az": 1, "b": [5, 11], "b0f1": 11, "bar": 10, "base": [0, 1, 3, 4, 5, 6, 7, 8, 9, 11, 13], "baseid": 3, "basic": [3, 11, 12], "batch_creat": [2, 5], "batch_siz": 8, "behalf": 0, "behavior": 11, "being": 3, "belong": 8, "below": 11, "blank": 3, "blob": [5, 7], "bodi": 3, "bool": [4, 5, 8, 10, 11, 12], "boolean": 3, "bownload": 10, "broad": 9, "broken": 9, "bucket": [1, 6], "bundl": 10, "byte": 10, "c": [5, 11], "cach": 10, "cache_hosts_wts_token": [2, 9, 10], "call": [10, 13], "can": [0, 3, 4, 8, 11, 12], "capabl": 9, "case": [0, 10], "categori": 9, "ccle": 8, "ccle_one_record": 8, "ccle_sample_nod": 8, "cdi": 7, "chang": [3, 11], "checksum": [3, 10], "checksum_typ": 3, "child": 10, "children": [2, 9, 10], "chunk_siz": 8, "class": [0, 2, 10, 11, 13], "cli": 10, "client": [0, 3], "client_credenti": 0, "client_id": 0, "client_scop": 0, "client_secret": 0, "code": [2, 8], "column": [11, 12], "column_to_use_as_guid": [2, 9, 12], "columna": 11, "columnb": 11, "columnc": 11, "com": 7, "comma": 11, "command": [10, 11], "common": [0, 1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13], "commons_url": [2, 9, 10, 11, 12], "complet": [4, 11], "complex": 7, "concat": 11, "concurr": [11, 12], "configur": 1, "connect": 12, "consist": 3, "constructor": 0, "contain": [0, 2, 5, 8, 9, 10, 11, 12], "content": [3, 13], "content_created_d": 3, "content_updated_d": 3, "continu": 10, "control": 3, "conveni": 10, "copi": [2, 13], "coroutin": 11, "correspond": 3, "count": 3, "crdc": 0, "creat": [2, 3, 4, 5, 6, 8, 10, 11], "create_alias": [2, 5], "create_blank": [2, 3], "create_index_key_path": [2, 5], "create_job": [2, 4], "create_new_vers": [2, 3], "create_object_list": [2, 9, 10], "create_program": [2, 8], "create_project": [2, 8], "create_record": [2, 3], "created_tim": [2, 9, 10], "creation": [3, 11], "cred": 3, "credenti": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "csv": [8, 11, 12], "curl": [0, 2], "current": [6, 8, 10], "current_dir": [2, 9, 11], "custom": 11, "d": 5, "d70b41b9": 8, "data": [0, 1, 3, 5, 7, 8, 10, 11], "data_spreadsheet": 8, "data_typ": 7, "data_upload_bucket": 1, "dataa": 11, "datab": 11, "databas": 5, "datacommon": 0, "datafil": 10, "datamanag": 10, "date": 3, "datetim": [1, 3, 10], "dbgap": 12, "dcf": 8, "def": 11, "default": [0, 1, 3, 7, 8, 11, 12], "defin": [5, 8, 10], "delai": 4, "delet": [0, 1, 2, 3, 5, 6, 8, 10, 11], "delete_alia": [2, 5], "delete_alias": [2, 5], "delete_all_guid": [2, 9, 11], "delete_fil": [1, 2], "delete_file_loc": [1, 2, 6], "delete_index_key_path": [2, 5], "delete_nod": [2, 8], "delete_object": [2, 6], "delete_program": [2, 8], "delete_project": [2, 8], "delete_record": [2, 3, 8], "delete_unpacked_packag": 10, "delimet": [11, 12], "delimit": 11, "demograph": 8, "deprec": 1, "descript": [3, 5], "desir": 11, "dest_path": 13, "dest_urlstr": 13, "dest_w": 13, "dest_wskei": 13, "detail": [2, 7, 10], "determin": [10, 11, 12], "dev": 11, "dict": [3, 4, 5, 10, 11, 12], "dictionari": [3, 4, 5, 7, 8], "did": 3, "differ": 5, "direct": 0, "directori": [10, 11], "disabl": 10, "discoveri": 10, "disk": 13, "dispatch": 4, "dist_resolut": 3, "distribut": 3, "doc": [7, 10], "docstr": 2, "document": [1, 3], "doe": [0, 12], "domain": [11, 12], "done": 4, "download": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 13], "download_files_in_drs_manifest": [2, 9, 10], "download_list": 10, "download_manifest": 11, "download_singl": [1, 2], "download_url": [2, 13], "downloadmanag": [2, 9, 10], "downloadstatu": [2, 9, 10], "dr": [2, 9], "drs_download": 10, "drs_hostnam": 10, "drsdownload": 10, "drsobjecttyp": 10, "e": [5, 10], "e043ab8b77b9": 8, "each": [3, 8, 10, 11], "effici": 9, "eg": 3, "either": 8, "elasticsearch": 7, "els": [0, 12], "elsewher": 12, "empti": [8, 11], "enabl": 11, "end": [5, 10], "end_tim": [2, 9, 10], "endpoint": [0, 1, 2, 3, 4, 5, 7, 8, 13], "entir": 8, "entri": [3, 11], "env": 0, "environ": 0, "equal": 7, "error": [10, 11, 12], "error_nam": 11, "etc": 8, "even": 11, "everi": [9, 11], "everyth": 11, "ex": [0, 11, 12], "exampl": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "exclud": 3, "execut": [7, 8, 11], "exist": [1, 3, 5, 6, 9, 12], "expect": [5, 9, 11], "experi": 8, "expir": [0, 1], "expires_in": 1, "export": [8, 10], "export_nod": [2, 8], "export_record": [2, 8], "f1f8": 11, "factori": 10, "fail": [8, 10], "fals": [3, 5, 6, 10, 11], "featur": [1, 6], "fenc": [0, 1], "fetch": 0, "field": [3, 5, 7, 11, 12], "fieldnam": 11, "file": [0, 2, 3, 4, 8, 9, 10, 11, 12, 13], "file_nam": [1, 2, 3, 9, 10, 11], "file_s": [2, 9, 10, 11], "file_st": 3, "fileformat": 8, "filenam": [0, 8, 10, 11, 12], "files": 10, "fill": 12, "filter": [5, 7], "filter_object": 7, "first": [7, 8], "flag": 11, "folder": 11, "follow": [0, 11], "forc": 11, "force_metadata_columns_even_if_empti": 11, "form": 13, "format": [3, 5, 8, 11], "from": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13], "func_to_parse_row": [11, 12], "function": [2, 3, 4, 5, 9, 10, 11, 12], "g": 10, "gen3": [10, 11, 12], "gen3_api_kei": 0, "gen3_oidc_client_creds_secret": 0, "gen3auth": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "gen3fil": [1, 2], "gen3index": [2, 3], "gen3job": [2, 4, 10], "gen3metadata": [2, 5], "gen3object": [2, 6], "gen3queri": [2, 7], "gen3submiss": [2, 8], "gen3wsstorag": [2, 13], "gener": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 13], "get": [0, 1, 2, 3, 4, 5, 8, 10, 11, 12, 13], "get_access_token": [0, 2], "get_access_token_from_wt": [0, 2], "get_alias": [2, 5], "get_all_record": [2, 3], "get_dictionary_al": [2, 8], "get_dictionary_nod": [2, 8], "get_fresh_token": [2, 9, 10], "get_graphql_schema": [2, 8], "get_guid_from_fil": 12, "get_guids_prefix": [2, 3], "get_index_key_path": [2, 5], "get_latest_vers": [2, 3], "get_output": [2, 4], "get_presigned_url": [1, 2], "get_program": [2, 8], "get_project": [2, 8], "get_project_dictionari": [2, 8], "get_project_manifest": [2, 8], "get_record": [2, 3], "get_record_doc": [2, 3], "get_records_on_pag": [2, 3], "get_stat": [2, 3], "get_statu": [2, 4], "get_url": [2, 3], "get_valid_guid": [2, 3], "get_vers": [2, 3, 4, 5], "get_with_param": [2, 3], "giangb": 11, "github": [2, 7], "give": 1, "given": [0, 3, 4, 5, 8, 10, 12, 13], "global": [4, 5], "good": 3, "grant": 0, "graph": 8, "graphql": [7, 8], "graphql_queri": [2, 7], "group": 3, "guid": [1, 2, 3, 5, 6, 9, 11, 12], "guid_exampl": 11, "guid_for_row": 12, "guid_from_fil": 12, "guid_type_for_indexed_file_object": [2, 9, 12], "guid_type_for_non_indexed_file_object": [2, 9, 12], "guppi": 7, "ha": [0, 11], "handl": [3, 10], "hardcod": 0, "has_vers": 3, "hash": [3, 11], "hash_typ": 3, "have": [5, 11], "header": 11, "healthi": [3, 4, 5], "help": 11, "helper": 2, "hit": 11, "host": 10, "hostnam": [2, 9, 10], "how": [8, 11], "howto": 10, "http": [0, 7, 11, 12], "i": [0, 1, 2, 3, 4, 5, 8, 10, 11, 12], "id": [0, 1, 3, 5, 10, 11], "idea": 3, "identifi": [3, 5, 9, 11], "idp": 0, "illustr": 11, "immut": 3, "implement": 0, "implic": 11, "import": 11, "includ": [0, 3], "indent": 10, "index": [0, 2, 5, 9], "index_manifest": 11, "index_object_manifest": [2, 9, 11], "indexd": [1, 3, 6, 10, 11, 12], "indexd_field": [11, 12], "indexd_record_page_s": [2, 9, 11], "indexed_file_object_guid": 12, "indic": [0, 11], "infil": 10, "info": [3, 11], "inform": [2, 3, 10], "ingest": [2, 9], "ingest_manifest": 12, "initi": [0, 10], "input": [4, 10, 11], "input_manifest": 11, "instal": [0, 2, 11], "instanc": [1, 3, 6, 7, 8, 9, 10], "instead": [1, 7, 11], "int": [1, 3, 5, 7, 8, 10, 11, 12], "integ": [1, 3, 8], "intend": 0, "interact": [1, 3, 4, 5, 6, 8, 13], "interest": 10, "interpret": 0, "introspect": 8, "involv": 9, "is_healthi": [2, 3, 4, 5], "is_indexed_file_object": 12, "isn": 1, "issu": 0, "its": [1, 3], "job": 2, "job_id": 4, "job_input": 4, "job_nam": 4, "json": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "just": [5, 11, 12], "jwt": 0, "kei": [0, 3, 5, 13], "know": 11, "known": 10, "kwarg": [3, 4, 5], "l": [2, 13], "larg": 9, "last": 10, "latest": 3, "least": 3, "level": 6, "librari": 11, "like": [3, 5, 9, 11, 12], "limit": [1, 3, 5, 12], "linear": 4, "linux": 10, "list": [0, 1, 3, 4, 5, 7, 8, 10, 11, 13], "list_access_in_drs_manifest": [2, 9, 10], "list_drs_object": [2, 9, 10], "list_files_in_drs_manifest": [2, 9, 10], "list_job": [2, 4], "live": [11, 12], "load": [2, 9, 10], "load_manifest": [2, 9, 10], "local": [0, 13], "locat": [1, 6], "lock": 12, "log": [8, 10, 11, 12], "logic": [5, 12], "loop": 11, "ls_path": [2, 13], "maco": 11, "made": 3, "mai": [0, 9, 11], "main": 10, "make": [9, 11], "manag": [1, 5, 10], "mani": [8, 11], "manifest": [2, 8, 9, 10, 11, 12], "manifest_1": 10, "manifest_fil": [11, 12], "manifest_file_delimit": [11, 12], "manifest_row_pars": [11, 12], "map": [0, 11], "mark": 8, "master": 7, "match": [3, 5, 12], "max": 5, "max_concurrent_request": [2, 9, 11, 12], "max_presigned_url_ttl": 1, "max_tri": 8, "maximum": [11, 12], "md": [5, 7, 10, 12], "md5": [2, 3, 9, 11], "md5_hash": 11, "md5sum": [2, 9, 10], "mean": 8, "mechan": 3, "merg": 5, "metadata": [2, 3, 6, 9, 11], "metadata_list": 5, "metadata_sourc": 12, "metadata_typ": 12, "metdata": 12, "method": [1, 7, 10], "minimum": 10, "minut": 0, "mode": 7, "modul": [2, 10, 11], "more": [2, 5, 7, 9, 10], "most": 9, "mostli": 2, "multipl": [8, 11], "must": [1, 5], "my_common": 10, "my_credenti": 10, "my_field": 7, "my_index": 7, "my_program": 7, "my_project": 7, "name": [3, 4, 8, 10, 11, 12, 13], "namespac": [0, 12], "necessari": [3, 5], "need": [3, 7, 10, 11], "nest": 5, "net": 11, "never": 0, "new": [0, 3], "node": 8, "node_nam": 8, "node_typ": 8, "none": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "note": [0, 3, 11, 12], "noth": [3, 6], "now": [1, 8], "num": 5, "num_process": 11, "num_total_fil": 11, "number": [3, 7, 8, 11, 12], "o": 0, "object": [1, 2, 3, 4, 5, 7, 8, 9, 10, 11, 13], "object_id": [1, 2, 9, 10], "object_list": 10, "object_typ": [2, 9, 10], "objectid": 10, "obtain": [0, 10], "occur": 10, "off": 5, "offset": [5, 7], "oidc": 0, "old": 3, "one": [3, 5, 10, 11], "onli": [3, 5, 7, 8, 10, 11], "open": [8, 10, 11], "open_project": [2, 8], "openid": 0, "opt": 0, "option": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11], "order": [0, 8], "ordered_node_list": 8, "org": 10, "otherwis": 10, "output": [4, 5, 11, 12], "output_dir": 10, "output_filenam": [11, 12], "overrid": [0, 11, 12], "overwrit": 5, "own": 0, "packag": 10, "page": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 13], "pagin": 3, "parallel": 11, "param": [3, 5, 8, 10], "paramet": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "pars": [10, 11, 12, 13], "parser": [11, 12], "particular": 0, "pass": [0, 7, 8, 10], "password": [11, 12], "path": [0, 1, 5, 10, 11, 13], "path_to_manifest": 11, "pattern": [3, 12], "pdcdatastor": 11, "pend": 10, "per": [11, 12], "peregrin": 8, "permiss": 10, "persist": 9, "phs0001": 11, "phs0002": 11, "pick": 1, "pla": 11, "place": 11, "planx": 11, "point": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "popul": [10, 12], "posit": [1, 7], "possibl": 10, "post": [0, 11], "pprint": [2, 9, 10], "prefix": 3, "presign": 1, "pretti": 10, "prev_guid": [2, 9, 11], "previou": [3, 11], "previous": 4, "print": [8, 10], "process": 11, "processed_fil": 11, "profil": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "program": [8, 11], "progress": [8, 10], "project": [8, 11], "project_id": [7, 8], "protocol": 1, "provid": [0, 1, 3, 5, 7, 8, 12], "public": [3, 5], "put": 0, "py": 11, "python": [2, 9, 11], "python3": 11, "python_subprocess_command": 11, "queri": [1, 2, 3, 5, 8, 11, 12], "query_str": 7, "query_txt": [7, 8], "query_url": [2, 3], "quickstart": 2, "rather": 0, "raw": [7, 11], "raw_data_download": [2, 7], "rbac": 3, "read": [3, 5, 11], "readm": 2, "reason": 10, "record": [1, 3, 5, 7, 8, 11, 12], "refresh": [0, 10], "refresh_access_token": [0, 2], "refresh_fil": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "refresh_token": 0, "regist": 8, "regular": 7, "relat": 9, "remov": [1, 6, 11, 13], "replac": 11, "replace_url": 11, "repo": 2, "repres": [3, 5, 10], "represent": [1, 3], "request": [0, 1, 3, 5, 8, 11, 12], "requir": 10, "resolv": 10, "resolve_object": [2, 9, 10], "respect": 7, "respons": [0, 1, 3, 4, 5], "result": [1, 8, 10, 11], "retri": 8, "retriev": [1, 8, 10, 12], "return": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11], "return_full_metadata": 5, "rev": 3, "revers": 8, "revis": 3, "right": 1, "rm": [2, 13], "rm_path": [2, 13], "root": [11, 12], "row": [7, 8, 11, 12], "row_offset": 8, "rtype": 3, "run": [8, 11], "s3": [1, 10, 11], "safe": 11, "same": [5, 11, 13], "sampl": [8, 10], "sandbox": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "save": 10, "save_directori": 10, "schema": 8, "scope": [0, 1], "screen": 8, "script": 2, "search": [0, 2, 3], "second": [1, 4], "secret": 0, "see": [7, 10, 11], "self": 10, "semaphon": 12, "semaphor": 12, "separ": [0, 11], "server": 10, "servic": [1, 3, 4, 5, 6, 8, 11, 12, 13], "service_loc": [3, 4, 5], "session": 11, "set": [0, 1, 5, 10], "setup": 2, "sheepdog": 8, "should": [0, 8, 11], "show": 10, "show_progress": 10, "shown": 11, "sign": 1, "signpost": 3, "similar": 10, "simpl": 3, "simpli": 11, "sinc": 3, "singl": [1, 5, 8], "size": [2, 3, 9, 10, 11], "skip": 8, "sleep": 4, "so": 11, "some": [0, 2], "someth": 11, "sort": 7, "sort_field": 7, "sort_object": 7, "sourc": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "space": [0, 11], "specif": [5, 8, 11, 12], "specifi": [0, 1, 3, 11, 13], "spreadsheet": 8, "src_path": 13, "src_urlstr": 13, "src_w": 13, "src_wskei": 13, "ssl": [3, 4, 5], "start": [3, 4, 7, 8, 10], "start_tim": [2, 9, 10], "static": 10, "statu": [2, 4, 9, 10], "storag": [1, 2, 6], "store": [1, 3, 10], "str": [0, 1, 3, 4, 5, 7, 8, 10, 11, 12], "string": [0, 3, 5, 11, 13], "strip": 11, "sub": 8, "subject": [7, 8], "submiss": 2, "submit": [8, 11], "submit_additional_metadata_column": 11, "submit_fil": [2, 8], "submit_record": [2, 8], "submitter_id": 7, "success": 10, "successfulli": 10, "suffici": 3, "suppli": 3, "support": [0, 1, 5, 8, 11], "sure": 1, "synchron": 11, "syntax": 7, "system": [6, 7, 8, 9], "t": [1, 5, 11], "tab": 11, "task": 9, "temporari": 11, "test": 11, "test1": 11, "test2": 11, "test3": 11, "test4": 11, "test5": 11, "text": [1, 7, 8], "than": [0, 5], "thei": [0, 10], "them": [10, 11], "thi": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "those": 11, "thread": 11, "thread_num": 11, "threadcontrol": [2, 9, 11], "through": [8, 11], "tier": 7, "time": [1, 3, 8, 10, 11], "timestamp": 10, "tmp_folder": [2, 9, 11], "token": [0, 10], "tool": 2, "total": 11, "treat": [1, 5], "tree": 10, "true": [3, 4, 5, 6, 7, 8, 10, 11, 12], "try": 0, "tsv": [8, 11, 12], "tupl": [0, 3, 11, 12], "type": [1, 3, 4, 5, 7, 8, 10, 11, 12], "typic": 10, "uc": 7, "unaccess": 7, "under": [0, 8, 13], "uniqu": [1, 5], "unknown": 10, "unpack": 10, "unpack_packag": 10, "until": [4, 10], "up": [5, 9], "updat": [2, 3, 5, 10, 11], "update_alias": [2, 5], "update_blank": [2, 3], "update_record": [2, 3], "updated_tim": [2, 9, 10], "upload": [1, 2, 3, 8, 13], "upload_fil": [1, 2], "upload_file_to_guid": [1, 2], "upload_url": [2, 13], "url": [1, 2, 3, 9, 10, 11, 12, 13], "urls_metadata": 3, "us": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "usag": 11, "use_agg_md": 5, "user": [0, 10, 12], "user_access": [2, 9, 10], "usual": 12, "utcnow": 1, "util": 9, "uuid": [1, 3, 8], "uuid1": 8, "uuid2": 8, "valid": [3, 7], "valu": [0, 1, 3, 5, 7, 10, 11], "value_from_indexd": 11, "value_from_manifest": 11, "variabl": [0, 7, 8], "variou": 2, "verbos": [7, 8], "verif": 11, "verifi": [2, 9], "verify_manifest": 11, "verify_object_manifest": 11, "version": [3, 4, 5], "vital_statu": 7, "w": 13, "wa": 0, "wai": 10, "wait": 4, "want": [0, 3, 8], "warn": 11, "we": [3, 11], "web": 0, "what": 5, "when": [0, 3, 7, 10, 12], "where": [0, 3, 5, 11, 12], "whether": [3, 4, 5, 8, 11, 12], "which": [8, 10], "while": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "whose": 5, "within": [0, 2, 9], "without": [3, 5], "won": 5, "work": [0, 10], "workaround": 11, "worksheet": 8, "workspac": [0, 2], "wrapper": 10, "write": 11, "ws_urlstr": 13, "wskei": 13, "wss": 13, "wt": [0, 10], "x": 11, "xlsx": 8, "you": [0, 3, 8, 11], "your": 0}, "titles": ["Gen3 Auth Helper", "Gen3 File Class", "Welcome to Gen3 SDK\u2019s documentation!", "Gen3 Index Class", "Gen3 Jobs Class", "Gen3 Metadata Class", "Gen3 Object Class", "Gen3 Query Class", "Gen3 Submission Class", "Gen3 Tools", "DRS Download Tools", "Indexing Tools", "Metadata Tools", "Gen3 Workspace Storage"], "titleterms": {"": 2, "auth": 0, "class": [1, 3, 4, 5, 6, 7, 8], "document": 2, "download": [10, 11], "dr": 10, "file": 1, "gen3": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 13], "helper": 0, "index": [3, 11], "indic": 2, "ingest": 12, "job": 4, "metadata": [5, 12], "object": 6, "queri": 7, "sdk": 2, "storag": 13, "submiss": 8, "tabl": 2, "tool": [9, 10, 11, 12], "verifi": 11, "welcom": 2, "workspac": 13}}) \ No newline at end of file diff --git a/docs/_build/html/tools/indexing.html b/docs/_build/html/tools/indexing.html index b7c121c44..7cf25bdf4 100644 --- a/docs/_build/html/tools/indexing.html +++ b/docs/_build/html/tools/indexing.html @@ -381,7 +381,7 @@

Indexing Tools
-async gen3.tools.indexing.verify_manifest.async_verify_object_manifest(commons_url, manifest_file, max_concurrent_requests=24, manifest_row_parsers={'acl': <function _get_acl_from_row>, 'authz': <function _get_authz_from_row>, 'file_name': <function _get_file_name_from_row>, 'file_size': <function _get_file_size_from_row>, 'guid': <function _get_guid_from_row>, 'md5': <function _get_md5_from_row>, 'urls': <function _get_urls_from_row>}, manifest_file_delimiter=None, output_filename='verify-manifest-errors-1713559376.0576868.log')[source]
+async gen3.tools.indexing.verify_manifest.async_verify_object_manifest(commons_url, manifest_file, max_concurrent_requests=24, manifest_row_parsers={'acl': <function _get_acl_from_row>, 'authz': <function _get_authz_from_row>, 'file_name': <function _get_file_name_from_row>, 'file_size': <function _get_file_size_from_row>, 'guid': <function _get_guid_from_row>, 'md5': <function _get_md5_from_row>, 'urls': <function _get_urls_from_row>}, manifest_file_delimiter=None, output_filename='verify-manifest-errors-1713560080.4090197.log')[source]

Verify all file object records into a manifest csv

Parameters:
diff --git a/docs/_build/html/tools/metadata.html b/docs/_build/html/tools/metadata.html index cc5917d10..61ea4d567 100644 --- a/docs/_build/html/tools/metadata.html +++ b/docs/_build/html/tools/metadata.html @@ -102,7 +102,7 @@

Metadata Tools
-async gen3.tools.metadata.ingest_manifest.async_ingest_metadata_manifest(commons_url, manifest_file, metadata_source, auth=None, max_concurrent_requests=24, manifest_row_parsers={'guid_for_row': <function _get_guid_for_row>, 'indexed_file_object_guid': <function _query_for_associated_indexd_record_guid>}, manifest_file_delimiter=None, output_filename='ingest-metadata-manifest-errors-1713559376.4632835.log', get_guid_from_file=True, metadata_type=None)[source]
+async gen3.tools.metadata.ingest_manifest.async_ingest_metadata_manifest(commons_url, manifest_file, metadata_source, auth=None, max_concurrent_requests=24, manifest_row_parsers={'guid_for_row': <function _get_guid_for_row>, 'indexed_file_object_guid': <function _query_for_associated_indexd_record_guid>}, manifest_file_delimiter=None, output_filename='ingest-metadata-manifest-errors-1713560080.700799.log', get_guid_from_file=True, metadata_type=None)[source]

Ingest all metadata records into a manifest csv

Parameters:
From 19c52ba6898f3a2458ea2351669d031b42a3b96a Mon Sep 17 00:00:00 2001 From: Alex Date: Fri, 19 Apr 2024 15:58:52 -0500 Subject: [PATCH 33/62] feat(pyinstaller): try again with no debug logs --- .github/workflows/build.yaml | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index 507e0808c..6cc1e726b 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -5,7 +5,7 @@ on: push name: Build jobs: - pypi: + pyinstaller: runs-on: ${{ matrix.os }} strategy: @@ -32,15 +32,16 @@ jobs: # on all OSes was getting difficult. This is a quick hack to move forward pip install poetry python -m poetry --version + # python -m poetry self add poetry-pyinstaller-plugin - name: Install dependencies and then build using pyinstaller run: | python -m poetry install -vv --all-extras --no-interaction --no-cache python -m poetry show -vv python -m poetry env info - + # python -m poetry build pip install pyinstaller==6.6.0 - # pyinstaller --clean --name gen3 --hidden-import gen3users --onefile ./gen3/cli/__main__.py - pyinstaller --log-level=DEBUG --debug=imports --clean --name gen3 --hidden-import gen3users --onefile ./gen3/cli/__main__.py + pyinstaller --clean --name gen3 --hidden-import gen3users --onefile ./gen3/cli/__main__.py + # pyinstaller --log-level=DEBUG --debug=imports --clean --name gen3 --hidden-import gen3users --onefile ./gen3/cli/__main__.py - name: Test build run: | cd ./dist From 73d43460570bb79a4bb4b5b80a670fdfe45efd82 Mon Sep 17 00:00:00 2001 From: Avantol13 Date: Fri, 19 Apr 2024 21:00:06 +0000 Subject: [PATCH 34/62] Apply automatic documentation changes --- docs/_build/doctrees/environment.pickle | Bin 1579888 -> 1579893 bytes docs/_build/doctrees/tools/indexing.doctree | Bin 100291 -> 100291 bytes docs/_build/doctrees/tools/metadata.doctree | Bin 35929 -> 35934 bytes docs/_build/html/searchindex.js | 2 +- docs/_build/html/tools/indexing.html | 2 +- docs/_build/html/tools/metadata.html | 2 +- 6 files changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/_build/doctrees/environment.pickle b/docs/_build/doctrees/environment.pickle index 700191bb513905062865bb5ac67a6bc1b940d070..9f8be509784751e4adf29db06bf7296c99a11f38 100644 GIT binary patch delta 10405 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Qt%_jWn(qh6{LQumXNfOiWMtUW+vG$}cNi=YlJ9U#f!-12{1 zXgN!fn&sydFDdpkw<9a61RE*k2^5uLhwI>KDGqQQbUBF2p$?WD#Ki01;z6EV?LnNi zIy${`X5)nzR- zpbeUKF2^-f3z_A(!fRnyIj)OZxLuAx??D(PEpfzpGg1f73$lO{3Y1h&i{d|X=UTB) z1hVTW#7{?*BYGs<|9+d^{1@?UF4S>UtLP|$=;)@ujuHcPv@@6?dgn?1ee-kq_ItWD zN;t}o($SP?9i8u_qvBW{nGtgDWay6LE*hmKD5*HK8aj@k~^QPq%K9X_9;Bgar3 zwHv0R9gV1UsxEtPxQ?7@I`SW(qwynkG?H!GymRLoQTZrM*4DFRw61>Gh{DI}vWRgE z(f5!0UvBjj|BgL39VHwcnW&@blXY~b5v5MiWsw;=@_CUV`mgK$Y3p+NxA50IDB)<- zEFI0r(otfzjtWZh_uUyCdCuzSoiBBC;wv4U{#r*F-{|Q5?{xI%_YBc; zYrxLWa{1{n=MqXdGF{P8-|IR$ctb}=Z|Z0kJ5RXB(O-1b_75Ee{;4BxBTBBQpI`n_2qf-2RQG`A&>B#KE5H)`j5T1tnWmH7q;8AYA4~G!ca8%6^T{$=K*`8=~ ztu(N$NBrNjs5rFYJLrW*l$W5(Zn0gJYh$|T=xA3R`6TJ6tPv%5*JN`&BVr{ir@3<{ G#rz))e;5w{ delta 10444 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 IZ&4o%0O)lrTL1t6 diff --git a/docs/_build/html/searchindex.js b/docs/_build/html/searchindex.js index 6c9a0c077..2e2b1621b 100644 --- a/docs/_build/html/searchindex.js +++ b/docs/_build/html/searchindex.js @@ -1 +1 @@ -Search.setIndex({"alltitles": {"DRS Download Tools": [[10, "module-gen3.tools.download.drs_download"]], "Download": [[11, "module-gen3.tools.indexing.download_manifest"]], "Gen3 Auth Helper": [[0, "gen3-auth-helper"]], "Gen3 File Class": [[1, "gen3-file-class"]], "Gen3 Index Class": [[3, "gen3-index-class"]], "Gen3 Jobs Class": [[4, "gen3-jobs-class"]], "Gen3 Metadata Class": [[5, "gen3-metadata-class"]], "Gen3 Object Class": [[6, "gen3-object-class"]], "Gen3 Query Class": [[7, "gen3-query-class"]], "Gen3 Submission Class": [[8, "gen3-submission-class"]], "Gen3 Tools": [[9, "gen3-tools"]], "Gen3 Workspace Storage": [[13, "gen3-workspace-storage"]], "Index": [[11, "module-gen3.tools.indexing.index_manifest"]], "Indexing Tools": [[11, "indexing-tools"]], "Indices and tables": [[2, "indices-and-tables"]], "Ingest": [[12, "module-gen3.tools.metadata.ingest_manifest"]], "Metadata Tools": [[12, "metadata-tools"]], "Verify": [[11, "module-gen3.tools.indexing.verify_manifest"]], "Welcome to Gen3 SDK\u2019s documentation!": [[2, "welcome-to-gen3-sdk-s-documentation"]]}, "docnames": ["auth", "file", "index", "indexing", "jobs", "metadata", "object", "query", "submission", "tools", "tools/drs_pull", "tools/indexing", "tools/metadata", "wss"], "envversion": {"sphinx": 61, "sphinx.domains.c": 3, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 9, "sphinx.domains.index": 1, "sphinx.domains.javascript": 3, "sphinx.domains.math": 2, "sphinx.domains.python": 4, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx.ext.viewcode": 1}, "filenames": ["auth.rst", "file.rst", "index.rst", "indexing.rst", "jobs.rst", "metadata.rst", "object.rst", "query.rst", "submission.rst", "tools.rst", "tools/drs_pull.rst", "tools/indexing.rst", "tools/metadata.rst", "wss.rst"], "indexentries": {"_manager (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable._manager", false]], "access_methods (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.access_methods", false]], "acls (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.ACLS", false]], "async_create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_create", false]], "async_create_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_create_aliases", false]], "async_create_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_create_record", false]], "async_delete_alias() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_delete_alias", false]], "async_delete_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_delete_aliases", false]], "async_download_object_manifest() (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.async_download_object_manifest", false]], "async_get() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_get", false]], "async_get_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_get_aliases", false]], "async_get_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_record", false]], "async_get_records_from_checksum() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_records_from_checksum", false]], "async_get_records_on_page() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_records_on_page", false]], "async_get_with_params() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_with_params", false]], "async_ingest_metadata_manifest() (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.async_ingest_metadata_manifest", false]], "async_query_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_query_urls", false]], "async_query_urls_from_indexd() (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.async_query_urls_from_indexd", false]], "async_run_job_and_wait() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.async_run_job_and_wait", false]], "async_update() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_update", false]], "async_update_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_update_aliases", false]], "async_update_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_update_record", false]], "async_verify_object_manifest() (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.async_verify_object_manifest", false]], "auth_provider (gen3.metadata.gen3metadata attribute)": [[5, "gen3.metadata.Gen3Metadata.auth_provider", false]], "authz (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.AUTHZ", false]], "batch_create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.batch_create", false]], "cache_hosts_wts_tokens() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.cache_hosts_wts_tokens", false]], "children (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.children", false]], "column_to_use_as_guid (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.COLUMN_TO_USE_AS_GUID", false]], "commons_url (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.commons_url", false]], "copy() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.copy", false]], "create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create", false]], "create_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create_aliases", false]], "create_blank() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_blank", false]], "create_index_key_path() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create_index_key_path", false]], "create_job() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.create_job", false]], "create_new_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_new_version", false]], "create_object_list() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.create_object_list", false]], "create_program() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.create_program", false]], "create_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.create_project", false]], "create_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_record", false]], "created_time (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.created_time", false]], "curl() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.curl", false]], "current_dir (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.CURRENT_DIR", false]], "current_dir (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.CURRENT_DIR", false]], "current_dir (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.CURRENT_DIR", false]], "delete() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete", false]], "delete_alias() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_alias", false]], "delete_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_aliases", false]], "delete_all_guids() (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.delete_all_guids", false]], "delete_file() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.delete_file", false]], "delete_file_locations() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.delete_file_locations", false]], "delete_index_key_path() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_index_key_path", false]], "delete_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_node", false]], "delete_nodes() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_nodes", false]], "delete_object() (gen3.object.gen3object method)": [[6, "gen3.object.Gen3Object.delete_object", false]], "delete_program() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_program", false]], "delete_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_project", false]], "delete_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.delete_record", false]], "delete_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_record", false]], "delete_records() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_records", false]], "download() (gen3.tools.download.drs_download.downloadable method)": [[10, "gen3.tools.download.drs_download.Downloadable.download", false]], "download() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.download", false]], "download() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.download", false]], "download_files_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.download_files_in_drs_manifest", false]], "download_single() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.download_single", false]], "download_url() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.download_url", false]], "downloadable (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.Downloadable", false]], "downloadmanager (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.DownloadManager", false]], "downloadstatus (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.DownloadStatus", false]], "end_time (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.end_time", false]], "endpoint (gen3.metadata.gen3metadata attribute)": [[5, "gen3.metadata.Gen3Metadata.endpoint", false]], "export_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.export_node", false]], "export_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.export_record", false]], "file_name (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.file_name", false]], "file_name (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.file_name", false]], "file_size (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.file_size", false]], "file_size (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.file_size", false]], "gen3.tools": [[9, "module-gen3.tools", false]], "gen3.tools.download.drs_download": [[10, "module-gen3.tools.download.drs_download", false]], "gen3.tools.indexing.download_manifest": [[11, "module-gen3.tools.indexing.download_manifest", false]], "gen3.tools.indexing.index_manifest": [[11, "module-gen3.tools.indexing.index_manifest", false]], "gen3.tools.indexing.verify_manifest": [[11, "module-gen3.tools.indexing.verify_manifest", false]], "gen3.tools.metadata.ingest_manifest": [[12, "module-gen3.tools.metadata.ingest_manifest", false]], "gen3auth (class in gen3.auth)": [[0, "gen3.auth.Gen3Auth", false]], "gen3file (class in gen3.file)": [[1, "gen3.file.Gen3File", false]], "gen3index (class in gen3.index)": [[3, "gen3.index.Gen3Index", false]], "gen3jobs (class in gen3.jobs)": [[4, "gen3.jobs.Gen3Jobs", false]], "gen3metadata (class in gen3.metadata)": [[5, "gen3.metadata.Gen3Metadata", false]], "gen3object (class in gen3.object)": [[6, "gen3.object.Gen3Object", false]], "gen3query (class in gen3.query)": [[7, "gen3.query.Gen3Query", false]], "gen3submission (class in gen3.submission)": [[8, "gen3.submission.Gen3Submission", false]], "gen3wsstorage (class in gen3.wss)": [[13, "gen3.wss.Gen3WsStorage", false]], "get() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get", false]], "get() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get", false]], "get_access_token() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.get_access_token", false]], "get_access_token_from_wts() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.get_access_token_from_wts", false]], "get_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_aliases", false]], "get_all_records() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_all_records", false]], "get_dictionary_all() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_dictionary_all", false]], "get_dictionary_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_dictionary_node", false]], "get_fresh_token() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.get_fresh_token", false]], "get_graphql_schema() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_graphql_schema", false]], "get_guids_prefix() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_guids_prefix", false]], "get_index_key_paths() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_index_key_paths", false]], "get_latest_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_latest_version", false]], "get_output() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_output", false]], "get_presigned_url() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.get_presigned_url", false]], "get_programs() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_programs", false]], "get_project_dictionary() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_project_dictionary", false]], "get_project_manifest() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_project_manifest", false]], "get_projects() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_projects", false]], "get_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_record", false]], "get_record_doc() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_record_doc", false]], "get_records() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_records", false]], "get_records_on_page() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_records_on_page", false]], "get_stats() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_stats", false]], "get_status() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_status", false]], "get_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_urls", false]], "get_valid_guids() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_valid_guids", false]], "get_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_version", false]], "get_version() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_version", false]], "get_version() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_version", false]], "get_versions() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_versions", false]], "get_with_params() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_with_params", false]], "graphql_query() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.graphql_query", false]], "guid (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.GUID", false]], "guid_type_for_indexed_file_object (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.GUID_TYPE_FOR_INDEXED_FILE_OBJECT", false]], "guid_type_for_non_indexed_file_object (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.GUID_TYPE_FOR_NON_INDEXED_FILE_OBJECT", false]], "hostname (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.hostname", false]], "index_object_manifest() (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.index_object_manifest", false]], "indexd_record_page_size (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.INDEXD_RECORD_PAGE_SIZE", false]], "is_healthy() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.is_healthy", false]], "is_healthy() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.is_healthy", false]], "is_healthy() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.is_healthy", false]], "list_access_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_access_in_drs_manifest", false]], "list_drs_object() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_drs_object", false]], "list_files_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_files_in_drs_manifest", false]], "list_jobs() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.list_jobs", false]], "load() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.load", false]], "load_manifest() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.load_manifest", false]], "ls() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.ls", false]], "ls_path() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.ls_path", false]], "manifest (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.Manifest", false]], "max_concurrent_requests (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.MAX_CONCURRENT_REQUESTS", false]], "max_concurrent_requests (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.MAX_CONCURRENT_REQUESTS", false]], "max_concurrent_requests (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.MAX_CONCURRENT_REQUESTS", false]], "md5 (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.MD5", false]], "md5sum (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.md5sum", false]], "module": [[9, "module-gen3.tools", false], [10, "module-gen3.tools.download.drs_download", false], [11, "module-gen3.tools.indexing.download_manifest", false], [11, "module-gen3.tools.indexing.index_manifest", false], [11, "module-gen3.tools.indexing.verify_manifest", false], [12, "module-gen3.tools.metadata.ingest_manifest", false]], "object_id (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.object_id", false]], "object_id (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.object_id", false]], "object_type (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.object_type", false]], "open_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.open_project", false]], "pprint() (gen3.tools.download.drs_download.downloadable method)": [[10, "gen3.tools.download.drs_download.Downloadable.pprint", false]], "prev_guid (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.PREV_GUID", false]], "query() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.query", false]], "query() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.query", false]], "query() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.query", false]], "query_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.query_urls", false]], "raw_data_download() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.raw_data_download", false]], "refresh_access_token() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.refresh_access_token", false]], "resolve_objects() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.resolve_objects", false]], "rm() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.rm", false]], "rm_path() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.rm_path", false]], "size (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.SIZE", false]], "start_time (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.start_time", false]], "status (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.status", false]], "submit_file() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.submit_file", false]], "submit_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.submit_record", false]], "threadcontrol (class in gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.ThreadControl", false]], "tmp_folder (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.TMP_FOLDER", false]], "update() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.update", false]], "update_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.update_aliases", false]], "update_blank() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.update_blank", false]], "update_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.update_record", false]], "updated_time (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.updated_time", false]], "upload() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.upload", false]], "upload_file() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.upload_file", false]], "upload_file_to_guid() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.upload_file_to_guid", false]], "upload_url() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.upload_url", false]], "urls (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.URLS", false]], "user_access() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.user_access", false]]}, "objects": {"gen3": [[9, 3, 0, "-", "tools"]], "gen3.auth": [[0, 0, 1, "", "Gen3Auth"]], "gen3.auth.Gen3Auth": [[0, 1, 1, "", "curl"], [0, 1, 1, "", "get_access_token"], [0, 1, 1, "", "get_access_token_from_wts"], [0, 1, 1, "", "refresh_access_token"]], "gen3.file": [[1, 0, 1, "", "Gen3File"]], "gen3.file.Gen3File": [[1, 1, 1, "", "delete_file"], [1, 1, 1, "", "delete_file_locations"], [1, 1, 1, "", "download_single"], [1, 1, 1, "", "get_presigned_url"], [1, 1, 1, "", "upload_file"], [1, 1, 1, "", "upload_file_to_guid"]], "gen3.index": [[3, 0, 1, "", "Gen3Index"]], "gen3.index.Gen3Index": [[3, 1, 1, "", "async_create_record"], [3, 1, 1, "", "async_get_record"], [3, 1, 1, "", "async_get_records_from_checksum"], [3, 1, 1, "", "async_get_records_on_page"], [3, 1, 1, "", "async_get_with_params"], [3, 1, 1, "", "async_query_urls"], [3, 1, 1, "", "async_update_record"], [3, 1, 1, "", "create_blank"], [3, 1, 1, "", "create_new_version"], [3, 1, 1, "", "create_record"], [3, 1, 1, "", "delete_record"], [3, 1, 1, "", "get"], [3, 1, 1, "", "get_all_records"], [3, 1, 1, "", "get_guids_prefix"], [3, 1, 1, "", "get_latest_version"], [3, 1, 1, "", "get_record"], [3, 1, 1, "", "get_record_doc"], [3, 1, 1, "", "get_records"], [3, 1, 1, "", "get_records_on_page"], [3, 1, 1, "", "get_stats"], [3, 1, 1, "", "get_urls"], [3, 1, 1, "", "get_valid_guids"], [3, 1, 1, "", "get_version"], [3, 1, 1, "", "get_versions"], [3, 1, 1, "", "get_with_params"], [3, 1, 1, "", "is_healthy"], [3, 1, 1, "", "query_urls"], [3, 1, 1, "", "update_blank"], [3, 1, 1, "", "update_record"]], "gen3.jobs": [[4, 0, 1, "", "Gen3Jobs"]], "gen3.jobs.Gen3Jobs": [[4, 1, 1, "", "async_run_job_and_wait"], [4, 1, 1, "", "create_job"], [4, 1, 1, "", "get_output"], [4, 1, 1, "", "get_status"], [4, 1, 1, "", "get_version"], [4, 1, 1, "", "is_healthy"], [4, 1, 1, "", "list_jobs"]], "gen3.metadata": [[5, 0, 1, "", "Gen3Metadata"]], "gen3.metadata.Gen3Metadata": [[5, 1, 1, "", "async_create"], [5, 1, 1, "", "async_create_aliases"], [5, 1, 1, "", "async_delete_alias"], [5, 1, 1, "", "async_delete_aliases"], [5, 1, 1, "", "async_get"], [5, 1, 1, "", "async_get_aliases"], [5, 1, 1, "", "async_update"], [5, 1, 1, "", "async_update_aliases"], [5, 2, 1, "", "auth_provider"], [5, 1, 1, "", "batch_create"], [5, 1, 1, "", "create"], [5, 1, 1, "", "create_aliases"], [5, 1, 1, "", "create_index_key_path"], [5, 1, 1, "", "delete"], [5, 1, 1, "", "delete_alias"], [5, 1, 1, "", "delete_aliases"], [5, 1, 1, "", "delete_index_key_path"], [5, 2, 1, "", "endpoint"], [5, 1, 1, "", "get"], [5, 1, 1, "", "get_aliases"], [5, 1, 1, "", "get_index_key_paths"], [5, 1, 1, "", "get_version"], [5, 1, 1, "", "is_healthy"], [5, 1, 1, "", "query"], [5, 1, 1, "", "update"], [5, 1, 1, "", "update_aliases"]], "gen3.object": [[6, 0, 1, "", "Gen3Object"]], "gen3.object.Gen3Object": [[6, 1, 1, "", "delete_object"]], "gen3.query": [[7, 0, 1, "", "Gen3Query"]], "gen3.query.Gen3Query": [[7, 1, 1, "", "graphql_query"], [7, 1, 1, "", "query"], [7, 1, 1, "", "raw_data_download"]], "gen3.submission": [[8, 0, 1, "", "Gen3Submission"]], "gen3.submission.Gen3Submission": [[8, 1, 1, "", "create_program"], [8, 1, 1, "", "create_project"], [8, 1, 1, "", "delete_node"], [8, 1, 1, "", "delete_nodes"], [8, 1, 1, "", "delete_program"], [8, 1, 1, "", "delete_project"], [8, 1, 1, "", "delete_record"], [8, 1, 1, "", "delete_records"], [8, 1, 1, "", "export_node"], [8, 1, 1, "", "export_record"], [8, 1, 1, "", "get_dictionary_all"], [8, 1, 1, "", "get_dictionary_node"], [8, 1, 1, "", "get_graphql_schema"], [8, 1, 1, "", "get_programs"], [8, 1, 1, "", "get_project_dictionary"], [8, 1, 1, "", "get_project_manifest"], [8, 1, 1, "", "get_projects"], [8, 1, 1, "", "open_project"], [8, 1, 1, "", "query"], [8, 1, 1, "", "submit_file"], [8, 1, 1, "", "submit_record"]], "gen3.tools.download": [[10, 3, 0, "-", "drs_download"]], "gen3.tools.download.drs_download": [[10, 0, 1, "", "DownloadManager"], [10, 0, 1, "", "DownloadStatus"], [10, 0, 1, "", "Downloadable"], [10, 0, 1, "", "Manifest"], [10, 4, 1, "", "download_files_in_drs_manifest"], [10, 4, 1, "", "list_access_in_drs_manifest"], [10, 4, 1, "", "list_drs_object"], [10, 4, 1, "", "list_files_in_drs_manifest"]], "gen3.tools.download.drs_download.DownloadManager": [[10, 1, 1, "", "cache_hosts_wts_tokens"], [10, 1, 1, "", "download"], [10, 1, 1, "", "get_fresh_token"], [10, 1, 1, "", "resolve_objects"], [10, 1, 1, "", "user_access"]], "gen3.tools.download.drs_download.DownloadStatus": [[10, 2, 1, "", "end_time"], [10, 2, 1, "", "start_time"], [10, 2, 1, "", "status"]], "gen3.tools.download.drs_download.Downloadable": [[10, 2, 1, "", "_manager"], [10, 2, 1, "", "access_methods"], [10, 2, 1, "", "children"], [10, 2, 1, "", "created_time"], [10, 1, 1, "", "download"], [10, 2, 1, "", "file_name"], [10, 2, 1, "", "file_size"], [10, 2, 1, "", "hostname"], [10, 2, 1, "", "object_id"], [10, 2, 1, "", "object_type"], [10, 1, 1, "", "pprint"], [10, 2, 1, "", "updated_time"]], "gen3.tools.download.drs_download.Manifest": [[10, 2, 1, "", "commons_url"], [10, 1, 1, "", "create_object_list"], [10, 2, 1, "", "file_name"], [10, 2, 1, "", "file_size"], [10, 1, 1, "", "load"], [10, 1, 1, "", "load_manifest"], [10, 2, 1, "", "md5sum"], [10, 2, 1, "", "object_id"]], "gen3.tools.indexing": [[11, 3, 0, "-", "download_manifest"], [11, 3, 0, "-", "index_manifest"], [11, 3, 0, "-", "verify_manifest"]], "gen3.tools.indexing.download_manifest": [[11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "INDEXD_RECORD_PAGE_SIZE"], [11, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [11, 2, 1, "", "TMP_FOLDER"], [11, 4, 1, "", "async_download_object_manifest"]], "gen3.tools.indexing.index_manifest": [[11, 2, 1, "", "ACLS"], [11, 2, 1, "", "AUTHZ"], [11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "GUID"], [11, 2, 1, "", "MD5"], [11, 2, 1, "", "PREV_GUID"], [11, 2, 1, "", "SIZE"], [11, 0, 1, "", "ThreadControl"], [11, 2, 1, "", "URLS"], [11, 4, 1, "", "delete_all_guids"], [11, 4, 1, "", "index_object_manifest"]], "gen3.tools.indexing.verify_manifest": [[11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [11, 4, 1, "", "async_verify_object_manifest"]], "gen3.tools.metadata": [[12, 3, 0, "-", "ingest_manifest"]], "gen3.tools.metadata.ingest_manifest": [[12, 2, 1, "", "COLUMN_TO_USE_AS_GUID"], [12, 2, 1, "", "GUID_TYPE_FOR_INDEXED_FILE_OBJECT"], [12, 2, 1, "", "GUID_TYPE_FOR_NON_INDEXED_FILE_OBJECT"], [12, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [12, 4, 1, "", "async_ingest_metadata_manifest"], [12, 4, 1, "", "async_query_urls_from_indexd"]], "gen3.wss": [[13, 0, 1, "", "Gen3WsStorage"]], "gen3.wss.Gen3WsStorage": [[13, 1, 1, "", "copy"], [13, 1, 1, "", "download"], [13, 1, 1, "", "download_url"], [13, 1, 1, "", "ls"], [13, 1, 1, "", "ls_path"], [13, 1, 1, "", "rm"], [13, 1, 1, "", "rm_path"], [13, 1, 1, "", "upload"], [13, 1, 1, "", "upload_url"]]}, "objnames": {"0": ["py", "class", "Python class"], "1": ["py", "method", "Python method"], "2": ["py", "attribute", "Python attribute"], "3": ["py", "module", "Python module"], "4": ["py", "function", "Python function"]}, "objtypes": {"0": "py:class", "1": "py:method", "2": "py:attribute", "3": "py:module", "4": "py:function"}, "terms": {"": [1, 4, 8, 10, 11], "0": [5, 7, 8, 11], "0046513": [], "052073": [], "0576868": [], "064572": [], "07464": [], "0a80fada010c": 11, "0a80fada096c": 11, "0a80fada097c": 11, "0a80fada098c": 11, "0a80fada099c": 11, "1": [4, 5, 8, 10, 11], "10": [5, 7, 11], "100": [8, 11], "11e9": 11, "1676264": [], "1713542306": [], "1713542765": [], "1713543033": [], "1713543225": [], "1713543506": [], "1713543956": [], "1713544131": [], "1713544132": [], "1713544397": [], "1713544598": [], "1713545857": [], "1713545858": [], "1713549370": [], "1713549689": [], "1713550571": [], "1713557245": [], "1713559376": [], "1713560080": [11, 12], "1771936": [], "1913438": [], "2": [5, 11], "24": [11, 12], "255e396f": 11, "2877355": [], "2930224": [], "2995": [], "3": [5, 11], "30": 8, "3102272": [], "33": 5, "333": 5, "343434344": 11, "363455714": 11, "4": [5, 11], "4017086": [], "4052968": [], "4090197": 11, "4463434": [], "450c": 11, "4632835": [], "4649727": [], "4714": 8, "473d83400bc1bc9dc635e334fadd433c": 11, "473d83400bc1bc9dc635e334faddd33c": 11, "473d83400bc1bc9dc635e334fadde33c": 11, "473d83400bc1bc9dc635e334faddf33c": 11, "4752307": [], "4756553": [], "5": [0, 5], "50": 7, "543434443": 11, "5669184": [], "5899982": [], "6692646": [], "6739478": [], "674552": [], "6f90": 8, "700799": 12, "7232893": [], "756255": [], "760149": [], "7d3d8d2083b4": 11, "8044841": [], "8375325": [], "8420": 8, "8882551": [], "93d9af72": 11, "9a07": 11, "A": [1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "AND": 5, "Be": 1, "But": 5, "By": 11, "For": [1, 5, 6, 7, 8, 9, 11], "IF": 11, "If": [0, 1, 7, 11, 12], "In": 10, "It": 10, "NOT": 12, "OR": 5, "One": 7, "Such": 9, "THE": 11, "That": 3, "The": [0, 1, 2, 3, 5, 8, 10, 11], "There": 11, "These": 9, "To": 11, "Will": [4, 7, 10], "_get_acl_from_row": 11, "_get_authz_from_row": 11, "_get_file_name_from_row": 11, "_get_file_size_from_row": 11, "_get_guid_for_row": 12, "_get_guid_from_row": 11, "_get_md5_from_row": 11, "_get_urls_from_row": 11, "_guid_typ": 12, "_manag": [2, 9, 10], "_query_for_associated_indexd_record_guid": 12, "_ssl": [3, 4, 5], "a5c6": 11, "ab167e49d25b488939b1ede42752458b": 3, "about": [2, 3], "abov": 11, "access": [0, 1, 3, 7, 10], "access_method": [2, 9, 10], "access_token": 0, "accesstoken": 0, "acl": [2, 3, 9, 11], "across": 11, "act": 0, "action": [9, 11], "actual": 11, "ad": 3, "add": [3, 5], "addit": [3, 5, 10, 11], "admin": [5, 11], "admin_endpoint_suffix": 5, "after": 10, "against": [3, 7, 8, 11, 12], "algorithm": 3, "alia": [3, 5], "alias": 5, "aliv": 7, "all": [1, 3, 4, 5, 6, 7, 8, 10, 11, 12], "allow": [0, 6, 8, 10, 11, 12], "allowed_data_upload_bucket": 1, "along": 2, "alreadi": 9, "also": 1, "altern": [5, 11], "alwai": 5, "ammount": 12, "amount": [1, 9], "an": [0, 3, 6, 8, 10, 11], "ani": [0, 5, 10, 11], "anoth": 5, "api": [0, 5, 8, 11], "api_kei": 11, "appli": 7, "appropri": 13, "ar": [5, 7, 8, 9, 10, 11], "arbitrari": 0, "argument": [0, 13], "arrai": 8, "asc": 7, "assign": 9, "assist": 10, "associ": [3, 5], "assum": 11, "async": [3, 4, 5, 9, 11, 12], "async_cr": [2, 5], "async_create_alias": [2, 5], "async_create_record": [2, 3], "async_delete_alia": [2, 5], "async_delete_alias": [2, 5], "async_download_object_manifest": [2, 9, 11], "async_get": [2, 5], "async_get_alias": [2, 5], "async_get_record": [2, 3], "async_get_records_from_checksum": [2, 3], "async_get_records_on_pag": [2, 3], "async_get_with_param": [2, 3], "async_ingest_metadata_manifest": [2, 9, 12], "async_query_url": [2, 3], "async_query_urls_from_indexd": [2, 9, 12], "async_run_job_and_wait": [2, 4], "async_upd": [2, 5], "async_update_alias": [2, 5], "async_update_record": [2, 3], "async_verify_object_manifest": [2, 9, 11], "asynchron": [3, 4, 5], "asyncio": [11, 12], "asyncron": 5, "attach": [3, 5], "attempt": 11, "attribut": [10, 11], "auth": [1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "auth_provid": [1, 2, 3, 4, 5, 6, 7, 8, 13], "authbas": 0, "authent": 0, "author": 1, "authz": [0, 1, 2, 3, 9, 10, 11], "auto": [0, 2], "automat": 0, "avail": [1, 2, 10, 11], "az": 1, "b": [5, 11], "b0f1": 11, "bar": 10, "base": [0, 1, 3, 4, 5, 6, 7, 8, 9, 11, 13], "baseid": 3, "basic": [3, 11, 12], "batch_creat": [2, 5], "batch_siz": 8, "behalf": 0, "behavior": 11, "being": 3, "belong": 8, "below": 11, "blank": 3, "blob": [5, 7], "bodi": 3, "bool": [4, 5, 8, 10, 11, 12], "boolean": 3, "bownload": 10, "broad": 9, "broken": 9, "bucket": [1, 6], "bundl": 10, "byte": 10, "c": [5, 11], "cach": 10, "cache_hosts_wts_token": [2, 9, 10], "call": [10, 13], "can": [0, 3, 4, 8, 11, 12], "capabl": 9, "case": [0, 10], "categori": 9, "ccle": 8, "ccle_one_record": 8, "ccle_sample_nod": 8, "cdi": 7, "chang": [3, 11], "checksum": [3, 10], "checksum_typ": 3, "child": 10, "children": [2, 9, 10], "chunk_siz": 8, "class": [0, 2, 10, 11, 13], "cli": 10, "client": [0, 3], "client_credenti": 0, "client_id": 0, "client_scop": 0, "client_secret": 0, "code": [2, 8], "column": [11, 12], "column_to_use_as_guid": [2, 9, 12], "columna": 11, "columnb": 11, "columnc": 11, "com": 7, "comma": 11, "command": [10, 11], "common": [0, 1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13], "commons_url": [2, 9, 10, 11, 12], "complet": [4, 11], "complex": 7, "concat": 11, "concurr": [11, 12], "configur": 1, "connect": 12, "consist": 3, "constructor": 0, "contain": [0, 2, 5, 8, 9, 10, 11, 12], "content": [3, 13], "content_created_d": 3, "content_updated_d": 3, "continu": 10, "control": 3, "conveni": 10, "copi": [2, 13], "coroutin": 11, "correspond": 3, "count": 3, "crdc": 0, "creat": [2, 3, 4, 5, 6, 8, 10, 11], "create_alias": [2, 5], "create_blank": [2, 3], "create_index_key_path": [2, 5], "create_job": [2, 4], "create_new_vers": [2, 3], "create_object_list": [2, 9, 10], "create_program": [2, 8], "create_project": [2, 8], "create_record": [2, 3], "created_tim": [2, 9, 10], "creation": [3, 11], "cred": 3, "credenti": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "csv": [8, 11, 12], "curl": [0, 2], "current": [6, 8, 10], "current_dir": [2, 9, 11], "custom": 11, "d": 5, "d70b41b9": 8, "data": [0, 1, 3, 5, 7, 8, 10, 11], "data_spreadsheet": 8, "data_typ": 7, "data_upload_bucket": 1, "dataa": 11, "datab": 11, "databas": 5, "datacommon": 0, "datafil": 10, "datamanag": 10, "date": 3, "datetim": [1, 3, 10], "dbgap": 12, "dcf": 8, "def": 11, "default": [0, 1, 3, 7, 8, 11, 12], "defin": [5, 8, 10], "delai": 4, "delet": [0, 1, 2, 3, 5, 6, 8, 10, 11], "delete_alia": [2, 5], "delete_alias": [2, 5], "delete_all_guid": [2, 9, 11], "delete_fil": [1, 2], "delete_file_loc": [1, 2, 6], "delete_index_key_path": [2, 5], "delete_nod": [2, 8], "delete_object": [2, 6], "delete_program": [2, 8], "delete_project": [2, 8], "delete_record": [2, 3, 8], "delete_unpacked_packag": 10, "delimet": [11, 12], "delimit": 11, "demograph": 8, "deprec": 1, "descript": [3, 5], "desir": 11, "dest_path": 13, "dest_urlstr": 13, "dest_w": 13, "dest_wskei": 13, "detail": [2, 7, 10], "determin": [10, 11, 12], "dev": 11, "dict": [3, 4, 5, 10, 11, 12], "dictionari": [3, 4, 5, 7, 8], "did": 3, "differ": 5, "direct": 0, "directori": [10, 11], "disabl": 10, "discoveri": 10, "disk": 13, "dispatch": 4, "dist_resolut": 3, "distribut": 3, "doc": [7, 10], "docstr": 2, "document": [1, 3], "doe": [0, 12], "domain": [11, 12], "done": 4, "download": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 13], "download_files_in_drs_manifest": [2, 9, 10], "download_list": 10, "download_manifest": 11, "download_singl": [1, 2], "download_url": [2, 13], "downloadmanag": [2, 9, 10], "downloadstatu": [2, 9, 10], "dr": [2, 9], "drs_download": 10, "drs_hostnam": 10, "drsdownload": 10, "drsobjecttyp": 10, "e": [5, 10], "e043ab8b77b9": 8, "each": [3, 8, 10, 11], "effici": 9, "eg": 3, "either": 8, "elasticsearch": 7, "els": [0, 12], "elsewher": 12, "empti": [8, 11], "enabl": 11, "end": [5, 10], "end_tim": [2, 9, 10], "endpoint": [0, 1, 2, 3, 4, 5, 7, 8, 13], "entir": 8, "entri": [3, 11], "env": 0, "environ": 0, "equal": 7, "error": [10, 11, 12], "error_nam": 11, "etc": 8, "even": 11, "everi": [9, 11], "everyth": 11, "ex": [0, 11, 12], "exampl": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "exclud": 3, "execut": [7, 8, 11], "exist": [1, 3, 5, 6, 9, 12], "expect": [5, 9, 11], "experi": 8, "expir": [0, 1], "expires_in": 1, "export": [8, 10], "export_nod": [2, 8], "export_record": [2, 8], "f1f8": 11, "factori": 10, "fail": [8, 10], "fals": [3, 5, 6, 10, 11], "featur": [1, 6], "fenc": [0, 1], "fetch": 0, "field": [3, 5, 7, 11, 12], "fieldnam": 11, "file": [0, 2, 3, 4, 8, 9, 10, 11, 12, 13], "file_nam": [1, 2, 3, 9, 10, 11], "file_s": [2, 9, 10, 11], "file_st": 3, "fileformat": 8, "filenam": [0, 8, 10, 11, 12], "files": 10, "fill": 12, "filter": [5, 7], "filter_object": 7, "first": [7, 8], "flag": 11, "folder": 11, "follow": [0, 11], "forc": 11, "force_metadata_columns_even_if_empti": 11, "form": 13, "format": [3, 5, 8, 11], "from": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13], "func_to_parse_row": [11, 12], "function": [2, 3, 4, 5, 9, 10, 11, 12], "g": 10, "gen3": [10, 11, 12], "gen3_api_kei": 0, "gen3_oidc_client_creds_secret": 0, "gen3auth": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "gen3fil": [1, 2], "gen3index": [2, 3], "gen3job": [2, 4, 10], "gen3metadata": [2, 5], "gen3object": [2, 6], "gen3queri": [2, 7], "gen3submiss": [2, 8], "gen3wsstorag": [2, 13], "gener": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 13], "get": [0, 1, 2, 3, 4, 5, 8, 10, 11, 12, 13], "get_access_token": [0, 2], "get_access_token_from_wt": [0, 2], "get_alias": [2, 5], "get_all_record": [2, 3], "get_dictionary_al": [2, 8], "get_dictionary_nod": [2, 8], "get_fresh_token": [2, 9, 10], "get_graphql_schema": [2, 8], "get_guid_from_fil": 12, "get_guids_prefix": [2, 3], "get_index_key_path": [2, 5], "get_latest_vers": [2, 3], "get_output": [2, 4], "get_presigned_url": [1, 2], "get_program": [2, 8], "get_project": [2, 8], "get_project_dictionari": [2, 8], "get_project_manifest": [2, 8], "get_record": [2, 3], "get_record_doc": [2, 3], "get_records_on_pag": [2, 3], "get_stat": [2, 3], "get_statu": [2, 4], "get_url": [2, 3], "get_valid_guid": [2, 3], "get_vers": [2, 3, 4, 5], "get_with_param": [2, 3], "giangb": 11, "github": [2, 7], "give": 1, "given": [0, 3, 4, 5, 8, 10, 12, 13], "global": [4, 5], "good": 3, "grant": 0, "graph": 8, "graphql": [7, 8], "graphql_queri": [2, 7], "group": 3, "guid": [1, 2, 3, 5, 6, 9, 11, 12], "guid_exampl": 11, "guid_for_row": 12, "guid_from_fil": 12, "guid_type_for_indexed_file_object": [2, 9, 12], "guid_type_for_non_indexed_file_object": [2, 9, 12], "guppi": 7, "ha": [0, 11], "handl": [3, 10], "hardcod": 0, "has_vers": 3, "hash": [3, 11], "hash_typ": 3, "have": [5, 11], "header": 11, "healthi": [3, 4, 5], "help": 11, "helper": 2, "hit": 11, "host": 10, "hostnam": [2, 9, 10], "how": [8, 11], "howto": 10, "http": [0, 7, 11, 12], "i": [0, 1, 2, 3, 4, 5, 8, 10, 11, 12], "id": [0, 1, 3, 5, 10, 11], "idea": 3, "identifi": [3, 5, 9, 11], "idp": 0, "illustr": 11, "immut": 3, "implement": 0, "implic": 11, "import": 11, "includ": [0, 3], "indent": 10, "index": [0, 2, 5, 9], "index_manifest": 11, "index_object_manifest": [2, 9, 11], "indexd": [1, 3, 6, 10, 11, 12], "indexd_field": [11, 12], "indexd_record_page_s": [2, 9, 11], "indexed_file_object_guid": 12, "indic": [0, 11], "infil": 10, "info": [3, 11], "inform": [2, 3, 10], "ingest": [2, 9], "ingest_manifest": 12, "initi": [0, 10], "input": [4, 10, 11], "input_manifest": 11, "instal": [0, 2, 11], "instanc": [1, 3, 6, 7, 8, 9, 10], "instead": [1, 7, 11], "int": [1, 3, 5, 7, 8, 10, 11, 12], "integ": [1, 3, 8], "intend": 0, "interact": [1, 3, 4, 5, 6, 8, 13], "interest": 10, "interpret": 0, "introspect": 8, "involv": 9, "is_healthi": [2, 3, 4, 5], "is_indexed_file_object": 12, "isn": 1, "issu": 0, "its": [1, 3], "job": 2, "job_id": 4, "job_input": 4, "job_nam": 4, "json": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "just": [5, 11, 12], "jwt": 0, "kei": [0, 3, 5, 13], "know": 11, "known": 10, "kwarg": [3, 4, 5], "l": [2, 13], "larg": 9, "last": 10, "latest": 3, "least": 3, "level": 6, "librari": 11, "like": [3, 5, 9, 11, 12], "limit": [1, 3, 5, 12], "linear": 4, "linux": 10, "list": [0, 1, 3, 4, 5, 7, 8, 10, 11, 13], "list_access_in_drs_manifest": [2, 9, 10], "list_drs_object": [2, 9, 10], "list_files_in_drs_manifest": [2, 9, 10], "list_job": [2, 4], "live": [11, 12], "load": [2, 9, 10], "load_manifest": [2, 9, 10], "local": [0, 13], "locat": [1, 6], "lock": 12, "log": [8, 10, 11, 12], "logic": [5, 12], "loop": 11, "ls_path": [2, 13], "maco": 11, "made": 3, "mai": [0, 9, 11], "main": 10, "make": [9, 11], "manag": [1, 5, 10], "mani": [8, 11], "manifest": [2, 8, 9, 10, 11, 12], "manifest_1": 10, "manifest_fil": [11, 12], "manifest_file_delimit": [11, 12], "manifest_row_pars": [11, 12], "map": [0, 11], "mark": 8, "master": 7, "match": [3, 5, 12], "max": 5, "max_concurrent_request": [2, 9, 11, 12], "max_presigned_url_ttl": 1, "max_tri": 8, "maximum": [11, 12], "md": [5, 7, 10, 12], "md5": [2, 3, 9, 11], "md5_hash": 11, "md5sum": [2, 9, 10], "mean": 8, "mechan": 3, "merg": 5, "metadata": [2, 3, 6, 9, 11], "metadata_list": 5, "metadata_sourc": 12, "metadata_typ": 12, "metdata": 12, "method": [1, 7, 10], "minimum": 10, "minut": 0, "mode": 7, "modul": [2, 10, 11], "more": [2, 5, 7, 9, 10], "most": 9, "mostli": 2, "multipl": [8, 11], "must": [1, 5], "my_common": 10, "my_credenti": 10, "my_field": 7, "my_index": 7, "my_program": 7, "my_project": 7, "name": [3, 4, 8, 10, 11, 12, 13], "namespac": [0, 12], "necessari": [3, 5], "need": [3, 7, 10, 11], "nest": 5, "net": 11, "never": 0, "new": [0, 3], "node": 8, "node_nam": 8, "node_typ": 8, "none": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "note": [0, 3, 11, 12], "noth": [3, 6], "now": [1, 8], "num": 5, "num_process": 11, "num_total_fil": 11, "number": [3, 7, 8, 11, 12], "o": 0, "object": [1, 2, 3, 4, 5, 7, 8, 9, 10, 11, 13], "object_id": [1, 2, 9, 10], "object_list": 10, "object_typ": [2, 9, 10], "objectid": 10, "obtain": [0, 10], "occur": 10, "off": 5, "offset": [5, 7], "oidc": 0, "old": 3, "one": [3, 5, 10, 11], "onli": [3, 5, 7, 8, 10, 11], "open": [8, 10, 11], "open_project": [2, 8], "openid": 0, "opt": 0, "option": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11], "order": [0, 8], "ordered_node_list": 8, "org": 10, "otherwis": 10, "output": [4, 5, 11, 12], "output_dir": 10, "output_filenam": [11, 12], "overrid": [0, 11, 12], "overwrit": 5, "own": 0, "packag": 10, "page": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 13], "pagin": 3, "parallel": 11, "param": [3, 5, 8, 10], "paramet": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "pars": [10, 11, 12, 13], "parser": [11, 12], "particular": 0, "pass": [0, 7, 8, 10], "password": [11, 12], "path": [0, 1, 5, 10, 11, 13], "path_to_manifest": 11, "pattern": [3, 12], "pdcdatastor": 11, "pend": 10, "per": [11, 12], "peregrin": 8, "permiss": 10, "persist": 9, "phs0001": 11, "phs0002": 11, "pick": 1, "pla": 11, "place": 11, "planx": 11, "point": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "popul": [10, 12], "posit": [1, 7], "possibl": 10, "post": [0, 11], "pprint": [2, 9, 10], "prefix": 3, "presign": 1, "pretti": 10, "prev_guid": [2, 9, 11], "previou": [3, 11], "previous": 4, "print": [8, 10], "process": 11, "processed_fil": 11, "profil": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "program": [8, 11], "progress": [8, 10], "project": [8, 11], "project_id": [7, 8], "protocol": 1, "provid": [0, 1, 3, 5, 7, 8, 12], "public": [3, 5], "put": 0, "py": 11, "python": [2, 9, 11], "python3": 11, "python_subprocess_command": 11, "queri": [1, 2, 3, 5, 8, 11, 12], "query_str": 7, "query_txt": [7, 8], "query_url": [2, 3], "quickstart": 2, "rather": 0, "raw": [7, 11], "raw_data_download": [2, 7], "rbac": 3, "read": [3, 5, 11], "readm": 2, "reason": 10, "record": [1, 3, 5, 7, 8, 11, 12], "refresh": [0, 10], "refresh_access_token": [0, 2], "refresh_fil": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "refresh_token": 0, "regist": 8, "regular": 7, "relat": 9, "remov": [1, 6, 11, 13], "replac": 11, "replace_url": 11, "repo": 2, "repres": [3, 5, 10], "represent": [1, 3], "request": [0, 1, 3, 5, 8, 11, 12], "requir": 10, "resolv": 10, "resolve_object": [2, 9, 10], "respect": 7, "respons": [0, 1, 3, 4, 5], "result": [1, 8, 10, 11], "retri": 8, "retriev": [1, 8, 10, 12], "return": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11], "return_full_metadata": 5, "rev": 3, "revers": 8, "revis": 3, "right": 1, "rm": [2, 13], "rm_path": [2, 13], "root": [11, 12], "row": [7, 8, 11, 12], "row_offset": 8, "rtype": 3, "run": [8, 11], "s3": [1, 10, 11], "safe": 11, "same": [5, 11, 13], "sampl": [8, 10], "sandbox": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "save": 10, "save_directori": 10, "schema": 8, "scope": [0, 1], "screen": 8, "script": 2, "search": [0, 2, 3], "second": [1, 4], "secret": 0, "see": [7, 10, 11], "self": 10, "semaphon": 12, "semaphor": 12, "separ": [0, 11], "server": 10, "servic": [1, 3, 4, 5, 6, 8, 11, 12, 13], "service_loc": [3, 4, 5], "session": 11, "set": [0, 1, 5, 10], "setup": 2, "sheepdog": 8, "should": [0, 8, 11], "show": 10, "show_progress": 10, "shown": 11, "sign": 1, "signpost": 3, "similar": 10, "simpl": 3, "simpli": 11, "sinc": 3, "singl": [1, 5, 8], "size": [2, 3, 9, 10, 11], "skip": 8, "sleep": 4, "so": 11, "some": [0, 2], "someth": 11, "sort": 7, "sort_field": 7, "sort_object": 7, "sourc": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "space": [0, 11], "specif": [5, 8, 11, 12], "specifi": [0, 1, 3, 11, 13], "spreadsheet": 8, "src_path": 13, "src_urlstr": 13, "src_w": 13, "src_wskei": 13, "ssl": [3, 4, 5], "start": [3, 4, 7, 8, 10], "start_tim": [2, 9, 10], "static": 10, "statu": [2, 4, 9, 10], "storag": [1, 2, 6], "store": [1, 3, 10], "str": [0, 1, 3, 4, 5, 7, 8, 10, 11, 12], "string": [0, 3, 5, 11, 13], "strip": 11, "sub": 8, "subject": [7, 8], "submiss": 2, "submit": [8, 11], "submit_additional_metadata_column": 11, "submit_fil": [2, 8], "submit_record": [2, 8], "submitter_id": 7, "success": 10, "successfulli": 10, "suffici": 3, "suppli": 3, "support": [0, 1, 5, 8, 11], "sure": 1, "synchron": 11, "syntax": 7, "system": [6, 7, 8, 9], "t": [1, 5, 11], "tab": 11, "task": 9, "temporari": 11, "test": 11, "test1": 11, "test2": 11, "test3": 11, "test4": 11, "test5": 11, "text": [1, 7, 8], "than": [0, 5], "thei": [0, 10], "them": [10, 11], "thi": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "those": 11, "thread": 11, "thread_num": 11, "threadcontrol": [2, 9, 11], "through": [8, 11], "tier": 7, "time": [1, 3, 8, 10, 11], "timestamp": 10, "tmp_folder": [2, 9, 11], "token": [0, 10], "tool": 2, "total": 11, "treat": [1, 5], "tree": 10, "true": [3, 4, 5, 6, 7, 8, 10, 11, 12], "try": 0, "tsv": [8, 11, 12], "tupl": [0, 3, 11, 12], "type": [1, 3, 4, 5, 7, 8, 10, 11, 12], "typic": 10, "uc": 7, "unaccess": 7, "under": [0, 8, 13], "uniqu": [1, 5], "unknown": 10, "unpack": 10, "unpack_packag": 10, "until": [4, 10], "up": [5, 9], "updat": [2, 3, 5, 10, 11], "update_alias": [2, 5], "update_blank": [2, 3], "update_record": [2, 3], "updated_tim": [2, 9, 10], "upload": [1, 2, 3, 8, 13], "upload_fil": [1, 2], "upload_file_to_guid": [1, 2], "upload_url": [2, 13], "url": [1, 2, 3, 9, 10, 11, 12, 13], "urls_metadata": 3, "us": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "usag": 11, "use_agg_md": 5, "user": [0, 10, 12], "user_access": [2, 9, 10], "usual": 12, "utcnow": 1, "util": 9, "uuid": [1, 3, 8], "uuid1": 8, "uuid2": 8, "valid": [3, 7], "valu": [0, 1, 3, 5, 7, 10, 11], "value_from_indexd": 11, "value_from_manifest": 11, "variabl": [0, 7, 8], "variou": 2, "verbos": [7, 8], "verif": 11, "verifi": [2, 9], "verify_manifest": 11, "verify_object_manifest": 11, "version": [3, 4, 5], "vital_statu": 7, "w": 13, "wa": 0, "wai": 10, "wait": 4, "want": [0, 3, 8], "warn": 11, "we": [3, 11], "web": 0, "what": 5, "when": [0, 3, 7, 10, 12], "where": [0, 3, 5, 11, 12], "whether": [3, 4, 5, 8, 11, 12], "which": [8, 10], "while": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "whose": 5, "within": [0, 2, 9], "without": [3, 5], "won": 5, "work": [0, 10], "workaround": 11, "worksheet": 8, "workspac": [0, 2], "wrapper": 10, "write": 11, "ws_urlstr": 13, "wskei": 13, "wss": 13, "wt": [0, 10], "x": 11, "xlsx": 8, "you": [0, 3, 8, 11], "your": 0}, "titles": ["Gen3 Auth Helper", "Gen3 File Class", "Welcome to Gen3 SDK\u2019s documentation!", "Gen3 Index Class", "Gen3 Jobs Class", "Gen3 Metadata Class", "Gen3 Object Class", "Gen3 Query Class", "Gen3 Submission Class", "Gen3 Tools", "DRS Download Tools", "Indexing Tools", "Metadata Tools", "Gen3 Workspace Storage"], "titleterms": {"": 2, "auth": 0, "class": [1, 3, 4, 5, 6, 7, 8], "document": 2, "download": [10, 11], "dr": 10, "file": 1, "gen3": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 13], "helper": 0, "index": [3, 11], "indic": 2, "ingest": 12, "job": 4, "metadata": [5, 12], "object": 6, "queri": 7, "sdk": 2, "storag": 13, "submiss": 8, "tabl": 2, "tool": [9, 10, 11, 12], "verifi": 11, "welcom": 2, "workspac": 13}}) \ No newline at end of file +Search.setIndex({"alltitles": {"DRS Download Tools": [[10, "module-gen3.tools.download.drs_download"]], "Download": [[11, "module-gen3.tools.indexing.download_manifest"]], "Gen3 Auth Helper": [[0, "gen3-auth-helper"]], "Gen3 File Class": [[1, "gen3-file-class"]], "Gen3 Index Class": [[3, "gen3-index-class"]], "Gen3 Jobs Class": [[4, "gen3-jobs-class"]], "Gen3 Metadata Class": [[5, "gen3-metadata-class"]], "Gen3 Object Class": [[6, "gen3-object-class"]], "Gen3 Query Class": [[7, "gen3-query-class"]], "Gen3 Submission Class": [[8, "gen3-submission-class"]], "Gen3 Tools": [[9, "gen3-tools"]], "Gen3 Workspace Storage": [[13, "gen3-workspace-storage"]], "Index": [[11, "module-gen3.tools.indexing.index_manifest"]], "Indexing Tools": [[11, "indexing-tools"]], "Indices and tables": [[2, "indices-and-tables"]], "Ingest": [[12, "module-gen3.tools.metadata.ingest_manifest"]], "Metadata Tools": [[12, "metadata-tools"]], "Verify": [[11, "module-gen3.tools.indexing.verify_manifest"]], "Welcome to Gen3 SDK\u2019s documentation!": [[2, "welcome-to-gen3-sdk-s-documentation"]]}, "docnames": ["auth", "file", "index", "indexing", "jobs", "metadata", "object", "query", "submission", "tools", "tools/drs_pull", "tools/indexing", "tools/metadata", "wss"], "envversion": {"sphinx": 61, "sphinx.domains.c": 3, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 9, "sphinx.domains.index": 1, "sphinx.domains.javascript": 3, "sphinx.domains.math": 2, "sphinx.domains.python": 4, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx.ext.viewcode": 1}, "filenames": ["auth.rst", "file.rst", "index.rst", "indexing.rst", "jobs.rst", "metadata.rst", "object.rst", "query.rst", "submission.rst", "tools.rst", "tools/drs_pull.rst", "tools/indexing.rst", "tools/metadata.rst", "wss.rst"], "indexentries": {"_manager (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable._manager", false]], "access_methods (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.access_methods", false]], "acls (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.ACLS", false]], "async_create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_create", false]], "async_create_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_create_aliases", false]], "async_create_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_create_record", false]], "async_delete_alias() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_delete_alias", false]], "async_delete_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_delete_aliases", false]], "async_download_object_manifest() (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.async_download_object_manifest", false]], "async_get() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_get", false]], "async_get_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_get_aliases", false]], "async_get_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_record", false]], "async_get_records_from_checksum() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_records_from_checksum", false]], "async_get_records_on_page() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_records_on_page", false]], "async_get_with_params() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_with_params", false]], "async_ingest_metadata_manifest() (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.async_ingest_metadata_manifest", false]], "async_query_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_query_urls", false]], "async_query_urls_from_indexd() (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.async_query_urls_from_indexd", false]], "async_run_job_and_wait() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.async_run_job_and_wait", false]], "async_update() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_update", false]], "async_update_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_update_aliases", false]], "async_update_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_update_record", false]], "async_verify_object_manifest() (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.async_verify_object_manifest", false]], "auth_provider (gen3.metadata.gen3metadata attribute)": [[5, "gen3.metadata.Gen3Metadata.auth_provider", false]], "authz (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.AUTHZ", false]], "batch_create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.batch_create", false]], "cache_hosts_wts_tokens() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.cache_hosts_wts_tokens", false]], "children (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.children", false]], "column_to_use_as_guid (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.COLUMN_TO_USE_AS_GUID", false]], "commons_url (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.commons_url", false]], "copy() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.copy", false]], "create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create", false]], "create_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create_aliases", false]], "create_blank() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_blank", false]], "create_index_key_path() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create_index_key_path", false]], "create_job() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.create_job", false]], "create_new_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_new_version", false]], "create_object_list() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.create_object_list", false]], "create_program() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.create_program", false]], "create_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.create_project", false]], "create_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_record", false]], "created_time (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.created_time", false]], "curl() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.curl", false]], "current_dir (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.CURRENT_DIR", false]], "current_dir (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.CURRENT_DIR", false]], "current_dir (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.CURRENT_DIR", false]], "delete() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete", false]], "delete_alias() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_alias", false]], "delete_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_aliases", false]], "delete_all_guids() (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.delete_all_guids", false]], "delete_file() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.delete_file", false]], "delete_file_locations() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.delete_file_locations", false]], "delete_index_key_path() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_index_key_path", false]], "delete_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_node", false]], "delete_nodes() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_nodes", false]], "delete_object() (gen3.object.gen3object method)": [[6, "gen3.object.Gen3Object.delete_object", false]], "delete_program() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_program", false]], "delete_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_project", false]], "delete_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.delete_record", false]], "delete_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_record", false]], "delete_records() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_records", false]], "download() (gen3.tools.download.drs_download.downloadable method)": [[10, "gen3.tools.download.drs_download.Downloadable.download", false]], "download() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.download", false]], "download() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.download", false]], "download_files_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.download_files_in_drs_manifest", false]], "download_single() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.download_single", false]], "download_url() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.download_url", false]], "downloadable (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.Downloadable", false]], "downloadmanager (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.DownloadManager", false]], "downloadstatus (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.DownloadStatus", false]], "end_time (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.end_time", false]], "endpoint (gen3.metadata.gen3metadata attribute)": [[5, "gen3.metadata.Gen3Metadata.endpoint", false]], "export_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.export_node", false]], "export_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.export_record", false]], "file_name (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.file_name", false]], "file_name (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.file_name", false]], "file_size (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.file_size", false]], "file_size (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.file_size", false]], "gen3.tools": [[9, "module-gen3.tools", false]], "gen3.tools.download.drs_download": [[10, "module-gen3.tools.download.drs_download", false]], "gen3.tools.indexing.download_manifest": [[11, "module-gen3.tools.indexing.download_manifest", false]], "gen3.tools.indexing.index_manifest": [[11, "module-gen3.tools.indexing.index_manifest", false]], "gen3.tools.indexing.verify_manifest": [[11, "module-gen3.tools.indexing.verify_manifest", false]], "gen3.tools.metadata.ingest_manifest": [[12, "module-gen3.tools.metadata.ingest_manifest", false]], "gen3auth (class in gen3.auth)": [[0, "gen3.auth.Gen3Auth", false]], "gen3file (class in gen3.file)": [[1, "gen3.file.Gen3File", false]], "gen3index (class in gen3.index)": [[3, "gen3.index.Gen3Index", false]], "gen3jobs (class in gen3.jobs)": [[4, "gen3.jobs.Gen3Jobs", false]], "gen3metadata (class in gen3.metadata)": [[5, "gen3.metadata.Gen3Metadata", false]], "gen3object (class in gen3.object)": [[6, "gen3.object.Gen3Object", false]], "gen3query (class in gen3.query)": [[7, "gen3.query.Gen3Query", false]], "gen3submission (class in gen3.submission)": [[8, "gen3.submission.Gen3Submission", false]], "gen3wsstorage (class in gen3.wss)": [[13, "gen3.wss.Gen3WsStorage", false]], "get() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get", false]], "get() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get", false]], "get_access_token() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.get_access_token", false]], "get_access_token_from_wts() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.get_access_token_from_wts", false]], "get_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_aliases", false]], "get_all_records() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_all_records", false]], "get_dictionary_all() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_dictionary_all", false]], "get_dictionary_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_dictionary_node", false]], "get_fresh_token() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.get_fresh_token", false]], "get_graphql_schema() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_graphql_schema", false]], "get_guids_prefix() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_guids_prefix", false]], "get_index_key_paths() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_index_key_paths", false]], "get_latest_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_latest_version", false]], "get_output() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_output", false]], "get_presigned_url() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.get_presigned_url", false]], "get_programs() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_programs", false]], "get_project_dictionary() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_project_dictionary", false]], "get_project_manifest() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_project_manifest", false]], "get_projects() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_projects", false]], "get_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_record", false]], "get_record_doc() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_record_doc", false]], "get_records() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_records", false]], "get_records_on_page() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_records_on_page", false]], "get_stats() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_stats", false]], "get_status() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_status", false]], "get_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_urls", false]], "get_valid_guids() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_valid_guids", false]], "get_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_version", false]], "get_version() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_version", false]], "get_version() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_version", false]], "get_versions() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_versions", false]], "get_with_params() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_with_params", false]], "graphql_query() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.graphql_query", false]], "guid (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.GUID", false]], "guid_type_for_indexed_file_object (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.GUID_TYPE_FOR_INDEXED_FILE_OBJECT", false]], "guid_type_for_non_indexed_file_object (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.GUID_TYPE_FOR_NON_INDEXED_FILE_OBJECT", false]], "hostname (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.hostname", false]], "index_object_manifest() (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.index_object_manifest", false]], "indexd_record_page_size (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.INDEXD_RECORD_PAGE_SIZE", false]], "is_healthy() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.is_healthy", false]], "is_healthy() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.is_healthy", false]], "is_healthy() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.is_healthy", false]], "list_access_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_access_in_drs_manifest", false]], "list_drs_object() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_drs_object", false]], "list_files_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_files_in_drs_manifest", false]], "list_jobs() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.list_jobs", false]], "load() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.load", false]], "load_manifest() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.load_manifest", false]], "ls() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.ls", false]], "ls_path() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.ls_path", false]], "manifest (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.Manifest", false]], "max_concurrent_requests (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.MAX_CONCURRENT_REQUESTS", false]], "max_concurrent_requests (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.MAX_CONCURRENT_REQUESTS", false]], "max_concurrent_requests (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.MAX_CONCURRENT_REQUESTS", false]], "md5 (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.MD5", false]], "md5sum (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.md5sum", false]], "module": [[9, "module-gen3.tools", false], [10, "module-gen3.tools.download.drs_download", false], [11, "module-gen3.tools.indexing.download_manifest", false], [11, "module-gen3.tools.indexing.index_manifest", false], [11, "module-gen3.tools.indexing.verify_manifest", false], [12, "module-gen3.tools.metadata.ingest_manifest", false]], "object_id (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.object_id", false]], "object_id (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.object_id", false]], "object_type (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.object_type", false]], "open_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.open_project", false]], "pprint() (gen3.tools.download.drs_download.downloadable method)": [[10, "gen3.tools.download.drs_download.Downloadable.pprint", false]], "prev_guid (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.PREV_GUID", false]], "query() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.query", false]], "query() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.query", false]], "query() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.query", false]], "query_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.query_urls", false]], "raw_data_download() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.raw_data_download", false]], "refresh_access_token() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.refresh_access_token", false]], "resolve_objects() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.resolve_objects", false]], "rm() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.rm", false]], "rm_path() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.rm_path", false]], "size (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.SIZE", false]], "start_time (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.start_time", false]], "status (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.status", false]], "submit_file() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.submit_file", false]], "submit_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.submit_record", false]], "threadcontrol (class in gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.ThreadControl", false]], "tmp_folder (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.TMP_FOLDER", false]], "update() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.update", false]], "update_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.update_aliases", false]], "update_blank() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.update_blank", false]], "update_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.update_record", false]], "updated_time (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.updated_time", false]], "upload() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.upload", false]], "upload_file() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.upload_file", false]], "upload_file_to_guid() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.upload_file_to_guid", false]], "upload_url() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.upload_url", false]], "urls (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.URLS", false]], "user_access() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.user_access", false]]}, "objects": {"gen3": [[9, 3, 0, "-", "tools"]], "gen3.auth": [[0, 0, 1, "", "Gen3Auth"]], "gen3.auth.Gen3Auth": [[0, 1, 1, "", "curl"], [0, 1, 1, "", "get_access_token"], [0, 1, 1, "", "get_access_token_from_wts"], [0, 1, 1, "", "refresh_access_token"]], "gen3.file": [[1, 0, 1, "", "Gen3File"]], "gen3.file.Gen3File": [[1, 1, 1, "", "delete_file"], [1, 1, 1, "", "delete_file_locations"], [1, 1, 1, "", "download_single"], [1, 1, 1, "", "get_presigned_url"], [1, 1, 1, "", "upload_file"], [1, 1, 1, "", "upload_file_to_guid"]], "gen3.index": [[3, 0, 1, "", "Gen3Index"]], "gen3.index.Gen3Index": [[3, 1, 1, "", "async_create_record"], [3, 1, 1, "", "async_get_record"], [3, 1, 1, "", "async_get_records_from_checksum"], [3, 1, 1, "", "async_get_records_on_page"], [3, 1, 1, "", "async_get_with_params"], [3, 1, 1, "", "async_query_urls"], [3, 1, 1, "", "async_update_record"], [3, 1, 1, "", "create_blank"], [3, 1, 1, "", "create_new_version"], [3, 1, 1, "", "create_record"], [3, 1, 1, "", "delete_record"], [3, 1, 1, "", "get"], [3, 1, 1, "", "get_all_records"], [3, 1, 1, "", "get_guids_prefix"], [3, 1, 1, "", "get_latest_version"], [3, 1, 1, "", "get_record"], [3, 1, 1, "", "get_record_doc"], [3, 1, 1, "", "get_records"], [3, 1, 1, "", "get_records_on_page"], [3, 1, 1, "", "get_stats"], [3, 1, 1, "", "get_urls"], [3, 1, 1, "", "get_valid_guids"], [3, 1, 1, "", "get_version"], [3, 1, 1, "", "get_versions"], [3, 1, 1, "", "get_with_params"], [3, 1, 1, "", "is_healthy"], [3, 1, 1, "", "query_urls"], [3, 1, 1, "", "update_blank"], [3, 1, 1, "", "update_record"]], "gen3.jobs": [[4, 0, 1, "", "Gen3Jobs"]], "gen3.jobs.Gen3Jobs": [[4, 1, 1, "", "async_run_job_and_wait"], [4, 1, 1, "", "create_job"], [4, 1, 1, "", "get_output"], [4, 1, 1, "", "get_status"], [4, 1, 1, "", "get_version"], [4, 1, 1, "", "is_healthy"], [4, 1, 1, "", "list_jobs"]], "gen3.metadata": [[5, 0, 1, "", "Gen3Metadata"]], "gen3.metadata.Gen3Metadata": [[5, 1, 1, "", "async_create"], [5, 1, 1, "", "async_create_aliases"], [5, 1, 1, "", "async_delete_alias"], [5, 1, 1, "", "async_delete_aliases"], [5, 1, 1, "", "async_get"], [5, 1, 1, "", "async_get_aliases"], [5, 1, 1, "", "async_update"], [5, 1, 1, "", "async_update_aliases"], [5, 2, 1, "", "auth_provider"], [5, 1, 1, "", "batch_create"], [5, 1, 1, "", "create"], [5, 1, 1, "", "create_aliases"], [5, 1, 1, "", "create_index_key_path"], [5, 1, 1, "", "delete"], [5, 1, 1, "", "delete_alias"], [5, 1, 1, "", "delete_aliases"], [5, 1, 1, "", "delete_index_key_path"], [5, 2, 1, "", "endpoint"], [5, 1, 1, "", "get"], [5, 1, 1, "", "get_aliases"], [5, 1, 1, "", "get_index_key_paths"], [5, 1, 1, "", "get_version"], [5, 1, 1, "", "is_healthy"], [5, 1, 1, "", "query"], [5, 1, 1, "", "update"], [5, 1, 1, "", "update_aliases"]], "gen3.object": [[6, 0, 1, "", "Gen3Object"]], "gen3.object.Gen3Object": [[6, 1, 1, "", "delete_object"]], "gen3.query": [[7, 0, 1, "", "Gen3Query"]], "gen3.query.Gen3Query": [[7, 1, 1, "", "graphql_query"], [7, 1, 1, "", "query"], [7, 1, 1, "", "raw_data_download"]], "gen3.submission": [[8, 0, 1, "", "Gen3Submission"]], "gen3.submission.Gen3Submission": [[8, 1, 1, "", "create_program"], [8, 1, 1, "", "create_project"], [8, 1, 1, "", "delete_node"], [8, 1, 1, "", "delete_nodes"], [8, 1, 1, "", "delete_program"], [8, 1, 1, "", "delete_project"], [8, 1, 1, "", "delete_record"], [8, 1, 1, "", "delete_records"], [8, 1, 1, "", "export_node"], [8, 1, 1, "", "export_record"], [8, 1, 1, "", "get_dictionary_all"], [8, 1, 1, "", "get_dictionary_node"], [8, 1, 1, "", "get_graphql_schema"], [8, 1, 1, "", "get_programs"], [8, 1, 1, "", "get_project_dictionary"], [8, 1, 1, "", "get_project_manifest"], [8, 1, 1, "", "get_projects"], [8, 1, 1, "", "open_project"], [8, 1, 1, "", "query"], [8, 1, 1, "", "submit_file"], [8, 1, 1, "", "submit_record"]], "gen3.tools.download": [[10, 3, 0, "-", "drs_download"]], "gen3.tools.download.drs_download": [[10, 0, 1, "", "DownloadManager"], [10, 0, 1, "", "DownloadStatus"], [10, 0, 1, "", "Downloadable"], [10, 0, 1, "", "Manifest"], [10, 4, 1, "", "download_files_in_drs_manifest"], [10, 4, 1, "", "list_access_in_drs_manifest"], [10, 4, 1, "", "list_drs_object"], [10, 4, 1, "", "list_files_in_drs_manifest"]], "gen3.tools.download.drs_download.DownloadManager": [[10, 1, 1, "", "cache_hosts_wts_tokens"], [10, 1, 1, "", "download"], [10, 1, 1, "", "get_fresh_token"], [10, 1, 1, "", "resolve_objects"], [10, 1, 1, "", "user_access"]], "gen3.tools.download.drs_download.DownloadStatus": [[10, 2, 1, "", "end_time"], [10, 2, 1, "", "start_time"], [10, 2, 1, "", "status"]], "gen3.tools.download.drs_download.Downloadable": [[10, 2, 1, "", "_manager"], [10, 2, 1, "", "access_methods"], [10, 2, 1, "", "children"], [10, 2, 1, "", "created_time"], [10, 1, 1, "", "download"], [10, 2, 1, "", "file_name"], [10, 2, 1, "", "file_size"], [10, 2, 1, "", "hostname"], [10, 2, 1, "", "object_id"], [10, 2, 1, "", "object_type"], [10, 1, 1, "", "pprint"], [10, 2, 1, "", "updated_time"]], "gen3.tools.download.drs_download.Manifest": [[10, 2, 1, "", "commons_url"], [10, 1, 1, "", "create_object_list"], [10, 2, 1, "", "file_name"], [10, 2, 1, "", "file_size"], [10, 1, 1, "", "load"], [10, 1, 1, "", "load_manifest"], [10, 2, 1, "", "md5sum"], [10, 2, 1, "", "object_id"]], "gen3.tools.indexing": [[11, 3, 0, "-", "download_manifest"], [11, 3, 0, "-", "index_manifest"], [11, 3, 0, "-", "verify_manifest"]], "gen3.tools.indexing.download_manifest": [[11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "INDEXD_RECORD_PAGE_SIZE"], [11, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [11, 2, 1, "", "TMP_FOLDER"], [11, 4, 1, "", "async_download_object_manifest"]], "gen3.tools.indexing.index_manifest": [[11, 2, 1, "", "ACLS"], [11, 2, 1, "", "AUTHZ"], [11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "GUID"], [11, 2, 1, "", "MD5"], [11, 2, 1, "", "PREV_GUID"], [11, 2, 1, "", "SIZE"], [11, 0, 1, "", "ThreadControl"], [11, 2, 1, "", "URLS"], [11, 4, 1, "", "delete_all_guids"], [11, 4, 1, "", "index_object_manifest"]], "gen3.tools.indexing.verify_manifest": [[11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [11, 4, 1, "", "async_verify_object_manifest"]], "gen3.tools.metadata": [[12, 3, 0, "-", "ingest_manifest"]], "gen3.tools.metadata.ingest_manifest": [[12, 2, 1, "", "COLUMN_TO_USE_AS_GUID"], [12, 2, 1, "", "GUID_TYPE_FOR_INDEXED_FILE_OBJECT"], [12, 2, 1, "", "GUID_TYPE_FOR_NON_INDEXED_FILE_OBJECT"], [12, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [12, 4, 1, "", "async_ingest_metadata_manifest"], [12, 4, 1, "", "async_query_urls_from_indexd"]], "gen3.wss": [[13, 0, 1, "", "Gen3WsStorage"]], "gen3.wss.Gen3WsStorage": [[13, 1, 1, "", "copy"], [13, 1, 1, "", "download"], [13, 1, 1, "", "download_url"], [13, 1, 1, "", "ls"], [13, 1, 1, "", "ls_path"], [13, 1, 1, "", "rm"], [13, 1, 1, "", "rm_path"], [13, 1, 1, "", "upload"], [13, 1, 1, "", "upload_url"]]}, "objnames": {"0": ["py", "class", "Python class"], "1": ["py", "method", "Python method"], "2": ["py", "attribute", "Python attribute"], "3": ["py", "module", "Python module"], "4": ["py", "function", "Python function"]}, "objtypes": {"0": "py:class", "1": "py:method", "2": "py:attribute", "3": "py:module", "4": "py:function"}, "terms": {"": [1, 4, 8, 10, 11], "0": [5, 7, 8, 11], "0046513": [], "052073": [], "0576868": [], "064572": [], "07464": [], "0a80fada010c": 11, "0a80fada096c": 11, "0a80fada097c": 11, "0a80fada098c": 11, "0a80fada099c": 11, "1": [4, 5, 8, 10, 11], "10": [5, 7, 11], "100": [8, 11], "11e9": 11, "1676264": [], "1713542306": [], "1713542765": [], "1713543033": [], "1713543225": [], "1713543506": [], "1713543956": [], "1713544131": [], "1713544132": [], "1713544397": [], "1713544598": [], "1713545857": [], "1713545858": [], "1713549370": [], "1713549689": [], "1713550571": [], "1713557245": [], "1713559376": [], "1713560080": [], "1713560402": 11, "1713560403": 12, "1731803": 12, "1771936": [], "1913438": [], "2": [5, 11], "24": [11, 12], "255e396f": 11, "2877355": [], "2930224": [], "2995": [], "3": [5, 11], "30": 8, "3102272": [], "33": 5, "333": 5, "343434344": 11, "363455714": 11, "4": [5, 11], "4017086": [], "4052968": [], "4090197": [], "4463434": [], "450c": 11, "4632835": [], "4649727": [], "4714": 8, "473d83400bc1bc9dc635e334fadd433c": 11, "473d83400bc1bc9dc635e334faddd33c": 11, "473d83400bc1bc9dc635e334fadde33c": 11, "473d83400bc1bc9dc635e334faddf33c": 11, "4752307": [], "4756553": [], "5": [0, 5], "50": 7, "543434443": 11, "5669184": [], "5899982": [], "6692646": [], "6739478": [], "674552": [], "6f90": 8, "700799": [], "7232893": [], "756255": [], "760149": [], "7d3d8d2083b4": 11, "8044841": [], "8375325": [], "8420": 8, "8874054": 11, "8882551": [], "93d9af72": 11, "9a07": 11, "A": [1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "AND": 5, "Be": 1, "But": 5, "By": 11, "For": [1, 5, 6, 7, 8, 9, 11], "IF": 11, "If": [0, 1, 7, 11, 12], "In": 10, "It": 10, "NOT": 12, "OR": 5, "One": 7, "Such": 9, "THE": 11, "That": 3, "The": [0, 1, 2, 3, 5, 8, 10, 11], "There": 11, "These": 9, "To": 11, "Will": [4, 7, 10], "_get_acl_from_row": 11, "_get_authz_from_row": 11, "_get_file_name_from_row": 11, "_get_file_size_from_row": 11, "_get_guid_for_row": 12, "_get_guid_from_row": 11, "_get_md5_from_row": 11, "_get_urls_from_row": 11, "_guid_typ": 12, "_manag": [2, 9, 10], "_query_for_associated_indexd_record_guid": 12, "_ssl": [3, 4, 5], "a5c6": 11, "ab167e49d25b488939b1ede42752458b": 3, "about": [2, 3], "abov": 11, "access": [0, 1, 3, 7, 10], "access_method": [2, 9, 10], "access_token": 0, "accesstoken": 0, "acl": [2, 3, 9, 11], "across": 11, "act": 0, "action": [9, 11], "actual": 11, "ad": 3, "add": [3, 5], "addit": [3, 5, 10, 11], "admin": [5, 11], "admin_endpoint_suffix": 5, "after": 10, "against": [3, 7, 8, 11, 12], "algorithm": 3, "alia": [3, 5], "alias": 5, "aliv": 7, "all": [1, 3, 4, 5, 6, 7, 8, 10, 11, 12], "allow": [0, 6, 8, 10, 11, 12], "allowed_data_upload_bucket": 1, "along": 2, "alreadi": 9, "also": 1, "altern": [5, 11], "alwai": 5, "ammount": 12, "amount": [1, 9], "an": [0, 3, 6, 8, 10, 11], "ani": [0, 5, 10, 11], "anoth": 5, "api": [0, 5, 8, 11], "api_kei": 11, "appli": 7, "appropri": 13, "ar": [5, 7, 8, 9, 10, 11], "arbitrari": 0, "argument": [0, 13], "arrai": 8, "asc": 7, "assign": 9, "assist": 10, "associ": [3, 5], "assum": 11, "async": [3, 4, 5, 9, 11, 12], "async_cr": [2, 5], "async_create_alias": [2, 5], "async_create_record": [2, 3], "async_delete_alia": [2, 5], "async_delete_alias": [2, 5], "async_download_object_manifest": [2, 9, 11], "async_get": [2, 5], "async_get_alias": [2, 5], "async_get_record": [2, 3], "async_get_records_from_checksum": [2, 3], "async_get_records_on_pag": [2, 3], "async_get_with_param": [2, 3], "async_ingest_metadata_manifest": [2, 9, 12], "async_query_url": [2, 3], "async_query_urls_from_indexd": [2, 9, 12], "async_run_job_and_wait": [2, 4], "async_upd": [2, 5], "async_update_alias": [2, 5], "async_update_record": [2, 3], "async_verify_object_manifest": [2, 9, 11], "asynchron": [3, 4, 5], "asyncio": [11, 12], "asyncron": 5, "attach": [3, 5], "attempt": 11, "attribut": [10, 11], "auth": [1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "auth_provid": [1, 2, 3, 4, 5, 6, 7, 8, 13], "authbas": 0, "authent": 0, "author": 1, "authz": [0, 1, 2, 3, 9, 10, 11], "auto": [0, 2], "automat": 0, "avail": [1, 2, 10, 11], "az": 1, "b": [5, 11], "b0f1": 11, "bar": 10, "base": [0, 1, 3, 4, 5, 6, 7, 8, 9, 11, 13], "baseid": 3, "basic": [3, 11, 12], "batch_creat": [2, 5], "batch_siz": 8, "behalf": 0, "behavior": 11, "being": 3, "belong": 8, "below": 11, "blank": 3, "blob": [5, 7], "bodi": 3, "bool": [4, 5, 8, 10, 11, 12], "boolean": 3, "bownload": 10, "broad": 9, "broken": 9, "bucket": [1, 6], "bundl": 10, "byte": 10, "c": [5, 11], "cach": 10, "cache_hosts_wts_token": [2, 9, 10], "call": [10, 13], "can": [0, 3, 4, 8, 11, 12], "capabl": 9, "case": [0, 10], "categori": 9, "ccle": 8, "ccle_one_record": 8, "ccle_sample_nod": 8, "cdi": 7, "chang": [3, 11], "checksum": [3, 10], "checksum_typ": 3, "child": 10, "children": [2, 9, 10], "chunk_siz": 8, "class": [0, 2, 10, 11, 13], "cli": 10, "client": [0, 3], "client_credenti": 0, "client_id": 0, "client_scop": 0, "client_secret": 0, "code": [2, 8], "column": [11, 12], "column_to_use_as_guid": [2, 9, 12], "columna": 11, "columnb": 11, "columnc": 11, "com": 7, "comma": 11, "command": [10, 11], "common": [0, 1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13], "commons_url": [2, 9, 10, 11, 12], "complet": [4, 11], "complex": 7, "concat": 11, "concurr": [11, 12], "configur": 1, "connect": 12, "consist": 3, "constructor": 0, "contain": [0, 2, 5, 8, 9, 10, 11, 12], "content": [3, 13], "content_created_d": 3, "content_updated_d": 3, "continu": 10, "control": 3, "conveni": 10, "copi": [2, 13], "coroutin": 11, "correspond": 3, "count": 3, "crdc": 0, "creat": [2, 3, 4, 5, 6, 8, 10, 11], "create_alias": [2, 5], "create_blank": [2, 3], "create_index_key_path": [2, 5], "create_job": [2, 4], "create_new_vers": [2, 3], "create_object_list": [2, 9, 10], "create_program": [2, 8], "create_project": [2, 8], "create_record": [2, 3], "created_tim": [2, 9, 10], "creation": [3, 11], "cred": 3, "credenti": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "csv": [8, 11, 12], "curl": [0, 2], "current": [6, 8, 10], "current_dir": [2, 9, 11], "custom": 11, "d": 5, "d70b41b9": 8, "data": [0, 1, 3, 5, 7, 8, 10, 11], "data_spreadsheet": 8, "data_typ": 7, "data_upload_bucket": 1, "dataa": 11, "datab": 11, "databas": 5, "datacommon": 0, "datafil": 10, "datamanag": 10, "date": 3, "datetim": [1, 3, 10], "dbgap": 12, "dcf": 8, "def": 11, "default": [0, 1, 3, 7, 8, 11, 12], "defin": [5, 8, 10], "delai": 4, "delet": [0, 1, 2, 3, 5, 6, 8, 10, 11], "delete_alia": [2, 5], "delete_alias": [2, 5], "delete_all_guid": [2, 9, 11], "delete_fil": [1, 2], "delete_file_loc": [1, 2, 6], "delete_index_key_path": [2, 5], "delete_nod": [2, 8], "delete_object": [2, 6], "delete_program": [2, 8], "delete_project": [2, 8], "delete_record": [2, 3, 8], "delete_unpacked_packag": 10, "delimet": [11, 12], "delimit": 11, "demograph": 8, "deprec": 1, "descript": [3, 5], "desir": 11, "dest_path": 13, "dest_urlstr": 13, "dest_w": 13, "dest_wskei": 13, "detail": [2, 7, 10], "determin": [10, 11, 12], "dev": 11, "dict": [3, 4, 5, 10, 11, 12], "dictionari": [3, 4, 5, 7, 8], "did": 3, "differ": 5, "direct": 0, "directori": [10, 11], "disabl": 10, "discoveri": 10, "disk": 13, "dispatch": 4, "dist_resolut": 3, "distribut": 3, "doc": [7, 10], "docstr": 2, "document": [1, 3], "doe": [0, 12], "domain": [11, 12], "done": 4, "download": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 13], "download_files_in_drs_manifest": [2, 9, 10], "download_list": 10, "download_manifest": 11, "download_singl": [1, 2], "download_url": [2, 13], "downloadmanag": [2, 9, 10], "downloadstatu": [2, 9, 10], "dr": [2, 9], "drs_download": 10, "drs_hostnam": 10, "drsdownload": 10, "drsobjecttyp": 10, "e": [5, 10], "e043ab8b77b9": 8, "each": [3, 8, 10, 11], "effici": 9, "eg": 3, "either": 8, "elasticsearch": 7, "els": [0, 12], "elsewher": 12, "empti": [8, 11], "enabl": 11, "end": [5, 10], "end_tim": [2, 9, 10], "endpoint": [0, 1, 2, 3, 4, 5, 7, 8, 13], "entir": 8, "entri": [3, 11], "env": 0, "environ": 0, "equal": 7, "error": [10, 11, 12], "error_nam": 11, "etc": 8, "even": 11, "everi": [9, 11], "everyth": 11, "ex": [0, 11, 12], "exampl": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "exclud": 3, "execut": [7, 8, 11], "exist": [1, 3, 5, 6, 9, 12], "expect": [5, 9, 11], "experi": 8, "expir": [0, 1], "expires_in": 1, "export": [8, 10], "export_nod": [2, 8], "export_record": [2, 8], "f1f8": 11, "factori": 10, "fail": [8, 10], "fals": [3, 5, 6, 10, 11], "featur": [1, 6], "fenc": [0, 1], "fetch": 0, "field": [3, 5, 7, 11, 12], "fieldnam": 11, "file": [0, 2, 3, 4, 8, 9, 10, 11, 12, 13], "file_nam": [1, 2, 3, 9, 10, 11], "file_s": [2, 9, 10, 11], "file_st": 3, "fileformat": 8, "filenam": [0, 8, 10, 11, 12], "files": 10, "fill": 12, "filter": [5, 7], "filter_object": 7, "first": [7, 8], "flag": 11, "folder": 11, "follow": [0, 11], "forc": 11, "force_metadata_columns_even_if_empti": 11, "form": 13, "format": [3, 5, 8, 11], "from": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13], "func_to_parse_row": [11, 12], "function": [2, 3, 4, 5, 9, 10, 11, 12], "g": 10, "gen3": [10, 11, 12], "gen3_api_kei": 0, "gen3_oidc_client_creds_secret": 0, "gen3auth": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "gen3fil": [1, 2], "gen3index": [2, 3], "gen3job": [2, 4, 10], "gen3metadata": [2, 5], "gen3object": [2, 6], "gen3queri": [2, 7], "gen3submiss": [2, 8], "gen3wsstorag": [2, 13], "gener": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 13], "get": [0, 1, 2, 3, 4, 5, 8, 10, 11, 12, 13], "get_access_token": [0, 2], "get_access_token_from_wt": [0, 2], "get_alias": [2, 5], "get_all_record": [2, 3], "get_dictionary_al": [2, 8], "get_dictionary_nod": [2, 8], "get_fresh_token": [2, 9, 10], "get_graphql_schema": [2, 8], "get_guid_from_fil": 12, "get_guids_prefix": [2, 3], "get_index_key_path": [2, 5], "get_latest_vers": [2, 3], "get_output": [2, 4], "get_presigned_url": [1, 2], "get_program": [2, 8], "get_project": [2, 8], "get_project_dictionari": [2, 8], "get_project_manifest": [2, 8], "get_record": [2, 3], "get_record_doc": [2, 3], "get_records_on_pag": [2, 3], "get_stat": [2, 3], "get_statu": [2, 4], "get_url": [2, 3], "get_valid_guid": [2, 3], "get_vers": [2, 3, 4, 5], "get_with_param": [2, 3], "giangb": 11, "github": [2, 7], "give": 1, "given": [0, 3, 4, 5, 8, 10, 12, 13], "global": [4, 5], "good": 3, "grant": 0, "graph": 8, "graphql": [7, 8], "graphql_queri": [2, 7], "group": 3, "guid": [1, 2, 3, 5, 6, 9, 11, 12], "guid_exampl": 11, "guid_for_row": 12, "guid_from_fil": 12, "guid_type_for_indexed_file_object": [2, 9, 12], "guid_type_for_non_indexed_file_object": [2, 9, 12], "guppi": 7, "ha": [0, 11], "handl": [3, 10], "hardcod": 0, "has_vers": 3, "hash": [3, 11], "hash_typ": 3, "have": [5, 11], "header": 11, "healthi": [3, 4, 5], "help": 11, "helper": 2, "hit": 11, "host": 10, "hostnam": [2, 9, 10], "how": [8, 11], "howto": 10, "http": [0, 7, 11, 12], "i": [0, 1, 2, 3, 4, 5, 8, 10, 11, 12], "id": [0, 1, 3, 5, 10, 11], "idea": 3, "identifi": [3, 5, 9, 11], "idp": 0, "illustr": 11, "immut": 3, "implement": 0, "implic": 11, "import": 11, "includ": [0, 3], "indent": 10, "index": [0, 2, 5, 9], "index_manifest": 11, "index_object_manifest": [2, 9, 11], "indexd": [1, 3, 6, 10, 11, 12], "indexd_field": [11, 12], "indexd_record_page_s": [2, 9, 11], "indexed_file_object_guid": 12, "indic": [0, 11], "infil": 10, "info": [3, 11], "inform": [2, 3, 10], "ingest": [2, 9], "ingest_manifest": 12, "initi": [0, 10], "input": [4, 10, 11], "input_manifest": 11, "instal": [0, 2, 11], "instanc": [1, 3, 6, 7, 8, 9, 10], "instead": [1, 7, 11], "int": [1, 3, 5, 7, 8, 10, 11, 12], "integ": [1, 3, 8], "intend": 0, "interact": [1, 3, 4, 5, 6, 8, 13], "interest": 10, "interpret": 0, "introspect": 8, "involv": 9, "is_healthi": [2, 3, 4, 5], "is_indexed_file_object": 12, "isn": 1, "issu": 0, "its": [1, 3], "job": 2, "job_id": 4, "job_input": 4, "job_nam": 4, "json": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "just": [5, 11, 12], "jwt": 0, "kei": [0, 3, 5, 13], "know": 11, "known": 10, "kwarg": [3, 4, 5], "l": [2, 13], "larg": 9, "last": 10, "latest": 3, "least": 3, "level": 6, "librari": 11, "like": [3, 5, 9, 11, 12], "limit": [1, 3, 5, 12], "linear": 4, "linux": 10, "list": [0, 1, 3, 4, 5, 7, 8, 10, 11, 13], "list_access_in_drs_manifest": [2, 9, 10], "list_drs_object": [2, 9, 10], "list_files_in_drs_manifest": [2, 9, 10], "list_job": [2, 4], "live": [11, 12], "load": [2, 9, 10], "load_manifest": [2, 9, 10], "local": [0, 13], "locat": [1, 6], "lock": 12, "log": [8, 10, 11, 12], "logic": [5, 12], "loop": 11, "ls_path": [2, 13], "maco": 11, "made": 3, "mai": [0, 9, 11], "main": 10, "make": [9, 11], "manag": [1, 5, 10], "mani": [8, 11], "manifest": [2, 8, 9, 10, 11, 12], "manifest_1": 10, "manifest_fil": [11, 12], "manifest_file_delimit": [11, 12], "manifest_row_pars": [11, 12], "map": [0, 11], "mark": 8, "master": 7, "match": [3, 5, 12], "max": 5, "max_concurrent_request": [2, 9, 11, 12], "max_presigned_url_ttl": 1, "max_tri": 8, "maximum": [11, 12], "md": [5, 7, 10, 12], "md5": [2, 3, 9, 11], "md5_hash": 11, "md5sum": [2, 9, 10], "mean": 8, "mechan": 3, "merg": 5, "metadata": [2, 3, 6, 9, 11], "metadata_list": 5, "metadata_sourc": 12, "metadata_typ": 12, "metdata": 12, "method": [1, 7, 10], "minimum": 10, "minut": 0, "mode": 7, "modul": [2, 10, 11], "more": [2, 5, 7, 9, 10], "most": 9, "mostli": 2, "multipl": [8, 11], "must": [1, 5], "my_common": 10, "my_credenti": 10, "my_field": 7, "my_index": 7, "my_program": 7, "my_project": 7, "name": [3, 4, 8, 10, 11, 12, 13], "namespac": [0, 12], "necessari": [3, 5], "need": [3, 7, 10, 11], "nest": 5, "net": 11, "never": 0, "new": [0, 3], "node": 8, "node_nam": 8, "node_typ": 8, "none": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "note": [0, 3, 11, 12], "noth": [3, 6], "now": [1, 8], "num": 5, "num_process": 11, "num_total_fil": 11, "number": [3, 7, 8, 11, 12], "o": 0, "object": [1, 2, 3, 4, 5, 7, 8, 9, 10, 11, 13], "object_id": [1, 2, 9, 10], "object_list": 10, "object_typ": [2, 9, 10], "objectid": 10, "obtain": [0, 10], "occur": 10, "off": 5, "offset": [5, 7], "oidc": 0, "old": 3, "one": [3, 5, 10, 11], "onli": [3, 5, 7, 8, 10, 11], "open": [8, 10, 11], "open_project": [2, 8], "openid": 0, "opt": 0, "option": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11], "order": [0, 8], "ordered_node_list": 8, "org": 10, "otherwis": 10, "output": [4, 5, 11, 12], "output_dir": 10, "output_filenam": [11, 12], "overrid": [0, 11, 12], "overwrit": 5, "own": 0, "packag": 10, "page": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 13], "pagin": 3, "parallel": 11, "param": [3, 5, 8, 10], "paramet": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "pars": [10, 11, 12, 13], "parser": [11, 12], "particular": 0, "pass": [0, 7, 8, 10], "password": [11, 12], "path": [0, 1, 5, 10, 11, 13], "path_to_manifest": 11, "pattern": [3, 12], "pdcdatastor": 11, "pend": 10, "per": [11, 12], "peregrin": 8, "permiss": 10, "persist": 9, "phs0001": 11, "phs0002": 11, "pick": 1, "pla": 11, "place": 11, "planx": 11, "point": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "popul": [10, 12], "posit": [1, 7], "possibl": 10, "post": [0, 11], "pprint": [2, 9, 10], "prefix": 3, "presign": 1, "pretti": 10, "prev_guid": [2, 9, 11], "previou": [3, 11], "previous": 4, "print": [8, 10], "process": 11, "processed_fil": 11, "profil": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "program": [8, 11], "progress": [8, 10], "project": [8, 11], "project_id": [7, 8], "protocol": 1, "provid": [0, 1, 3, 5, 7, 8, 12], "public": [3, 5], "put": 0, "py": 11, "python": [2, 9, 11], "python3": 11, "python_subprocess_command": 11, "queri": [1, 2, 3, 5, 8, 11, 12], "query_str": 7, "query_txt": [7, 8], "query_url": [2, 3], "quickstart": 2, "rather": 0, "raw": [7, 11], "raw_data_download": [2, 7], "rbac": 3, "read": [3, 5, 11], "readm": 2, "reason": 10, "record": [1, 3, 5, 7, 8, 11, 12], "refresh": [0, 10], "refresh_access_token": [0, 2], "refresh_fil": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "refresh_token": 0, "regist": 8, "regular": 7, "relat": 9, "remov": [1, 6, 11, 13], "replac": 11, "replace_url": 11, "repo": 2, "repres": [3, 5, 10], "represent": [1, 3], "request": [0, 1, 3, 5, 8, 11, 12], "requir": 10, "resolv": 10, "resolve_object": [2, 9, 10], "respect": 7, "respons": [0, 1, 3, 4, 5], "result": [1, 8, 10, 11], "retri": 8, "retriev": [1, 8, 10, 12], "return": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11], "return_full_metadata": 5, "rev": 3, "revers": 8, "revis": 3, "right": 1, "rm": [2, 13], "rm_path": [2, 13], "root": [11, 12], "row": [7, 8, 11, 12], "row_offset": 8, "rtype": 3, "run": [8, 11], "s3": [1, 10, 11], "safe": 11, "same": [5, 11, 13], "sampl": [8, 10], "sandbox": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "save": 10, "save_directori": 10, "schema": 8, "scope": [0, 1], "screen": 8, "script": 2, "search": [0, 2, 3], "second": [1, 4], "secret": 0, "see": [7, 10, 11], "self": 10, "semaphon": 12, "semaphor": 12, "separ": [0, 11], "server": 10, "servic": [1, 3, 4, 5, 6, 8, 11, 12, 13], "service_loc": [3, 4, 5], "session": 11, "set": [0, 1, 5, 10], "setup": 2, "sheepdog": 8, "should": [0, 8, 11], "show": 10, "show_progress": 10, "shown": 11, "sign": 1, "signpost": 3, "similar": 10, "simpl": 3, "simpli": 11, "sinc": 3, "singl": [1, 5, 8], "size": [2, 3, 9, 10, 11], "skip": 8, "sleep": 4, "so": 11, "some": [0, 2], "someth": 11, "sort": 7, "sort_field": 7, "sort_object": 7, "sourc": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "space": [0, 11], "specif": [5, 8, 11, 12], "specifi": [0, 1, 3, 11, 13], "spreadsheet": 8, "src_path": 13, "src_urlstr": 13, "src_w": 13, "src_wskei": 13, "ssl": [3, 4, 5], "start": [3, 4, 7, 8, 10], "start_tim": [2, 9, 10], "static": 10, "statu": [2, 4, 9, 10], "storag": [1, 2, 6], "store": [1, 3, 10], "str": [0, 1, 3, 4, 5, 7, 8, 10, 11, 12], "string": [0, 3, 5, 11, 13], "strip": 11, "sub": 8, "subject": [7, 8], "submiss": 2, "submit": [8, 11], "submit_additional_metadata_column": 11, "submit_fil": [2, 8], "submit_record": [2, 8], "submitter_id": 7, "success": 10, "successfulli": 10, "suffici": 3, "suppli": 3, "support": [0, 1, 5, 8, 11], "sure": 1, "synchron": 11, "syntax": 7, "system": [6, 7, 8, 9], "t": [1, 5, 11], "tab": 11, "task": 9, "temporari": 11, "test": 11, "test1": 11, "test2": 11, "test3": 11, "test4": 11, "test5": 11, "text": [1, 7, 8], "than": [0, 5], "thei": [0, 10], "them": [10, 11], "thi": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "those": 11, "thread": 11, "thread_num": 11, "threadcontrol": [2, 9, 11], "through": [8, 11], "tier": 7, "time": [1, 3, 8, 10, 11], "timestamp": 10, "tmp_folder": [2, 9, 11], "token": [0, 10], "tool": 2, "total": 11, "treat": [1, 5], "tree": 10, "true": [3, 4, 5, 6, 7, 8, 10, 11, 12], "try": 0, "tsv": [8, 11, 12], "tupl": [0, 3, 11, 12], "type": [1, 3, 4, 5, 7, 8, 10, 11, 12], "typic": 10, "uc": 7, "unaccess": 7, "under": [0, 8, 13], "uniqu": [1, 5], "unknown": 10, "unpack": 10, "unpack_packag": 10, "until": [4, 10], "up": [5, 9], "updat": [2, 3, 5, 10, 11], "update_alias": [2, 5], "update_blank": [2, 3], "update_record": [2, 3], "updated_tim": [2, 9, 10], "upload": [1, 2, 3, 8, 13], "upload_fil": [1, 2], "upload_file_to_guid": [1, 2], "upload_url": [2, 13], "url": [1, 2, 3, 9, 10, 11, 12, 13], "urls_metadata": 3, "us": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "usag": 11, "use_agg_md": 5, "user": [0, 10, 12], "user_access": [2, 9, 10], "usual": 12, "utcnow": 1, "util": 9, "uuid": [1, 3, 8], "uuid1": 8, "uuid2": 8, "valid": [3, 7], "valu": [0, 1, 3, 5, 7, 10, 11], "value_from_indexd": 11, "value_from_manifest": 11, "variabl": [0, 7, 8], "variou": 2, "verbos": [7, 8], "verif": 11, "verifi": [2, 9], "verify_manifest": 11, "verify_object_manifest": 11, "version": [3, 4, 5], "vital_statu": 7, "w": 13, "wa": 0, "wai": 10, "wait": 4, "want": [0, 3, 8], "warn": 11, "we": [3, 11], "web": 0, "what": 5, "when": [0, 3, 7, 10, 12], "where": [0, 3, 5, 11, 12], "whether": [3, 4, 5, 8, 11, 12], "which": [8, 10], "while": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "whose": 5, "within": [0, 2, 9], "without": [3, 5], "won": 5, "work": [0, 10], "workaround": 11, "worksheet": 8, "workspac": [0, 2], "wrapper": 10, "write": 11, "ws_urlstr": 13, "wskei": 13, "wss": 13, "wt": [0, 10], "x": 11, "xlsx": 8, "you": [0, 3, 8, 11], "your": 0}, "titles": ["Gen3 Auth Helper", "Gen3 File Class", "Welcome to Gen3 SDK\u2019s documentation!", "Gen3 Index Class", "Gen3 Jobs Class", "Gen3 Metadata Class", "Gen3 Object Class", "Gen3 Query Class", "Gen3 Submission Class", "Gen3 Tools", "DRS Download Tools", "Indexing Tools", "Metadata Tools", "Gen3 Workspace Storage"], "titleterms": {"": 2, "auth": 0, "class": [1, 3, 4, 5, 6, 7, 8], "document": 2, "download": [10, 11], "dr": 10, "file": 1, "gen3": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 13], "helper": 0, "index": [3, 11], "indic": 2, "ingest": 12, "job": 4, "metadata": [5, 12], "object": 6, "queri": 7, "sdk": 2, "storag": 13, "submiss": 8, "tabl": 2, "tool": [9, 10, 11, 12], "verifi": 11, "welcom": 2, "workspac": 13}}) \ No newline at end of file diff --git a/docs/_build/html/tools/indexing.html b/docs/_build/html/tools/indexing.html index 7cf25bdf4..8ffff386a 100644 --- a/docs/_build/html/tools/indexing.html +++ b/docs/_build/html/tools/indexing.html @@ -381,7 +381,7 @@

Indexing Tools
-async gen3.tools.indexing.verify_manifest.async_verify_object_manifest(commons_url, manifest_file, max_concurrent_requests=24, manifest_row_parsers={'acl': <function _get_acl_from_row>, 'authz': <function _get_authz_from_row>, 'file_name': <function _get_file_name_from_row>, 'file_size': <function _get_file_size_from_row>, 'guid': <function _get_guid_from_row>, 'md5': <function _get_md5_from_row>, 'urls': <function _get_urls_from_row>}, manifest_file_delimiter=None, output_filename='verify-manifest-errors-1713560080.4090197.log')[source]
+async gen3.tools.indexing.verify_manifest.async_verify_object_manifest(commons_url, manifest_file, max_concurrent_requests=24, manifest_row_parsers={'acl': <function _get_acl_from_row>, 'authz': <function _get_authz_from_row>, 'file_name': <function _get_file_name_from_row>, 'file_size': <function _get_file_size_from_row>, 'guid': <function _get_guid_from_row>, 'md5': <function _get_md5_from_row>, 'urls': <function _get_urls_from_row>}, manifest_file_delimiter=None, output_filename='verify-manifest-errors-1713560402.8874054.log')[source]

Verify all file object records into a manifest csv

Parameters:
diff --git a/docs/_build/html/tools/metadata.html b/docs/_build/html/tools/metadata.html index 61ea4d567..eaa0fa6b2 100644 --- a/docs/_build/html/tools/metadata.html +++ b/docs/_build/html/tools/metadata.html @@ -102,7 +102,7 @@

Metadata Tools
-async gen3.tools.metadata.ingest_manifest.async_ingest_metadata_manifest(commons_url, manifest_file, metadata_source, auth=None, max_concurrent_requests=24, manifest_row_parsers={'guid_for_row': <function _get_guid_for_row>, 'indexed_file_object_guid': <function _query_for_associated_indexd_record_guid>}, manifest_file_delimiter=None, output_filename='ingest-metadata-manifest-errors-1713560080.700799.log', get_guid_from_file=True, metadata_type=None)[source]
+async gen3.tools.metadata.ingest_manifest.async_ingest_metadata_manifest(commons_url, manifest_file, metadata_source, auth=None, max_concurrent_requests=24, manifest_row_parsers={'guid_for_row': <function _get_guid_for_row>, 'indexed_file_object_guid': <function _query_for_associated_indexd_record_guid>}, manifest_file_delimiter=None, output_filename='ingest-metadata-manifest-errors-1713560403.1731803.log', get_guid_from_file=True, metadata_type=None)[source]

Ingest all metadata records into a manifest csv

Parameters:
From 487781a752686d0451f45ddda4e3774868fcb03b Mon Sep 17 00:00:00 2001 From: Alex Date: Fri, 19 Apr 2024 16:09:49 -0500 Subject: [PATCH 35/62] feat(pyinstaller): try poetry plugin --- .github/workflows/build.yaml | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index 6cc1e726b..082785f64 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -32,21 +32,28 @@ jobs: # on all OSes was getting difficult. This is a quick hack to move forward pip install poetry python -m poetry --version - # python -m poetry self add poetry-pyinstaller-plugin + python -m poetry self add poetry-pyinstaller-plugin - name: Install dependencies and then build using pyinstaller run: | python -m poetry install -vv --all-extras --no-interaction --no-cache python -m poetry show -vv python -m poetry env info - # python -m poetry build - pip install pyinstaller==6.6.0 - pyinstaller --clean --name gen3 --hidden-import gen3users --onefile ./gen3/cli/__main__.py + python -m poetry build + # pip install pyinstaller==6.6.0 + # pyinstaller --paths=./gen3 --clean --name gen3 --hidden-import gen3users --onefile ./gen3/cli/__main__.py # pyinstaller --log-level=DEBUG --debug=imports --clean --name gen3 --hidden-import gen3users --onefile ./gen3/cli/__main__.py - name: Test build run: | cd ./dist ls ./gen3 --help + - name: Archive artifacts + uses: actions/upload-artifact@v4 + with: + name: dist-without-markdown + path: | + dist + !dist/**/*.md From f2bf8778667cec7949dcf2d468bcab791ec9c192 Mon Sep 17 00:00:00 2001 From: Avantol13 Date: Fri, 19 Apr 2024 21:11:04 +0000 Subject: [PATCH 36/62] Apply automatic documentation changes --- docs/_build/doctrees/environment.pickle | Bin 1579893 -> 1579893 bytes docs/_build/doctrees/tools/indexing.doctree | Bin 100291 -> 100291 bytes docs/_build/doctrees/tools/metadata.doctree | Bin 35934 -> 35934 bytes docs/_build/html/searchindex.js | 2 +- docs/_build/html/tools/indexing.html | 2 +- docs/_build/html/tools/metadata.html | 2 +- 6 files changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/_build/doctrees/environment.pickle b/docs/_build/doctrees/environment.pickle index 9f8be509784751e4adf29db06bf7296c99a11f38..54cc43f01d498e8fe52027b997e4ed64b310d201 100644 GIT binary patch delta 9331 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 delta 9316 zcmb7JcR*D~*7rVMU4X6a+ER@65~{)ZM?nKX~VN>YSN5bMD+redWaZ z%86y4N4Z;fP=jpqvM0@+F>l_Cj5&q*rmT#NS@R0>jcM6g)7{lkeu<_TbEc#(K*`h@ zv(gLmt(=`PXIf#t$NYKB(v>j@i5GW_d7?GFnVmj&q5Js`ZF24!TC~WwGXLng^RfzE z_ZjcWO@*MI2^`W_$Qrm43oiHv+-7!qR@#)btTZ93V=`ODBv<<6EFrnaB%XX|A$VwL z(X~as*ONI4aSgZQISWB86IgIYf^BsBbd1kwVnR*K?Aej4QInnToG>M0@|?8U=@YUt zCS;~%O)p$p*xtpa>w3g~*hF2A*$dpny4A!v zmQbF>{ZMc$sXWWY^^drYC6;H2dgU?aSaNxmUv3yCuqZ6SJj>a556)qd$jz!39LqD$ za&TDy*VVqj*$D>(%hE*CcSE?6rJ836KG}+MY&G*N3wJ!nIX1OCOWe%X6Won4gO$7P z<#7QX1+M$<@v%WlgL`3Ya0ttAV`2Mz@95~5Y3Xy~V|blpE-Wl?)w#=J!<2jOZ(~E0 zhweME!AgzW8W*9|x})MoM6q$1qfJHp5G2FNjZs^zO+9X5!o%75K@G+3a|Dno1n{r1H&f!qhHxZ}Rl*Zd*) z&sN{^T{p)YpkTLEE!Tc5QMt@*t|yQgr397NG?)n&QM+CFNr%>O<*1L4{ykoK-^RUZ zUZS!{mj=GB+>YS}FlePBLeZpEN_5m%eqJr8e#$kd^E$bHUhRyw))boc?ORFczLna7k=7i(7mpHVCdG03u)9> zhWlMa)X2X}eOiNIvnoPaJw1Mj)?tFjm1zP#+~M)gKmm(?^yusb(O+S*m+L(KCB~xP zv@|*_!l2s6c*Z8+xp1SuQ^4P2j2)~3_D(SFwTNu~=xe;~BNBfw%=nxxjU8*OYAFo7 zUB;cNn9fJ@jrw$I7aJ#giC8o8j0L)v*Jfjp?sa&F@q!nmD!3jW>@yY%16Wfo1LRa1 zw*`v;aepXd=J5yVYOJP@niNM4cOr8)Cpr~|5 zPty=#UpdMY;x9boGE8QxfJ5e+R+@!p_a)DGI+vLa+lA4UTvM7uz+pwEp@DGUrufps zrKU*+SeS^TbUI-AYdbE5ftN5!O`JK1_WOrvQ5#|U?ITma_5!wPXTG3ITMjXQ86mvp zPsIbqy|me8N0<;!StW%N-!bou6vE{FQkZnW+$v54U2xOLkB&dNPd zRw+I-_RrRd2Dns#tNi|M>sLNfzUT|(urK20H zk#-?1FnHd2PDu0GdPbzc??!_!J)Y_L_(i3L4+E!4Jqdg<$QD#dJ$o3G8k%s}Glb|` zI^&GzhYo4l?t9&ozH-TPShLNcJDx}4q{G@Uo7zz_dk5KG)+FOS*48ONGDEX$D?=r7 zdy}oSon&?&wykbv23)tLMM%vN#eTRsmt4DDq)jWl>{eB`fd`>d{5aemXqT>?JKC!} zCFAI3AKskRTQAu^cS_BmQFc=^GkLoG13#$=%CUFE0CeCwd%6+no_u>)^8#GmVei>W zT6R8Rf3vkx3p;+W`?hA!OxBv&^K4CFy6dIT7A>∋D-pb5yUr_=6q)9Q5K3EseL8 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 CkgDeZ diff --git a/docs/_build/doctrees/tools/indexing.doctree b/docs/_build/doctrees/tools/indexing.doctree index d4c106b10b4364ef47ed37942a46a23878795fb8..b7eee1289021fe63842a97abbf1c8af25c8d6dde 100644 GIT binary patch delta 104 zcmX@y&vv+|3p-)rH9 L%-?*^q9GUn(ZLxO delta 96 zcmcaNgX!K3rVU(L+y*8F#(IY4#)cLKlQZ;fHwS5Pvmy&_&d}e-fh;iD&>|3p-)rH9 L%-?*^q9GUn(a;$d diff --git a/docs/_build/html/searchindex.js b/docs/_build/html/searchindex.js index 2e2b1621b..b4e622589 100644 --- a/docs/_build/html/searchindex.js +++ b/docs/_build/html/searchindex.js @@ -1 +1 @@ -Search.setIndex({"alltitles": {"DRS Download Tools": [[10, "module-gen3.tools.download.drs_download"]], "Download": [[11, "module-gen3.tools.indexing.download_manifest"]], "Gen3 Auth Helper": [[0, "gen3-auth-helper"]], "Gen3 File Class": [[1, "gen3-file-class"]], "Gen3 Index Class": [[3, "gen3-index-class"]], "Gen3 Jobs Class": [[4, "gen3-jobs-class"]], "Gen3 Metadata Class": [[5, "gen3-metadata-class"]], "Gen3 Object Class": [[6, "gen3-object-class"]], "Gen3 Query Class": [[7, "gen3-query-class"]], "Gen3 Submission Class": [[8, "gen3-submission-class"]], "Gen3 Tools": [[9, "gen3-tools"]], "Gen3 Workspace Storage": [[13, "gen3-workspace-storage"]], "Index": [[11, "module-gen3.tools.indexing.index_manifest"]], "Indexing Tools": [[11, "indexing-tools"]], "Indices and tables": [[2, "indices-and-tables"]], "Ingest": [[12, "module-gen3.tools.metadata.ingest_manifest"]], "Metadata Tools": [[12, "metadata-tools"]], "Verify": [[11, "module-gen3.tools.indexing.verify_manifest"]], "Welcome to Gen3 SDK\u2019s documentation!": [[2, "welcome-to-gen3-sdk-s-documentation"]]}, "docnames": ["auth", "file", "index", "indexing", "jobs", "metadata", "object", "query", "submission", "tools", "tools/drs_pull", "tools/indexing", "tools/metadata", "wss"], "envversion": {"sphinx": 61, "sphinx.domains.c": 3, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 9, "sphinx.domains.index": 1, "sphinx.domains.javascript": 3, "sphinx.domains.math": 2, "sphinx.domains.python": 4, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx.ext.viewcode": 1}, "filenames": ["auth.rst", "file.rst", "index.rst", "indexing.rst", "jobs.rst", "metadata.rst", "object.rst", "query.rst", "submission.rst", "tools.rst", "tools/drs_pull.rst", "tools/indexing.rst", "tools/metadata.rst", "wss.rst"], "indexentries": {"_manager (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable._manager", false]], "access_methods (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.access_methods", false]], "acls (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.ACLS", false]], "async_create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_create", false]], "async_create_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_create_aliases", false]], "async_create_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_create_record", false]], "async_delete_alias() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_delete_alias", false]], "async_delete_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_delete_aliases", false]], "async_download_object_manifest() (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.async_download_object_manifest", false]], "async_get() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_get", false]], "async_get_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_get_aliases", false]], "async_get_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_record", false]], "async_get_records_from_checksum() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_records_from_checksum", false]], "async_get_records_on_page() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_records_on_page", false]], "async_get_with_params() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_with_params", false]], "async_ingest_metadata_manifest() (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.async_ingest_metadata_manifest", false]], "async_query_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_query_urls", false]], "async_query_urls_from_indexd() (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.async_query_urls_from_indexd", false]], "async_run_job_and_wait() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.async_run_job_and_wait", false]], "async_update() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_update", false]], "async_update_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_update_aliases", false]], "async_update_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_update_record", false]], "async_verify_object_manifest() (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.async_verify_object_manifest", false]], "auth_provider (gen3.metadata.gen3metadata attribute)": [[5, "gen3.metadata.Gen3Metadata.auth_provider", false]], "authz (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.AUTHZ", false]], "batch_create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.batch_create", false]], "cache_hosts_wts_tokens() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.cache_hosts_wts_tokens", false]], "children (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.children", false]], "column_to_use_as_guid (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.COLUMN_TO_USE_AS_GUID", false]], "commons_url (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.commons_url", false]], "copy() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.copy", false]], "create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create", false]], "create_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create_aliases", false]], "create_blank() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_blank", false]], "create_index_key_path() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create_index_key_path", false]], "create_job() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.create_job", false]], "create_new_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_new_version", false]], "create_object_list() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.create_object_list", false]], "create_program() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.create_program", false]], "create_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.create_project", false]], "create_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_record", false]], "created_time (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.created_time", false]], "curl() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.curl", false]], "current_dir (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.CURRENT_DIR", false]], "current_dir (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.CURRENT_DIR", false]], "current_dir (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.CURRENT_DIR", false]], "delete() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete", false]], "delete_alias() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_alias", false]], "delete_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_aliases", false]], "delete_all_guids() (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.delete_all_guids", false]], "delete_file() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.delete_file", false]], "delete_file_locations() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.delete_file_locations", false]], "delete_index_key_path() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_index_key_path", false]], "delete_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_node", false]], "delete_nodes() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_nodes", false]], "delete_object() (gen3.object.gen3object method)": [[6, "gen3.object.Gen3Object.delete_object", false]], "delete_program() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_program", false]], "delete_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_project", false]], "delete_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.delete_record", false]], "delete_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_record", false]], "delete_records() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_records", false]], "download() (gen3.tools.download.drs_download.downloadable method)": [[10, "gen3.tools.download.drs_download.Downloadable.download", false]], "download() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.download", false]], "download() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.download", false]], "download_files_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.download_files_in_drs_manifest", false]], "download_single() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.download_single", false]], "download_url() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.download_url", false]], "downloadable (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.Downloadable", false]], "downloadmanager (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.DownloadManager", false]], "downloadstatus (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.DownloadStatus", false]], "end_time (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.end_time", false]], "endpoint (gen3.metadata.gen3metadata attribute)": [[5, "gen3.metadata.Gen3Metadata.endpoint", false]], "export_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.export_node", false]], "export_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.export_record", false]], "file_name (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.file_name", false]], "file_name (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.file_name", false]], "file_size (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.file_size", false]], "file_size (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.file_size", false]], "gen3.tools": [[9, "module-gen3.tools", false]], "gen3.tools.download.drs_download": [[10, "module-gen3.tools.download.drs_download", false]], "gen3.tools.indexing.download_manifest": [[11, "module-gen3.tools.indexing.download_manifest", false]], "gen3.tools.indexing.index_manifest": [[11, "module-gen3.tools.indexing.index_manifest", false]], "gen3.tools.indexing.verify_manifest": [[11, "module-gen3.tools.indexing.verify_manifest", false]], "gen3.tools.metadata.ingest_manifest": [[12, "module-gen3.tools.metadata.ingest_manifest", false]], "gen3auth (class in gen3.auth)": [[0, "gen3.auth.Gen3Auth", false]], "gen3file (class in gen3.file)": [[1, "gen3.file.Gen3File", false]], "gen3index (class in gen3.index)": [[3, "gen3.index.Gen3Index", false]], "gen3jobs (class in gen3.jobs)": [[4, "gen3.jobs.Gen3Jobs", false]], "gen3metadata (class in gen3.metadata)": [[5, "gen3.metadata.Gen3Metadata", false]], "gen3object (class in gen3.object)": [[6, "gen3.object.Gen3Object", false]], "gen3query (class in gen3.query)": [[7, "gen3.query.Gen3Query", false]], "gen3submission (class in gen3.submission)": [[8, "gen3.submission.Gen3Submission", false]], "gen3wsstorage (class in gen3.wss)": [[13, "gen3.wss.Gen3WsStorage", false]], "get() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get", false]], "get() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get", false]], "get_access_token() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.get_access_token", false]], "get_access_token_from_wts() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.get_access_token_from_wts", false]], "get_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_aliases", false]], "get_all_records() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_all_records", false]], "get_dictionary_all() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_dictionary_all", false]], "get_dictionary_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_dictionary_node", false]], "get_fresh_token() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.get_fresh_token", false]], "get_graphql_schema() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_graphql_schema", false]], "get_guids_prefix() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_guids_prefix", false]], "get_index_key_paths() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_index_key_paths", false]], "get_latest_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_latest_version", false]], "get_output() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_output", false]], "get_presigned_url() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.get_presigned_url", false]], "get_programs() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_programs", false]], "get_project_dictionary() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_project_dictionary", false]], "get_project_manifest() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_project_manifest", false]], "get_projects() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_projects", false]], "get_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_record", false]], "get_record_doc() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_record_doc", false]], "get_records() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_records", false]], "get_records_on_page() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_records_on_page", false]], "get_stats() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_stats", false]], "get_status() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_status", false]], "get_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_urls", false]], "get_valid_guids() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_valid_guids", false]], "get_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_version", false]], "get_version() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_version", false]], "get_version() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_version", false]], "get_versions() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_versions", false]], "get_with_params() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_with_params", false]], "graphql_query() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.graphql_query", false]], "guid (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.GUID", false]], "guid_type_for_indexed_file_object (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.GUID_TYPE_FOR_INDEXED_FILE_OBJECT", false]], "guid_type_for_non_indexed_file_object (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.GUID_TYPE_FOR_NON_INDEXED_FILE_OBJECT", false]], "hostname (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.hostname", false]], "index_object_manifest() (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.index_object_manifest", false]], "indexd_record_page_size (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.INDEXD_RECORD_PAGE_SIZE", false]], "is_healthy() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.is_healthy", false]], "is_healthy() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.is_healthy", false]], "is_healthy() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.is_healthy", false]], "list_access_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_access_in_drs_manifest", false]], "list_drs_object() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_drs_object", false]], "list_files_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_files_in_drs_manifest", false]], "list_jobs() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.list_jobs", false]], "load() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.load", false]], "load_manifest() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.load_manifest", false]], "ls() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.ls", false]], "ls_path() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.ls_path", false]], "manifest (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.Manifest", false]], "max_concurrent_requests (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.MAX_CONCURRENT_REQUESTS", false]], "max_concurrent_requests (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.MAX_CONCURRENT_REQUESTS", false]], "max_concurrent_requests (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.MAX_CONCURRENT_REQUESTS", false]], "md5 (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.MD5", false]], "md5sum (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.md5sum", false]], "module": [[9, "module-gen3.tools", false], [10, "module-gen3.tools.download.drs_download", false], [11, "module-gen3.tools.indexing.download_manifest", false], [11, "module-gen3.tools.indexing.index_manifest", false], [11, "module-gen3.tools.indexing.verify_manifest", false], [12, "module-gen3.tools.metadata.ingest_manifest", false]], "object_id (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.object_id", false]], "object_id (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.object_id", false]], "object_type (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.object_type", false]], "open_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.open_project", false]], "pprint() (gen3.tools.download.drs_download.downloadable method)": [[10, "gen3.tools.download.drs_download.Downloadable.pprint", false]], "prev_guid (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.PREV_GUID", false]], "query() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.query", false]], "query() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.query", false]], "query() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.query", false]], "query_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.query_urls", false]], "raw_data_download() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.raw_data_download", false]], "refresh_access_token() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.refresh_access_token", false]], "resolve_objects() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.resolve_objects", false]], "rm() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.rm", false]], "rm_path() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.rm_path", false]], "size (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.SIZE", false]], "start_time (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.start_time", false]], "status (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.status", false]], "submit_file() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.submit_file", false]], "submit_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.submit_record", false]], "threadcontrol (class in gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.ThreadControl", false]], "tmp_folder (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.TMP_FOLDER", false]], "update() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.update", false]], "update_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.update_aliases", false]], "update_blank() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.update_blank", false]], "update_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.update_record", false]], "updated_time (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.updated_time", false]], "upload() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.upload", false]], "upload_file() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.upload_file", false]], "upload_file_to_guid() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.upload_file_to_guid", false]], "upload_url() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.upload_url", false]], "urls (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.URLS", false]], "user_access() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.user_access", false]]}, "objects": {"gen3": [[9, 3, 0, "-", "tools"]], "gen3.auth": [[0, 0, 1, "", "Gen3Auth"]], "gen3.auth.Gen3Auth": [[0, 1, 1, "", "curl"], [0, 1, 1, "", "get_access_token"], [0, 1, 1, "", "get_access_token_from_wts"], [0, 1, 1, "", "refresh_access_token"]], "gen3.file": [[1, 0, 1, "", "Gen3File"]], "gen3.file.Gen3File": [[1, 1, 1, "", "delete_file"], [1, 1, 1, "", "delete_file_locations"], [1, 1, 1, "", "download_single"], [1, 1, 1, "", "get_presigned_url"], [1, 1, 1, "", "upload_file"], [1, 1, 1, "", "upload_file_to_guid"]], "gen3.index": [[3, 0, 1, "", "Gen3Index"]], "gen3.index.Gen3Index": [[3, 1, 1, "", "async_create_record"], [3, 1, 1, "", "async_get_record"], [3, 1, 1, "", "async_get_records_from_checksum"], [3, 1, 1, "", "async_get_records_on_page"], [3, 1, 1, "", "async_get_with_params"], [3, 1, 1, "", "async_query_urls"], [3, 1, 1, "", "async_update_record"], [3, 1, 1, "", "create_blank"], [3, 1, 1, "", "create_new_version"], [3, 1, 1, "", "create_record"], [3, 1, 1, "", "delete_record"], [3, 1, 1, "", "get"], [3, 1, 1, "", "get_all_records"], [3, 1, 1, "", "get_guids_prefix"], [3, 1, 1, "", "get_latest_version"], [3, 1, 1, "", "get_record"], [3, 1, 1, "", "get_record_doc"], [3, 1, 1, "", "get_records"], [3, 1, 1, "", "get_records_on_page"], [3, 1, 1, "", "get_stats"], [3, 1, 1, "", "get_urls"], [3, 1, 1, "", "get_valid_guids"], [3, 1, 1, "", "get_version"], [3, 1, 1, "", "get_versions"], [3, 1, 1, "", "get_with_params"], [3, 1, 1, "", "is_healthy"], [3, 1, 1, "", "query_urls"], [3, 1, 1, "", "update_blank"], [3, 1, 1, "", "update_record"]], "gen3.jobs": [[4, 0, 1, "", "Gen3Jobs"]], "gen3.jobs.Gen3Jobs": [[4, 1, 1, "", "async_run_job_and_wait"], [4, 1, 1, "", "create_job"], [4, 1, 1, "", "get_output"], [4, 1, 1, "", "get_status"], [4, 1, 1, "", "get_version"], [4, 1, 1, "", "is_healthy"], [4, 1, 1, "", "list_jobs"]], "gen3.metadata": [[5, 0, 1, "", "Gen3Metadata"]], "gen3.metadata.Gen3Metadata": [[5, 1, 1, "", "async_create"], [5, 1, 1, "", "async_create_aliases"], [5, 1, 1, "", "async_delete_alias"], [5, 1, 1, "", "async_delete_aliases"], [5, 1, 1, "", "async_get"], [5, 1, 1, "", "async_get_aliases"], [5, 1, 1, "", "async_update"], [5, 1, 1, "", "async_update_aliases"], [5, 2, 1, "", "auth_provider"], [5, 1, 1, "", "batch_create"], [5, 1, 1, "", "create"], [5, 1, 1, "", "create_aliases"], [5, 1, 1, "", "create_index_key_path"], [5, 1, 1, "", "delete"], [5, 1, 1, "", "delete_alias"], [5, 1, 1, "", "delete_aliases"], [5, 1, 1, "", "delete_index_key_path"], [5, 2, 1, "", "endpoint"], [5, 1, 1, "", "get"], [5, 1, 1, "", "get_aliases"], [5, 1, 1, "", "get_index_key_paths"], [5, 1, 1, "", "get_version"], [5, 1, 1, "", "is_healthy"], [5, 1, 1, "", "query"], [5, 1, 1, "", "update"], [5, 1, 1, "", "update_aliases"]], "gen3.object": [[6, 0, 1, "", "Gen3Object"]], "gen3.object.Gen3Object": [[6, 1, 1, "", "delete_object"]], "gen3.query": [[7, 0, 1, "", "Gen3Query"]], "gen3.query.Gen3Query": [[7, 1, 1, "", "graphql_query"], [7, 1, 1, "", "query"], [7, 1, 1, "", "raw_data_download"]], "gen3.submission": [[8, 0, 1, "", "Gen3Submission"]], "gen3.submission.Gen3Submission": [[8, 1, 1, "", "create_program"], [8, 1, 1, "", "create_project"], [8, 1, 1, "", "delete_node"], [8, 1, 1, "", "delete_nodes"], [8, 1, 1, "", "delete_program"], [8, 1, 1, "", "delete_project"], [8, 1, 1, "", "delete_record"], [8, 1, 1, "", "delete_records"], [8, 1, 1, "", "export_node"], [8, 1, 1, "", "export_record"], [8, 1, 1, "", "get_dictionary_all"], [8, 1, 1, "", "get_dictionary_node"], [8, 1, 1, "", "get_graphql_schema"], [8, 1, 1, "", "get_programs"], [8, 1, 1, "", "get_project_dictionary"], [8, 1, 1, "", "get_project_manifest"], [8, 1, 1, "", "get_projects"], [8, 1, 1, "", "open_project"], [8, 1, 1, "", "query"], [8, 1, 1, "", "submit_file"], [8, 1, 1, "", "submit_record"]], "gen3.tools.download": [[10, 3, 0, "-", "drs_download"]], "gen3.tools.download.drs_download": [[10, 0, 1, "", "DownloadManager"], [10, 0, 1, "", "DownloadStatus"], [10, 0, 1, "", "Downloadable"], [10, 0, 1, "", "Manifest"], [10, 4, 1, "", "download_files_in_drs_manifest"], [10, 4, 1, "", "list_access_in_drs_manifest"], [10, 4, 1, "", "list_drs_object"], [10, 4, 1, "", "list_files_in_drs_manifest"]], "gen3.tools.download.drs_download.DownloadManager": [[10, 1, 1, "", "cache_hosts_wts_tokens"], [10, 1, 1, "", "download"], [10, 1, 1, "", "get_fresh_token"], [10, 1, 1, "", "resolve_objects"], [10, 1, 1, "", "user_access"]], "gen3.tools.download.drs_download.DownloadStatus": [[10, 2, 1, "", "end_time"], [10, 2, 1, "", "start_time"], [10, 2, 1, "", "status"]], "gen3.tools.download.drs_download.Downloadable": [[10, 2, 1, "", "_manager"], [10, 2, 1, "", "access_methods"], [10, 2, 1, "", "children"], [10, 2, 1, "", "created_time"], [10, 1, 1, "", "download"], [10, 2, 1, "", "file_name"], [10, 2, 1, "", "file_size"], [10, 2, 1, "", "hostname"], [10, 2, 1, "", "object_id"], [10, 2, 1, "", "object_type"], [10, 1, 1, "", "pprint"], [10, 2, 1, "", "updated_time"]], "gen3.tools.download.drs_download.Manifest": [[10, 2, 1, "", "commons_url"], [10, 1, 1, "", "create_object_list"], [10, 2, 1, "", "file_name"], [10, 2, 1, "", "file_size"], [10, 1, 1, "", "load"], [10, 1, 1, "", "load_manifest"], [10, 2, 1, "", "md5sum"], [10, 2, 1, "", "object_id"]], "gen3.tools.indexing": [[11, 3, 0, "-", "download_manifest"], [11, 3, 0, "-", "index_manifest"], [11, 3, 0, "-", "verify_manifest"]], "gen3.tools.indexing.download_manifest": [[11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "INDEXD_RECORD_PAGE_SIZE"], [11, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [11, 2, 1, "", "TMP_FOLDER"], [11, 4, 1, "", "async_download_object_manifest"]], "gen3.tools.indexing.index_manifest": [[11, 2, 1, "", "ACLS"], [11, 2, 1, "", "AUTHZ"], [11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "GUID"], [11, 2, 1, "", "MD5"], [11, 2, 1, "", "PREV_GUID"], [11, 2, 1, "", "SIZE"], [11, 0, 1, "", "ThreadControl"], [11, 2, 1, "", "URLS"], [11, 4, 1, "", "delete_all_guids"], [11, 4, 1, "", "index_object_manifest"]], "gen3.tools.indexing.verify_manifest": [[11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [11, 4, 1, "", "async_verify_object_manifest"]], "gen3.tools.metadata": [[12, 3, 0, "-", "ingest_manifest"]], "gen3.tools.metadata.ingest_manifest": [[12, 2, 1, "", "COLUMN_TO_USE_AS_GUID"], [12, 2, 1, "", "GUID_TYPE_FOR_INDEXED_FILE_OBJECT"], [12, 2, 1, "", "GUID_TYPE_FOR_NON_INDEXED_FILE_OBJECT"], [12, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [12, 4, 1, "", "async_ingest_metadata_manifest"], [12, 4, 1, "", "async_query_urls_from_indexd"]], "gen3.wss": [[13, 0, 1, "", "Gen3WsStorage"]], "gen3.wss.Gen3WsStorage": [[13, 1, 1, "", "copy"], [13, 1, 1, "", "download"], [13, 1, 1, "", "download_url"], [13, 1, 1, "", "ls"], [13, 1, 1, "", "ls_path"], [13, 1, 1, "", "rm"], [13, 1, 1, "", "rm_path"], [13, 1, 1, "", "upload"], [13, 1, 1, "", "upload_url"]]}, "objnames": {"0": ["py", "class", "Python class"], "1": ["py", "method", "Python method"], "2": ["py", "attribute", "Python attribute"], "3": ["py", "module", "Python module"], "4": ["py", "function", "Python function"]}, "objtypes": {"0": "py:class", "1": "py:method", "2": "py:attribute", "3": "py:module", "4": "py:function"}, "terms": {"": [1, 4, 8, 10, 11], "0": [5, 7, 8, 11], "0046513": [], "052073": [], "0576868": [], "064572": [], "07464": [], "0a80fada010c": 11, "0a80fada096c": 11, "0a80fada097c": 11, "0a80fada098c": 11, "0a80fada099c": 11, "1": [4, 5, 8, 10, 11], "10": [5, 7, 11], "100": [8, 11], "11e9": 11, "1676264": [], "1713542306": [], "1713542765": [], "1713543033": [], "1713543225": [], "1713543506": [], "1713543956": [], "1713544131": [], "1713544132": [], "1713544397": [], "1713544598": [], "1713545857": [], "1713545858": [], "1713549370": [], "1713549689": [], "1713550571": [], "1713557245": [], "1713559376": [], "1713560080": [], "1713560402": 11, "1713560403": 12, "1731803": 12, "1771936": [], "1913438": [], "2": [5, 11], "24": [11, 12], "255e396f": 11, "2877355": [], "2930224": [], "2995": [], "3": [5, 11], "30": 8, "3102272": [], "33": 5, "333": 5, "343434344": 11, "363455714": 11, "4": [5, 11], "4017086": [], "4052968": [], "4090197": [], "4463434": [], "450c": 11, "4632835": [], "4649727": [], "4714": 8, "473d83400bc1bc9dc635e334fadd433c": 11, "473d83400bc1bc9dc635e334faddd33c": 11, "473d83400bc1bc9dc635e334fadde33c": 11, "473d83400bc1bc9dc635e334faddf33c": 11, "4752307": [], "4756553": [], "5": [0, 5], "50": 7, "543434443": 11, "5669184": [], "5899982": [], "6692646": [], "6739478": [], "674552": [], "6f90": 8, "700799": [], "7232893": [], "756255": [], "760149": [], "7d3d8d2083b4": 11, "8044841": [], "8375325": [], "8420": 8, "8874054": 11, "8882551": [], "93d9af72": 11, "9a07": 11, "A": [1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "AND": 5, "Be": 1, "But": 5, "By": 11, "For": [1, 5, 6, 7, 8, 9, 11], "IF": 11, "If": [0, 1, 7, 11, 12], "In": 10, "It": 10, "NOT": 12, "OR": 5, "One": 7, "Such": 9, "THE": 11, "That": 3, "The": [0, 1, 2, 3, 5, 8, 10, 11], "There": 11, "These": 9, "To": 11, "Will": [4, 7, 10], "_get_acl_from_row": 11, "_get_authz_from_row": 11, "_get_file_name_from_row": 11, "_get_file_size_from_row": 11, "_get_guid_for_row": 12, "_get_guid_from_row": 11, "_get_md5_from_row": 11, "_get_urls_from_row": 11, "_guid_typ": 12, "_manag": [2, 9, 10], "_query_for_associated_indexd_record_guid": 12, "_ssl": [3, 4, 5], "a5c6": 11, "ab167e49d25b488939b1ede42752458b": 3, "about": [2, 3], "abov": 11, "access": [0, 1, 3, 7, 10], "access_method": [2, 9, 10], "access_token": 0, "accesstoken": 0, "acl": [2, 3, 9, 11], "across": 11, "act": 0, "action": [9, 11], "actual": 11, "ad": 3, "add": [3, 5], "addit": [3, 5, 10, 11], "admin": [5, 11], "admin_endpoint_suffix": 5, "after": 10, "against": [3, 7, 8, 11, 12], "algorithm": 3, "alia": [3, 5], "alias": 5, "aliv": 7, "all": [1, 3, 4, 5, 6, 7, 8, 10, 11, 12], "allow": [0, 6, 8, 10, 11, 12], "allowed_data_upload_bucket": 1, "along": 2, "alreadi": 9, "also": 1, "altern": [5, 11], "alwai": 5, "ammount": 12, "amount": [1, 9], "an": [0, 3, 6, 8, 10, 11], "ani": [0, 5, 10, 11], "anoth": 5, "api": [0, 5, 8, 11], "api_kei": 11, "appli": 7, "appropri": 13, "ar": [5, 7, 8, 9, 10, 11], "arbitrari": 0, "argument": [0, 13], "arrai": 8, "asc": 7, "assign": 9, "assist": 10, "associ": [3, 5], "assum": 11, "async": [3, 4, 5, 9, 11, 12], "async_cr": [2, 5], "async_create_alias": [2, 5], "async_create_record": [2, 3], "async_delete_alia": [2, 5], "async_delete_alias": [2, 5], "async_download_object_manifest": [2, 9, 11], "async_get": [2, 5], "async_get_alias": [2, 5], "async_get_record": [2, 3], "async_get_records_from_checksum": [2, 3], "async_get_records_on_pag": [2, 3], "async_get_with_param": [2, 3], "async_ingest_metadata_manifest": [2, 9, 12], "async_query_url": [2, 3], "async_query_urls_from_indexd": [2, 9, 12], "async_run_job_and_wait": [2, 4], "async_upd": [2, 5], "async_update_alias": [2, 5], "async_update_record": [2, 3], "async_verify_object_manifest": [2, 9, 11], "asynchron": [3, 4, 5], "asyncio": [11, 12], "asyncron": 5, "attach": [3, 5], "attempt": 11, "attribut": [10, 11], "auth": [1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "auth_provid": [1, 2, 3, 4, 5, 6, 7, 8, 13], "authbas": 0, "authent": 0, "author": 1, "authz": [0, 1, 2, 3, 9, 10, 11], "auto": [0, 2], "automat": 0, "avail": [1, 2, 10, 11], "az": 1, "b": [5, 11], "b0f1": 11, "bar": 10, "base": [0, 1, 3, 4, 5, 6, 7, 8, 9, 11, 13], "baseid": 3, "basic": [3, 11, 12], "batch_creat": [2, 5], "batch_siz": 8, "behalf": 0, "behavior": 11, "being": 3, "belong": 8, "below": 11, "blank": 3, "blob": [5, 7], "bodi": 3, "bool": [4, 5, 8, 10, 11, 12], "boolean": 3, "bownload": 10, "broad": 9, "broken": 9, "bucket": [1, 6], "bundl": 10, "byte": 10, "c": [5, 11], "cach": 10, "cache_hosts_wts_token": [2, 9, 10], "call": [10, 13], "can": [0, 3, 4, 8, 11, 12], "capabl": 9, "case": [0, 10], "categori": 9, "ccle": 8, "ccle_one_record": 8, "ccle_sample_nod": 8, "cdi": 7, "chang": [3, 11], "checksum": [3, 10], "checksum_typ": 3, "child": 10, "children": [2, 9, 10], "chunk_siz": 8, "class": [0, 2, 10, 11, 13], "cli": 10, "client": [0, 3], "client_credenti": 0, "client_id": 0, "client_scop": 0, "client_secret": 0, "code": [2, 8], "column": [11, 12], "column_to_use_as_guid": [2, 9, 12], "columna": 11, "columnb": 11, "columnc": 11, "com": 7, "comma": 11, "command": [10, 11], "common": [0, 1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13], "commons_url": [2, 9, 10, 11, 12], "complet": [4, 11], "complex": 7, "concat": 11, "concurr": [11, 12], "configur": 1, "connect": 12, "consist": 3, "constructor": 0, "contain": [0, 2, 5, 8, 9, 10, 11, 12], "content": [3, 13], "content_created_d": 3, "content_updated_d": 3, "continu": 10, "control": 3, "conveni": 10, "copi": [2, 13], "coroutin": 11, "correspond": 3, "count": 3, "crdc": 0, "creat": [2, 3, 4, 5, 6, 8, 10, 11], "create_alias": [2, 5], "create_blank": [2, 3], "create_index_key_path": [2, 5], "create_job": [2, 4], "create_new_vers": [2, 3], "create_object_list": [2, 9, 10], "create_program": [2, 8], "create_project": [2, 8], "create_record": [2, 3], "created_tim": [2, 9, 10], "creation": [3, 11], "cred": 3, "credenti": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "csv": [8, 11, 12], "curl": [0, 2], "current": [6, 8, 10], "current_dir": [2, 9, 11], "custom": 11, "d": 5, "d70b41b9": 8, "data": [0, 1, 3, 5, 7, 8, 10, 11], "data_spreadsheet": 8, "data_typ": 7, "data_upload_bucket": 1, "dataa": 11, "datab": 11, "databas": 5, "datacommon": 0, "datafil": 10, "datamanag": 10, "date": 3, "datetim": [1, 3, 10], "dbgap": 12, "dcf": 8, "def": 11, "default": [0, 1, 3, 7, 8, 11, 12], "defin": [5, 8, 10], "delai": 4, "delet": [0, 1, 2, 3, 5, 6, 8, 10, 11], "delete_alia": [2, 5], "delete_alias": [2, 5], "delete_all_guid": [2, 9, 11], "delete_fil": [1, 2], "delete_file_loc": [1, 2, 6], "delete_index_key_path": [2, 5], "delete_nod": [2, 8], "delete_object": [2, 6], "delete_program": [2, 8], "delete_project": [2, 8], "delete_record": [2, 3, 8], "delete_unpacked_packag": 10, "delimet": [11, 12], "delimit": 11, "demograph": 8, "deprec": 1, "descript": [3, 5], "desir": 11, "dest_path": 13, "dest_urlstr": 13, "dest_w": 13, "dest_wskei": 13, "detail": [2, 7, 10], "determin": [10, 11, 12], "dev": 11, "dict": [3, 4, 5, 10, 11, 12], "dictionari": [3, 4, 5, 7, 8], "did": 3, "differ": 5, "direct": 0, "directori": [10, 11], "disabl": 10, "discoveri": 10, "disk": 13, "dispatch": 4, "dist_resolut": 3, "distribut": 3, "doc": [7, 10], "docstr": 2, "document": [1, 3], "doe": [0, 12], "domain": [11, 12], "done": 4, "download": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 13], "download_files_in_drs_manifest": [2, 9, 10], "download_list": 10, "download_manifest": 11, "download_singl": [1, 2], "download_url": [2, 13], "downloadmanag": [2, 9, 10], "downloadstatu": [2, 9, 10], "dr": [2, 9], "drs_download": 10, "drs_hostnam": 10, "drsdownload": 10, "drsobjecttyp": 10, "e": [5, 10], "e043ab8b77b9": 8, "each": [3, 8, 10, 11], "effici": 9, "eg": 3, "either": 8, "elasticsearch": 7, "els": [0, 12], "elsewher": 12, "empti": [8, 11], "enabl": 11, "end": [5, 10], "end_tim": [2, 9, 10], "endpoint": [0, 1, 2, 3, 4, 5, 7, 8, 13], "entir": 8, "entri": [3, 11], "env": 0, "environ": 0, "equal": 7, "error": [10, 11, 12], "error_nam": 11, "etc": 8, "even": 11, "everi": [9, 11], "everyth": 11, "ex": [0, 11, 12], "exampl": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "exclud": 3, "execut": [7, 8, 11], "exist": [1, 3, 5, 6, 9, 12], "expect": [5, 9, 11], "experi": 8, "expir": [0, 1], "expires_in": 1, "export": [8, 10], "export_nod": [2, 8], "export_record": [2, 8], "f1f8": 11, "factori": 10, "fail": [8, 10], "fals": [3, 5, 6, 10, 11], "featur": [1, 6], "fenc": [0, 1], "fetch": 0, "field": [3, 5, 7, 11, 12], "fieldnam": 11, "file": [0, 2, 3, 4, 8, 9, 10, 11, 12, 13], "file_nam": [1, 2, 3, 9, 10, 11], "file_s": [2, 9, 10, 11], "file_st": 3, "fileformat": 8, "filenam": [0, 8, 10, 11, 12], "files": 10, "fill": 12, "filter": [5, 7], "filter_object": 7, "first": [7, 8], "flag": 11, "folder": 11, "follow": [0, 11], "forc": 11, "force_metadata_columns_even_if_empti": 11, "form": 13, "format": [3, 5, 8, 11], "from": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13], "func_to_parse_row": [11, 12], "function": [2, 3, 4, 5, 9, 10, 11, 12], "g": 10, "gen3": [10, 11, 12], "gen3_api_kei": 0, "gen3_oidc_client_creds_secret": 0, "gen3auth": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "gen3fil": [1, 2], "gen3index": [2, 3], "gen3job": [2, 4, 10], "gen3metadata": [2, 5], "gen3object": [2, 6], "gen3queri": [2, 7], "gen3submiss": [2, 8], "gen3wsstorag": [2, 13], "gener": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 13], "get": [0, 1, 2, 3, 4, 5, 8, 10, 11, 12, 13], "get_access_token": [0, 2], "get_access_token_from_wt": [0, 2], "get_alias": [2, 5], "get_all_record": [2, 3], "get_dictionary_al": [2, 8], "get_dictionary_nod": [2, 8], "get_fresh_token": [2, 9, 10], "get_graphql_schema": [2, 8], "get_guid_from_fil": 12, "get_guids_prefix": [2, 3], "get_index_key_path": [2, 5], "get_latest_vers": [2, 3], "get_output": [2, 4], "get_presigned_url": [1, 2], "get_program": [2, 8], "get_project": [2, 8], "get_project_dictionari": [2, 8], "get_project_manifest": [2, 8], "get_record": [2, 3], "get_record_doc": [2, 3], "get_records_on_pag": [2, 3], "get_stat": [2, 3], "get_statu": [2, 4], "get_url": [2, 3], "get_valid_guid": [2, 3], "get_vers": [2, 3, 4, 5], "get_with_param": [2, 3], "giangb": 11, "github": [2, 7], "give": 1, "given": [0, 3, 4, 5, 8, 10, 12, 13], "global": [4, 5], "good": 3, "grant": 0, "graph": 8, "graphql": [7, 8], "graphql_queri": [2, 7], "group": 3, "guid": [1, 2, 3, 5, 6, 9, 11, 12], "guid_exampl": 11, "guid_for_row": 12, "guid_from_fil": 12, "guid_type_for_indexed_file_object": [2, 9, 12], "guid_type_for_non_indexed_file_object": [2, 9, 12], "guppi": 7, "ha": [0, 11], "handl": [3, 10], "hardcod": 0, "has_vers": 3, "hash": [3, 11], "hash_typ": 3, "have": [5, 11], "header": 11, "healthi": [3, 4, 5], "help": 11, "helper": 2, "hit": 11, "host": 10, "hostnam": [2, 9, 10], "how": [8, 11], "howto": 10, "http": [0, 7, 11, 12], "i": [0, 1, 2, 3, 4, 5, 8, 10, 11, 12], "id": [0, 1, 3, 5, 10, 11], "idea": 3, "identifi": [3, 5, 9, 11], "idp": 0, "illustr": 11, "immut": 3, "implement": 0, "implic": 11, "import": 11, "includ": [0, 3], "indent": 10, "index": [0, 2, 5, 9], "index_manifest": 11, "index_object_manifest": [2, 9, 11], "indexd": [1, 3, 6, 10, 11, 12], "indexd_field": [11, 12], "indexd_record_page_s": [2, 9, 11], "indexed_file_object_guid": 12, "indic": [0, 11], "infil": 10, "info": [3, 11], "inform": [2, 3, 10], "ingest": [2, 9], "ingest_manifest": 12, "initi": [0, 10], "input": [4, 10, 11], "input_manifest": 11, "instal": [0, 2, 11], "instanc": [1, 3, 6, 7, 8, 9, 10], "instead": [1, 7, 11], "int": [1, 3, 5, 7, 8, 10, 11, 12], "integ": [1, 3, 8], "intend": 0, "interact": [1, 3, 4, 5, 6, 8, 13], "interest": 10, "interpret": 0, "introspect": 8, "involv": 9, "is_healthi": [2, 3, 4, 5], "is_indexed_file_object": 12, "isn": 1, "issu": 0, "its": [1, 3], "job": 2, "job_id": 4, "job_input": 4, "job_nam": 4, "json": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "just": [5, 11, 12], "jwt": 0, "kei": [0, 3, 5, 13], "know": 11, "known": 10, "kwarg": [3, 4, 5], "l": [2, 13], "larg": 9, "last": 10, "latest": 3, "least": 3, "level": 6, "librari": 11, "like": [3, 5, 9, 11, 12], "limit": [1, 3, 5, 12], "linear": 4, "linux": 10, "list": [0, 1, 3, 4, 5, 7, 8, 10, 11, 13], "list_access_in_drs_manifest": [2, 9, 10], "list_drs_object": [2, 9, 10], "list_files_in_drs_manifest": [2, 9, 10], "list_job": [2, 4], "live": [11, 12], "load": [2, 9, 10], "load_manifest": [2, 9, 10], "local": [0, 13], "locat": [1, 6], "lock": 12, "log": [8, 10, 11, 12], "logic": [5, 12], "loop": 11, "ls_path": [2, 13], "maco": 11, "made": 3, "mai": [0, 9, 11], "main": 10, "make": [9, 11], "manag": [1, 5, 10], "mani": [8, 11], "manifest": [2, 8, 9, 10, 11, 12], "manifest_1": 10, "manifest_fil": [11, 12], "manifest_file_delimit": [11, 12], "manifest_row_pars": [11, 12], "map": [0, 11], "mark": 8, "master": 7, "match": [3, 5, 12], "max": 5, "max_concurrent_request": [2, 9, 11, 12], "max_presigned_url_ttl": 1, "max_tri": 8, "maximum": [11, 12], "md": [5, 7, 10, 12], "md5": [2, 3, 9, 11], "md5_hash": 11, "md5sum": [2, 9, 10], "mean": 8, "mechan": 3, "merg": 5, "metadata": [2, 3, 6, 9, 11], "metadata_list": 5, "metadata_sourc": 12, "metadata_typ": 12, "metdata": 12, "method": [1, 7, 10], "minimum": 10, "minut": 0, "mode": 7, "modul": [2, 10, 11], "more": [2, 5, 7, 9, 10], "most": 9, "mostli": 2, "multipl": [8, 11], "must": [1, 5], "my_common": 10, "my_credenti": 10, "my_field": 7, "my_index": 7, "my_program": 7, "my_project": 7, "name": [3, 4, 8, 10, 11, 12, 13], "namespac": [0, 12], "necessari": [3, 5], "need": [3, 7, 10, 11], "nest": 5, "net": 11, "never": 0, "new": [0, 3], "node": 8, "node_nam": 8, "node_typ": 8, "none": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "note": [0, 3, 11, 12], "noth": [3, 6], "now": [1, 8], "num": 5, "num_process": 11, "num_total_fil": 11, "number": [3, 7, 8, 11, 12], "o": 0, "object": [1, 2, 3, 4, 5, 7, 8, 9, 10, 11, 13], "object_id": [1, 2, 9, 10], "object_list": 10, "object_typ": [2, 9, 10], "objectid": 10, "obtain": [0, 10], "occur": 10, "off": 5, "offset": [5, 7], "oidc": 0, "old": 3, "one": [3, 5, 10, 11], "onli": [3, 5, 7, 8, 10, 11], "open": [8, 10, 11], "open_project": [2, 8], "openid": 0, "opt": 0, "option": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11], "order": [0, 8], "ordered_node_list": 8, "org": 10, "otherwis": 10, "output": [4, 5, 11, 12], "output_dir": 10, "output_filenam": [11, 12], "overrid": [0, 11, 12], "overwrit": 5, "own": 0, "packag": 10, "page": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 13], "pagin": 3, "parallel": 11, "param": [3, 5, 8, 10], "paramet": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "pars": [10, 11, 12, 13], "parser": [11, 12], "particular": 0, "pass": [0, 7, 8, 10], "password": [11, 12], "path": [0, 1, 5, 10, 11, 13], "path_to_manifest": 11, "pattern": [3, 12], "pdcdatastor": 11, "pend": 10, "per": [11, 12], "peregrin": 8, "permiss": 10, "persist": 9, "phs0001": 11, "phs0002": 11, "pick": 1, "pla": 11, "place": 11, "planx": 11, "point": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "popul": [10, 12], "posit": [1, 7], "possibl": 10, "post": [0, 11], "pprint": [2, 9, 10], "prefix": 3, "presign": 1, "pretti": 10, "prev_guid": [2, 9, 11], "previou": [3, 11], "previous": 4, "print": [8, 10], "process": 11, "processed_fil": 11, "profil": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "program": [8, 11], "progress": [8, 10], "project": [8, 11], "project_id": [7, 8], "protocol": 1, "provid": [0, 1, 3, 5, 7, 8, 12], "public": [3, 5], "put": 0, "py": 11, "python": [2, 9, 11], "python3": 11, "python_subprocess_command": 11, "queri": [1, 2, 3, 5, 8, 11, 12], "query_str": 7, "query_txt": [7, 8], "query_url": [2, 3], "quickstart": 2, "rather": 0, "raw": [7, 11], "raw_data_download": [2, 7], "rbac": 3, "read": [3, 5, 11], "readm": 2, "reason": 10, "record": [1, 3, 5, 7, 8, 11, 12], "refresh": [0, 10], "refresh_access_token": [0, 2], "refresh_fil": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "refresh_token": 0, "regist": 8, "regular": 7, "relat": 9, "remov": [1, 6, 11, 13], "replac": 11, "replace_url": 11, "repo": 2, "repres": [3, 5, 10], "represent": [1, 3], "request": [0, 1, 3, 5, 8, 11, 12], "requir": 10, "resolv": 10, "resolve_object": [2, 9, 10], "respect": 7, "respons": [0, 1, 3, 4, 5], "result": [1, 8, 10, 11], "retri": 8, "retriev": [1, 8, 10, 12], "return": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11], "return_full_metadata": 5, "rev": 3, "revers": 8, "revis": 3, "right": 1, "rm": [2, 13], "rm_path": [2, 13], "root": [11, 12], "row": [7, 8, 11, 12], "row_offset": 8, "rtype": 3, "run": [8, 11], "s3": [1, 10, 11], "safe": 11, "same": [5, 11, 13], "sampl": [8, 10], "sandbox": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "save": 10, "save_directori": 10, "schema": 8, "scope": [0, 1], "screen": 8, "script": 2, "search": [0, 2, 3], "second": [1, 4], "secret": 0, "see": [7, 10, 11], "self": 10, "semaphon": 12, "semaphor": 12, "separ": [0, 11], "server": 10, "servic": [1, 3, 4, 5, 6, 8, 11, 12, 13], "service_loc": [3, 4, 5], "session": 11, "set": [0, 1, 5, 10], "setup": 2, "sheepdog": 8, "should": [0, 8, 11], "show": 10, "show_progress": 10, "shown": 11, "sign": 1, "signpost": 3, "similar": 10, "simpl": 3, "simpli": 11, "sinc": 3, "singl": [1, 5, 8], "size": [2, 3, 9, 10, 11], "skip": 8, "sleep": 4, "so": 11, "some": [0, 2], "someth": 11, "sort": 7, "sort_field": 7, "sort_object": 7, "sourc": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "space": [0, 11], "specif": [5, 8, 11, 12], "specifi": [0, 1, 3, 11, 13], "spreadsheet": 8, "src_path": 13, "src_urlstr": 13, "src_w": 13, "src_wskei": 13, "ssl": [3, 4, 5], "start": [3, 4, 7, 8, 10], "start_tim": [2, 9, 10], "static": 10, "statu": [2, 4, 9, 10], "storag": [1, 2, 6], "store": [1, 3, 10], "str": [0, 1, 3, 4, 5, 7, 8, 10, 11, 12], "string": [0, 3, 5, 11, 13], "strip": 11, "sub": 8, "subject": [7, 8], "submiss": 2, "submit": [8, 11], "submit_additional_metadata_column": 11, "submit_fil": [2, 8], "submit_record": [2, 8], "submitter_id": 7, "success": 10, "successfulli": 10, "suffici": 3, "suppli": 3, "support": [0, 1, 5, 8, 11], "sure": 1, "synchron": 11, "syntax": 7, "system": [6, 7, 8, 9], "t": [1, 5, 11], "tab": 11, "task": 9, "temporari": 11, "test": 11, "test1": 11, "test2": 11, "test3": 11, "test4": 11, "test5": 11, "text": [1, 7, 8], "than": [0, 5], "thei": [0, 10], "them": [10, 11], "thi": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "those": 11, "thread": 11, "thread_num": 11, "threadcontrol": [2, 9, 11], "through": [8, 11], "tier": 7, "time": [1, 3, 8, 10, 11], "timestamp": 10, "tmp_folder": [2, 9, 11], "token": [0, 10], "tool": 2, "total": 11, "treat": [1, 5], "tree": 10, "true": [3, 4, 5, 6, 7, 8, 10, 11, 12], "try": 0, "tsv": [8, 11, 12], "tupl": [0, 3, 11, 12], "type": [1, 3, 4, 5, 7, 8, 10, 11, 12], "typic": 10, "uc": 7, "unaccess": 7, "under": [0, 8, 13], "uniqu": [1, 5], "unknown": 10, "unpack": 10, "unpack_packag": 10, "until": [4, 10], "up": [5, 9], "updat": [2, 3, 5, 10, 11], "update_alias": [2, 5], "update_blank": [2, 3], "update_record": [2, 3], "updated_tim": [2, 9, 10], "upload": [1, 2, 3, 8, 13], "upload_fil": [1, 2], "upload_file_to_guid": [1, 2], "upload_url": [2, 13], "url": [1, 2, 3, 9, 10, 11, 12, 13], "urls_metadata": 3, "us": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "usag": 11, "use_agg_md": 5, "user": [0, 10, 12], "user_access": [2, 9, 10], "usual": 12, "utcnow": 1, "util": 9, "uuid": [1, 3, 8], "uuid1": 8, "uuid2": 8, "valid": [3, 7], "valu": [0, 1, 3, 5, 7, 10, 11], "value_from_indexd": 11, "value_from_manifest": 11, "variabl": [0, 7, 8], "variou": 2, "verbos": [7, 8], "verif": 11, "verifi": [2, 9], "verify_manifest": 11, "verify_object_manifest": 11, "version": [3, 4, 5], "vital_statu": 7, "w": 13, "wa": 0, "wai": 10, "wait": 4, "want": [0, 3, 8], "warn": 11, "we": [3, 11], "web": 0, "what": 5, "when": [0, 3, 7, 10, 12], "where": [0, 3, 5, 11, 12], "whether": [3, 4, 5, 8, 11, 12], "which": [8, 10], "while": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "whose": 5, "within": [0, 2, 9], "without": [3, 5], "won": 5, "work": [0, 10], "workaround": 11, "worksheet": 8, "workspac": [0, 2], "wrapper": 10, "write": 11, "ws_urlstr": 13, "wskei": 13, "wss": 13, "wt": [0, 10], "x": 11, "xlsx": 8, "you": [0, 3, 8, 11], "your": 0}, "titles": ["Gen3 Auth Helper", "Gen3 File Class", "Welcome to Gen3 SDK\u2019s documentation!", "Gen3 Index Class", "Gen3 Jobs Class", "Gen3 Metadata Class", "Gen3 Object Class", "Gen3 Query Class", "Gen3 Submission Class", "Gen3 Tools", "DRS Download Tools", "Indexing Tools", "Metadata Tools", "Gen3 Workspace Storage"], "titleterms": {"": 2, "auth": 0, "class": [1, 3, 4, 5, 6, 7, 8], "document": 2, "download": [10, 11], "dr": 10, "file": 1, "gen3": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 13], "helper": 0, "index": [3, 11], "indic": 2, "ingest": 12, "job": 4, "metadata": [5, 12], "object": 6, "queri": 7, "sdk": 2, "storag": 13, "submiss": 8, "tabl": 2, "tool": [9, 10, 11, 12], "verifi": 11, "welcom": 2, "workspac": 13}}) \ No newline at end of file +Search.setIndex({"alltitles": {"DRS Download Tools": [[10, "module-gen3.tools.download.drs_download"]], "Download": [[11, "module-gen3.tools.indexing.download_manifest"]], "Gen3 Auth Helper": [[0, "gen3-auth-helper"]], "Gen3 File Class": [[1, "gen3-file-class"]], "Gen3 Index Class": [[3, "gen3-index-class"]], "Gen3 Jobs Class": [[4, "gen3-jobs-class"]], "Gen3 Metadata Class": [[5, "gen3-metadata-class"]], "Gen3 Object Class": [[6, "gen3-object-class"]], "Gen3 Query Class": [[7, "gen3-query-class"]], "Gen3 Submission Class": [[8, "gen3-submission-class"]], "Gen3 Tools": [[9, "gen3-tools"]], "Gen3 Workspace Storage": [[13, "gen3-workspace-storage"]], "Index": [[11, "module-gen3.tools.indexing.index_manifest"]], "Indexing Tools": [[11, "indexing-tools"]], "Indices and tables": [[2, "indices-and-tables"]], "Ingest": [[12, "module-gen3.tools.metadata.ingest_manifest"]], "Metadata Tools": [[12, "metadata-tools"]], "Verify": [[11, "module-gen3.tools.indexing.verify_manifest"]], "Welcome to Gen3 SDK\u2019s documentation!": [[2, "welcome-to-gen3-sdk-s-documentation"]]}, "docnames": ["auth", "file", "index", "indexing", "jobs", "metadata", "object", "query", "submission", "tools", "tools/drs_pull", "tools/indexing", "tools/metadata", "wss"], "envversion": {"sphinx": 61, "sphinx.domains.c": 3, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 9, "sphinx.domains.index": 1, "sphinx.domains.javascript": 3, "sphinx.domains.math": 2, "sphinx.domains.python": 4, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx.ext.viewcode": 1}, "filenames": ["auth.rst", "file.rst", "index.rst", "indexing.rst", "jobs.rst", "metadata.rst", "object.rst", "query.rst", "submission.rst", "tools.rst", "tools/drs_pull.rst", "tools/indexing.rst", "tools/metadata.rst", "wss.rst"], "indexentries": {"_manager (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable._manager", false]], "access_methods (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.access_methods", false]], "acls (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.ACLS", false]], "async_create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_create", false]], "async_create_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_create_aliases", false]], "async_create_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_create_record", false]], "async_delete_alias() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_delete_alias", false]], "async_delete_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_delete_aliases", false]], "async_download_object_manifest() (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.async_download_object_manifest", false]], "async_get() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_get", false]], "async_get_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_get_aliases", false]], "async_get_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_record", false]], "async_get_records_from_checksum() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_records_from_checksum", false]], "async_get_records_on_page() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_records_on_page", false]], "async_get_with_params() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_with_params", false]], "async_ingest_metadata_manifest() (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.async_ingest_metadata_manifest", false]], "async_query_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_query_urls", false]], "async_query_urls_from_indexd() (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.async_query_urls_from_indexd", false]], "async_run_job_and_wait() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.async_run_job_and_wait", false]], "async_update() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_update", false]], "async_update_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_update_aliases", false]], "async_update_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_update_record", false]], "async_verify_object_manifest() (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.async_verify_object_manifest", false]], "auth_provider (gen3.metadata.gen3metadata attribute)": [[5, "gen3.metadata.Gen3Metadata.auth_provider", false]], "authz (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.AUTHZ", false]], "batch_create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.batch_create", false]], "cache_hosts_wts_tokens() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.cache_hosts_wts_tokens", false]], "children (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.children", false]], "column_to_use_as_guid (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.COLUMN_TO_USE_AS_GUID", false]], "commons_url (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.commons_url", false]], "copy() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.copy", false]], "create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create", false]], "create_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create_aliases", false]], "create_blank() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_blank", false]], "create_index_key_path() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create_index_key_path", false]], "create_job() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.create_job", false]], "create_new_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_new_version", false]], "create_object_list() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.create_object_list", false]], "create_program() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.create_program", false]], "create_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.create_project", false]], "create_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_record", false]], "created_time (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.created_time", false]], "curl() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.curl", false]], "current_dir (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.CURRENT_DIR", false]], "current_dir (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.CURRENT_DIR", false]], "current_dir (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.CURRENT_DIR", false]], "delete() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete", false]], "delete_alias() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_alias", false]], "delete_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_aliases", false]], "delete_all_guids() (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.delete_all_guids", false]], "delete_file() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.delete_file", false]], "delete_file_locations() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.delete_file_locations", false]], "delete_index_key_path() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_index_key_path", false]], "delete_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_node", false]], "delete_nodes() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_nodes", false]], "delete_object() (gen3.object.gen3object method)": [[6, "gen3.object.Gen3Object.delete_object", false]], "delete_program() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_program", false]], "delete_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_project", false]], "delete_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.delete_record", false]], "delete_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_record", false]], "delete_records() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_records", false]], "download() (gen3.tools.download.drs_download.downloadable method)": [[10, "gen3.tools.download.drs_download.Downloadable.download", false]], "download() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.download", false]], "download() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.download", false]], "download_files_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.download_files_in_drs_manifest", false]], "download_single() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.download_single", false]], "download_url() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.download_url", false]], "downloadable (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.Downloadable", false]], "downloadmanager (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.DownloadManager", false]], "downloadstatus (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.DownloadStatus", false]], "end_time (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.end_time", false]], "endpoint (gen3.metadata.gen3metadata attribute)": [[5, "gen3.metadata.Gen3Metadata.endpoint", false]], "export_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.export_node", false]], "export_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.export_record", false]], "file_name (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.file_name", false]], "file_name (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.file_name", false]], "file_size (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.file_size", false]], "file_size (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.file_size", false]], "gen3.tools": [[9, "module-gen3.tools", false]], "gen3.tools.download.drs_download": [[10, "module-gen3.tools.download.drs_download", false]], "gen3.tools.indexing.download_manifest": [[11, "module-gen3.tools.indexing.download_manifest", false]], "gen3.tools.indexing.index_manifest": [[11, "module-gen3.tools.indexing.index_manifest", false]], "gen3.tools.indexing.verify_manifest": [[11, "module-gen3.tools.indexing.verify_manifest", false]], "gen3.tools.metadata.ingest_manifest": [[12, "module-gen3.tools.metadata.ingest_manifest", false]], "gen3auth (class in gen3.auth)": [[0, "gen3.auth.Gen3Auth", false]], "gen3file (class in gen3.file)": [[1, "gen3.file.Gen3File", false]], "gen3index (class in gen3.index)": [[3, "gen3.index.Gen3Index", false]], "gen3jobs (class in gen3.jobs)": [[4, "gen3.jobs.Gen3Jobs", false]], "gen3metadata (class in gen3.metadata)": [[5, "gen3.metadata.Gen3Metadata", false]], "gen3object (class in gen3.object)": [[6, "gen3.object.Gen3Object", false]], "gen3query (class in gen3.query)": [[7, "gen3.query.Gen3Query", false]], "gen3submission (class in gen3.submission)": [[8, "gen3.submission.Gen3Submission", false]], "gen3wsstorage (class in gen3.wss)": [[13, "gen3.wss.Gen3WsStorage", false]], "get() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get", false]], "get() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get", false]], "get_access_token() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.get_access_token", false]], "get_access_token_from_wts() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.get_access_token_from_wts", false]], "get_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_aliases", false]], "get_all_records() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_all_records", false]], "get_dictionary_all() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_dictionary_all", false]], "get_dictionary_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_dictionary_node", false]], "get_fresh_token() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.get_fresh_token", false]], "get_graphql_schema() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_graphql_schema", false]], "get_guids_prefix() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_guids_prefix", false]], "get_index_key_paths() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_index_key_paths", false]], "get_latest_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_latest_version", false]], "get_output() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_output", false]], "get_presigned_url() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.get_presigned_url", false]], "get_programs() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_programs", false]], "get_project_dictionary() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_project_dictionary", false]], "get_project_manifest() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_project_manifest", false]], "get_projects() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_projects", false]], "get_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_record", false]], "get_record_doc() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_record_doc", false]], "get_records() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_records", false]], "get_records_on_page() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_records_on_page", false]], "get_stats() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_stats", false]], "get_status() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_status", false]], "get_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_urls", false]], "get_valid_guids() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_valid_guids", false]], "get_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_version", false]], "get_version() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_version", false]], "get_version() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_version", false]], "get_versions() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_versions", false]], "get_with_params() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_with_params", false]], "graphql_query() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.graphql_query", false]], "guid (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.GUID", false]], "guid_type_for_indexed_file_object (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.GUID_TYPE_FOR_INDEXED_FILE_OBJECT", false]], "guid_type_for_non_indexed_file_object (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.GUID_TYPE_FOR_NON_INDEXED_FILE_OBJECT", false]], "hostname (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.hostname", false]], "index_object_manifest() (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.index_object_manifest", false]], "indexd_record_page_size (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.INDEXD_RECORD_PAGE_SIZE", false]], "is_healthy() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.is_healthy", false]], "is_healthy() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.is_healthy", false]], "is_healthy() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.is_healthy", false]], "list_access_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_access_in_drs_manifest", false]], "list_drs_object() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_drs_object", false]], "list_files_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_files_in_drs_manifest", false]], "list_jobs() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.list_jobs", false]], "load() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.load", false]], "load_manifest() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.load_manifest", false]], "ls() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.ls", false]], "ls_path() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.ls_path", false]], "manifest (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.Manifest", false]], "max_concurrent_requests (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.MAX_CONCURRENT_REQUESTS", false]], "max_concurrent_requests (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.MAX_CONCURRENT_REQUESTS", false]], "max_concurrent_requests (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.MAX_CONCURRENT_REQUESTS", false]], "md5 (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.MD5", false]], "md5sum (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.md5sum", false]], "module": [[9, "module-gen3.tools", false], [10, "module-gen3.tools.download.drs_download", false], [11, "module-gen3.tools.indexing.download_manifest", false], [11, "module-gen3.tools.indexing.index_manifest", false], [11, "module-gen3.tools.indexing.verify_manifest", false], [12, "module-gen3.tools.metadata.ingest_manifest", false]], "object_id (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.object_id", false]], "object_id (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.object_id", false]], "object_type (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.object_type", false]], "open_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.open_project", false]], "pprint() (gen3.tools.download.drs_download.downloadable method)": [[10, "gen3.tools.download.drs_download.Downloadable.pprint", false]], "prev_guid (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.PREV_GUID", false]], "query() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.query", false]], "query() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.query", false]], "query() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.query", false]], "query_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.query_urls", false]], "raw_data_download() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.raw_data_download", false]], "refresh_access_token() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.refresh_access_token", false]], "resolve_objects() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.resolve_objects", false]], "rm() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.rm", false]], "rm_path() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.rm_path", false]], "size (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.SIZE", false]], "start_time (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.start_time", false]], "status (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.status", false]], "submit_file() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.submit_file", false]], "submit_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.submit_record", false]], "threadcontrol (class in gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.ThreadControl", false]], "tmp_folder (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.TMP_FOLDER", false]], "update() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.update", false]], "update_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.update_aliases", false]], "update_blank() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.update_blank", false]], "update_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.update_record", false]], "updated_time (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.updated_time", false]], "upload() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.upload", false]], "upload_file() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.upload_file", false]], "upload_file_to_guid() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.upload_file_to_guid", false]], "upload_url() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.upload_url", false]], "urls (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.URLS", false]], "user_access() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.user_access", false]]}, "objects": {"gen3": [[9, 3, 0, "-", "tools"]], "gen3.auth": [[0, 0, 1, "", "Gen3Auth"]], "gen3.auth.Gen3Auth": [[0, 1, 1, "", "curl"], [0, 1, 1, "", "get_access_token"], [0, 1, 1, "", "get_access_token_from_wts"], [0, 1, 1, "", "refresh_access_token"]], "gen3.file": [[1, 0, 1, "", "Gen3File"]], "gen3.file.Gen3File": [[1, 1, 1, "", "delete_file"], [1, 1, 1, "", "delete_file_locations"], [1, 1, 1, "", "download_single"], [1, 1, 1, "", "get_presigned_url"], [1, 1, 1, "", "upload_file"], [1, 1, 1, "", "upload_file_to_guid"]], "gen3.index": [[3, 0, 1, "", "Gen3Index"]], "gen3.index.Gen3Index": [[3, 1, 1, "", "async_create_record"], [3, 1, 1, "", "async_get_record"], [3, 1, 1, "", "async_get_records_from_checksum"], [3, 1, 1, "", "async_get_records_on_page"], [3, 1, 1, "", "async_get_with_params"], [3, 1, 1, "", "async_query_urls"], [3, 1, 1, "", "async_update_record"], [3, 1, 1, "", "create_blank"], [3, 1, 1, "", "create_new_version"], [3, 1, 1, "", "create_record"], [3, 1, 1, "", "delete_record"], [3, 1, 1, "", "get"], [3, 1, 1, "", "get_all_records"], [3, 1, 1, "", "get_guids_prefix"], [3, 1, 1, "", "get_latest_version"], [3, 1, 1, "", "get_record"], [3, 1, 1, "", "get_record_doc"], [3, 1, 1, "", "get_records"], [3, 1, 1, "", "get_records_on_page"], [3, 1, 1, "", "get_stats"], [3, 1, 1, "", "get_urls"], [3, 1, 1, "", "get_valid_guids"], [3, 1, 1, "", "get_version"], [3, 1, 1, "", "get_versions"], [3, 1, 1, "", "get_with_params"], [3, 1, 1, "", "is_healthy"], [3, 1, 1, "", "query_urls"], [3, 1, 1, "", "update_blank"], [3, 1, 1, "", "update_record"]], "gen3.jobs": [[4, 0, 1, "", "Gen3Jobs"]], "gen3.jobs.Gen3Jobs": [[4, 1, 1, "", "async_run_job_and_wait"], [4, 1, 1, "", "create_job"], [4, 1, 1, "", "get_output"], [4, 1, 1, "", "get_status"], [4, 1, 1, "", "get_version"], [4, 1, 1, "", "is_healthy"], [4, 1, 1, "", "list_jobs"]], "gen3.metadata": [[5, 0, 1, "", "Gen3Metadata"]], "gen3.metadata.Gen3Metadata": [[5, 1, 1, "", "async_create"], [5, 1, 1, "", "async_create_aliases"], [5, 1, 1, "", "async_delete_alias"], [5, 1, 1, "", "async_delete_aliases"], [5, 1, 1, "", "async_get"], [5, 1, 1, "", "async_get_aliases"], [5, 1, 1, "", "async_update"], [5, 1, 1, "", "async_update_aliases"], [5, 2, 1, "", "auth_provider"], [5, 1, 1, "", "batch_create"], [5, 1, 1, "", "create"], [5, 1, 1, "", "create_aliases"], [5, 1, 1, "", "create_index_key_path"], [5, 1, 1, "", "delete"], [5, 1, 1, "", "delete_alias"], [5, 1, 1, "", "delete_aliases"], [5, 1, 1, "", "delete_index_key_path"], [5, 2, 1, "", "endpoint"], [5, 1, 1, "", "get"], [5, 1, 1, "", "get_aliases"], [5, 1, 1, "", "get_index_key_paths"], [5, 1, 1, "", "get_version"], [5, 1, 1, "", "is_healthy"], [5, 1, 1, "", "query"], [5, 1, 1, "", "update"], [5, 1, 1, "", "update_aliases"]], "gen3.object": [[6, 0, 1, "", "Gen3Object"]], "gen3.object.Gen3Object": [[6, 1, 1, "", "delete_object"]], "gen3.query": [[7, 0, 1, "", "Gen3Query"]], "gen3.query.Gen3Query": [[7, 1, 1, "", "graphql_query"], [7, 1, 1, "", "query"], [7, 1, 1, "", "raw_data_download"]], "gen3.submission": [[8, 0, 1, "", "Gen3Submission"]], "gen3.submission.Gen3Submission": [[8, 1, 1, "", "create_program"], [8, 1, 1, "", "create_project"], [8, 1, 1, "", "delete_node"], [8, 1, 1, "", "delete_nodes"], [8, 1, 1, "", "delete_program"], [8, 1, 1, "", "delete_project"], [8, 1, 1, "", "delete_record"], [8, 1, 1, "", "delete_records"], [8, 1, 1, "", "export_node"], [8, 1, 1, "", "export_record"], [8, 1, 1, "", "get_dictionary_all"], [8, 1, 1, "", "get_dictionary_node"], [8, 1, 1, "", "get_graphql_schema"], [8, 1, 1, "", "get_programs"], [8, 1, 1, "", "get_project_dictionary"], [8, 1, 1, "", "get_project_manifest"], [8, 1, 1, "", "get_projects"], [8, 1, 1, "", "open_project"], [8, 1, 1, "", "query"], [8, 1, 1, "", "submit_file"], [8, 1, 1, "", "submit_record"]], "gen3.tools.download": [[10, 3, 0, "-", "drs_download"]], "gen3.tools.download.drs_download": [[10, 0, 1, "", "DownloadManager"], [10, 0, 1, "", "DownloadStatus"], [10, 0, 1, "", "Downloadable"], [10, 0, 1, "", "Manifest"], [10, 4, 1, "", "download_files_in_drs_manifest"], [10, 4, 1, "", "list_access_in_drs_manifest"], [10, 4, 1, "", "list_drs_object"], [10, 4, 1, "", "list_files_in_drs_manifest"]], "gen3.tools.download.drs_download.DownloadManager": [[10, 1, 1, "", "cache_hosts_wts_tokens"], [10, 1, 1, "", "download"], [10, 1, 1, "", "get_fresh_token"], [10, 1, 1, "", "resolve_objects"], [10, 1, 1, "", "user_access"]], "gen3.tools.download.drs_download.DownloadStatus": [[10, 2, 1, "", "end_time"], [10, 2, 1, "", "start_time"], [10, 2, 1, "", "status"]], "gen3.tools.download.drs_download.Downloadable": [[10, 2, 1, "", "_manager"], [10, 2, 1, "", "access_methods"], [10, 2, 1, "", "children"], [10, 2, 1, "", "created_time"], [10, 1, 1, "", "download"], [10, 2, 1, "", "file_name"], [10, 2, 1, "", "file_size"], [10, 2, 1, "", "hostname"], [10, 2, 1, "", "object_id"], [10, 2, 1, "", "object_type"], [10, 1, 1, "", "pprint"], [10, 2, 1, "", "updated_time"]], "gen3.tools.download.drs_download.Manifest": [[10, 2, 1, "", "commons_url"], [10, 1, 1, "", "create_object_list"], [10, 2, 1, "", "file_name"], [10, 2, 1, "", "file_size"], [10, 1, 1, "", "load"], [10, 1, 1, "", "load_manifest"], [10, 2, 1, "", "md5sum"], [10, 2, 1, "", "object_id"]], "gen3.tools.indexing": [[11, 3, 0, "-", "download_manifest"], [11, 3, 0, "-", "index_manifest"], [11, 3, 0, "-", "verify_manifest"]], "gen3.tools.indexing.download_manifest": [[11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "INDEXD_RECORD_PAGE_SIZE"], [11, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [11, 2, 1, "", "TMP_FOLDER"], [11, 4, 1, "", "async_download_object_manifest"]], "gen3.tools.indexing.index_manifest": [[11, 2, 1, "", "ACLS"], [11, 2, 1, "", "AUTHZ"], [11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "GUID"], [11, 2, 1, "", "MD5"], [11, 2, 1, "", "PREV_GUID"], [11, 2, 1, "", "SIZE"], [11, 0, 1, "", "ThreadControl"], [11, 2, 1, "", "URLS"], [11, 4, 1, "", "delete_all_guids"], [11, 4, 1, "", "index_object_manifest"]], "gen3.tools.indexing.verify_manifest": [[11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [11, 4, 1, "", "async_verify_object_manifest"]], "gen3.tools.metadata": [[12, 3, 0, "-", "ingest_manifest"]], "gen3.tools.metadata.ingest_manifest": [[12, 2, 1, "", "COLUMN_TO_USE_AS_GUID"], [12, 2, 1, "", "GUID_TYPE_FOR_INDEXED_FILE_OBJECT"], [12, 2, 1, "", "GUID_TYPE_FOR_NON_INDEXED_FILE_OBJECT"], [12, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [12, 4, 1, "", "async_ingest_metadata_manifest"], [12, 4, 1, "", "async_query_urls_from_indexd"]], "gen3.wss": [[13, 0, 1, "", "Gen3WsStorage"]], "gen3.wss.Gen3WsStorage": [[13, 1, 1, "", "copy"], [13, 1, 1, "", "download"], [13, 1, 1, "", "download_url"], [13, 1, 1, "", "ls"], [13, 1, 1, "", "ls_path"], [13, 1, 1, "", "rm"], [13, 1, 1, "", "rm_path"], [13, 1, 1, "", "upload"], [13, 1, 1, "", "upload_url"]]}, "objnames": {"0": ["py", "class", "Python class"], "1": ["py", "method", "Python method"], "2": ["py", "attribute", "Python attribute"], "3": ["py", "module", "Python module"], "4": ["py", "function", "Python function"]}, "objtypes": {"0": "py:class", "1": "py:method", "2": "py:attribute", "3": "py:module", "4": "py:function"}, "terms": {"": [1, 4, 8, 10, 11], "0": [5, 7, 8, 11], "0046513": [], "052073": [], "0576868": [], "064572": [], "07464": [], "0a80fada010c": 11, "0a80fada096c": 11, "0a80fada097c": 11, "0a80fada098c": 11, "0a80fada099c": 11, "1": [4, 5, 8, 10, 11], "10": [5, 7, 11], "100": [8, 11], "11e9": 11, "1676264": [], "1713542306": [], "1713542765": [], "1713543033": [], "1713543225": [], "1713543506": [], "1713543956": [], "1713544131": [], "1713544132": [], "1713544397": [], "1713544598": [], "1713545857": [], "1713545858": [], "1713549370": [], "1713549689": [], "1713550571": [], "1713557245": [], "1713559376": [], "1713560080": [], "1713560402": [], "1713560403": [], "1713561061": [11, 12], "1731803": [], "1771936": [], "1913438": [], "2": [5, 11], "2184267": 11, "24": [11, 12], "255e396f": 11, "2877355": [], "2930224": [], "2995": [], "3": [5, 11], "30": 8, "3102272": [], "33": 5, "333": 5, "343434344": 11, "363455714": 11, "4": [5, 11], "4017086": [], "4052968": [], "4090197": [], "4463434": [], "450c": 11, "4632835": [], "4649727": [], "4714": 8, "473d83400bc1bc9dc635e334fadd433c": 11, "473d83400bc1bc9dc635e334faddd33c": 11, "473d83400bc1bc9dc635e334fadde33c": 11, "473d83400bc1bc9dc635e334faddf33c": 11, "4752307": [], "4756553": [], "5": [0, 5], "50": 7, "5202463": 12, "543434443": 11, "5669184": [], "5899982": [], "6692646": [], "6739478": [], "674552": [], "6f90": 8, "700799": [], "7232893": [], "756255": [], "760149": [], "7d3d8d2083b4": 11, "8044841": [], "8375325": [], "8420": 8, "8874054": [], "8882551": [], "93d9af72": 11, "9a07": 11, "A": [1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "AND": 5, "Be": 1, "But": 5, "By": 11, "For": [1, 5, 6, 7, 8, 9, 11], "IF": 11, "If": [0, 1, 7, 11, 12], "In": 10, "It": 10, "NOT": 12, "OR": 5, "One": 7, "Such": 9, "THE": 11, "That": 3, "The": [0, 1, 2, 3, 5, 8, 10, 11], "There": 11, "These": 9, "To": 11, "Will": [4, 7, 10], "_get_acl_from_row": 11, "_get_authz_from_row": 11, "_get_file_name_from_row": 11, "_get_file_size_from_row": 11, "_get_guid_for_row": 12, "_get_guid_from_row": 11, "_get_md5_from_row": 11, "_get_urls_from_row": 11, "_guid_typ": 12, "_manag": [2, 9, 10], "_query_for_associated_indexd_record_guid": 12, "_ssl": [3, 4, 5], "a5c6": 11, "ab167e49d25b488939b1ede42752458b": 3, "about": [2, 3], "abov": 11, "access": [0, 1, 3, 7, 10], "access_method": [2, 9, 10], "access_token": 0, "accesstoken": 0, "acl": [2, 3, 9, 11], "across": 11, "act": 0, "action": [9, 11], "actual": 11, "ad": 3, "add": [3, 5], "addit": [3, 5, 10, 11], "admin": [5, 11], "admin_endpoint_suffix": 5, "after": 10, "against": [3, 7, 8, 11, 12], "algorithm": 3, "alia": [3, 5], "alias": 5, "aliv": 7, "all": [1, 3, 4, 5, 6, 7, 8, 10, 11, 12], "allow": [0, 6, 8, 10, 11, 12], "allowed_data_upload_bucket": 1, "along": 2, "alreadi": 9, "also": 1, "altern": [5, 11], "alwai": 5, "ammount": 12, "amount": [1, 9], "an": [0, 3, 6, 8, 10, 11], "ani": [0, 5, 10, 11], "anoth": 5, "api": [0, 5, 8, 11], "api_kei": 11, "appli": 7, "appropri": 13, "ar": [5, 7, 8, 9, 10, 11], "arbitrari": 0, "argument": [0, 13], "arrai": 8, "asc": 7, "assign": 9, "assist": 10, "associ": [3, 5], "assum": 11, "async": [3, 4, 5, 9, 11, 12], "async_cr": [2, 5], "async_create_alias": [2, 5], "async_create_record": [2, 3], "async_delete_alia": [2, 5], "async_delete_alias": [2, 5], "async_download_object_manifest": [2, 9, 11], "async_get": [2, 5], "async_get_alias": [2, 5], "async_get_record": [2, 3], "async_get_records_from_checksum": [2, 3], "async_get_records_on_pag": [2, 3], "async_get_with_param": [2, 3], "async_ingest_metadata_manifest": [2, 9, 12], "async_query_url": [2, 3], "async_query_urls_from_indexd": [2, 9, 12], "async_run_job_and_wait": [2, 4], "async_upd": [2, 5], "async_update_alias": [2, 5], "async_update_record": [2, 3], "async_verify_object_manifest": [2, 9, 11], "asynchron": [3, 4, 5], "asyncio": [11, 12], "asyncron": 5, "attach": [3, 5], "attempt": 11, "attribut": [10, 11], "auth": [1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "auth_provid": [1, 2, 3, 4, 5, 6, 7, 8, 13], "authbas": 0, "authent": 0, "author": 1, "authz": [0, 1, 2, 3, 9, 10, 11], "auto": [0, 2], "automat": 0, "avail": [1, 2, 10, 11], "az": 1, "b": [5, 11], "b0f1": 11, "bar": 10, "base": [0, 1, 3, 4, 5, 6, 7, 8, 9, 11, 13], "baseid": 3, "basic": [3, 11, 12], "batch_creat": [2, 5], "batch_siz": 8, "behalf": 0, "behavior": 11, "being": 3, "belong": 8, "below": 11, "blank": 3, "blob": [5, 7], "bodi": 3, "bool": [4, 5, 8, 10, 11, 12], "boolean": 3, "bownload": 10, "broad": 9, "broken": 9, "bucket": [1, 6], "bundl": 10, "byte": 10, "c": [5, 11], "cach": 10, "cache_hosts_wts_token": [2, 9, 10], "call": [10, 13], "can": [0, 3, 4, 8, 11, 12], "capabl": 9, "case": [0, 10], "categori": 9, "ccle": 8, "ccle_one_record": 8, "ccle_sample_nod": 8, "cdi": 7, "chang": [3, 11], "checksum": [3, 10], "checksum_typ": 3, "child": 10, "children": [2, 9, 10], "chunk_siz": 8, "class": [0, 2, 10, 11, 13], "cli": 10, "client": [0, 3], "client_credenti": 0, "client_id": 0, "client_scop": 0, "client_secret": 0, "code": [2, 8], "column": [11, 12], "column_to_use_as_guid": [2, 9, 12], "columna": 11, "columnb": 11, "columnc": 11, "com": 7, "comma": 11, "command": [10, 11], "common": [0, 1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13], "commons_url": [2, 9, 10, 11, 12], "complet": [4, 11], "complex": 7, "concat": 11, "concurr": [11, 12], "configur": 1, "connect": 12, "consist": 3, "constructor": 0, "contain": [0, 2, 5, 8, 9, 10, 11, 12], "content": [3, 13], "content_created_d": 3, "content_updated_d": 3, "continu": 10, "control": 3, "conveni": 10, "copi": [2, 13], "coroutin": 11, "correspond": 3, "count": 3, "crdc": 0, "creat": [2, 3, 4, 5, 6, 8, 10, 11], "create_alias": [2, 5], "create_blank": [2, 3], "create_index_key_path": [2, 5], "create_job": [2, 4], "create_new_vers": [2, 3], "create_object_list": [2, 9, 10], "create_program": [2, 8], "create_project": [2, 8], "create_record": [2, 3], "created_tim": [2, 9, 10], "creation": [3, 11], "cred": 3, "credenti": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "csv": [8, 11, 12], "curl": [0, 2], "current": [6, 8, 10], "current_dir": [2, 9, 11], "custom": 11, "d": 5, "d70b41b9": 8, "data": [0, 1, 3, 5, 7, 8, 10, 11], "data_spreadsheet": 8, "data_typ": 7, "data_upload_bucket": 1, "dataa": 11, "datab": 11, "databas": 5, "datacommon": 0, "datafil": 10, "datamanag": 10, "date": 3, "datetim": [1, 3, 10], "dbgap": 12, "dcf": 8, "def": 11, "default": [0, 1, 3, 7, 8, 11, 12], "defin": [5, 8, 10], "delai": 4, "delet": [0, 1, 2, 3, 5, 6, 8, 10, 11], "delete_alia": [2, 5], "delete_alias": [2, 5], "delete_all_guid": [2, 9, 11], "delete_fil": [1, 2], "delete_file_loc": [1, 2, 6], "delete_index_key_path": [2, 5], "delete_nod": [2, 8], "delete_object": [2, 6], "delete_program": [2, 8], "delete_project": [2, 8], "delete_record": [2, 3, 8], "delete_unpacked_packag": 10, "delimet": [11, 12], "delimit": 11, "demograph": 8, "deprec": 1, "descript": [3, 5], "desir": 11, "dest_path": 13, "dest_urlstr": 13, "dest_w": 13, "dest_wskei": 13, "detail": [2, 7, 10], "determin": [10, 11, 12], "dev": 11, "dict": [3, 4, 5, 10, 11, 12], "dictionari": [3, 4, 5, 7, 8], "did": 3, "differ": 5, "direct": 0, "directori": [10, 11], "disabl": 10, "discoveri": 10, "disk": 13, "dispatch": 4, "dist_resolut": 3, "distribut": 3, "doc": [7, 10], "docstr": 2, "document": [1, 3], "doe": [0, 12], "domain": [11, 12], "done": 4, "download": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 13], "download_files_in_drs_manifest": [2, 9, 10], "download_list": 10, "download_manifest": 11, "download_singl": [1, 2], "download_url": [2, 13], "downloadmanag": [2, 9, 10], "downloadstatu": [2, 9, 10], "dr": [2, 9], "drs_download": 10, "drs_hostnam": 10, "drsdownload": 10, "drsobjecttyp": 10, "e": [5, 10], "e043ab8b77b9": 8, "each": [3, 8, 10, 11], "effici": 9, "eg": 3, "either": 8, "elasticsearch": 7, "els": [0, 12], "elsewher": 12, "empti": [8, 11], "enabl": 11, "end": [5, 10], "end_tim": [2, 9, 10], "endpoint": [0, 1, 2, 3, 4, 5, 7, 8, 13], "entir": 8, "entri": [3, 11], "env": 0, "environ": 0, "equal": 7, "error": [10, 11, 12], "error_nam": 11, "etc": 8, "even": 11, "everi": [9, 11], "everyth": 11, "ex": [0, 11, 12], "exampl": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "exclud": 3, "execut": [7, 8, 11], "exist": [1, 3, 5, 6, 9, 12], "expect": [5, 9, 11], "experi": 8, "expir": [0, 1], "expires_in": 1, "export": [8, 10], "export_nod": [2, 8], "export_record": [2, 8], "f1f8": 11, "factori": 10, "fail": [8, 10], "fals": [3, 5, 6, 10, 11], "featur": [1, 6], "fenc": [0, 1], "fetch": 0, "field": [3, 5, 7, 11, 12], "fieldnam": 11, "file": [0, 2, 3, 4, 8, 9, 10, 11, 12, 13], "file_nam": [1, 2, 3, 9, 10, 11], "file_s": [2, 9, 10, 11], "file_st": 3, "fileformat": 8, "filenam": [0, 8, 10, 11, 12], "files": 10, "fill": 12, "filter": [5, 7], "filter_object": 7, "first": [7, 8], "flag": 11, "folder": 11, "follow": [0, 11], "forc": 11, "force_metadata_columns_even_if_empti": 11, "form": 13, "format": [3, 5, 8, 11], "from": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13], "func_to_parse_row": [11, 12], "function": [2, 3, 4, 5, 9, 10, 11, 12], "g": 10, "gen3": [10, 11, 12], "gen3_api_kei": 0, "gen3_oidc_client_creds_secret": 0, "gen3auth": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "gen3fil": [1, 2], "gen3index": [2, 3], "gen3job": [2, 4, 10], "gen3metadata": [2, 5], "gen3object": [2, 6], "gen3queri": [2, 7], "gen3submiss": [2, 8], "gen3wsstorag": [2, 13], "gener": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 13], "get": [0, 1, 2, 3, 4, 5, 8, 10, 11, 12, 13], "get_access_token": [0, 2], "get_access_token_from_wt": [0, 2], "get_alias": [2, 5], "get_all_record": [2, 3], "get_dictionary_al": [2, 8], "get_dictionary_nod": [2, 8], "get_fresh_token": [2, 9, 10], "get_graphql_schema": [2, 8], "get_guid_from_fil": 12, "get_guids_prefix": [2, 3], "get_index_key_path": [2, 5], "get_latest_vers": [2, 3], "get_output": [2, 4], "get_presigned_url": [1, 2], "get_program": [2, 8], "get_project": [2, 8], "get_project_dictionari": [2, 8], "get_project_manifest": [2, 8], "get_record": [2, 3], "get_record_doc": [2, 3], "get_records_on_pag": [2, 3], "get_stat": [2, 3], "get_statu": [2, 4], "get_url": [2, 3], "get_valid_guid": [2, 3], "get_vers": [2, 3, 4, 5], "get_with_param": [2, 3], "giangb": 11, "github": [2, 7], "give": 1, "given": [0, 3, 4, 5, 8, 10, 12, 13], "global": [4, 5], "good": 3, "grant": 0, "graph": 8, "graphql": [7, 8], "graphql_queri": [2, 7], "group": 3, "guid": [1, 2, 3, 5, 6, 9, 11, 12], "guid_exampl": 11, "guid_for_row": 12, "guid_from_fil": 12, "guid_type_for_indexed_file_object": [2, 9, 12], "guid_type_for_non_indexed_file_object": [2, 9, 12], "guppi": 7, "ha": [0, 11], "handl": [3, 10], "hardcod": 0, "has_vers": 3, "hash": [3, 11], "hash_typ": 3, "have": [5, 11], "header": 11, "healthi": [3, 4, 5], "help": 11, "helper": 2, "hit": 11, "host": 10, "hostnam": [2, 9, 10], "how": [8, 11], "howto": 10, "http": [0, 7, 11, 12], "i": [0, 1, 2, 3, 4, 5, 8, 10, 11, 12], "id": [0, 1, 3, 5, 10, 11], "idea": 3, "identifi": [3, 5, 9, 11], "idp": 0, "illustr": 11, "immut": 3, "implement": 0, "implic": 11, "import": 11, "includ": [0, 3], "indent": 10, "index": [0, 2, 5, 9], "index_manifest": 11, "index_object_manifest": [2, 9, 11], "indexd": [1, 3, 6, 10, 11, 12], "indexd_field": [11, 12], "indexd_record_page_s": [2, 9, 11], "indexed_file_object_guid": 12, "indic": [0, 11], "infil": 10, "info": [3, 11], "inform": [2, 3, 10], "ingest": [2, 9], "ingest_manifest": 12, "initi": [0, 10], "input": [4, 10, 11], "input_manifest": 11, "instal": [0, 2, 11], "instanc": [1, 3, 6, 7, 8, 9, 10], "instead": [1, 7, 11], "int": [1, 3, 5, 7, 8, 10, 11, 12], "integ": [1, 3, 8], "intend": 0, "interact": [1, 3, 4, 5, 6, 8, 13], "interest": 10, "interpret": 0, "introspect": 8, "involv": 9, "is_healthi": [2, 3, 4, 5], "is_indexed_file_object": 12, "isn": 1, "issu": 0, "its": [1, 3], "job": 2, "job_id": 4, "job_input": 4, "job_nam": 4, "json": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "just": [5, 11, 12], "jwt": 0, "kei": [0, 3, 5, 13], "know": 11, "known": 10, "kwarg": [3, 4, 5], "l": [2, 13], "larg": 9, "last": 10, "latest": 3, "least": 3, "level": 6, "librari": 11, "like": [3, 5, 9, 11, 12], "limit": [1, 3, 5, 12], "linear": 4, "linux": 10, "list": [0, 1, 3, 4, 5, 7, 8, 10, 11, 13], "list_access_in_drs_manifest": [2, 9, 10], "list_drs_object": [2, 9, 10], "list_files_in_drs_manifest": [2, 9, 10], "list_job": [2, 4], "live": [11, 12], "load": [2, 9, 10], "load_manifest": [2, 9, 10], "local": [0, 13], "locat": [1, 6], "lock": 12, "log": [8, 10, 11, 12], "logic": [5, 12], "loop": 11, "ls_path": [2, 13], "maco": 11, "made": 3, "mai": [0, 9, 11], "main": 10, "make": [9, 11], "manag": [1, 5, 10], "mani": [8, 11], "manifest": [2, 8, 9, 10, 11, 12], "manifest_1": 10, "manifest_fil": [11, 12], "manifest_file_delimit": [11, 12], "manifest_row_pars": [11, 12], "map": [0, 11], "mark": 8, "master": 7, "match": [3, 5, 12], "max": 5, "max_concurrent_request": [2, 9, 11, 12], "max_presigned_url_ttl": 1, "max_tri": 8, "maximum": [11, 12], "md": [5, 7, 10, 12], "md5": [2, 3, 9, 11], "md5_hash": 11, "md5sum": [2, 9, 10], "mean": 8, "mechan": 3, "merg": 5, "metadata": [2, 3, 6, 9, 11], "metadata_list": 5, "metadata_sourc": 12, "metadata_typ": 12, "metdata": 12, "method": [1, 7, 10], "minimum": 10, "minut": 0, "mode": 7, "modul": [2, 10, 11], "more": [2, 5, 7, 9, 10], "most": 9, "mostli": 2, "multipl": [8, 11], "must": [1, 5], "my_common": 10, "my_credenti": 10, "my_field": 7, "my_index": 7, "my_program": 7, "my_project": 7, "name": [3, 4, 8, 10, 11, 12, 13], "namespac": [0, 12], "necessari": [3, 5], "need": [3, 7, 10, 11], "nest": 5, "net": 11, "never": 0, "new": [0, 3], "node": 8, "node_nam": 8, "node_typ": 8, "none": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "note": [0, 3, 11, 12], "noth": [3, 6], "now": [1, 8], "num": 5, "num_process": 11, "num_total_fil": 11, "number": [3, 7, 8, 11, 12], "o": 0, "object": [1, 2, 3, 4, 5, 7, 8, 9, 10, 11, 13], "object_id": [1, 2, 9, 10], "object_list": 10, "object_typ": [2, 9, 10], "objectid": 10, "obtain": [0, 10], "occur": 10, "off": 5, "offset": [5, 7], "oidc": 0, "old": 3, "one": [3, 5, 10, 11], "onli": [3, 5, 7, 8, 10, 11], "open": [8, 10, 11], "open_project": [2, 8], "openid": 0, "opt": 0, "option": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11], "order": [0, 8], "ordered_node_list": 8, "org": 10, "otherwis": 10, "output": [4, 5, 11, 12], "output_dir": 10, "output_filenam": [11, 12], "overrid": [0, 11, 12], "overwrit": 5, "own": 0, "packag": 10, "page": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 13], "pagin": 3, "parallel": 11, "param": [3, 5, 8, 10], "paramet": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "pars": [10, 11, 12, 13], "parser": [11, 12], "particular": 0, "pass": [0, 7, 8, 10], "password": [11, 12], "path": [0, 1, 5, 10, 11, 13], "path_to_manifest": 11, "pattern": [3, 12], "pdcdatastor": 11, "pend": 10, "per": [11, 12], "peregrin": 8, "permiss": 10, "persist": 9, "phs0001": 11, "phs0002": 11, "pick": 1, "pla": 11, "place": 11, "planx": 11, "point": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "popul": [10, 12], "posit": [1, 7], "possibl": 10, "post": [0, 11], "pprint": [2, 9, 10], "prefix": 3, "presign": 1, "pretti": 10, "prev_guid": [2, 9, 11], "previou": [3, 11], "previous": 4, "print": [8, 10], "process": 11, "processed_fil": 11, "profil": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "program": [8, 11], "progress": [8, 10], "project": [8, 11], "project_id": [7, 8], "protocol": 1, "provid": [0, 1, 3, 5, 7, 8, 12], "public": [3, 5], "put": 0, "py": 11, "python": [2, 9, 11], "python3": 11, "python_subprocess_command": 11, "queri": [1, 2, 3, 5, 8, 11, 12], "query_str": 7, "query_txt": [7, 8], "query_url": [2, 3], "quickstart": 2, "rather": 0, "raw": [7, 11], "raw_data_download": [2, 7], "rbac": 3, "read": [3, 5, 11], "readm": 2, "reason": 10, "record": [1, 3, 5, 7, 8, 11, 12], "refresh": [0, 10], "refresh_access_token": [0, 2], "refresh_fil": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "refresh_token": 0, "regist": 8, "regular": 7, "relat": 9, "remov": [1, 6, 11, 13], "replac": 11, "replace_url": 11, "repo": 2, "repres": [3, 5, 10], "represent": [1, 3], "request": [0, 1, 3, 5, 8, 11, 12], "requir": 10, "resolv": 10, "resolve_object": [2, 9, 10], "respect": 7, "respons": [0, 1, 3, 4, 5], "result": [1, 8, 10, 11], "retri": 8, "retriev": [1, 8, 10, 12], "return": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11], "return_full_metadata": 5, "rev": 3, "revers": 8, "revis": 3, "right": 1, "rm": [2, 13], "rm_path": [2, 13], "root": [11, 12], "row": [7, 8, 11, 12], "row_offset": 8, "rtype": 3, "run": [8, 11], "s3": [1, 10, 11], "safe": 11, "same": [5, 11, 13], "sampl": [8, 10], "sandbox": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "save": 10, "save_directori": 10, "schema": 8, "scope": [0, 1], "screen": 8, "script": 2, "search": [0, 2, 3], "second": [1, 4], "secret": 0, "see": [7, 10, 11], "self": 10, "semaphon": 12, "semaphor": 12, "separ": [0, 11], "server": 10, "servic": [1, 3, 4, 5, 6, 8, 11, 12, 13], "service_loc": [3, 4, 5], "session": 11, "set": [0, 1, 5, 10], "setup": 2, "sheepdog": 8, "should": [0, 8, 11], "show": 10, "show_progress": 10, "shown": 11, "sign": 1, "signpost": 3, "similar": 10, "simpl": 3, "simpli": 11, "sinc": 3, "singl": [1, 5, 8], "size": [2, 3, 9, 10, 11], "skip": 8, "sleep": 4, "so": 11, "some": [0, 2], "someth": 11, "sort": 7, "sort_field": 7, "sort_object": 7, "sourc": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "space": [0, 11], "specif": [5, 8, 11, 12], "specifi": [0, 1, 3, 11, 13], "spreadsheet": 8, "src_path": 13, "src_urlstr": 13, "src_w": 13, "src_wskei": 13, "ssl": [3, 4, 5], "start": [3, 4, 7, 8, 10], "start_tim": [2, 9, 10], "static": 10, "statu": [2, 4, 9, 10], "storag": [1, 2, 6], "store": [1, 3, 10], "str": [0, 1, 3, 4, 5, 7, 8, 10, 11, 12], "string": [0, 3, 5, 11, 13], "strip": 11, "sub": 8, "subject": [7, 8], "submiss": 2, "submit": [8, 11], "submit_additional_metadata_column": 11, "submit_fil": [2, 8], "submit_record": [2, 8], "submitter_id": 7, "success": 10, "successfulli": 10, "suffici": 3, "suppli": 3, "support": [0, 1, 5, 8, 11], "sure": 1, "synchron": 11, "syntax": 7, "system": [6, 7, 8, 9], "t": [1, 5, 11], "tab": 11, "task": 9, "temporari": 11, "test": 11, "test1": 11, "test2": 11, "test3": 11, "test4": 11, "test5": 11, "text": [1, 7, 8], "than": [0, 5], "thei": [0, 10], "them": [10, 11], "thi": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "those": 11, "thread": 11, "thread_num": 11, "threadcontrol": [2, 9, 11], "through": [8, 11], "tier": 7, "time": [1, 3, 8, 10, 11], "timestamp": 10, "tmp_folder": [2, 9, 11], "token": [0, 10], "tool": 2, "total": 11, "treat": [1, 5], "tree": 10, "true": [3, 4, 5, 6, 7, 8, 10, 11, 12], "try": 0, "tsv": [8, 11, 12], "tupl": [0, 3, 11, 12], "type": [1, 3, 4, 5, 7, 8, 10, 11, 12], "typic": 10, "uc": 7, "unaccess": 7, "under": [0, 8, 13], "uniqu": [1, 5], "unknown": 10, "unpack": 10, "unpack_packag": 10, "until": [4, 10], "up": [5, 9], "updat": [2, 3, 5, 10, 11], "update_alias": [2, 5], "update_blank": [2, 3], "update_record": [2, 3], "updated_tim": [2, 9, 10], "upload": [1, 2, 3, 8, 13], "upload_fil": [1, 2], "upload_file_to_guid": [1, 2], "upload_url": [2, 13], "url": [1, 2, 3, 9, 10, 11, 12, 13], "urls_metadata": 3, "us": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "usag": 11, "use_agg_md": 5, "user": [0, 10, 12], "user_access": [2, 9, 10], "usual": 12, "utcnow": 1, "util": 9, "uuid": [1, 3, 8], "uuid1": 8, "uuid2": 8, "valid": [3, 7], "valu": [0, 1, 3, 5, 7, 10, 11], "value_from_indexd": 11, "value_from_manifest": 11, "variabl": [0, 7, 8], "variou": 2, "verbos": [7, 8], "verif": 11, "verifi": [2, 9], "verify_manifest": 11, "verify_object_manifest": 11, "version": [3, 4, 5], "vital_statu": 7, "w": 13, "wa": 0, "wai": 10, "wait": 4, "want": [0, 3, 8], "warn": 11, "we": [3, 11], "web": 0, "what": 5, "when": [0, 3, 7, 10, 12], "where": [0, 3, 5, 11, 12], "whether": [3, 4, 5, 8, 11, 12], "which": [8, 10], "while": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "whose": 5, "within": [0, 2, 9], "without": [3, 5], "won": 5, "work": [0, 10], "workaround": 11, "worksheet": 8, "workspac": [0, 2], "wrapper": 10, "write": 11, "ws_urlstr": 13, "wskei": 13, "wss": 13, "wt": [0, 10], "x": 11, "xlsx": 8, "you": [0, 3, 8, 11], "your": 0}, "titles": ["Gen3 Auth Helper", "Gen3 File Class", "Welcome to Gen3 SDK\u2019s documentation!", "Gen3 Index Class", "Gen3 Jobs Class", "Gen3 Metadata Class", "Gen3 Object Class", "Gen3 Query Class", "Gen3 Submission Class", "Gen3 Tools", "DRS Download Tools", "Indexing Tools", "Metadata Tools", "Gen3 Workspace Storage"], "titleterms": {"": 2, "auth": 0, "class": [1, 3, 4, 5, 6, 7, 8], "document": 2, "download": [10, 11], "dr": 10, "file": 1, "gen3": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 13], "helper": 0, "index": [3, 11], "indic": 2, "ingest": 12, "job": 4, "metadata": [5, 12], "object": 6, "queri": 7, "sdk": 2, "storag": 13, "submiss": 8, "tabl": 2, "tool": [9, 10, 11, 12], "verifi": 11, "welcom": 2, "workspac": 13}}) \ No newline at end of file diff --git a/docs/_build/html/tools/indexing.html b/docs/_build/html/tools/indexing.html index 8ffff386a..6331ea0e6 100644 --- a/docs/_build/html/tools/indexing.html +++ b/docs/_build/html/tools/indexing.html @@ -381,7 +381,7 @@

Indexing Tools
-async gen3.tools.indexing.verify_manifest.async_verify_object_manifest(commons_url, manifest_file, max_concurrent_requests=24, manifest_row_parsers={'acl': <function _get_acl_from_row>, 'authz': <function _get_authz_from_row>, 'file_name': <function _get_file_name_from_row>, 'file_size': <function _get_file_size_from_row>, 'guid': <function _get_guid_from_row>, 'md5': <function _get_md5_from_row>, 'urls': <function _get_urls_from_row>}, manifest_file_delimiter=None, output_filename='verify-manifest-errors-1713560402.8874054.log')[source]
+async gen3.tools.indexing.verify_manifest.async_verify_object_manifest(commons_url, manifest_file, max_concurrent_requests=24, manifest_row_parsers={'acl': <function _get_acl_from_row>, 'authz': <function _get_authz_from_row>, 'file_name': <function _get_file_name_from_row>, 'file_size': <function _get_file_size_from_row>, 'guid': <function _get_guid_from_row>, 'md5': <function _get_md5_from_row>, 'urls': <function _get_urls_from_row>}, manifest_file_delimiter=None, output_filename='verify-manifest-errors-1713561061.2184267.log')[source]

Verify all file object records into a manifest csv

Parameters:
diff --git a/docs/_build/html/tools/metadata.html b/docs/_build/html/tools/metadata.html index eaa0fa6b2..e745113e0 100644 --- a/docs/_build/html/tools/metadata.html +++ b/docs/_build/html/tools/metadata.html @@ -102,7 +102,7 @@

Metadata Tools
-async gen3.tools.metadata.ingest_manifest.async_ingest_metadata_manifest(commons_url, manifest_file, metadata_source, auth=None, max_concurrent_requests=24, manifest_row_parsers={'guid_for_row': <function _get_guid_for_row>, 'indexed_file_object_guid': <function _query_for_associated_indexd_record_guid>}, manifest_file_delimiter=None, output_filename='ingest-metadata-manifest-errors-1713560403.1731803.log', get_guid_from_file=True, metadata_type=None)[source]
+async gen3.tools.metadata.ingest_manifest.async_ingest_metadata_manifest(commons_url, manifest_file, metadata_source, auth=None, max_concurrent_requests=24, manifest_row_parsers={'guid_for_row': <function _get_guid_for_row>, 'indexed_file_object_guid': <function _query_for_associated_indexd_record_guid>}, manifest_file_delimiter=None, output_filename='ingest-metadata-manifest-errors-1713561061.5202463.log', get_guid_from_file=True, metadata_type=None)[source]

Ingest all metadata records into a manifest csv

Parameters:
From e4f21f6dc9b2a64bbef0893b5cb0a70f54cf119f Mon Sep 17 00:00:00 2001 From: Alex Date: Fri, 19 Apr 2024 16:36:48 -0500 Subject: [PATCH 37/62] chore(pyinstaller): test correct file --- .github/workflows/build.yaml | 4 ++-- pyproject.toml | 5 +++-- 2 files changed, 5 insertions(+), 4 deletions(-) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index 082785f64..def5bf341 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -23,6 +23,7 @@ jobs: with: python-version: '3.9' + # https://pyinstaller.org/en/stable/when-things-go-wrong.html#helping-pyinstaller-find-modules - name: Install poetry run: | pip install --upgrade pip @@ -44,8 +45,7 @@ jobs: # pyinstaller --log-level=DEBUG --debug=imports --clean --name gen3 --hidden-import gen3users --onefile ./gen3/cli/__main__.py - name: Test build run: | - cd ./dist - ls + cp ./dist/pyinstaller/*/gen3/gen3 ./gen3 ./gen3 --help - name: Archive artifacts uses: actions/upload-artifact@v4 diff --git a/pyproject.toml b/pyproject.toml index 07f399549..8a4891149 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -71,9 +71,10 @@ testpaths = [ "tests", ] +# https://pypi.org/project/poetry-pyinstaller-plugin/ [tool.poetry-pyinstaller-plugin.scripts] gen3 = { source = "./gen3/cli/__main__.py", type = "onedir", bundle = false } -# [tool.poetry-pyinstaller-plugin.collect] +[tool.poetry-pyinstaller-plugin.collect] # Collect all submodules, data files & binaries for 'package_A' and 'package_B' -# all = ['gen3'] +all = ['gen3', 'asyncio'] From bc011da3b96d9a385e3a439d898430ece393102f Mon Sep 17 00:00:00 2001 From: Avantol13 Date: Fri, 19 Apr 2024 21:38:14 +0000 Subject: [PATCH 38/62] Apply automatic documentation changes --- docs/_build/doctrees/environment.pickle | Bin 1579893 -> 1579893 bytes docs/_build/doctrees/tools/indexing.doctree | Bin 100291 -> 100291 bytes docs/_build/doctrees/tools/metadata.doctree | Bin 35934 -> 35934 bytes docs/_build/html/searchindex.js | 2 +- docs/_build/html/tools/indexing.html | 2 +- docs/_build/html/tools/metadata.html | 2 +- 6 files changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/_build/doctrees/environment.pickle b/docs/_build/doctrees/environment.pickle index 54cc43f01d498e8fe52027b997e4ed64b310d201..f787eb96cc15ca56e3c4eada91c70668041a30a3 100644 GIT binary patch delta 10978 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

5OF4T+$QC&AB8INvnCJJJZb*x_P7ra(~Rj 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 Tools

-async gen3.tools.indexing.verify_manifest.async_verify_object_manifest(commons_url, manifest_file, max_concurrent_requests=24, manifest_row_parsers={'acl': <function _get_acl_from_row>, 'authz': <function _get_authz_from_row>, 'file_name': <function _get_file_name_from_row>, 'file_size': <function _get_file_size_from_row>, 'guid': <function _get_guid_from_row>, 'md5': <function _get_md5_from_row>, 'urls': <function _get_urls_from_row>}, manifest_file_delimiter=None, output_filename='verify-manifest-errors-1713561061.2184267.log')[source]
+async gen3.tools.indexing.verify_manifest.async_verify_object_manifest(commons_url, manifest_file, max_concurrent_requests=24, manifest_row_parsers={'acl': <function _get_acl_from_row>, 'authz': <function _get_authz_from_row>, 'file_name': <function _get_file_name_from_row>, 'file_size': <function _get_file_size_from_row>, 'guid': <function _get_guid_from_row>, 'md5': <function _get_md5_from_row>, 'urls': <function _get_urls_from_row>}, manifest_file_delimiter=None, output_filename='verify-manifest-errors-1713562690.0790412.log')[source]

Verify all file object records into a manifest csv

Parameters:
diff --git a/docs/_build/html/tools/metadata.html b/docs/_build/html/tools/metadata.html index e745113e0..37b9a8231 100644 --- a/docs/_build/html/tools/metadata.html +++ b/docs/_build/html/tools/metadata.html @@ -102,7 +102,7 @@

Metadata Tools
-async gen3.tools.metadata.ingest_manifest.async_ingest_metadata_manifest(commons_url, manifest_file, metadata_source, auth=None, max_concurrent_requests=24, manifest_row_parsers={'guid_for_row': <function _get_guid_for_row>, 'indexed_file_object_guid': <function _query_for_associated_indexd_record_guid>}, manifest_file_delimiter=None, output_filename='ingest-metadata-manifest-errors-1713561061.5202463.log', get_guid_from_file=True, metadata_type=None)[source]
+async gen3.tools.metadata.ingest_manifest.async_ingest_metadata_manifest(commons_url, manifest_file, metadata_source, auth=None, max_concurrent_requests=24, manifest_row_parsers={'guid_for_row': <function _get_guid_for_row>, 'indexed_file_object_guid': <function _query_for_associated_indexd_record_guid>}, manifest_file_delimiter=None, output_filename='ingest-metadata-manifest-errors-1713562690.3935378.log', get_guid_from_file=True, metadata_type=None)[source]

Ingest all metadata records into a manifest csv

Parameters:
From cdacc24335d1f4d7ec03b30249825c6862dd9041 Mon Sep 17 00:00:00 2001 From: Alex Date: Fri, 31 May 2024 10:22:19 -0500 Subject: [PATCH 39/62] fix(build): add missing arg --- .github/workflows/build.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index def5bf341..98965b54e 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -45,7 +45,7 @@ jobs: # pyinstaller --log-level=DEBUG --debug=imports --clean --name gen3 --hidden-import gen3users --onefile ./gen3/cli/__main__.py - name: Test build run: | - cp ./dist/pyinstaller/*/gen3/gen3 ./gen3 + cp -r ./dist/pyinstaller/*/gen3/gen3 ./gen3 ./gen3 --help - name: Archive artifacts uses: actions/upload-artifact@v4 From 8a850b50f2aff8b71a730141d0ee39510f00213b Mon Sep 17 00:00:00 2001 From: Avantol13 Date: Fri, 31 May 2024 15:23:32 +0000 Subject: [PATCH 40/62] Apply automatic documentation changes --- docs/_build/doctrees/environment.pickle | Bin 1579893 -> 1579888 bytes docs/_build/doctrees/tools/indexing.doctree | Bin 100291 -> 100291 bytes docs/_build/doctrees/tools/metadata.doctree | Bin 35934 -> 35929 bytes docs/_build/html/searchindex.js | 2 +- docs/_build/html/tools/indexing.html | 2 +- docs/_build/html/tools/metadata.html | 2 +- 6 files changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/_build/doctrees/environment.pickle b/docs/_build/doctrees/environment.pickle index f787eb96cc15ca56e3c4eada91c70668041a30a3..294451d028ae7cfa45d336be00828948d9a47007 100644 GIT binary patch delta 9055 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 delta 119 zcmX@y&vv+Js1?#q~C1pq+59a{hZ diff --git a/docs/_build/doctrees/tools/metadata.doctree b/docs/_build/doctrees/tools/metadata.doctree index fa0f492282336146caba0de0ae668663683e06f6..0cb521bb6e0fc7c500edff695ae4456cb66ea568 100644 GIT binary patch delta 169 zcmcaNgX!iBCYA=)seT(-mT0idVPs&KT&pX$`ILq&BcHjUnWce&g`TOQxw(<$N`0UQT|x`s9N-!Vp;*EV5HF*kh+;i1mQA MquIOpzD0d701|pIi2wiq delta 169 zcmcaPgX!K3CYA=)slgjrmT0idWn^HOJTY8u^C=BmMt);cGb1xg13hC)V^d>ui^=Kw zHk$*rjx#gXZwdZuHVYR=rQ@Nxe10=eG3VQj4Ya=dO7*&>QgeIndexing Tools
-async gen3.tools.indexing.verify_manifest.async_verify_object_manifest(commons_url, manifest_file, max_concurrent_requests=24, manifest_row_parsers={'acl': <function _get_acl_from_row>, 'authz': <function _get_authz_from_row>, 'file_name': <function _get_file_name_from_row>, 'file_size': <function _get_file_size_from_row>, 'guid': <function _get_guid_from_row>, 'md5': <function _get_md5_from_row>, 'urls': <function _get_urls_from_row>}, manifest_file_delimiter=None, output_filename='verify-manifest-errors-1713562690.0790412.log')[source]
+async gen3.tools.indexing.verify_manifest.async_verify_object_manifest(commons_url, manifest_file, max_concurrent_requests=24, manifest_row_parsers={'acl': <function _get_acl_from_row>, 'authz': <function _get_authz_from_row>, 'file_name': <function _get_file_name_from_row>, 'file_size': <function _get_file_size_from_row>, 'guid': <function _get_guid_from_row>, 'md5': <function _get_md5_from_row>, 'urls': <function _get_urls_from_row>}, manifest_file_delimiter=None, output_filename='verify-manifest-errors-1717169008.1344793.log')[source]

Verify all file object records into a manifest csv

Parameters:
diff --git a/docs/_build/html/tools/metadata.html b/docs/_build/html/tools/metadata.html index 37b9a8231..3bae20400 100644 --- a/docs/_build/html/tools/metadata.html +++ b/docs/_build/html/tools/metadata.html @@ -102,7 +102,7 @@

Metadata Tools
-async gen3.tools.metadata.ingest_manifest.async_ingest_metadata_manifest(commons_url, manifest_file, metadata_source, auth=None, max_concurrent_requests=24, manifest_row_parsers={'guid_for_row': <function _get_guid_for_row>, 'indexed_file_object_guid': <function _query_for_associated_indexd_record_guid>}, manifest_file_delimiter=None, output_filename='ingest-metadata-manifest-errors-1713562690.3935378.log', get_guid_from_file=True, metadata_type=None)[source]
+async gen3.tools.metadata.ingest_manifest.async_ingest_metadata_manifest(commons_url, manifest_file, metadata_source, auth=None, max_concurrent_requests=24, manifest_row_parsers={'guid_for_row': <function _get_guid_for_row>, 'indexed_file_object_guid': <function _query_for_associated_indexd_record_guid>}, manifest_file_delimiter=None, output_filename='ingest-metadata-manifest-errors-1717169008.517729.log', get_guid_from_file=True, metadata_type=None)[source]

Ingest all metadata records into a manifest csv

Parameters:
From 2a8c1f6a8519a09c467936d6e006ba883721e0d1 Mon Sep 17 00:00:00 2001 From: Alex Date: Fri, 31 May 2024 10:46:20 -0500 Subject: [PATCH 41/62] chore(deps): relock and add required psycopg package for binary builds --- poetry.lock | 340 ++++++++++++++++++++++++++++++------------------- pyproject.toml | 3 + 2 files changed, 213 insertions(+), 130 deletions(-) diff --git a/poetry.lock b/poetry.lock index 6fb303339..f5c5dd216 100644 --- a/poetry.lock +++ b/poetry.lock @@ -142,13 +142,13 @@ tz = ["backports.zoneinfo"] [[package]] name = "anyio" -version = "4.3.0" +version = "4.4.0" description = "High level compatibility layer for multiple asynchronous event loop implementations" optional = false python-versions = ">=3.8" files = [ - {file = "anyio-4.3.0-py3-none-any.whl", hash = "sha256:048e05d0f6caeed70d731f3db756d35dcc1f35747c8c403364a8332c630441b8"}, - {file = "anyio-4.3.0.tar.gz", hash = "sha256:f75253795a87df48568485fd18cdd2a3fa5c4f7c5be8e5e36637733fce06fed6"}, + {file = "anyio-4.4.0-py3-none-any.whl", hash = "sha256:c1b2d8f46a8a812513012e1107cb0e68c17159a7a594208005a57dc776e1bdc7"}, + {file = "anyio-4.4.0.tar.gz", hash = "sha256:5aadc6a1bbb7cdb0bede386cac5e2940f5e2ff3aa20277e991cf028e0585ce94"}, ] [package.dependencies] @@ -265,13 +265,13 @@ files = [ [[package]] name = "blinker" -version = "1.7.0" +version = "1.8.2" description = "Fast, simple object-to-object and broadcast signaling" optional = false python-versions = ">=3.8" files = [ - {file = "blinker-1.7.0-py3-none-any.whl", hash = "sha256:c3f865d4d54db7abc53758a01601cf343fe55b84c1de4e3fa910e420b438d5b9"}, - {file = "blinker-1.7.0.tar.gz", hash = "sha256:e6820ff6fa4e4d1d8e2747c2283749c3f547e4fee112b98555cdcdae32996182"}, + {file = "blinker-1.8.2-py3-none-any.whl", hash = "sha256:1779309f71bf239144b9399d06ae925637cf6634cf6bd131104184531bf67c01"}, + {file = "blinker-1.8.2.tar.gz", hash = "sha256:8f77b09d3bf7c795e969e9486f39c2c5e9c39d4ee07424be2bc594ece9642d83"}, ] [[package]] @@ -528,63 +528,63 @@ files = [ [[package]] name = "coverage" -version = "7.4.4" +version = "7.5.3" description = "Code coverage measurement for Python" optional = false python-versions = ">=3.8" files = [ - {file = "coverage-7.4.4-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:e0be5efd5127542ef31f165de269f77560d6cdef525fffa446de6f7e9186cfb2"}, - {file = "coverage-7.4.4-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:ccd341521be3d1b3daeb41960ae94a5e87abe2f46f17224ba5d6f2b8398016cf"}, - {file = "coverage-7.4.4-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:09fa497a8ab37784fbb20ab699c246053ac294d13fc7eb40ec007a5043ec91f8"}, - {file = "coverage-7.4.4-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:b1a93009cb80730c9bca5d6d4665494b725b6e8e157c1cb7f2db5b4b122ea562"}, - {file = "coverage-7.4.4-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:690db6517f09336559dc0b5f55342df62370a48f5469fabf502db2c6d1cffcd2"}, - {file = "coverage-7.4.4-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:09c3255458533cb76ef55da8cc49ffab9e33f083739c8bd4f58e79fecfe288f7"}, - {file = "coverage-7.4.4-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:8ce1415194b4a6bd0cdcc3a1dfbf58b63f910dcb7330fe15bdff542c56949f87"}, - {file = "coverage-7.4.4-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:b91cbc4b195444e7e258ba27ac33769c41b94967919f10037e6355e998af255c"}, - {file = "coverage-7.4.4-cp310-cp310-win32.whl", hash = "sha256:598825b51b81c808cb6f078dcb972f96af96b078faa47af7dfcdf282835baa8d"}, - {file = "coverage-7.4.4-cp310-cp310-win_amd64.whl", hash = "sha256:09ef9199ed6653989ebbcaacc9b62b514bb63ea2f90256e71fea3ed74bd8ff6f"}, - {file = "coverage-7.4.4-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:0f9f50e7ef2a71e2fae92774c99170eb8304e3fdf9c8c3c7ae9bab3e7229c5cf"}, - {file = "coverage-7.4.4-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:623512f8ba53c422fcfb2ce68362c97945095b864cda94a92edbaf5994201083"}, - {file = "coverage-7.4.4-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:0513b9508b93da4e1716744ef6ebc507aff016ba115ffe8ecff744d1322a7b63"}, - {file = "coverage-7.4.4-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:40209e141059b9370a2657c9b15607815359ab3ef9918f0196b6fccce8d3230f"}, - {file = "coverage-7.4.4-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:8a2b2b78c78293782fd3767d53e6474582f62443d0504b1554370bde86cc8227"}, - {file = "coverage-7.4.4-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:73bfb9c09951125d06ee473bed216e2c3742f530fc5acc1383883125de76d9cd"}, - {file = "coverage-7.4.4-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:1f384c3cc76aeedce208643697fb3e8437604b512255de6d18dae3f27655a384"}, - {file = "coverage-7.4.4-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:54eb8d1bf7cacfbf2a3186019bcf01d11c666bd495ed18717162f7eb1e9dd00b"}, - {file = "coverage-7.4.4-cp311-cp311-win32.whl", hash = "sha256:cac99918c7bba15302a2d81f0312c08054a3359eaa1929c7e4b26ebe41e9b286"}, - {file = "coverage-7.4.4-cp311-cp311-win_amd64.whl", hash = "sha256:b14706df8b2de49869ae03a5ccbc211f4041750cd4a66f698df89d44f4bd30ec"}, - {file = "coverage-7.4.4-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:201bef2eea65e0e9c56343115ba3814e896afe6d36ffd37bab783261db430f76"}, - {file = "coverage-7.4.4-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:41c9c5f3de16b903b610d09650e5e27adbfa7f500302718c9ffd1c12cf9d6818"}, - {file = "coverage-7.4.4-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:d898fe162d26929b5960e4e138651f7427048e72c853607f2b200909794ed978"}, - {file = "coverage-7.4.4-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:3ea79bb50e805cd6ac058dfa3b5c8f6c040cb87fe83de10845857f5535d1db70"}, - {file = "coverage-7.4.4-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ce4b94265ca988c3f8e479e741693d143026632672e3ff924f25fab50518dd51"}, - {file = "coverage-7.4.4-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:00838a35b882694afda09f85e469c96367daa3f3f2b097d846a7216993d37f4c"}, - {file = "coverage-7.4.4-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:fdfafb32984684eb03c2d83e1e51f64f0906b11e64482df3c5db936ce3839d48"}, - {file = "coverage-7.4.4-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:69eb372f7e2ece89f14751fbcbe470295d73ed41ecd37ca36ed2eb47512a6ab9"}, - {file = "coverage-7.4.4-cp312-cp312-win32.whl", hash = "sha256:137eb07173141545e07403cca94ab625cc1cc6bc4c1e97b6e3846270e7e1fea0"}, - {file = "coverage-7.4.4-cp312-cp312-win_amd64.whl", hash = "sha256:d71eec7d83298f1af3326ce0ff1d0ea83c7cb98f72b577097f9083b20bdaf05e"}, - {file = "coverage-7.4.4-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:d5ae728ff3b5401cc320d792866987e7e7e880e6ebd24433b70a33b643bb0384"}, - {file = "coverage-7.4.4-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:cc4f1358cb0c78edef3ed237ef2c86056206bb8d9140e73b6b89fbcfcbdd40e1"}, - {file = "coverage-7.4.4-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8130a2aa2acb8788e0b56938786c33c7c98562697bf9f4c7d6e8e5e3a0501e4a"}, - {file = "coverage-7.4.4-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:cf271892d13e43bc2b51e6908ec9a6a5094a4df1d8af0bfc360088ee6c684409"}, - {file = "coverage-7.4.4-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a4cdc86d54b5da0df6d3d3a2f0b710949286094c3a6700c21e9015932b81447e"}, - {file = "coverage-7.4.4-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:ae71e7ddb7a413dd60052e90528f2f65270aad4b509563af6d03d53e979feafd"}, - {file = "coverage-7.4.4-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:38dd60d7bf242c4ed5b38e094baf6401faa114fc09e9e6632374388a404f98e7"}, - {file = "coverage-7.4.4-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:aa5b1c1bfc28384f1f53b69a023d789f72b2e0ab1b3787aae16992a7ca21056c"}, - {file = "coverage-7.4.4-cp38-cp38-win32.whl", hash = "sha256:dfa8fe35a0bb90382837b238fff375de15f0dcdb9ae68ff85f7a63649c98527e"}, - {file = "coverage-7.4.4-cp38-cp38-win_amd64.whl", hash = "sha256:b2991665420a803495e0b90a79233c1433d6ed77ef282e8e152a324bbbc5e0c8"}, - {file = "coverage-7.4.4-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:3b799445b9f7ee8bf299cfaed6f5b226c0037b74886a4e11515e569b36fe310d"}, - {file = "coverage-7.4.4-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:b4d33f418f46362995f1e9d4f3a35a1b6322cb959c31d88ae56b0298e1c22357"}, - {file = "coverage-7.4.4-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:aadacf9a2f407a4688d700e4ebab33a7e2e408f2ca04dbf4aef17585389eff3e"}, - {file = "coverage-7.4.4-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:7c95949560050d04d46b919301826525597f07b33beba6187d04fa64d47ac82e"}, - {file = "coverage-7.4.4-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ff7687ca3d7028d8a5f0ebae95a6e4827c5616b31a4ee1192bdfde697db110d4"}, - {file = "coverage-7.4.4-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:5fc1de20b2d4a061b3df27ab9b7c7111e9a710f10dc2b84d33a4ab25065994ec"}, - {file = "coverage-7.4.4-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:c74880fc64d4958159fbd537a091d2a585448a8f8508bf248d72112723974cbd"}, - {file = "coverage-7.4.4-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:742a76a12aa45b44d236815d282b03cfb1de3b4323f3e4ec933acfae08e54ade"}, - {file = "coverage-7.4.4-cp39-cp39-win32.whl", hash = "sha256:d89d7b2974cae412400e88f35d86af72208e1ede1a541954af5d944a8ba46c57"}, - {file = "coverage-7.4.4-cp39-cp39-win_amd64.whl", hash = "sha256:9ca28a302acb19b6af89e90f33ee3e1906961f94b54ea37de6737b7ca9d8827c"}, - {file = "coverage-7.4.4-pp38.pp39.pp310-none-any.whl", hash = "sha256:b2c5edc4ac10a7ef6605a966c58929ec6c1bd0917fb8c15cb3363f65aa40e677"}, - {file = "coverage-7.4.4.tar.gz", hash = "sha256:c901df83d097649e257e803be22592aedfd5182f07b3cc87d640bbb9afd50f49"}, + {file = "coverage-7.5.3-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:a6519d917abb15e12380406d721e37613e2a67d166f9fb7e5a8ce0375744cd45"}, + {file = "coverage-7.5.3-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:aea7da970f1feccf48be7335f8b2ca64baf9b589d79e05b9397a06696ce1a1ec"}, + {file = "coverage-7.5.3-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:923b7b1c717bd0f0f92d862d1ff51d9b2b55dbbd133e05680204465f454bb286"}, + {file = "coverage-7.5.3-cp310-cp310-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:62bda40da1e68898186f274f832ef3e759ce929da9a9fd9fcf265956de269dbc"}, + {file = "coverage-7.5.3-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d8b7339180d00de83e930358223c617cc343dd08e1aa5ec7b06c3a121aec4e1d"}, + {file = "coverage-7.5.3-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:25a5caf742c6195e08002d3b6c2dd6947e50efc5fc2c2205f61ecb47592d2d83"}, + {file = "coverage-7.5.3-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:05ac5f60faa0c704c0f7e6a5cbfd6f02101ed05e0aee4d2822637a9e672c998d"}, + {file = "coverage-7.5.3-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:239a4e75e09c2b12ea478d28815acf83334d32e722e7433471fbf641c606344c"}, + {file = "coverage-7.5.3-cp310-cp310-win32.whl", hash = "sha256:a5812840d1d00eafae6585aba38021f90a705a25b8216ec7f66aebe5b619fb84"}, + {file = "coverage-7.5.3-cp310-cp310-win_amd64.whl", hash = "sha256:33ca90a0eb29225f195e30684ba4a6db05dbef03c2ccd50b9077714c48153cac"}, + {file = "coverage-7.5.3-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:f81bc26d609bf0fbc622c7122ba6307993c83c795d2d6f6f6fd8c000a770d974"}, + {file = "coverage-7.5.3-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:7cec2af81f9e7569280822be68bd57e51b86d42e59ea30d10ebdbb22d2cb7232"}, + {file = "coverage-7.5.3-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:55f689f846661e3f26efa535071775d0483388a1ccfab899df72924805e9e7cd"}, + {file = "coverage-7.5.3-cp311-cp311-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:50084d3516aa263791198913a17354bd1dc627d3c1639209640b9cac3fef5807"}, + {file = "coverage-7.5.3-cp311-cp311-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:341dd8f61c26337c37988345ca5c8ccabeff33093a26953a1ac72e7d0103c4fb"}, + {file = "coverage-7.5.3-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:ab0b028165eea880af12f66086694768f2c3139b2c31ad5e032c8edbafca6ffc"}, + {file = "coverage-7.5.3-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:5bc5a8c87714b0c67cfeb4c7caa82b2d71e8864d1a46aa990b5588fa953673b8"}, + {file = "coverage-7.5.3-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:38a3b98dae8a7c9057bd91fbf3415c05e700a5114c5f1b5b0ea5f8f429ba6614"}, + {file = "coverage-7.5.3-cp311-cp311-win32.whl", hash = "sha256:fcf7d1d6f5da887ca04302db8e0e0cf56ce9a5e05f202720e49b3e8157ddb9a9"}, + {file = "coverage-7.5.3-cp311-cp311-win_amd64.whl", hash = "sha256:8c836309931839cca658a78a888dab9676b5c988d0dd34ca247f5f3e679f4e7a"}, + {file = "coverage-7.5.3-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:296a7d9bbc598e8744c00f7a6cecf1da9b30ae9ad51c566291ff1314e6cbbed8"}, + {file = "coverage-7.5.3-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:34d6d21d8795a97b14d503dcaf74226ae51eb1f2bd41015d3ef332a24d0a17b3"}, + {file = "coverage-7.5.3-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8e317953bb4c074c06c798a11dbdd2cf9979dbcaa8ccc0fa4701d80042d4ebf1"}, + {file = "coverage-7.5.3-cp312-cp312-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:705f3d7c2b098c40f5b81790a5fedb274113373d4d1a69e65f8b68b0cc26f6db"}, + {file = "coverage-7.5.3-cp312-cp312-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:b1196e13c45e327d6cd0b6e471530a1882f1017eb83c6229fc613cd1a11b53cd"}, + {file = "coverage-7.5.3-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:015eddc5ccd5364dcb902eaecf9515636806fa1e0d5bef5769d06d0f31b54523"}, + {file = "coverage-7.5.3-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:fd27d8b49e574e50caa65196d908f80e4dff64d7e592d0c59788b45aad7e8b35"}, + {file = "coverage-7.5.3-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:33fc65740267222fc02975c061eb7167185fef4cc8f2770267ee8bf7d6a42f84"}, + {file = "coverage-7.5.3-cp312-cp312-win32.whl", hash = "sha256:7b2a19e13dfb5c8e145c7a6ea959485ee8e2204699903c88c7d25283584bfc08"}, + {file = "coverage-7.5.3-cp312-cp312-win_amd64.whl", hash = "sha256:0bbddc54bbacfc09b3edaec644d4ac90c08ee8ed4844b0f86227dcda2d428fcb"}, + {file = "coverage-7.5.3-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:f78300789a708ac1f17e134593f577407d52d0417305435b134805c4fb135adb"}, + {file = "coverage-7.5.3-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:b368e1aee1b9b75757942d44d7598dcd22a9dbb126affcbba82d15917f0cc155"}, + {file = "coverage-7.5.3-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:f836c174c3a7f639bded48ec913f348c4761cbf49de4a20a956d3431a7c9cb24"}, + {file = "coverage-7.5.3-cp38-cp38-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:244f509f126dc71369393ce5fea17c0592c40ee44e607b6d855e9c4ac57aac98"}, + {file = "coverage-7.5.3-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:c4c2872b3c91f9baa836147ca33650dc5c172e9273c808c3c3199c75490e709d"}, + {file = "coverage-7.5.3-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:dd4b3355b01273a56b20c219e74e7549e14370b31a4ffe42706a8cda91f19f6d"}, + {file = "coverage-7.5.3-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:f542287b1489c7a860d43a7d8883e27ca62ab84ca53c965d11dac1d3a1fab7ce"}, + {file = "coverage-7.5.3-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:75e3f4e86804023e991096b29e147e635f5e2568f77883a1e6eed74512659ab0"}, + {file = "coverage-7.5.3-cp38-cp38-win32.whl", hash = "sha256:c59d2ad092dc0551d9f79d9d44d005c945ba95832a6798f98f9216ede3d5f485"}, + {file = "coverage-7.5.3-cp38-cp38-win_amd64.whl", hash = "sha256:fa21a04112c59ad54f69d80e376f7f9d0f5f9123ab87ecd18fbb9ec3a2beed56"}, + {file = "coverage-7.5.3-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:f5102a92855d518b0996eb197772f5ac2a527c0ec617124ad5242a3af5e25f85"}, + {file = "coverage-7.5.3-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:d1da0a2e3b37b745a2b2a678a4c796462cf753aebf94edcc87dcc6b8641eae31"}, + {file = "coverage-7.5.3-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8383a6c8cefba1b7cecc0149415046b6fc38836295bc4c84e820872eb5478b3d"}, + {file = "coverage-7.5.3-cp39-cp39-manylinux_2_5_i686.manylinux1_i686.manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:9aad68c3f2566dfae84bf46295a79e79d904e1c21ccfc66de88cd446f8686341"}, + {file = "coverage-7.5.3-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:2e079c9ec772fedbade9d7ebc36202a1d9ef7291bc9b3a024ca395c4d52853d7"}, + {file = "coverage-7.5.3-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:bde997cac85fcac227b27d4fb2c7608a2c5f6558469b0eb704c5726ae49e1c52"}, + {file = "coverage-7.5.3-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:990fb20b32990b2ce2c5f974c3e738c9358b2735bc05075d50a6f36721b8f303"}, + {file = "coverage-7.5.3-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:3d5a67f0da401e105753d474369ab034c7bae51a4c31c77d94030d59e41df5bd"}, + {file = "coverage-7.5.3-cp39-cp39-win32.whl", hash = "sha256:e08c470c2eb01977d221fd87495b44867a56d4d594f43739a8028f8646a51e0d"}, + {file = "coverage-7.5.3-cp39-cp39-win_amd64.whl", hash = "sha256:1d2a830ade66d3563bb61d1e3c77c8def97b30ed91e166c67d0632c018f380f0"}, + {file = "coverage-7.5.3-pp38.pp39.pp310-none-any.whl", hash = "sha256:3538d8fb1ee9bdd2e2692b3b18c22bb1c19ffbefd06880f5ac496e42d7bb3884"}, + {file = "coverage-7.5.3.tar.gz", hash = "sha256:04aefca5190d1dc7a53a4c1a5a7f8568811306d7a8ee231c42fb69215571944f"}, ] [package.dependencies] @@ -595,43 +595,43 @@ toml = ["tomli"] [[package]] name = "cryptography" -version = "42.0.5" +version = "42.0.7" description = "cryptography is a package which provides cryptographic recipes and primitives to Python developers." optional = false python-versions = ">=3.7" files = [ - {file = "cryptography-42.0.5-cp37-abi3-macosx_10_12_universal2.whl", hash = "sha256:a30596bae9403a342c978fb47d9b0ee277699fa53bbafad14706af51fe543d16"}, - {file = "cryptography-42.0.5-cp37-abi3-macosx_10_12_x86_64.whl", hash = "sha256:b7ffe927ee6531c78f81aa17e684e2ff617daeba7f189f911065b2ea2d526dec"}, - {file = "cryptography-42.0.5-cp37-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:2424ff4c4ac7f6b8177b53c17ed5d8fa74ae5955656867f5a8affaca36a27abb"}, - {file = "cryptography-42.0.5-cp37-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:329906dcc7b20ff3cad13c069a78124ed8247adcac44b10bea1130e36caae0b4"}, - {file = "cryptography-42.0.5-cp37-abi3-manylinux_2_28_aarch64.whl", hash = "sha256:b03c2ae5d2f0fc05f9a2c0c997e1bc18c8229f392234e8a0194f202169ccd278"}, - {file = "cryptography-42.0.5-cp37-abi3-manylinux_2_28_x86_64.whl", hash = "sha256:f8837fe1d6ac4a8052a9a8ddab256bc006242696f03368a4009be7ee3075cdb7"}, - {file = "cryptography-42.0.5-cp37-abi3-musllinux_1_1_aarch64.whl", hash = "sha256:0270572b8bd2c833c3981724b8ee9747b3ec96f699a9665470018594301439ee"}, - {file = "cryptography-42.0.5-cp37-abi3-musllinux_1_1_x86_64.whl", hash = "sha256:b8cac287fafc4ad485b8a9b67d0ee80c66bf3574f655d3b97ef2e1082360faf1"}, - {file = "cryptography-42.0.5-cp37-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:16a48c23a62a2f4a285699dba2e4ff2d1cff3115b9df052cdd976a18856d8e3d"}, - {file = "cryptography-42.0.5-cp37-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:2bce03af1ce5a5567ab89bd90d11e7bbdff56b8af3acbbec1faded8f44cb06da"}, - {file = "cryptography-42.0.5-cp37-abi3-win32.whl", hash = "sha256:b6cd2203306b63e41acdf39aa93b86fb566049aeb6dc489b70e34bcd07adca74"}, - {file = "cryptography-42.0.5-cp37-abi3-win_amd64.whl", hash = "sha256:98d8dc6d012b82287f2c3d26ce1d2dd130ec200c8679b6213b3c73c08b2b7940"}, - {file = "cryptography-42.0.5-cp39-abi3-macosx_10_12_universal2.whl", hash = "sha256:5e6275c09d2badf57aea3afa80d975444f4be8d3bc58f7f80d2a484c6f9485c8"}, - {file = "cryptography-42.0.5-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:e4985a790f921508f36f81831817cbc03b102d643b5fcb81cd33df3fa291a1a1"}, - {file = "cryptography-42.0.5-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7cde5f38e614f55e28d831754e8a3bacf9ace5d1566235e39d91b35502d6936e"}, - {file = "cryptography-42.0.5-cp39-abi3-manylinux_2_28_aarch64.whl", hash = "sha256:7367d7b2eca6513681127ebad53b2582911d1736dc2ffc19f2c3ae49997496bc"}, - {file = "cryptography-42.0.5-cp39-abi3-manylinux_2_28_x86_64.whl", hash = "sha256:cd2030f6650c089aeb304cf093f3244d34745ce0cfcc39f20c6fbfe030102e2a"}, - {file = "cryptography-42.0.5-cp39-abi3-musllinux_1_1_aarch64.whl", hash = "sha256:a2913c5375154b6ef2e91c10b5720ea6e21007412f6437504ffea2109b5a33d7"}, - {file = "cryptography-42.0.5-cp39-abi3-musllinux_1_1_x86_64.whl", hash = "sha256:c41fb5e6a5fe9ebcd58ca3abfeb51dffb5d83d6775405305bfa8715b76521922"}, - {file = "cryptography-42.0.5-cp39-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:3eaafe47ec0d0ffcc9349e1708be2aaea4c6dd4978d76bf6eb0cb2c13636c6fc"}, - {file = "cryptography-42.0.5-cp39-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:1b95b98b0d2af784078fa69f637135e3c317091b615cd0905f8b8a087e86fa30"}, - {file = "cryptography-42.0.5-cp39-abi3-win32.whl", hash = "sha256:1f71c10d1e88467126f0efd484bd44bca5e14c664ec2ede64c32f20875c0d413"}, - {file = "cryptography-42.0.5-cp39-abi3-win_amd64.whl", hash = "sha256:a011a644f6d7d03736214d38832e030d8268bcff4a41f728e6030325fea3e400"}, - {file = "cryptography-42.0.5-pp310-pypy310_pp73-macosx_10_12_x86_64.whl", hash = "sha256:9481ffe3cf013b71b2428b905c4f7a9a4f76ec03065b05ff499bb5682a8d9ad8"}, - {file = "cryptography-42.0.5-pp310-pypy310_pp73-manylinux_2_28_aarch64.whl", hash = "sha256:ba334e6e4b1d92442b75ddacc615c5476d4ad55cc29b15d590cc6b86efa487e2"}, - {file = "cryptography-42.0.5-pp310-pypy310_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:ba3e4a42397c25b7ff88cdec6e2a16c2be18720f317506ee25210f6d31925f9c"}, - {file = "cryptography-42.0.5-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:111a0d8553afcf8eb02a4fea6ca4f59d48ddb34497aa8706a6cf536f1a5ec576"}, - {file = "cryptography-42.0.5-pp39-pypy39_pp73-macosx_10_12_x86_64.whl", hash = "sha256:cd65d75953847815962c84a4654a84850b2bb4aed3f26fadcc1c13892e1e29f6"}, - {file = "cryptography-42.0.5-pp39-pypy39_pp73-manylinux_2_28_aarch64.whl", hash = "sha256:e807b3188f9eb0eaa7bbb579b462c5ace579f1cedb28107ce8b48a9f7ad3679e"}, - {file = "cryptography-42.0.5-pp39-pypy39_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:f12764b8fffc7a123f641d7d049d382b73f96a34117e0b637b80643169cec8ac"}, - {file = "cryptography-42.0.5-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:37dd623507659e08be98eec89323469e8c7b4c1407c85112634ae3dbdb926fdd"}, - {file = "cryptography-42.0.5.tar.gz", hash = "sha256:6fe07eec95dfd477eb9530aef5bead34fec819b3aaf6c5bd6d20565da607bfe1"}, + {file = "cryptography-42.0.7-cp37-abi3-macosx_10_12_universal2.whl", hash = "sha256:a987f840718078212fdf4504d0fd4c6effe34a7e4740378e59d47696e8dfb477"}, + {file = "cryptography-42.0.7-cp37-abi3-macosx_10_12_x86_64.whl", hash = "sha256:bd13b5e9b543532453de08bcdc3cc7cebec6f9883e886fd20a92f26940fd3e7a"}, + {file = "cryptography-42.0.7-cp37-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a79165431551042cc9d1d90e6145d5d0d3ab0f2d66326c201d9b0e7f5bf43604"}, + {file = "cryptography-42.0.7-cp37-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:a47787a5e3649008a1102d3df55424e86606c9bae6fb77ac59afe06d234605f8"}, + {file = "cryptography-42.0.7-cp37-abi3-manylinux_2_28_aarch64.whl", hash = "sha256:02c0eee2d7133bdbbc5e24441258d5d2244beb31da5ed19fbb80315f4bbbff55"}, + {file = "cryptography-42.0.7-cp37-abi3-manylinux_2_28_x86_64.whl", hash = "sha256:5e44507bf8d14b36b8389b226665d597bc0f18ea035d75b4e53c7b1ea84583cc"}, + {file = "cryptography-42.0.7-cp37-abi3-musllinux_1_1_aarch64.whl", hash = "sha256:7f8b25fa616d8b846aef64b15c606bb0828dbc35faf90566eb139aa9cff67af2"}, + {file = "cryptography-42.0.7-cp37-abi3-musllinux_1_1_x86_64.whl", hash = "sha256:93a3209f6bb2b33e725ed08ee0991b92976dfdcf4e8b38646540674fc7508e13"}, + {file = "cryptography-42.0.7-cp37-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:e6b8f1881dac458c34778d0a424ae5769de30544fc678eac51c1c8bb2183e9da"}, + {file = "cryptography-42.0.7-cp37-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:3de9a45d3b2b7d8088c3fbf1ed4395dfeff79d07842217b38df14ef09ce1d8d7"}, + {file = "cryptography-42.0.7-cp37-abi3-win32.whl", hash = "sha256:789caea816c6704f63f6241a519bfa347f72fbd67ba28d04636b7c6b7da94b0b"}, + {file = "cryptography-42.0.7-cp37-abi3-win_amd64.whl", hash = "sha256:8cb8ce7c3347fcf9446f201dc30e2d5a3c898d009126010cbd1f443f28b52678"}, + {file = "cryptography-42.0.7-cp39-abi3-macosx_10_12_universal2.whl", hash = "sha256:a3a5ac8b56fe37f3125e5b72b61dcde43283e5370827f5233893d461b7360cd4"}, + {file = "cryptography-42.0.7-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:779245e13b9a6638df14641d029add5dc17edbef6ec915688f3acb9e720a5858"}, + {file = "cryptography-42.0.7-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:0d563795db98b4cd57742a78a288cdbdc9daedac29f2239793071fe114f13785"}, + {file = "cryptography-42.0.7-cp39-abi3-manylinux_2_28_aarch64.whl", hash = "sha256:31adb7d06fe4383226c3e963471f6837742889b3c4caa55aac20ad951bc8ffda"}, + {file = "cryptography-42.0.7-cp39-abi3-manylinux_2_28_x86_64.whl", hash = "sha256:efd0bf5205240182e0f13bcaea41be4fdf5c22c5129fc7ced4a0282ac86998c9"}, + {file = "cryptography-42.0.7-cp39-abi3-musllinux_1_1_aarch64.whl", hash = "sha256:a9bc127cdc4ecf87a5ea22a2556cab6c7eda2923f84e4f3cc588e8470ce4e42e"}, + {file = "cryptography-42.0.7-cp39-abi3-musllinux_1_1_x86_64.whl", hash = "sha256:3577d029bc3f4827dd5bf8bf7710cac13527b470bbf1820a3f394adb38ed7d5f"}, + {file = "cryptography-42.0.7-cp39-abi3-musllinux_1_2_aarch64.whl", hash = "sha256:2e47577f9b18723fa294b0ea9a17d5e53a227867a0a4904a1a076d1646d45ca1"}, + {file = "cryptography-42.0.7-cp39-abi3-musllinux_1_2_x86_64.whl", hash = "sha256:1a58839984d9cb34c855197043eaae2c187d930ca6d644612843b4fe8513c886"}, + {file = "cryptography-42.0.7-cp39-abi3-win32.whl", hash = "sha256:e6b79d0adb01aae87e8a44c2b64bc3f3fe59515280e00fb6d57a7267a2583cda"}, + {file = "cryptography-42.0.7-cp39-abi3-win_amd64.whl", hash = "sha256:16268d46086bb8ad5bf0a2b5544d8a9ed87a0e33f5e77dd3c3301e63d941a83b"}, + {file = "cryptography-42.0.7-pp310-pypy310_pp73-macosx_10_12_x86_64.whl", hash = "sha256:2954fccea107026512b15afb4aa664a5640cd0af630e2ee3962f2602693f0c82"}, + {file = "cryptography-42.0.7-pp310-pypy310_pp73-manylinux_2_28_aarch64.whl", hash = "sha256:362e7197754c231797ec45ee081f3088a27a47c6c01eff2ac83f60f85a50fe60"}, + {file = "cryptography-42.0.7-pp310-pypy310_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:4f698edacf9c9e0371112792558d2f705b5645076cc0aaae02f816a0171770fd"}, + {file = "cryptography-42.0.7-pp310-pypy310_pp73-win_amd64.whl", hash = "sha256:5482e789294854c28237bba77c4c83be698be740e31a3ae5e879ee5444166582"}, + {file = "cryptography-42.0.7-pp39-pypy39_pp73-macosx_10_12_x86_64.whl", hash = "sha256:e9b2a6309f14c0497f348d08a065d52f3020656f675819fc405fb63bbcd26562"}, + {file = "cryptography-42.0.7-pp39-pypy39_pp73-manylinux_2_28_aarch64.whl", hash = "sha256:d8e3098721b84392ee45af2dd554c947c32cc52f862b6a3ae982dbb90f577f14"}, + {file = "cryptography-42.0.7-pp39-pypy39_pp73-manylinux_2_28_x86_64.whl", hash = "sha256:c65f96dad14f8528a447414125e1fc8feb2ad5a272b8f68477abbcc1ea7d94b9"}, + {file = "cryptography-42.0.7-pp39-pypy39_pp73-win_amd64.whl", hash = "sha256:36017400817987670037fbb0324d71489b6ead6231c9604f8fc1f7d008087c68"}, + {file = "cryptography-42.0.7.tar.gz", hash = "sha256:ecbfbc00bf55888edda9868a4cf927205de8499e7fabe6c050322298382953f2"}, ] [package.dependencies] @@ -973,7 +973,7 @@ pyyaml = "^6" type = "git" url = "https://github.com/uc-cdis/gen3users.git" reference = "feat/python" -resolved_reference = "b0d3907f83305b4b46dad5d9dba100d32eed6ef2" +resolved_reference = "ef0af169c631850f87c82ad84e52249ece3a3d93" [[package]] name = "h11" @@ -1180,13 +1180,13 @@ files = [ [[package]] name = "jinja2" -version = "3.1.3" +version = "3.1.4" description = "A very fast and expressive template engine." optional = false python-versions = ">=3.7" files = [ - {file = "Jinja2-3.1.3-py3-none-any.whl", hash = "sha256:7d6d50dd97d52cbc355597bd845fabfbac3f551e1f99619e39a35ce8c370b5fa"}, - {file = "Jinja2-3.1.3.tar.gz", hash = "sha256:ac8bd6544d4bb2c9792bf3a159e80bba8fda7f07e81bc3aed565432d5925ba90"}, + {file = "jinja2-3.1.4-py3-none-any.whl", hash = "sha256:bc5dd2abb727a5319567b7a813e6a2e7318c39f4f487cfe6c89c6f9c7d25197d"}, + {file = "jinja2-3.1.4.tar.gz", hash = "sha256:4a3aee7acbbe7303aede8e9648d13b8bf88a429282aa6122a993f0ac800cb369"}, ] [package.dependencies] @@ -1218,13 +1218,13 @@ format-nongpl = ["idna", "jsonpointer (>1.13)", "rfc3339-validator", "rfc3986-va [[package]] name = "mako" -version = "1.3.3" +version = "1.3.5" description = "A super-fast templating language that borrows the best ideas from the existing templating languages." optional = false python-versions = ">=3.8" files = [ - {file = "Mako-1.3.3-py3-none-any.whl", hash = "sha256:5324b88089a8978bf76d1629774fcc2f1c07b82acdf00f4c5dd8ceadfffc4b40"}, - {file = "Mako-1.3.3.tar.gz", hash = "sha256:e16c01d9ab9c11f7290eef1cfefc093fb5a45ee4a3da09e2fec2e4d1bae54e73"}, + {file = "Mako-1.3.5-py3-none-any.whl", hash = "sha256:260f1dbc3a519453a9c856dedfe4beb4e50bd5a26d96386cb6c80856556bb91a"}, + {file = "Mako-1.3.5.tar.gz", hash = "sha256:48dbc20568c1d276a2698b36d968fa76161bf127194907ea6fc594fa81f943bc"}, ] [package.dependencies] @@ -1306,13 +1306,13 @@ files = [ [[package]] name = "marshmallow" -version = "3.21.1" +version = "3.21.2" description = "A lightweight library for converting complex datatypes to and from native Python datatypes." optional = false python-versions = ">=3.8" files = [ - {file = "marshmallow-3.21.1-py3-none-any.whl", hash = "sha256:f085493f79efb0644f270a9bf2892843142d80d7174bbbd2f3713f2a589dc633"}, - {file = "marshmallow-3.21.1.tar.gz", hash = "sha256:4e65e9e0d80fc9e609574b9983cf32579f305c718afb30d7233ab818571768c3"}, + {file = "marshmallow-3.21.2-py3-none-any.whl", hash = "sha256:70b54a6282f4704d12c0a41599682c5c5450e843b9ec406308653b47c59648a1"}, + {file = "marshmallow-3.21.2.tar.gz", hash = "sha256:82408deadd8b33d56338d2182d455db632c6313aa2af61916672146bb32edc56"}, ] [package.dependencies] @@ -1320,7 +1320,7 @@ packaging = ">=17.0" [package.extras] dev = ["marshmallow[tests]", "pre-commit (>=3.5,<4.0)", "tox"] -docs = ["alabaster (==0.7.16)", "autodocsumm (==0.2.12)", "sphinx (==7.2.6)", "sphinx-issues (==4.0.0)", "sphinx-version-warning (==1.1.2)"] +docs = ["alabaster (==0.7.16)", "autodocsumm (==0.2.12)", "sphinx (==7.3.7)", "sphinx-issues (==4.1.0)", "sphinx-version-warning (==1.1.2)"] tests = ["pytest", "pytz", "simplejson"] [[package]] @@ -1578,13 +1578,13 @@ xml = ["lxml (>=4.9.2)"] [[package]] name = "pluggy" -version = "1.4.0" +version = "1.5.0" description = "plugin and hook calling mechanisms for python" optional = false python-versions = ">=3.8" files = [ - {file = "pluggy-1.4.0-py3-none-any.whl", hash = "sha256:7db9f7b503d67d1c5b95f59773ebb58a8c1c288129a88665838012cfb07b8981"}, - {file = "pluggy-1.4.0.tar.gz", hash = "sha256:8c85c2876142a764e5b7548e7d9a0e0ddb46f5185161049a79b7e974454223be"}, + {file = "pluggy-1.5.0-py3-none-any.whl", hash = "sha256:44e1ad92c8ca002de6377e165f3e0f1be63266ab4d554740532335b9d75ea669"}, + {file = "pluggy-1.5.0.tar.gz", hash = "sha256:2cffa88e94fdc978c4c574f15f9e59b7f4201d439195c3715ca9e2486f1d0cf1"}, ] [package.extras] @@ -1613,6 +1613,87 @@ files = [ {file = "psycopg2-2.9.9.tar.gz", hash = "sha256:d1454bde93fb1e224166811694d600e746430c006fbb031ea06ecc2ea41bf156"}, ] +[[package]] +name = "psycopg2-binary" +version = "2.9.9" +description = "psycopg2 - Python-PostgreSQL Database Adapter" +optional = false +python-versions = ">=3.7" +files = [ + {file = "psycopg2-binary-2.9.9.tar.gz", hash = "sha256:7f01846810177d829c7692f1f5ada8096762d9172af1b1a28d4ab5b77c923c1c"}, + {file = "psycopg2_binary-2.9.9-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:c2470da5418b76232f02a2fcd2229537bb2d5a7096674ce61859c3229f2eb202"}, + {file = "psycopg2_binary-2.9.9-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:c6af2a6d4b7ee9615cbb162b0738f6e1fd1f5c3eda7e5da17861eacf4c717ea7"}, + {file = "psycopg2_binary-2.9.9-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:75723c3c0fbbf34350b46a3199eb50638ab22a0228f93fb472ef4d9becc2382b"}, + {file = "psycopg2_binary-2.9.9-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:83791a65b51ad6ee6cf0845634859d69a038ea9b03d7b26e703f94c7e93dbcf9"}, + {file = "psycopg2_binary-2.9.9-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:0ef4854e82c09e84cc63084a9e4ccd6d9b154f1dbdd283efb92ecd0b5e2b8c84"}, + {file = "psycopg2_binary-2.9.9-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ed1184ab8f113e8d660ce49a56390ca181f2981066acc27cf637d5c1e10ce46e"}, + {file = "psycopg2_binary-2.9.9-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:d2997c458c690ec2bc6b0b7ecbafd02b029b7b4283078d3b32a852a7ce3ddd98"}, + {file = "psycopg2_binary-2.9.9-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:b58b4710c7f4161b5e9dcbe73bb7c62d65670a87df7bcce9e1faaad43e715245"}, + {file = "psycopg2_binary-2.9.9-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:0c009475ee389757e6e34611d75f6e4f05f0cf5ebb76c6037508318e1a1e0d7e"}, + {file = "psycopg2_binary-2.9.9-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:8dbf6d1bc73f1d04ec1734bae3b4fb0ee3cb2a493d35ede9badbeb901fb40f6f"}, + {file = "psycopg2_binary-2.9.9-cp310-cp310-win32.whl", hash = "sha256:3f78fd71c4f43a13d342be74ebbc0666fe1f555b8837eb113cb7416856c79682"}, + {file = "psycopg2_binary-2.9.9-cp310-cp310-win_amd64.whl", hash = "sha256:876801744b0dee379e4e3c38b76fc89f88834bb15bf92ee07d94acd06ec890a0"}, + {file = "psycopg2_binary-2.9.9-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:ee825e70b1a209475622f7f7b776785bd68f34af6e7a46e2e42f27b659b5bc26"}, + {file = "psycopg2_binary-2.9.9-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:1ea665f8ce695bcc37a90ee52de7a7980be5161375d42a0b6c6abedbf0d81f0f"}, + {file = "psycopg2_binary-2.9.9-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:143072318f793f53819048fdfe30c321890af0c3ec7cb1dfc9cc87aa88241de2"}, + {file = "psycopg2_binary-2.9.9-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:c332c8d69fb64979ebf76613c66b985414927a40f8defa16cf1bc028b7b0a7b0"}, + {file = "psycopg2_binary-2.9.9-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:f7fc5a5acafb7d6ccca13bfa8c90f8c51f13d8fb87d95656d3950f0158d3ce53"}, + {file = "psycopg2_binary-2.9.9-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:977646e05232579d2e7b9c59e21dbe5261f403a88417f6a6512e70d3f8a046be"}, + {file = "psycopg2_binary-2.9.9-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:b6356793b84728d9d50ead16ab43c187673831e9d4019013f1402c41b1db9b27"}, + {file = "psycopg2_binary-2.9.9-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:bc7bb56d04601d443f24094e9e31ae6deec9ccb23581f75343feebaf30423359"}, + {file = "psycopg2_binary-2.9.9-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:77853062a2c45be16fd6b8d6de2a99278ee1d985a7bd8b103e97e41c034006d2"}, + {file = "psycopg2_binary-2.9.9-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:78151aa3ec21dccd5cdef6c74c3e73386dcdfaf19bced944169697d7ac7482fc"}, + {file = "psycopg2_binary-2.9.9-cp311-cp311-win32.whl", hash = "sha256:dc4926288b2a3e9fd7b50dc6a1909a13bbdadfc67d93f3374d984e56f885579d"}, + {file = "psycopg2_binary-2.9.9-cp311-cp311-win_amd64.whl", hash = "sha256:b76bedd166805480ab069612119ea636f5ab8f8771e640ae103e05a4aae3e417"}, + {file = "psycopg2_binary-2.9.9-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:8532fd6e6e2dc57bcb3bc90b079c60de896d2128c5d9d6f24a63875a95a088cf"}, + {file = "psycopg2_binary-2.9.9-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:b0605eaed3eb239e87df0d5e3c6489daae3f7388d455d0c0b4df899519c6a38d"}, + {file = "psycopg2_binary-2.9.9-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8f8544b092a29a6ddd72f3556a9fcf249ec412e10ad28be6a0c0d948924f2212"}, + {file = "psycopg2_binary-2.9.9-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:2d423c8d8a3c82d08fe8af900ad5b613ce3632a1249fd6a223941d0735fce493"}, + {file = "psycopg2_binary-2.9.9-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:2e5afae772c00980525f6d6ecf7cbca55676296b580c0e6abb407f15f3706996"}, + {file = "psycopg2_binary-2.9.9-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6e6f98446430fdf41bd36d4faa6cb409f5140c1c2cf58ce0bbdaf16af7d3f119"}, + {file = "psycopg2_binary-2.9.9-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:c77e3d1862452565875eb31bdb45ac62502feabbd53429fdc39a1cc341d681ba"}, + {file = "psycopg2_binary-2.9.9-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:cb16c65dcb648d0a43a2521f2f0a2300f40639f6f8c1ecbc662141e4e3e1ee07"}, + {file = "psycopg2_binary-2.9.9-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:911dda9c487075abd54e644ccdf5e5c16773470a6a5d3826fda76699410066fb"}, + {file = "psycopg2_binary-2.9.9-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:57fede879f08d23c85140a360c6a77709113efd1c993923c59fde17aa27599fe"}, + {file = "psycopg2_binary-2.9.9-cp312-cp312-win32.whl", hash = "sha256:64cf30263844fa208851ebb13b0732ce674d8ec6a0c86a4e160495d299ba3c93"}, + {file = "psycopg2_binary-2.9.9-cp312-cp312-win_amd64.whl", hash = "sha256:81ff62668af011f9a48787564ab7eded4e9fb17a4a6a74af5ffa6a457400d2ab"}, + {file = "psycopg2_binary-2.9.9-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:2293b001e319ab0d869d660a704942c9e2cce19745262a8aba2115ef41a0a42a"}, + {file = "psycopg2_binary-2.9.9-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:03ef7df18daf2c4c07e2695e8cfd5ee7f748a1d54d802330985a78d2a5a6dca9"}, + {file = "psycopg2_binary-2.9.9-cp37-cp37m-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:0a602ea5aff39bb9fac6308e9c9d82b9a35c2bf288e184a816002c9fae930b77"}, + {file = "psycopg2_binary-2.9.9-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:8359bf4791968c5a78c56103702000105501adb557f3cf772b2c207284273984"}, + {file = "psycopg2_binary-2.9.9-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:275ff571376626195ab95a746e6a04c7df8ea34638b99fc11160de91f2fef503"}, + {file = "psycopg2_binary-2.9.9-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:f9b5571d33660d5009a8b3c25dc1db560206e2d2f89d3df1cb32d72c0d117d52"}, + {file = "psycopg2_binary-2.9.9-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:420f9bbf47a02616e8554e825208cb947969451978dceb77f95ad09c37791dae"}, + {file = "psycopg2_binary-2.9.9-cp37-cp37m-musllinux_1_1_ppc64le.whl", hash = "sha256:4154ad09dac630a0f13f37b583eae260c6aa885d67dfbccb5b02c33f31a6d420"}, + {file = "psycopg2_binary-2.9.9-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:a148c5d507bb9b4f2030a2025c545fccb0e1ef317393eaba42e7eabd28eb6041"}, + {file = "psycopg2_binary-2.9.9-cp37-cp37m-win32.whl", hash = "sha256:68fc1f1ba168724771e38bee37d940d2865cb0f562380a1fb1ffb428b75cb692"}, + {file = "psycopg2_binary-2.9.9-cp37-cp37m-win_amd64.whl", hash = "sha256:281309265596e388ef483250db3640e5f414168c5a67e9c665cafce9492eda2f"}, + {file = "psycopg2_binary-2.9.9-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:60989127da422b74a04345096c10d416c2b41bd7bf2a380eb541059e4e999980"}, + {file = "psycopg2_binary-2.9.9-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:246b123cc54bb5361588acc54218c8c9fb73068bf227a4a531d8ed56fa3ca7d6"}, + {file = "psycopg2_binary-2.9.9-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:34eccd14566f8fe14b2b95bb13b11572f7c7d5c36da61caf414d23b91fcc5d94"}, + {file = "psycopg2_binary-2.9.9-cp38-cp38-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:18d0ef97766055fec15b5de2c06dd8e7654705ce3e5e5eed3b6651a1d2a9a152"}, + {file = "psycopg2_binary-2.9.9-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:d3f82c171b4ccd83bbaf35aa05e44e690113bd4f3b7b6cc54d2219b132f3ae55"}, + {file = "psycopg2_binary-2.9.9-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ead20f7913a9c1e894aebe47cccf9dc834e1618b7aa96155d2091a626e59c972"}, + {file = "psycopg2_binary-2.9.9-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:ca49a8119c6cbd77375ae303b0cfd8c11f011abbbd64601167ecca18a87e7cdd"}, + {file = "psycopg2_binary-2.9.9-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:323ba25b92454adb36fa425dc5cf6f8f19f78948cbad2e7bc6cdf7b0d7982e59"}, + {file = "psycopg2_binary-2.9.9-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:1236ed0952fbd919c100bc839eaa4a39ebc397ed1c08a97fc45fee2a595aa1b3"}, + {file = "psycopg2_binary-2.9.9-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:729177eaf0aefca0994ce4cffe96ad3c75e377c7b6f4efa59ebf003b6d398716"}, + {file = "psycopg2_binary-2.9.9-cp38-cp38-win32.whl", hash = "sha256:804d99b24ad523a1fe18cc707bf741670332f7c7412e9d49cb5eab67e886b9b5"}, + {file = "psycopg2_binary-2.9.9-cp38-cp38-win_amd64.whl", hash = "sha256:a6cdcc3ede532f4a4b96000b6362099591ab4a3e913d70bcbac2b56c872446f7"}, + {file = "psycopg2_binary-2.9.9-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:72dffbd8b4194858d0941062a9766f8297e8868e1dd07a7b36212aaa90f49472"}, + {file = "psycopg2_binary-2.9.9-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:30dcc86377618a4c8f3b72418df92e77be4254d8f89f14b8e8f57d6d43603c0f"}, + {file = "psycopg2_binary-2.9.9-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:31a34c508c003a4347d389a9e6fcc2307cc2150eb516462a7a17512130de109e"}, + {file = "psycopg2_binary-2.9.9-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:15208be1c50b99203fe88d15695f22a5bed95ab3f84354c494bcb1d08557df67"}, + {file = "psycopg2_binary-2.9.9-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:1873aade94b74715be2246321c8650cabf5a0d098a95bab81145ffffa4c13876"}, + {file = "psycopg2_binary-2.9.9-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3a58c98a7e9c021f357348867f537017057c2ed7f77337fd914d0bedb35dace7"}, + {file = "psycopg2_binary-2.9.9-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:4686818798f9194d03c9129a4d9a702d9e113a89cb03bffe08c6cf799e053291"}, + {file = "psycopg2_binary-2.9.9-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:ebdc36bea43063116f0486869652cb2ed7032dbc59fbcb4445c4862b5c1ecf7f"}, + {file = "psycopg2_binary-2.9.9-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:ca08decd2697fdea0aea364b370b1249d47336aec935f87b8bbfd7da5b2ee9c1"}, + {file = "psycopg2_binary-2.9.9-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:ac05fb791acf5e1a3e39402641827780fe44d27e72567a000412c648a85ba860"}, + {file = "psycopg2_binary-2.9.9-cp39-cp39-win32.whl", hash = "sha256:9dba73be7305b399924709b91682299794887cbbd88e38226ed9f6712eabee90"}, + {file = "psycopg2_binary-2.9.9-cp39-cp39-win_amd64.whl", hash = "sha256:f7ae5d65ccfbebdfa761585228eb4d0df3a8b15cfb53bd953e713e09fbb12957"}, +] + [[package]] name = "py" version = "1.11.0" @@ -1872,13 +1953,13 @@ files = [ [[package]] name = "requests" -version = "2.31.0" +version = "2.32.3" description = "Python HTTP for Humans." optional = false -python-versions = ">=3.7" +python-versions = ">=3.8" files = [ - {file = "requests-2.31.0-py3-none-any.whl", hash = "sha256:58cd2187c01e70e6e26505bca751777aa9f2ee0b7f4300988b709f44e013003f"}, - {file = "requests-2.31.0.tar.gz", hash = "sha256:942c5a758f98d790eaed1a29cb6eefc7ffb0d1cf7af05c3d2791656dbd6ad1e1"}, + {file = "requests-2.32.3-py3-none-any.whl", hash = "sha256:70761cfe03c773ceb22aa2f671b4757976145175cdfca038c02654d061d6dcc6"}, + {file = "requests-2.32.3.tar.gz", hash = "sha256:55365417734eb18255590a9ff9eb97e9e1da868d4ccd6402399eaf68af20a760"}, ] [package.dependencies] @@ -1927,19 +2008,18 @@ idna2008 = ["idna"] [[package]] name = "setuptools" -version = "69.5.1" +version = "70.0.0" description = "Easily download, build, install, upgrade, and uninstall Python packages" optional = false python-versions = ">=3.8" files = [ - {file = "setuptools-69.5.1-py3-none-any.whl", hash = "sha256:c636ac361bc47580504644275c9ad802c50415c7522212252c033bd15f301f32"}, - {file = "setuptools-69.5.1.tar.gz", hash = "sha256:6c1fccdac05a97e598fb0ae3bbed5904ccb317337a51139dcd51453611bbb987"}, + {file = "setuptools-70.0.0-py3-none-any.whl", hash = "sha256:54faa7f2e8d2d11bcd2c07bed282eef1046b5c080d1c32add737d7b5817b1ad4"}, + {file = "setuptools-70.0.0.tar.gz", hash = "sha256:f211a66637b8fa059bb28183da127d4e86396c991a942b028c6650d4319c3fd0"}, ] [package.extras] -docs = ["furo", "jaraco.packaging (>=9.3)", "jaraco.tidelift (>=1.4)", "pygments-github-lexers (==0.0.5)", "rst.linker (>=1.9)", "sphinx (>=3.5)", "sphinx-favicon", "sphinx-inline-tabs", "sphinx-lint", "sphinx-notfound-page (>=1,<2)", "sphinx-reredirects", "sphinxcontrib-towncrier"] -testing = ["build[virtualenv]", "filelock (>=3.4.0)", "importlib-metadata", "ini2toml[lite] (>=0.9)", "jaraco.develop (>=7.21)", "jaraco.envs (>=2.2)", "jaraco.path (>=3.2.0)", "mypy (==1.9)", "packaging (>=23.2)", "pip (>=19.1)", "pytest (>=6,!=8.1.1)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=2.2)", "pytest-home (>=0.5)", "pytest-mypy", "pytest-perf", "pytest-ruff (>=0.2.1)", "pytest-timeout", "pytest-xdist (>=3)", "tomli", "tomli-w (>=1.0.0)", "virtualenv (>=13.0.0)", "wheel"] -testing-integration = ["build[virtualenv] (>=1.0.3)", "filelock (>=3.4.0)", "jaraco.envs (>=2.2)", "jaraco.path (>=3.2.0)", "packaging (>=23.2)", "pytest", "pytest-enabler", "pytest-xdist", "tomli", "virtualenv (>=13.0.0)", "wheel"] +docs = ["furo", "jaraco.packaging (>=9.3)", "jaraco.tidelift (>=1.4)", "pygments-github-lexers (==0.0.5)", "pyproject-hooks (!=1.1)", "rst.linker (>=1.9)", "sphinx (>=3.5)", "sphinx-favicon", "sphinx-inline-tabs", "sphinx-lint", "sphinx-notfound-page (>=1,<2)", "sphinx-reredirects", "sphinxcontrib-towncrier"] +testing = ["build[virtualenv] (>=1.0.3)", "filelock (>=3.4.0)", "importlib-metadata", "ini2toml[lite] (>=0.14)", "jaraco.develop (>=7.21)", "jaraco.envs (>=2.2)", "jaraco.path (>=3.2.0)", "mypy (==1.9)", "packaging (>=23.2)", "pip (>=19.1)", "pyproject-hooks (!=1.1)", "pytest (>=6,!=8.1.1)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=2.2)", "pytest-home (>=0.5)", "pytest-mypy", "pytest-perf", "pytest-ruff (>=0.2.1)", "pytest-subprocess", "pytest-timeout", "pytest-xdist (>=3)", "tomli", "tomli-w (>=1.0.0)", "virtualenv (>=13.0.0)", "wheel"] [[package]] name = "six" @@ -2071,13 +2151,13 @@ files = [ [[package]] name = "tqdm" -version = "4.66.2" +version = "4.66.4" description = "Fast, Extensible Progress Meter" optional = false python-versions = ">=3.7" files = [ - {file = "tqdm-4.66.2-py3-none-any.whl", hash = "sha256:1ee4f8a893eb9bef51c6e35730cebf234d5d0b6bd112b0271e10ed7c24a02bd9"}, - {file = "tqdm-4.66.2.tar.gz", hash = "sha256:6cd52cdf0fef0e0f543299cfc96fec90d7b8a7e88745f411ec33eb44d5ed3531"}, + {file = "tqdm-4.66.4-py3-none-any.whl", hash = "sha256:b75ca56b413b030bc3f00af51fd2c1a1a5eac6a0c1cca83cbb37a5c52abce644"}, + {file = "tqdm-4.66.4.tar.gz", hash = "sha256:e4d936c9de8727928f3be6079590e97d9abfe8d39a590be678eb5919ffc186bb"}, ] [package.dependencies] @@ -2091,13 +2171,13 @@ telegram = ["requests"] [[package]] name = "typing-extensions" -version = "4.11.0" +version = "4.12.0" description = "Backported and Experimental Type Hints for Python 3.8+" optional = false python-versions = ">=3.8" files = [ - {file = "typing_extensions-4.11.0-py3-none-any.whl", hash = "sha256:c1f94d72897edaf4ce775bb7558d5b79d8126906a14ea5ed1635921406c0387a"}, - {file = "typing_extensions-4.11.0.tar.gz", hash = "sha256:83f085bd5ca59c80295fc2a82ab5dac679cbe02b9f33f7d83af68e241bea51b0"}, + {file = "typing_extensions-4.12.0-py3-none-any.whl", hash = "sha256:b349c66bea9016ac22978d800cfff206d5f9816951f12a7d0ec5578b0a819594"}, + {file = "typing_extensions-4.12.0.tar.gz", hash = "sha256:8cbcdc8606ebcb0d95453ad7dc5065e6237b6aa230a31e81d0f440c30fed5fd8"}, ] [[package]] @@ -2145,13 +2225,13 @@ zstd = ["zstandard (>=0.18.0)"] [[package]] name = "werkzeug" -version = "3.0.2" +version = "3.0.3" description = "The comprehensive WSGI web application library." optional = false python-versions = ">=3.8" files = [ - {file = "werkzeug-3.0.2-py3-none-any.whl", hash = "sha256:3aac3f5da756f93030740bc235d3e09449efcf65f2f55e3602e1d851b8f48795"}, - {file = "werkzeug-3.0.2.tar.gz", hash = "sha256:e39b645a6ac92822588e7b39a692e7828724ceae0b0d702ef96701f90e70128d"}, + {file = "werkzeug-3.0.3-py3-none-any.whl", hash = "sha256:fc9645dc43e03e4d630d23143a04a7f947a9a3b5727cd535fdfe155a17cc48c8"}, + {file = "werkzeug-3.0.3.tar.gz", hash = "sha256:097e5bfda9f0aba8da6b8545146def481d06aa7d3266e7448e2cccf67dd8bd18"}, ] [package.dependencies] @@ -2276,18 +2356,18 @@ multidict = ">=4.0" [[package]] name = "zipp" -version = "3.18.1" +version = "3.19.0" description = "Backport of pathlib-compatible object wrapper for zip files" optional = false python-versions = ">=3.8" files = [ - {file = "zipp-3.18.1-py3-none-any.whl", hash = "sha256:206f5a15f2af3dbaee80769fb7dc6f249695e940acca08dfb2a4769fe61e538b"}, - {file = "zipp-3.18.1.tar.gz", hash = "sha256:2884ed22e7d8961de1c9a05142eb69a247f120291bc0206a00a7642f09b5b715"}, + {file = "zipp-3.19.0-py3-none-any.whl", hash = "sha256:96dc6ad62f1441bcaccef23b274ec471518daf4fbbc580341204936a5a3dddec"}, + {file = "zipp-3.19.0.tar.gz", hash = "sha256:952df858fb3164426c976d9338d3961e8e8b3758e2e059e0f754b8c4262625ee"}, ] [package.extras] docs = ["furo", "jaraco.packaging (>=9.3)", "jaraco.tidelift (>=1.4)", "rst.linker (>=1.9)", "sphinx (>=3.5)", "sphinx-lint"] -testing = ["big-O", "jaraco.functools", "jaraco.itertools", "more-itertools", "pytest (>=6)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=2.2)", "pytest-ignore-flaky", "pytest-mypy", "pytest-ruff (>=0.2.1)"] +testing = ["big-O", "jaraco.functools", "jaraco.itertools", "jaraco.test", "more-itertools", "pytest (>=6,!=8.1.*)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=2.2)", "pytest-ignore-flaky", "pytest-mypy", "pytest-ruff (>=0.2.1)"] [extras] fhir = ["fhirclient"] @@ -2295,4 +2375,4 @@ fhir = ["fhirclient"] [metadata] lock-version = "2.0" python-versions = ">=3.9, <4" -content-hash = "2abb0a0a475f434e858aa42b8fe8af0e69978cc970cc0a8035ac3f55188b1e79" +content-hash = "c22bcf61e966e6842a2d7c098e90d2dee829b57b9454092419114bf0d2bd1141" diff --git a/pyproject.toml b/pyproject.toml index 8a4891149..6681387d1 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -41,6 +41,9 @@ xmltodict = "^0.13.0" pyyaml = ">=6.0.1" gen3users = { git = "https://github.com/uc-cdis/gen3users.git", branch = "feat/python" } +# this is required for the pyinstaller builds +psycopg2-binary = "*" + # A list of all of the optional dependencies, some of which are included in the # below `extras`. They can be opted into by apps. fhirclient = { version = "*", optional = true } From 68e9f85f60b769ae05ab6a7387f3709661de4c56 Mon Sep 17 00:00:00 2001 From: Avantol13 Date: Fri, 31 May 2024 15:47:33 +0000 Subject: [PATCH 42/62] Apply automatic documentation changes --- docs/_build/doctrees/environment.pickle | Bin 1579888 -> 1579888 bytes docs/_build/doctrees/tools/indexing.doctree | Bin 100291 -> 100286 bytes docs/_build/doctrees/tools/metadata.doctree | Bin 35929 -> 35934 bytes docs/_build/html/searchindex.js | 2 +- docs/_build/html/tools/indexing.html | 2 +- docs/_build/html/tools/metadata.html | 2 +- 6 files changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/_build/doctrees/environment.pickle b/docs/_build/doctrees/environment.pickle index 294451d028ae7cfa45d336be00828948d9a47007..57b54d180c1ccc26cfe0cc89241f126c4f377bfe 100644 GIT binary patch delta 10891 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 SQ!>PQAi7bl4EJTsu>t@yt1cw~ delta 176 zcmdnj&vv+YZ7^Vl>G0IHt+AX_X)}C=8Bd?jIfq{jdp|OdH zxux;;LTkouX2y%#|JpGgM3+0|z_^v0(SG_w2S!~X6m5Dr`RVG@9o-p)q0-Wr(o-_n TW2a<@^+5EaSsUcbm}3P1Qd=-H diff --git a/docs/_build/doctrees/tools/metadata.doctree b/docs/_build/doctrees/tools/metadata.doctree index 0cb521bb6e0fc7c500edff695ae4456cb66ea568..7a2891d4ce62f694618d2b9e49f537fb5cefd118 100644 GIT binary patch delta 159 zcmcaPgX!K3CYA=)slgjrmT0idWn^HOJTY8u^C=B`MqYCR6BA243o~N_b3^mV>H0RC z1GSDbGuCgG)N?|U-JGu9%E9O{`K`Gbnl^n435d8fig9{5`RVFYGT39MWQg@((YN`Q HMSU;;NEKk>%t}eVffe zTF03g>o!a2IiX5!&eU(^V054S-rP(OS(9E)e!BYPgE_(wIVlXeDH-gsQ!>PQz*Indexing Tools
-async gen3.tools.indexing.verify_manifest.async_verify_object_manifest(commons_url, manifest_file, max_concurrent_requests=24, manifest_row_parsers={'acl': <function _get_acl_from_row>, 'authz': <function _get_authz_from_row>, 'file_name': <function _get_file_name_from_row>, 'file_size': <function _get_file_size_from_row>, 'guid': <function _get_guid_from_row>, 'md5': <function _get_md5_from_row>, 'urls': <function _get_urls_from_row>}, manifest_file_delimiter=None, output_filename='verify-manifest-errors-1717169008.1344793.log')[source]
+async gen3.tools.indexing.verify_manifest.async_verify_object_manifest(commons_url, manifest_file, max_concurrent_requests=24, manifest_row_parsers={'acl': <function _get_acl_from_row>, 'authz': <function _get_authz_from_row>, 'file_name': <function _get_file_name_from_row>, 'file_size': <function _get_file_size_from_row>, 'guid': <function _get_guid_from_row>, 'md5': <function _get_md5_from_row>, 'urls': <function _get_urls_from_row>}, manifest_file_delimiter=None, output_filename='verify-manifest-errors-1717170449.568308.log')[source]

Verify all file object records into a manifest csv

Parameters:
diff --git a/docs/_build/html/tools/metadata.html b/docs/_build/html/tools/metadata.html index 3bae20400..6eb183041 100644 --- a/docs/_build/html/tools/metadata.html +++ b/docs/_build/html/tools/metadata.html @@ -102,7 +102,7 @@

Metadata Tools
-async gen3.tools.metadata.ingest_manifest.async_ingest_metadata_manifest(commons_url, manifest_file, metadata_source, auth=None, max_concurrent_requests=24, manifest_row_parsers={'guid_for_row': <function _get_guid_for_row>, 'indexed_file_object_guid': <function _query_for_associated_indexd_record_guid>}, manifest_file_delimiter=None, output_filename='ingest-metadata-manifest-errors-1717169008.517729.log', get_guid_from_file=True, metadata_type=None)[source]
+async gen3.tools.metadata.ingest_manifest.async_ingest_metadata_manifest(commons_url, manifest_file, metadata_source, auth=None, max_concurrent_requests=24, manifest_row_parsers={'guid_for_row': <function _get_guid_for_row>, 'indexed_file_object_guid': <function _query_for_associated_indexd_record_guid>}, manifest_file_delimiter=None, output_filename='ingest-metadata-manifest-errors-1717170449.8630717.log', get_guid_from_file=True, metadata_type=None)[source]

Ingest all metadata records into a manifest csv

Parameters:
From e6030ca01ae5d88481d24a3bf65a3dbcf260c251 Mon Sep 17 00:00:00 2001 From: Alex Date: Fri, 31 May 2024 11:09:34 -0500 Subject: [PATCH 43/62] feat(postgres): add postgres service to ensure OS has necessary packages for building binary --- .github/workflows/build.yaml | 39 +++++++++++++++++ poetry.lock | 83 +----------------------------------- pyproject.toml | 3 -- 3 files changed, 40 insertions(+), 85 deletions(-) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index 98965b54e..b6d6387eb 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -12,7 +12,46 @@ jobs: matrix: os: [ubuntu-latest, windows-latest, macos-latest] + # Defining a Postgres DB service, mainly to get the required OS packages + # so we can build and deal with `psycopg` from source (which pyinstaller + # needs to do when building the binary) + services: + postgres: + # Docker Hub image + image: postgres:13 + env: + # trust connections from other jobs in this workflow to access this service + # this simplifies the networking to this service + POSTGRES_HOST_AUTH_METHOD: trust + # Set health checks to wait until postgres has started + options: >- + --health-cmd pg_isready + --health-interval 10s + --health-timeout 5s + --health-retries 5 + ports: + # Maps tcp port 5432 on service container to the host + - 5432:5432 steps: + - name: Additional Postgres service configuration + # PostgreSQL 15 will revoke the CREATE permission from all users + # except a database owner from the public (or default) schema. + # This is required by some services for db setup for testing, so grant + # that permission to the postgres user now to hopefully avoid headache + # when we eventually upgrade to 15 (even though it's not technically required + # in postgres 13). + run: | + echo "Versions" + psql --version + psql -U postgres -h localhost -d postgres -c 'SELECT version();' + + echo "Grant admin privileges to postgres user" + psql -U postgres -h localhost -d postgres -c 'GRANT CREATE ON SCHEMA public TO postgres;' + env: + # The hostname used to communicate with the PostgreSQL service container + POSTGRES_HOST: localhost + POSTGRES_PORT: 5432 + - name: Check out code uses: actions/checkout@v3 with: diff --git a/poetry.lock b/poetry.lock index f5c5dd216..df73fda67 100644 --- a/poetry.lock +++ b/poetry.lock @@ -1613,87 +1613,6 @@ files = [ {file = "psycopg2-2.9.9.tar.gz", hash = "sha256:d1454bde93fb1e224166811694d600e746430c006fbb031ea06ecc2ea41bf156"}, ] -[[package]] -name = "psycopg2-binary" -version = "2.9.9" -description = "psycopg2 - Python-PostgreSQL Database Adapter" -optional = false -python-versions = ">=3.7" -files = [ - {file = "psycopg2-binary-2.9.9.tar.gz", hash = "sha256:7f01846810177d829c7692f1f5ada8096762d9172af1b1a28d4ab5b77c923c1c"}, - {file = "psycopg2_binary-2.9.9-cp310-cp310-macosx_10_9_x86_64.whl", hash = "sha256:c2470da5418b76232f02a2fcd2229537bb2d5a7096674ce61859c3229f2eb202"}, - {file = "psycopg2_binary-2.9.9-cp310-cp310-macosx_11_0_arm64.whl", hash = "sha256:c6af2a6d4b7ee9615cbb162b0738f6e1fd1f5c3eda7e5da17861eacf4c717ea7"}, - {file = "psycopg2_binary-2.9.9-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:75723c3c0fbbf34350b46a3199eb50638ab22a0228f93fb472ef4d9becc2382b"}, - {file = "psycopg2_binary-2.9.9-cp310-cp310-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:83791a65b51ad6ee6cf0845634859d69a038ea9b03d7b26e703f94c7e93dbcf9"}, - {file = "psycopg2_binary-2.9.9-cp310-cp310-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:0ef4854e82c09e84cc63084a9e4ccd6d9b154f1dbdd283efb92ecd0b5e2b8c84"}, - {file = "psycopg2_binary-2.9.9-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ed1184ab8f113e8d660ce49a56390ca181f2981066acc27cf637d5c1e10ce46e"}, - {file = "psycopg2_binary-2.9.9-cp310-cp310-musllinux_1_1_aarch64.whl", hash = "sha256:d2997c458c690ec2bc6b0b7ecbafd02b029b7b4283078d3b32a852a7ce3ddd98"}, - {file = "psycopg2_binary-2.9.9-cp310-cp310-musllinux_1_1_i686.whl", hash = "sha256:b58b4710c7f4161b5e9dcbe73bb7c62d65670a87df7bcce9e1faaad43e715245"}, - {file = "psycopg2_binary-2.9.9-cp310-cp310-musllinux_1_1_ppc64le.whl", hash = "sha256:0c009475ee389757e6e34611d75f6e4f05f0cf5ebb76c6037508318e1a1e0d7e"}, - {file = "psycopg2_binary-2.9.9-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:8dbf6d1bc73f1d04ec1734bae3b4fb0ee3cb2a493d35ede9badbeb901fb40f6f"}, - {file = "psycopg2_binary-2.9.9-cp310-cp310-win32.whl", hash = "sha256:3f78fd71c4f43a13d342be74ebbc0666fe1f555b8837eb113cb7416856c79682"}, - {file = "psycopg2_binary-2.9.9-cp310-cp310-win_amd64.whl", hash = "sha256:876801744b0dee379e4e3c38b76fc89f88834bb15bf92ee07d94acd06ec890a0"}, - {file = "psycopg2_binary-2.9.9-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:ee825e70b1a209475622f7f7b776785bd68f34af6e7a46e2e42f27b659b5bc26"}, - {file = "psycopg2_binary-2.9.9-cp311-cp311-macosx_11_0_arm64.whl", hash = "sha256:1ea665f8ce695bcc37a90ee52de7a7980be5161375d42a0b6c6abedbf0d81f0f"}, - {file = "psycopg2_binary-2.9.9-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:143072318f793f53819048fdfe30c321890af0c3ec7cb1dfc9cc87aa88241de2"}, - {file = "psycopg2_binary-2.9.9-cp311-cp311-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:c332c8d69fb64979ebf76613c66b985414927a40f8defa16cf1bc028b7b0a7b0"}, - {file = "psycopg2_binary-2.9.9-cp311-cp311-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:f7fc5a5acafb7d6ccca13bfa8c90f8c51f13d8fb87d95656d3950f0158d3ce53"}, - {file = "psycopg2_binary-2.9.9-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:977646e05232579d2e7b9c59e21dbe5261f403a88417f6a6512e70d3f8a046be"}, - {file = "psycopg2_binary-2.9.9-cp311-cp311-musllinux_1_1_aarch64.whl", hash = "sha256:b6356793b84728d9d50ead16ab43c187673831e9d4019013f1402c41b1db9b27"}, - {file = "psycopg2_binary-2.9.9-cp311-cp311-musllinux_1_1_i686.whl", hash = "sha256:bc7bb56d04601d443f24094e9e31ae6deec9ccb23581f75343feebaf30423359"}, - {file = "psycopg2_binary-2.9.9-cp311-cp311-musllinux_1_1_ppc64le.whl", hash = "sha256:77853062a2c45be16fd6b8d6de2a99278ee1d985a7bd8b103e97e41c034006d2"}, - {file = "psycopg2_binary-2.9.9-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:78151aa3ec21dccd5cdef6c74c3e73386dcdfaf19bced944169697d7ac7482fc"}, - {file = "psycopg2_binary-2.9.9-cp311-cp311-win32.whl", hash = "sha256:dc4926288b2a3e9fd7b50dc6a1909a13bbdadfc67d93f3374d984e56f885579d"}, - {file = "psycopg2_binary-2.9.9-cp311-cp311-win_amd64.whl", hash = "sha256:b76bedd166805480ab069612119ea636f5ab8f8771e640ae103e05a4aae3e417"}, - {file = "psycopg2_binary-2.9.9-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:8532fd6e6e2dc57bcb3bc90b079c60de896d2128c5d9d6f24a63875a95a088cf"}, - {file = "psycopg2_binary-2.9.9-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:b0605eaed3eb239e87df0d5e3c6489daae3f7388d455d0c0b4df899519c6a38d"}, - {file = "psycopg2_binary-2.9.9-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:8f8544b092a29a6ddd72f3556a9fcf249ec412e10ad28be6a0c0d948924f2212"}, - {file = "psycopg2_binary-2.9.9-cp312-cp312-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:2d423c8d8a3c82d08fe8af900ad5b613ce3632a1249fd6a223941d0735fce493"}, - {file = "psycopg2_binary-2.9.9-cp312-cp312-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:2e5afae772c00980525f6d6ecf7cbca55676296b580c0e6abb407f15f3706996"}, - {file = "psycopg2_binary-2.9.9-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6e6f98446430fdf41bd36d4faa6cb409f5140c1c2cf58ce0bbdaf16af7d3f119"}, - {file = "psycopg2_binary-2.9.9-cp312-cp312-musllinux_1_1_aarch64.whl", hash = "sha256:c77e3d1862452565875eb31bdb45ac62502feabbd53429fdc39a1cc341d681ba"}, - {file = "psycopg2_binary-2.9.9-cp312-cp312-musllinux_1_1_i686.whl", hash = "sha256:cb16c65dcb648d0a43a2521f2f0a2300f40639f6f8c1ecbc662141e4e3e1ee07"}, - {file = "psycopg2_binary-2.9.9-cp312-cp312-musllinux_1_1_ppc64le.whl", hash = "sha256:911dda9c487075abd54e644ccdf5e5c16773470a6a5d3826fda76699410066fb"}, - {file = "psycopg2_binary-2.9.9-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:57fede879f08d23c85140a360c6a77709113efd1c993923c59fde17aa27599fe"}, - {file = "psycopg2_binary-2.9.9-cp312-cp312-win32.whl", hash = "sha256:64cf30263844fa208851ebb13b0732ce674d8ec6a0c86a4e160495d299ba3c93"}, - {file = "psycopg2_binary-2.9.9-cp312-cp312-win_amd64.whl", hash = "sha256:81ff62668af011f9a48787564ab7eded4e9fb17a4a6a74af5ffa6a457400d2ab"}, - {file = "psycopg2_binary-2.9.9-cp37-cp37m-macosx_10_9_x86_64.whl", hash = "sha256:2293b001e319ab0d869d660a704942c9e2cce19745262a8aba2115ef41a0a42a"}, - {file = "psycopg2_binary-2.9.9-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:03ef7df18daf2c4c07e2695e8cfd5ee7f748a1d54d802330985a78d2a5a6dca9"}, - {file = "psycopg2_binary-2.9.9-cp37-cp37m-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:0a602ea5aff39bb9fac6308e9c9d82b9a35c2bf288e184a816002c9fae930b77"}, - {file = "psycopg2_binary-2.9.9-cp37-cp37m-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:8359bf4791968c5a78c56103702000105501adb557f3cf772b2c207284273984"}, - {file = "psycopg2_binary-2.9.9-cp37-cp37m-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:275ff571376626195ab95a746e6a04c7df8ea34638b99fc11160de91f2fef503"}, - {file = "psycopg2_binary-2.9.9-cp37-cp37m-musllinux_1_1_aarch64.whl", hash = "sha256:f9b5571d33660d5009a8b3c25dc1db560206e2d2f89d3df1cb32d72c0d117d52"}, - {file = "psycopg2_binary-2.9.9-cp37-cp37m-musllinux_1_1_i686.whl", hash = "sha256:420f9bbf47a02616e8554e825208cb947969451978dceb77f95ad09c37791dae"}, - {file = "psycopg2_binary-2.9.9-cp37-cp37m-musllinux_1_1_ppc64le.whl", hash = "sha256:4154ad09dac630a0f13f37b583eae260c6aa885d67dfbccb5b02c33f31a6d420"}, - {file = "psycopg2_binary-2.9.9-cp37-cp37m-musllinux_1_1_x86_64.whl", hash = "sha256:a148c5d507bb9b4f2030a2025c545fccb0e1ef317393eaba42e7eabd28eb6041"}, - {file = "psycopg2_binary-2.9.9-cp37-cp37m-win32.whl", hash = "sha256:68fc1f1ba168724771e38bee37d940d2865cb0f562380a1fb1ffb428b75cb692"}, - {file = "psycopg2_binary-2.9.9-cp37-cp37m-win_amd64.whl", hash = "sha256:281309265596e388ef483250db3640e5f414168c5a67e9c665cafce9492eda2f"}, - {file = "psycopg2_binary-2.9.9-cp38-cp38-macosx_10_9_x86_64.whl", hash = "sha256:60989127da422b74a04345096c10d416c2b41bd7bf2a380eb541059e4e999980"}, - {file = "psycopg2_binary-2.9.9-cp38-cp38-macosx_11_0_arm64.whl", hash = "sha256:246b123cc54bb5361588acc54218c8c9fb73068bf227a4a531d8ed56fa3ca7d6"}, - {file = "psycopg2_binary-2.9.9-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:34eccd14566f8fe14b2b95bb13b11572f7c7d5c36da61caf414d23b91fcc5d94"}, - {file = "psycopg2_binary-2.9.9-cp38-cp38-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:18d0ef97766055fec15b5de2c06dd8e7654705ce3e5e5eed3b6651a1d2a9a152"}, - {file = "psycopg2_binary-2.9.9-cp38-cp38-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:d3f82c171b4ccd83bbaf35aa05e44e690113bd4f3b7b6cc54d2219b132f3ae55"}, - {file = "psycopg2_binary-2.9.9-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ead20f7913a9c1e894aebe47cccf9dc834e1618b7aa96155d2091a626e59c972"}, - {file = "psycopg2_binary-2.9.9-cp38-cp38-musllinux_1_1_aarch64.whl", hash = "sha256:ca49a8119c6cbd77375ae303b0cfd8c11f011abbbd64601167ecca18a87e7cdd"}, - {file = "psycopg2_binary-2.9.9-cp38-cp38-musllinux_1_1_i686.whl", hash = "sha256:323ba25b92454adb36fa425dc5cf6f8f19f78948cbad2e7bc6cdf7b0d7982e59"}, - {file = "psycopg2_binary-2.9.9-cp38-cp38-musllinux_1_1_ppc64le.whl", hash = "sha256:1236ed0952fbd919c100bc839eaa4a39ebc397ed1c08a97fc45fee2a595aa1b3"}, - {file = "psycopg2_binary-2.9.9-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:729177eaf0aefca0994ce4cffe96ad3c75e377c7b6f4efa59ebf003b6d398716"}, - {file = "psycopg2_binary-2.9.9-cp38-cp38-win32.whl", hash = "sha256:804d99b24ad523a1fe18cc707bf741670332f7c7412e9d49cb5eab67e886b9b5"}, - {file = "psycopg2_binary-2.9.9-cp38-cp38-win_amd64.whl", hash = "sha256:a6cdcc3ede532f4a4b96000b6362099591ab4a3e913d70bcbac2b56c872446f7"}, - {file = "psycopg2_binary-2.9.9-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:72dffbd8b4194858d0941062a9766f8297e8868e1dd07a7b36212aaa90f49472"}, - {file = "psycopg2_binary-2.9.9-cp39-cp39-macosx_11_0_arm64.whl", hash = "sha256:30dcc86377618a4c8f3b72418df92e77be4254d8f89f14b8e8f57d6d43603c0f"}, - {file = "psycopg2_binary-2.9.9-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:31a34c508c003a4347d389a9e6fcc2307cc2150eb516462a7a17512130de109e"}, - {file = "psycopg2_binary-2.9.9-cp39-cp39-manylinux_2_17_i686.manylinux2014_i686.whl", hash = "sha256:15208be1c50b99203fe88d15695f22a5bed95ab3f84354c494bcb1d08557df67"}, - {file = "psycopg2_binary-2.9.9-cp39-cp39-manylinux_2_17_ppc64le.manylinux2014_ppc64le.whl", hash = "sha256:1873aade94b74715be2246321c8650cabf5a0d098a95bab81145ffffa4c13876"}, - {file = "psycopg2_binary-2.9.9-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:3a58c98a7e9c021f357348867f537017057c2ed7f77337fd914d0bedb35dace7"}, - {file = "psycopg2_binary-2.9.9-cp39-cp39-musllinux_1_1_aarch64.whl", hash = "sha256:4686818798f9194d03c9129a4d9a702d9e113a89cb03bffe08c6cf799e053291"}, - {file = "psycopg2_binary-2.9.9-cp39-cp39-musllinux_1_1_i686.whl", hash = "sha256:ebdc36bea43063116f0486869652cb2ed7032dbc59fbcb4445c4862b5c1ecf7f"}, - {file = "psycopg2_binary-2.9.9-cp39-cp39-musllinux_1_1_ppc64le.whl", hash = "sha256:ca08decd2697fdea0aea364b370b1249d47336aec935f87b8bbfd7da5b2ee9c1"}, - {file = "psycopg2_binary-2.9.9-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:ac05fb791acf5e1a3e39402641827780fe44d27e72567a000412c648a85ba860"}, - {file = "psycopg2_binary-2.9.9-cp39-cp39-win32.whl", hash = "sha256:9dba73be7305b399924709b91682299794887cbbd88e38226ed9f6712eabee90"}, - {file = "psycopg2_binary-2.9.9-cp39-cp39-win_amd64.whl", hash = "sha256:f7ae5d65ccfbebdfa761585228eb4d0df3a8b15cfb53bd953e713e09fbb12957"}, -] - [[package]] name = "py" version = "1.11.0" @@ -2375,4 +2294,4 @@ fhir = ["fhirclient"] [metadata] lock-version = "2.0" python-versions = ">=3.9, <4" -content-hash = "c22bcf61e966e6842a2d7c098e90d2dee829b57b9454092419114bf0d2bd1141" +content-hash = "2abb0a0a475f434e858aa42b8fe8af0e69978cc970cc0a8035ac3f55188b1e79" diff --git a/pyproject.toml b/pyproject.toml index 6681387d1..8a4891149 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -41,9 +41,6 @@ xmltodict = "^0.13.0" pyyaml = ">=6.0.1" gen3users = { git = "https://github.com/uc-cdis/gen3users.git", branch = "feat/python" } -# this is required for the pyinstaller builds -psycopg2-binary = "*" - # A list of all of the optional dependencies, some of which are included in the # below `extras`. They can be opted into by apps. fhirclient = { version = "*", optional = true } From 555472b2d0bf64b7023b5f82a8eaadcb1e097b98 Mon Sep 17 00:00:00 2001 From: Avantol13 Date: Fri, 31 May 2024 16:10:46 +0000 Subject: [PATCH 44/62] Apply automatic documentation changes --- docs/_build/doctrees/environment.pickle | Bin 1579888 -> 1579888 bytes docs/_build/doctrees/tools/indexing.doctree | Bin 100286 -> 100291 bytes docs/_build/doctrees/tools/metadata.doctree | Bin 35934 -> 35929 bytes docs/_build/html/searchindex.js | 2 +- docs/_build/html/tools/indexing.html | 2 +- docs/_build/html/tools/metadata.html | 2 +- 6 files changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/_build/doctrees/environment.pickle b/docs/_build/doctrees/environment.pickle index 57b54d180c1ccc26cfe0cc89241f126c4f377bfe..c5f8d14c882f8711c84fffa9049121641eb15848 100644 GIT binary patch delta 10911 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 Nr(nfRn>H%;e*xZ@>$v~` delta 10955 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
X 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 RHqA94M!|}kHf?0|{{bYvKxzO0 diff --git a/docs/_build/doctrees/tools/indexing.doctree b/docs/_build/doctrees/tools/indexing.doctree index de300a6d0a43adc5250bd2c471abb8d5e02161e3..530261e8c22e1e9895ae136c42fa87266509aae1 100644 GIT binary patch delta 171 zcmdnj&vv+YZ7^Vl>G0IHt+AX_X)}C<@BafkliIJYUg^8hw znd$aIYsPM7#*5qk+A$tNlRD+VxRsmHe)>cQMm<4fO?o-`>FU!R-5G_UvQikbQ!?0N Sr(}rrKy;&88RW~DV+8VY7^WLoGRjQu+AX_X&Yp1*Be#KxiKU*YnT4@| z#r7g=#%^ZD3)}zMF&;vdIpe^%m7CFSx~wmwo&b^-y`21X_34eCjKWY!Np#668SJrB RGQ@fydQq$k_hrnn0svk?EfN3# diff --git a/docs/_build/doctrees/tools/metadata.doctree b/docs/_build/doctrees/tools/metadata.doctree index 7a2891d4ce62f694618d2b9e49f537fb5cefd118..ed77445b0cace30d2d8c443d801c73345971d002 100644 GIT binary patch delta 154 zcmcaNgX!iBCYA=)seT(-mT0idVPs&KT&pX$`ILqOBe$W2iLsu6sfDGP+2l-po6SL5 z$C(-HHcRO_qsVQ})Nkcrbf5g*+*|-ji(XECy87gUIl>SrNpz_x8SJrBGQ@ho8j7b4HcioUY%>!RRsht+_d>CVdMDh_Dp0S$aA7>FQH5*kh+;i1lFV+I-8R GJ{SOhge*q@ diff --git a/docs/_build/html/searchindex.js b/docs/_build/html/searchindex.js index c117c092b..2044947fd 100644 --- a/docs/_build/html/searchindex.js +++ b/docs/_build/html/searchindex.js @@ -1 +1 @@ -Search.setIndex({"alltitles": {"DRS Download Tools": [[10, "module-gen3.tools.download.drs_download"]], "Download": [[11, "module-gen3.tools.indexing.download_manifest"]], "Gen3 Auth Helper": [[0, "gen3-auth-helper"]], "Gen3 File Class": [[1, "gen3-file-class"]], "Gen3 Index Class": [[3, "gen3-index-class"]], "Gen3 Jobs Class": [[4, "gen3-jobs-class"]], "Gen3 Metadata Class": [[5, "gen3-metadata-class"]], "Gen3 Object Class": [[6, "gen3-object-class"]], "Gen3 Query Class": [[7, "gen3-query-class"]], "Gen3 Submission Class": [[8, "gen3-submission-class"]], "Gen3 Tools": [[9, "gen3-tools"]], "Gen3 Workspace Storage": [[13, "gen3-workspace-storage"]], "Index": [[11, "module-gen3.tools.indexing.index_manifest"]], "Indexing Tools": [[11, "indexing-tools"]], "Indices and tables": [[2, "indices-and-tables"]], "Ingest": [[12, "module-gen3.tools.metadata.ingest_manifest"]], "Metadata Tools": [[12, "metadata-tools"]], "Verify": [[11, "module-gen3.tools.indexing.verify_manifest"]], "Welcome to Gen3 SDK\u2019s documentation!": [[2, "welcome-to-gen3-sdk-s-documentation"]]}, "docnames": ["auth", "file", "index", "indexing", "jobs", "metadata", "object", "query", "submission", "tools", "tools/drs_pull", "tools/indexing", "tools/metadata", "wss"], "envversion": {"sphinx": 61, "sphinx.domains.c": 3, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 9, "sphinx.domains.index": 1, "sphinx.domains.javascript": 3, "sphinx.domains.math": 2, "sphinx.domains.python": 4, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx.ext.viewcode": 1}, "filenames": ["auth.rst", "file.rst", "index.rst", "indexing.rst", "jobs.rst", "metadata.rst", "object.rst", "query.rst", "submission.rst", "tools.rst", "tools/drs_pull.rst", "tools/indexing.rst", "tools/metadata.rst", "wss.rst"], "indexentries": {"_manager (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable._manager", false]], "access_methods (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.access_methods", false]], "acls (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.ACLS", false]], "async_create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_create", false]], "async_create_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_create_aliases", false]], "async_create_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_create_record", false]], "async_delete_alias() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_delete_alias", false]], "async_delete_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_delete_aliases", false]], "async_download_object_manifest() (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.async_download_object_manifest", false]], "async_get() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_get", false]], "async_get_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_get_aliases", false]], "async_get_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_record", false]], "async_get_records_from_checksum() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_records_from_checksum", false]], "async_get_records_on_page() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_records_on_page", false]], "async_get_with_params() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_with_params", false]], "async_ingest_metadata_manifest() (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.async_ingest_metadata_manifest", false]], "async_query_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_query_urls", false]], "async_query_urls_from_indexd() (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.async_query_urls_from_indexd", false]], "async_run_job_and_wait() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.async_run_job_and_wait", false]], "async_update() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_update", false]], "async_update_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_update_aliases", false]], "async_update_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_update_record", false]], "async_verify_object_manifest() (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.async_verify_object_manifest", false]], "auth_provider (gen3.metadata.gen3metadata attribute)": [[5, "gen3.metadata.Gen3Metadata.auth_provider", false]], "authz (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.AUTHZ", false]], "batch_create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.batch_create", false]], "cache_hosts_wts_tokens() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.cache_hosts_wts_tokens", false]], "children (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.children", false]], "column_to_use_as_guid (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.COLUMN_TO_USE_AS_GUID", false]], "commons_url (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.commons_url", false]], "copy() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.copy", false]], "create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create", false]], "create_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create_aliases", false]], "create_blank() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_blank", false]], "create_index_key_path() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create_index_key_path", false]], "create_job() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.create_job", false]], "create_new_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_new_version", false]], "create_object_list() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.create_object_list", false]], "create_program() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.create_program", false]], "create_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.create_project", false]], "create_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_record", false]], "created_time (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.created_time", false]], "curl() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.curl", false]], "current_dir (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.CURRENT_DIR", false]], "current_dir (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.CURRENT_DIR", false]], "current_dir (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.CURRENT_DIR", false]], "delete() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete", false]], "delete_alias() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_alias", false]], "delete_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_aliases", false]], "delete_all_guids() (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.delete_all_guids", false]], "delete_file() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.delete_file", false]], "delete_file_locations() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.delete_file_locations", false]], "delete_index_key_path() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_index_key_path", false]], "delete_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_node", false]], "delete_nodes() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_nodes", false]], "delete_object() (gen3.object.gen3object method)": [[6, "gen3.object.Gen3Object.delete_object", false]], "delete_program() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_program", false]], "delete_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_project", false]], "delete_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.delete_record", false]], "delete_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_record", false]], "delete_records() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_records", false]], "download() (gen3.tools.download.drs_download.downloadable method)": [[10, "gen3.tools.download.drs_download.Downloadable.download", false]], "download() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.download", false]], "download() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.download", false]], "download_files_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.download_files_in_drs_manifest", false]], "download_single() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.download_single", false]], "download_url() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.download_url", false]], "downloadable (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.Downloadable", false]], "downloadmanager (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.DownloadManager", false]], "downloadstatus (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.DownloadStatus", false]], "end_time (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.end_time", false]], "endpoint (gen3.metadata.gen3metadata attribute)": [[5, "gen3.metadata.Gen3Metadata.endpoint", false]], "export_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.export_node", false]], "export_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.export_record", false]], "file_name (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.file_name", false]], "file_name (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.file_name", false]], "file_size (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.file_size", false]], "file_size (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.file_size", false]], "gen3.tools": [[9, "module-gen3.tools", false]], "gen3.tools.download.drs_download": [[10, "module-gen3.tools.download.drs_download", false]], "gen3.tools.indexing.download_manifest": [[11, "module-gen3.tools.indexing.download_manifest", false]], "gen3.tools.indexing.index_manifest": [[11, "module-gen3.tools.indexing.index_manifest", false]], "gen3.tools.indexing.verify_manifest": [[11, "module-gen3.tools.indexing.verify_manifest", false]], "gen3.tools.metadata.ingest_manifest": [[12, "module-gen3.tools.metadata.ingest_manifest", false]], "gen3auth (class in gen3.auth)": [[0, "gen3.auth.Gen3Auth", false]], "gen3file (class in gen3.file)": [[1, "gen3.file.Gen3File", false]], "gen3index (class in gen3.index)": [[3, "gen3.index.Gen3Index", false]], "gen3jobs (class in gen3.jobs)": [[4, "gen3.jobs.Gen3Jobs", false]], "gen3metadata (class in gen3.metadata)": [[5, "gen3.metadata.Gen3Metadata", false]], "gen3object (class in gen3.object)": [[6, "gen3.object.Gen3Object", false]], "gen3query (class in gen3.query)": [[7, "gen3.query.Gen3Query", false]], "gen3submission (class in gen3.submission)": [[8, "gen3.submission.Gen3Submission", false]], "gen3wsstorage (class in gen3.wss)": [[13, "gen3.wss.Gen3WsStorage", false]], "get() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get", false]], "get() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get", false]], "get_access_token() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.get_access_token", false]], "get_access_token_from_wts() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.get_access_token_from_wts", false]], "get_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_aliases", false]], "get_all_records() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_all_records", false]], "get_dictionary_all() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_dictionary_all", false]], "get_dictionary_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_dictionary_node", false]], "get_fresh_token() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.get_fresh_token", false]], "get_graphql_schema() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_graphql_schema", false]], "get_guids_prefix() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_guids_prefix", false]], "get_index_key_paths() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_index_key_paths", false]], "get_latest_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_latest_version", false]], "get_output() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_output", false]], "get_presigned_url() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.get_presigned_url", false]], "get_programs() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_programs", false]], "get_project_dictionary() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_project_dictionary", false]], "get_project_manifest() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_project_manifest", false]], "get_projects() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_projects", false]], "get_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_record", false]], "get_record_doc() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_record_doc", false]], "get_records() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_records", false]], "get_records_on_page() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_records_on_page", false]], "get_stats() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_stats", false]], "get_status() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_status", false]], "get_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_urls", false]], "get_valid_guids() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_valid_guids", false]], "get_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_version", false]], "get_version() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_version", false]], "get_version() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_version", false]], "get_versions() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_versions", false]], "get_with_params() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_with_params", false]], "graphql_query() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.graphql_query", false]], "guid (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.GUID", false]], "guid_type_for_indexed_file_object (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.GUID_TYPE_FOR_INDEXED_FILE_OBJECT", false]], "guid_type_for_non_indexed_file_object (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.GUID_TYPE_FOR_NON_INDEXED_FILE_OBJECT", false]], "hostname (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.hostname", false]], "index_object_manifest() (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.index_object_manifest", false]], "indexd_record_page_size (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.INDEXD_RECORD_PAGE_SIZE", false]], "is_healthy() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.is_healthy", false]], "is_healthy() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.is_healthy", false]], "is_healthy() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.is_healthy", false]], "list_access_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_access_in_drs_manifest", false]], "list_drs_object() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_drs_object", false]], "list_files_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_files_in_drs_manifest", false]], "list_jobs() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.list_jobs", false]], "load() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.load", false]], "load_manifest() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.load_manifest", false]], "ls() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.ls", false]], "ls_path() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.ls_path", false]], "manifest (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.Manifest", false]], "max_concurrent_requests (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.MAX_CONCURRENT_REQUESTS", false]], "max_concurrent_requests (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.MAX_CONCURRENT_REQUESTS", false]], "max_concurrent_requests (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.MAX_CONCURRENT_REQUESTS", false]], "md5 (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.MD5", false]], "md5sum (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.md5sum", false]], "module": [[9, "module-gen3.tools", false], [10, "module-gen3.tools.download.drs_download", false], [11, "module-gen3.tools.indexing.download_manifest", false], [11, "module-gen3.tools.indexing.index_manifest", false], [11, "module-gen3.tools.indexing.verify_manifest", false], [12, "module-gen3.tools.metadata.ingest_manifest", false]], "object_id (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.object_id", false]], "object_id (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.object_id", false]], "object_type (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.object_type", false]], "open_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.open_project", false]], "pprint() (gen3.tools.download.drs_download.downloadable method)": [[10, "gen3.tools.download.drs_download.Downloadable.pprint", false]], "prev_guid (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.PREV_GUID", false]], "query() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.query", false]], "query() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.query", false]], "query() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.query", false]], "query_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.query_urls", false]], "raw_data_download() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.raw_data_download", false]], "refresh_access_token() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.refresh_access_token", false]], "resolve_objects() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.resolve_objects", false]], "rm() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.rm", false]], "rm_path() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.rm_path", false]], "size (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.SIZE", false]], "start_time (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.start_time", false]], "status (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.status", false]], "submit_file() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.submit_file", false]], "submit_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.submit_record", false]], "threadcontrol (class in gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.ThreadControl", false]], "tmp_folder (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.TMP_FOLDER", false]], "update() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.update", false]], "update_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.update_aliases", false]], "update_blank() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.update_blank", false]], "update_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.update_record", false]], "updated_time (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.updated_time", false]], "upload() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.upload", false]], "upload_file() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.upload_file", false]], "upload_file_to_guid() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.upload_file_to_guid", false]], "upload_url() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.upload_url", false]], "urls (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.URLS", false]], "user_access() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.user_access", false]]}, "objects": {"gen3": [[9, 3, 0, "-", "tools"]], "gen3.auth": [[0, 0, 1, "", "Gen3Auth"]], "gen3.auth.Gen3Auth": [[0, 1, 1, "", "curl"], [0, 1, 1, "", "get_access_token"], [0, 1, 1, "", "get_access_token_from_wts"], [0, 1, 1, "", "refresh_access_token"]], "gen3.file": [[1, 0, 1, "", "Gen3File"]], "gen3.file.Gen3File": [[1, 1, 1, "", "delete_file"], [1, 1, 1, "", "delete_file_locations"], [1, 1, 1, "", "download_single"], [1, 1, 1, "", "get_presigned_url"], [1, 1, 1, "", "upload_file"], [1, 1, 1, "", "upload_file_to_guid"]], "gen3.index": [[3, 0, 1, "", "Gen3Index"]], "gen3.index.Gen3Index": [[3, 1, 1, "", "async_create_record"], [3, 1, 1, "", "async_get_record"], [3, 1, 1, "", "async_get_records_from_checksum"], [3, 1, 1, "", "async_get_records_on_page"], [3, 1, 1, "", "async_get_with_params"], [3, 1, 1, "", "async_query_urls"], [3, 1, 1, "", "async_update_record"], [3, 1, 1, "", "create_blank"], [3, 1, 1, "", "create_new_version"], [3, 1, 1, "", "create_record"], [3, 1, 1, "", "delete_record"], [3, 1, 1, "", "get"], [3, 1, 1, "", "get_all_records"], [3, 1, 1, "", "get_guids_prefix"], [3, 1, 1, "", "get_latest_version"], [3, 1, 1, "", "get_record"], [3, 1, 1, "", "get_record_doc"], [3, 1, 1, "", "get_records"], [3, 1, 1, "", "get_records_on_page"], [3, 1, 1, "", "get_stats"], [3, 1, 1, "", "get_urls"], [3, 1, 1, "", "get_valid_guids"], [3, 1, 1, "", "get_version"], [3, 1, 1, "", "get_versions"], [3, 1, 1, "", "get_with_params"], [3, 1, 1, "", "is_healthy"], [3, 1, 1, "", "query_urls"], [3, 1, 1, "", "update_blank"], [3, 1, 1, "", "update_record"]], "gen3.jobs": [[4, 0, 1, "", "Gen3Jobs"]], "gen3.jobs.Gen3Jobs": [[4, 1, 1, "", "async_run_job_and_wait"], [4, 1, 1, "", "create_job"], [4, 1, 1, "", "get_output"], [4, 1, 1, "", "get_status"], [4, 1, 1, "", "get_version"], [4, 1, 1, "", "is_healthy"], [4, 1, 1, "", "list_jobs"]], "gen3.metadata": [[5, 0, 1, "", "Gen3Metadata"]], "gen3.metadata.Gen3Metadata": [[5, 1, 1, "", "async_create"], [5, 1, 1, "", "async_create_aliases"], [5, 1, 1, "", "async_delete_alias"], [5, 1, 1, "", "async_delete_aliases"], [5, 1, 1, "", "async_get"], [5, 1, 1, "", "async_get_aliases"], [5, 1, 1, "", "async_update"], [5, 1, 1, "", "async_update_aliases"], [5, 2, 1, "", "auth_provider"], [5, 1, 1, "", "batch_create"], [5, 1, 1, "", "create"], [5, 1, 1, "", "create_aliases"], [5, 1, 1, "", "create_index_key_path"], [5, 1, 1, "", "delete"], [5, 1, 1, "", "delete_alias"], [5, 1, 1, "", "delete_aliases"], [5, 1, 1, "", "delete_index_key_path"], [5, 2, 1, "", "endpoint"], [5, 1, 1, "", "get"], [5, 1, 1, "", "get_aliases"], [5, 1, 1, "", "get_index_key_paths"], [5, 1, 1, "", "get_version"], [5, 1, 1, "", "is_healthy"], [5, 1, 1, "", "query"], [5, 1, 1, "", "update"], [5, 1, 1, "", "update_aliases"]], "gen3.object": [[6, 0, 1, "", "Gen3Object"]], "gen3.object.Gen3Object": [[6, 1, 1, "", "delete_object"]], "gen3.query": [[7, 0, 1, "", "Gen3Query"]], "gen3.query.Gen3Query": [[7, 1, 1, "", "graphql_query"], [7, 1, 1, "", "query"], [7, 1, 1, "", "raw_data_download"]], "gen3.submission": [[8, 0, 1, "", "Gen3Submission"]], "gen3.submission.Gen3Submission": [[8, 1, 1, "", "create_program"], [8, 1, 1, "", "create_project"], [8, 1, 1, "", "delete_node"], [8, 1, 1, "", "delete_nodes"], [8, 1, 1, "", "delete_program"], [8, 1, 1, "", "delete_project"], [8, 1, 1, "", "delete_record"], [8, 1, 1, "", "delete_records"], [8, 1, 1, "", "export_node"], [8, 1, 1, "", "export_record"], [8, 1, 1, "", "get_dictionary_all"], [8, 1, 1, "", "get_dictionary_node"], [8, 1, 1, "", "get_graphql_schema"], [8, 1, 1, "", "get_programs"], [8, 1, 1, "", "get_project_dictionary"], [8, 1, 1, "", "get_project_manifest"], [8, 1, 1, "", "get_projects"], [8, 1, 1, "", "open_project"], [8, 1, 1, "", "query"], [8, 1, 1, "", "submit_file"], [8, 1, 1, "", "submit_record"]], "gen3.tools.download": [[10, 3, 0, "-", "drs_download"]], "gen3.tools.download.drs_download": [[10, 0, 1, "", "DownloadManager"], [10, 0, 1, "", "DownloadStatus"], [10, 0, 1, "", "Downloadable"], [10, 0, 1, "", "Manifest"], [10, 4, 1, "", "download_files_in_drs_manifest"], [10, 4, 1, "", "list_access_in_drs_manifest"], [10, 4, 1, "", "list_drs_object"], [10, 4, 1, "", "list_files_in_drs_manifest"]], "gen3.tools.download.drs_download.DownloadManager": [[10, 1, 1, "", "cache_hosts_wts_tokens"], [10, 1, 1, "", "download"], [10, 1, 1, "", "get_fresh_token"], [10, 1, 1, "", "resolve_objects"], [10, 1, 1, "", "user_access"]], "gen3.tools.download.drs_download.DownloadStatus": [[10, 2, 1, "", "end_time"], [10, 2, 1, "", "start_time"], [10, 2, 1, "", "status"]], "gen3.tools.download.drs_download.Downloadable": [[10, 2, 1, "", "_manager"], [10, 2, 1, "", "access_methods"], [10, 2, 1, "", "children"], [10, 2, 1, "", "created_time"], [10, 1, 1, "", "download"], [10, 2, 1, "", "file_name"], [10, 2, 1, "", "file_size"], [10, 2, 1, "", "hostname"], [10, 2, 1, "", "object_id"], [10, 2, 1, "", "object_type"], [10, 1, 1, "", "pprint"], [10, 2, 1, "", "updated_time"]], "gen3.tools.download.drs_download.Manifest": [[10, 2, 1, "", "commons_url"], [10, 1, 1, "", "create_object_list"], [10, 2, 1, "", "file_name"], [10, 2, 1, "", "file_size"], [10, 1, 1, "", "load"], [10, 1, 1, "", "load_manifest"], [10, 2, 1, "", "md5sum"], [10, 2, 1, "", "object_id"]], "gen3.tools.indexing": [[11, 3, 0, "-", "download_manifest"], [11, 3, 0, "-", "index_manifest"], [11, 3, 0, "-", "verify_manifest"]], "gen3.tools.indexing.download_manifest": [[11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "INDEXD_RECORD_PAGE_SIZE"], [11, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [11, 2, 1, "", "TMP_FOLDER"], [11, 4, 1, "", "async_download_object_manifest"]], "gen3.tools.indexing.index_manifest": [[11, 2, 1, "", "ACLS"], [11, 2, 1, "", "AUTHZ"], [11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "GUID"], [11, 2, 1, "", "MD5"], [11, 2, 1, "", "PREV_GUID"], [11, 2, 1, "", "SIZE"], [11, 0, 1, "", "ThreadControl"], [11, 2, 1, "", "URLS"], [11, 4, 1, "", "delete_all_guids"], [11, 4, 1, "", "index_object_manifest"]], "gen3.tools.indexing.verify_manifest": [[11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [11, 4, 1, "", "async_verify_object_manifest"]], "gen3.tools.metadata": [[12, 3, 0, "-", "ingest_manifest"]], "gen3.tools.metadata.ingest_manifest": [[12, 2, 1, "", "COLUMN_TO_USE_AS_GUID"], [12, 2, 1, "", "GUID_TYPE_FOR_INDEXED_FILE_OBJECT"], [12, 2, 1, "", "GUID_TYPE_FOR_NON_INDEXED_FILE_OBJECT"], [12, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [12, 4, 1, "", "async_ingest_metadata_manifest"], [12, 4, 1, "", "async_query_urls_from_indexd"]], "gen3.wss": [[13, 0, 1, "", "Gen3WsStorage"]], "gen3.wss.Gen3WsStorage": [[13, 1, 1, "", "copy"], [13, 1, 1, "", "download"], [13, 1, 1, "", "download_url"], [13, 1, 1, "", "ls"], [13, 1, 1, "", "ls_path"], [13, 1, 1, "", "rm"], [13, 1, 1, "", "rm_path"], [13, 1, 1, "", "upload"], [13, 1, 1, "", "upload_url"]]}, "objnames": {"0": ["py", "class", "Python class"], "1": ["py", "method", "Python method"], "2": ["py", "attribute", "Python attribute"], "3": ["py", "module", "Python module"], "4": ["py", "function", "Python function"]}, "objtypes": {"0": "py:class", "1": "py:method", "2": "py:attribute", "3": "py:module", "4": "py:function"}, "terms": {"": [1, 4, 8, 10, 11], "0": [5, 7, 8, 11], "0046513": [], "052073": [], "0576868": [], "064572": [], "07464": [], "0790412": [], "0a80fada010c": 11, "0a80fada096c": 11, "0a80fada097c": 11, "0a80fada098c": 11, "0a80fada099c": 11, "1": [4, 5, 8, 10, 11], "10": [5, 7, 11], "100": [8, 11], "11e9": 11, "1344793": [], "1676264": [], "1713542306": [], "1713542765": [], "1713543033": [], "1713543225": [], "1713543506": [], "1713543956": [], "1713544131": [], "1713544132": [], "1713544397": [], "1713544598": [], "1713545857": [], "1713545858": [], "1713549370": [], "1713549689": [], "1713550571": [], "1713557245": [], "1713559376": [], "1713560080": [], "1713560402": [], "1713560403": [], "1713561061": [], "1713562690": [], "1717169008": [], "1717170449": [11, 12], "1731803": [], "1771936": [], "1913438": [], "2": [5, 11], "2184267": [], "24": [11, 12], "255e396f": 11, "2877355": [], "2930224": [], "2995": [], "3": [5, 11], "30": 8, "3102272": [], "33": 5, "333": 5, "343434344": 11, "363455714": 11, "3935378": [], "4": [5, 11], "4017086": [], "4052968": [], "4090197": [], "4463434": [], "450c": 11, "4632835": [], "4649727": [], "4714": 8, "473d83400bc1bc9dc635e334fadd433c": 11, "473d83400bc1bc9dc635e334faddd33c": 11, "473d83400bc1bc9dc635e334fadde33c": 11, "473d83400bc1bc9dc635e334faddf33c": 11, "4752307": [], "4756553": [], "5": [0, 5], "50": 7, "517729": [], "5202463": [], "543434443": 11, "5669184": [], "568308": 11, "5899982": [], "6692646": [], "6739478": [], "674552": [], "6f90": 8, "700799": [], "7232893": [], "756255": [], "760149": [], "7d3d8d2083b4": 11, "8044841": [], "8375325": [], "8420": 8, "8630717": 12, "8874054": [], "8882551": [], "93d9af72": 11, "9a07": 11, "A": [1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "AND": 5, "Be": 1, "But": 5, "By": 11, "For": [1, 5, 6, 7, 8, 9, 11], "IF": 11, "If": [0, 1, 7, 11, 12], "In": 10, "It": 10, "NOT": 12, "OR": 5, "One": 7, "Such": 9, "THE": 11, "That": 3, "The": [0, 1, 2, 3, 5, 8, 10, 11], "There": 11, "These": 9, "To": 11, "Will": [4, 7, 10], "_get_acl_from_row": 11, "_get_authz_from_row": 11, "_get_file_name_from_row": 11, "_get_file_size_from_row": 11, "_get_guid_for_row": 12, "_get_guid_from_row": 11, "_get_md5_from_row": 11, "_get_urls_from_row": 11, "_guid_typ": 12, "_manag": [2, 9, 10], "_query_for_associated_indexd_record_guid": 12, "_ssl": [3, 4, 5], "a5c6": 11, "ab167e49d25b488939b1ede42752458b": 3, "about": [2, 3], "abov": 11, "access": [0, 1, 3, 7, 10], "access_method": [2, 9, 10], "access_token": 0, "accesstoken": 0, "acl": [2, 3, 9, 11], "across": 11, "act": 0, "action": [9, 11], "actual": 11, "ad": 3, "add": [3, 5], "addit": [3, 5, 10, 11], "admin": [5, 11], "admin_endpoint_suffix": 5, "after": 10, "against": [3, 7, 8, 11, 12], "algorithm": 3, "alia": [3, 5], "alias": 5, "aliv": 7, "all": [1, 3, 4, 5, 6, 7, 8, 10, 11, 12], "allow": [0, 6, 8, 10, 11, 12], "allowed_data_upload_bucket": 1, "along": 2, "alreadi": 9, "also": 1, "altern": [5, 11], "alwai": 5, "ammount": 12, "amount": [1, 9], "an": [0, 3, 6, 8, 10, 11], "ani": [0, 5, 10, 11], "anoth": 5, "api": [0, 5, 8, 11], "api_kei": 11, "appli": 7, "appropri": 13, "ar": [5, 7, 8, 9, 10, 11], "arbitrari": 0, "argument": [0, 13], "arrai": 8, "asc": 7, "assign": 9, "assist": 10, "associ": [3, 5], "assum": 11, "async": [3, 4, 5, 9, 11, 12], "async_cr": [2, 5], "async_create_alias": [2, 5], "async_create_record": [2, 3], "async_delete_alia": [2, 5], "async_delete_alias": [2, 5], "async_download_object_manifest": [2, 9, 11], "async_get": [2, 5], "async_get_alias": [2, 5], "async_get_record": [2, 3], "async_get_records_from_checksum": [2, 3], "async_get_records_on_pag": [2, 3], "async_get_with_param": [2, 3], "async_ingest_metadata_manifest": [2, 9, 12], "async_query_url": [2, 3], "async_query_urls_from_indexd": [2, 9, 12], "async_run_job_and_wait": [2, 4], "async_upd": [2, 5], "async_update_alias": [2, 5], "async_update_record": [2, 3], "async_verify_object_manifest": [2, 9, 11], "asynchron": [3, 4, 5], "asyncio": [11, 12], "asyncron": 5, "attach": [3, 5], "attempt": 11, "attribut": [10, 11], "auth": [1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "auth_provid": [1, 2, 3, 4, 5, 6, 7, 8, 13], "authbas": 0, "authent": 0, "author": 1, "authz": [0, 1, 2, 3, 9, 10, 11], "auto": [0, 2], "automat": 0, "avail": [1, 2, 10, 11], "az": 1, "b": [5, 11], "b0f1": 11, "bar": 10, "base": [0, 1, 3, 4, 5, 6, 7, 8, 9, 11, 13], "baseid": 3, "basic": [3, 11, 12], "batch_creat": [2, 5], "batch_siz": 8, "behalf": 0, "behavior": 11, "being": 3, "belong": 8, "below": 11, "blank": 3, "blob": [5, 7], "bodi": 3, "bool": [4, 5, 8, 10, 11, 12], "boolean": 3, "bownload": 10, "broad": 9, "broken": 9, "bucket": [1, 6], "bundl": 10, "byte": 10, "c": [5, 11], "cach": 10, "cache_hosts_wts_token": [2, 9, 10], "call": [10, 13], "can": [0, 3, 4, 8, 11, 12], "capabl": 9, "case": [0, 10], "categori": 9, "ccle": 8, "ccle_one_record": 8, "ccle_sample_nod": 8, "cdi": 7, "chang": [3, 11], "checksum": [3, 10], "checksum_typ": 3, "child": 10, "children": [2, 9, 10], "chunk_siz": 8, "class": [0, 2, 10, 11, 13], "cli": 10, "client": [0, 3], "client_credenti": 0, "client_id": 0, "client_scop": 0, "client_secret": 0, "code": [2, 8], "column": [11, 12], "column_to_use_as_guid": [2, 9, 12], "columna": 11, "columnb": 11, "columnc": 11, "com": 7, "comma": 11, "command": [10, 11], "common": [0, 1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13], "commons_url": [2, 9, 10, 11, 12], "complet": [4, 11], "complex": 7, "concat": 11, "concurr": [11, 12], "configur": 1, "connect": 12, "consist": 3, "constructor": 0, "contain": [0, 2, 5, 8, 9, 10, 11, 12], "content": [3, 13], "content_created_d": 3, "content_updated_d": 3, "continu": 10, "control": 3, "conveni": 10, "copi": [2, 13], "coroutin": 11, "correspond": 3, "count": 3, "crdc": 0, "creat": [2, 3, 4, 5, 6, 8, 10, 11], "create_alias": [2, 5], "create_blank": [2, 3], "create_index_key_path": [2, 5], "create_job": [2, 4], "create_new_vers": [2, 3], "create_object_list": [2, 9, 10], "create_program": [2, 8], "create_project": [2, 8], "create_record": [2, 3], "created_tim": [2, 9, 10], "creation": [3, 11], "cred": 3, "credenti": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "csv": [8, 11, 12], "curl": [0, 2], "current": [6, 8, 10], "current_dir": [2, 9, 11], "custom": 11, "d": 5, "d70b41b9": 8, "data": [0, 1, 3, 5, 7, 8, 10, 11], "data_spreadsheet": 8, "data_typ": 7, "data_upload_bucket": 1, "dataa": 11, "datab": 11, "databas": 5, "datacommon": 0, "datafil": 10, "datamanag": 10, "date": 3, "datetim": [1, 3, 10], "dbgap": 12, "dcf": 8, "def": 11, "default": [0, 1, 3, 7, 8, 11, 12], "defin": [5, 8, 10], "delai": 4, "delet": [0, 1, 2, 3, 5, 6, 8, 10, 11], "delete_alia": [2, 5], "delete_alias": [2, 5], "delete_all_guid": [2, 9, 11], "delete_fil": [1, 2], "delete_file_loc": [1, 2, 6], "delete_index_key_path": [2, 5], "delete_nod": [2, 8], "delete_object": [2, 6], "delete_program": [2, 8], "delete_project": [2, 8], "delete_record": [2, 3, 8], "delete_unpacked_packag": 10, "delimet": [11, 12], "delimit": 11, "demograph": 8, "deprec": 1, "descript": [3, 5], "desir": 11, "dest_path": 13, "dest_urlstr": 13, "dest_w": 13, "dest_wskei": 13, "detail": [2, 7, 10], "determin": [10, 11, 12], "dev": 11, "dict": [3, 4, 5, 10, 11, 12], "dictionari": [3, 4, 5, 7, 8], "did": 3, "differ": 5, "direct": 0, "directori": [10, 11], "disabl": 10, "discoveri": 10, "disk": 13, "dispatch": 4, "dist_resolut": 3, "distribut": 3, "doc": [7, 10], "docstr": 2, "document": [1, 3], "doe": [0, 12], "domain": [11, 12], "done": 4, "download": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 13], "download_files_in_drs_manifest": [2, 9, 10], "download_list": 10, "download_manifest": 11, "download_singl": [1, 2], "download_url": [2, 13], "downloadmanag": [2, 9, 10], "downloadstatu": [2, 9, 10], "dr": [2, 9], "drs_download": 10, "drs_hostnam": 10, "drsdownload": 10, "drsobjecttyp": 10, "e": [5, 10], "e043ab8b77b9": 8, "each": [3, 8, 10, 11], "effici": 9, "eg": 3, "either": 8, "elasticsearch": 7, "els": [0, 12], "elsewher": 12, "empti": [8, 11], "enabl": 11, "end": [5, 10], "end_tim": [2, 9, 10], "endpoint": [0, 1, 2, 3, 4, 5, 7, 8, 13], "entir": 8, "entri": [3, 11], "env": 0, "environ": 0, "equal": 7, "error": [10, 11, 12], "error_nam": 11, "etc": 8, "even": 11, "everi": [9, 11], "everyth": 11, "ex": [0, 11, 12], "exampl": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "exclud": 3, "execut": [7, 8, 11], "exist": [1, 3, 5, 6, 9, 12], "expect": [5, 9, 11], "experi": 8, "expir": [0, 1], "expires_in": 1, "export": [8, 10], "export_nod": [2, 8], "export_record": [2, 8], "f1f8": 11, "factori": 10, "fail": [8, 10], "fals": [3, 5, 6, 10, 11], "featur": [1, 6], "fenc": [0, 1], "fetch": 0, "field": [3, 5, 7, 11, 12], "fieldnam": 11, "file": [0, 2, 3, 4, 8, 9, 10, 11, 12, 13], "file_nam": [1, 2, 3, 9, 10, 11], "file_s": [2, 9, 10, 11], "file_st": 3, "fileformat": 8, "filenam": [0, 8, 10, 11, 12], "files": 10, "fill": 12, "filter": [5, 7], "filter_object": 7, "first": [7, 8], "flag": 11, "folder": 11, "follow": [0, 11], "forc": 11, "force_metadata_columns_even_if_empti": 11, "form": 13, "format": [3, 5, 8, 11], "from": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13], "func_to_parse_row": [11, 12], "function": [2, 3, 4, 5, 9, 10, 11, 12], "g": 10, "gen3": [10, 11, 12], "gen3_api_kei": 0, "gen3_oidc_client_creds_secret": 0, "gen3auth": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "gen3fil": [1, 2], "gen3index": [2, 3], "gen3job": [2, 4, 10], "gen3metadata": [2, 5], "gen3object": [2, 6], "gen3queri": [2, 7], "gen3submiss": [2, 8], "gen3wsstorag": [2, 13], "gener": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 13], "get": [0, 1, 2, 3, 4, 5, 8, 10, 11, 12, 13], "get_access_token": [0, 2], "get_access_token_from_wt": [0, 2], "get_alias": [2, 5], "get_all_record": [2, 3], "get_dictionary_al": [2, 8], "get_dictionary_nod": [2, 8], "get_fresh_token": [2, 9, 10], "get_graphql_schema": [2, 8], "get_guid_from_fil": 12, "get_guids_prefix": [2, 3], "get_index_key_path": [2, 5], "get_latest_vers": [2, 3], "get_output": [2, 4], "get_presigned_url": [1, 2], "get_program": [2, 8], "get_project": [2, 8], "get_project_dictionari": [2, 8], "get_project_manifest": [2, 8], "get_record": [2, 3], "get_record_doc": [2, 3], "get_records_on_pag": [2, 3], "get_stat": [2, 3], "get_statu": [2, 4], "get_url": [2, 3], "get_valid_guid": [2, 3], "get_vers": [2, 3, 4, 5], "get_with_param": [2, 3], "giangb": 11, "github": [2, 7], "give": 1, "given": [0, 3, 4, 5, 8, 10, 12, 13], "global": [4, 5], "good": 3, "grant": 0, "graph": 8, "graphql": [7, 8], "graphql_queri": [2, 7], "group": 3, "guid": [1, 2, 3, 5, 6, 9, 11, 12], "guid_exampl": 11, "guid_for_row": 12, "guid_from_fil": 12, "guid_type_for_indexed_file_object": [2, 9, 12], "guid_type_for_non_indexed_file_object": [2, 9, 12], "guppi": 7, "ha": [0, 11], "handl": [3, 10], "hardcod": 0, "has_vers": 3, "hash": [3, 11], "hash_typ": 3, "have": [5, 11], "header": 11, "healthi": [3, 4, 5], "help": 11, "helper": 2, "hit": 11, "host": 10, "hostnam": [2, 9, 10], "how": [8, 11], "howto": 10, "http": [0, 7, 11, 12], "i": [0, 1, 2, 3, 4, 5, 8, 10, 11, 12], "id": [0, 1, 3, 5, 10, 11], "idea": 3, "identifi": [3, 5, 9, 11], "idp": 0, "illustr": 11, "immut": 3, "implement": 0, "implic": 11, "import": 11, "includ": [0, 3], "indent": 10, "index": [0, 2, 5, 9], "index_manifest": 11, "index_object_manifest": [2, 9, 11], "indexd": [1, 3, 6, 10, 11, 12], "indexd_field": [11, 12], "indexd_record_page_s": [2, 9, 11], "indexed_file_object_guid": 12, "indic": [0, 11], "infil": 10, "info": [3, 11], "inform": [2, 3, 10], "ingest": [2, 9], "ingest_manifest": 12, "initi": [0, 10], "input": [4, 10, 11], "input_manifest": 11, "instal": [0, 2, 11], "instanc": [1, 3, 6, 7, 8, 9, 10], "instead": [1, 7, 11], "int": [1, 3, 5, 7, 8, 10, 11, 12], "integ": [1, 3, 8], "intend": 0, "interact": [1, 3, 4, 5, 6, 8, 13], "interest": 10, "interpret": 0, "introspect": 8, "involv": 9, "is_healthi": [2, 3, 4, 5], "is_indexed_file_object": 12, "isn": 1, "issu": 0, "its": [1, 3], "job": 2, "job_id": 4, "job_input": 4, "job_nam": 4, "json": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "just": [5, 11, 12], "jwt": 0, "kei": [0, 3, 5, 13], "know": 11, "known": 10, "kwarg": [3, 4, 5], "l": [2, 13], "larg": 9, "last": 10, "latest": 3, "least": 3, "level": 6, "librari": 11, "like": [3, 5, 9, 11, 12], "limit": [1, 3, 5, 12], "linear": 4, "linux": 10, "list": [0, 1, 3, 4, 5, 7, 8, 10, 11, 13], "list_access_in_drs_manifest": [2, 9, 10], "list_drs_object": [2, 9, 10], "list_files_in_drs_manifest": [2, 9, 10], "list_job": [2, 4], "live": [11, 12], "load": [2, 9, 10], "load_manifest": [2, 9, 10], "local": [0, 13], "locat": [1, 6], "lock": 12, "log": [8, 10, 11, 12], "logic": [5, 12], "loop": 11, "ls_path": [2, 13], "maco": 11, "made": 3, "mai": [0, 9, 11], "main": 10, "make": [9, 11], "manag": [1, 5, 10], "mani": [8, 11], "manifest": [2, 8, 9, 10, 11, 12], "manifest_1": 10, "manifest_fil": [11, 12], "manifest_file_delimit": [11, 12], "manifest_row_pars": [11, 12], "map": [0, 11], "mark": 8, "master": 7, "match": [3, 5, 12], "max": 5, "max_concurrent_request": [2, 9, 11, 12], "max_presigned_url_ttl": 1, "max_tri": 8, "maximum": [11, 12], "md": [5, 7, 10, 12], "md5": [2, 3, 9, 11], "md5_hash": 11, "md5sum": [2, 9, 10], "mean": 8, "mechan": 3, "merg": 5, "metadata": [2, 3, 6, 9, 11], "metadata_list": 5, "metadata_sourc": 12, "metadata_typ": 12, "metdata": 12, "method": [1, 7, 10], "minimum": 10, "minut": 0, "mode": 7, "modul": [2, 10, 11], "more": [2, 5, 7, 9, 10], "most": 9, "mostli": 2, "multipl": [8, 11], "must": [1, 5], "my_common": 10, "my_credenti": 10, "my_field": 7, "my_index": 7, "my_program": 7, "my_project": 7, "name": [3, 4, 8, 10, 11, 12, 13], "namespac": [0, 12], "necessari": [3, 5], "need": [3, 7, 10, 11], "nest": 5, "net": 11, "never": 0, "new": [0, 3], "node": 8, "node_nam": 8, "node_typ": 8, "none": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "note": [0, 3, 11, 12], "noth": [3, 6], "now": [1, 8], "num": 5, "num_process": 11, "num_total_fil": 11, "number": [3, 7, 8, 11, 12], "o": 0, "object": [1, 2, 3, 4, 5, 7, 8, 9, 10, 11, 13], "object_id": [1, 2, 9, 10], "object_list": 10, "object_typ": [2, 9, 10], "objectid": 10, "obtain": [0, 10], "occur": 10, "off": 5, "offset": [5, 7], "oidc": 0, "old": 3, "one": [3, 5, 10, 11], "onli": [3, 5, 7, 8, 10, 11], "open": [8, 10, 11], "open_project": [2, 8], "openid": 0, "opt": 0, "option": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11], "order": [0, 8], "ordered_node_list": 8, "org": 10, "otherwis": 10, "output": [4, 5, 11, 12], "output_dir": 10, "output_filenam": [11, 12], "overrid": [0, 11, 12], "overwrit": 5, "own": 0, "packag": 10, "page": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 13], "pagin": 3, "parallel": 11, "param": [3, 5, 8, 10], "paramet": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "pars": [10, 11, 12, 13], "parser": [11, 12], "particular": 0, "pass": [0, 7, 8, 10], "password": [11, 12], "path": [0, 1, 5, 10, 11, 13], "path_to_manifest": 11, "pattern": [3, 12], "pdcdatastor": 11, "pend": 10, "per": [11, 12], "peregrin": 8, "permiss": 10, "persist": 9, "phs0001": 11, "phs0002": 11, "pick": 1, "pla": 11, "place": 11, "planx": 11, "point": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "popul": [10, 12], "posit": [1, 7], "possibl": 10, "post": [0, 11], "pprint": [2, 9, 10], "prefix": 3, "presign": 1, "pretti": 10, "prev_guid": [2, 9, 11], "previou": [3, 11], "previous": 4, "print": [8, 10], "process": 11, "processed_fil": 11, "profil": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "program": [8, 11], "progress": [8, 10], "project": [8, 11], "project_id": [7, 8], "protocol": 1, "provid": [0, 1, 3, 5, 7, 8, 12], "public": [3, 5], "put": 0, "py": 11, "python": [2, 9, 11], "python3": 11, "python_subprocess_command": 11, "queri": [1, 2, 3, 5, 8, 11, 12], "query_str": 7, "query_txt": [7, 8], "query_url": [2, 3], "quickstart": 2, "rather": 0, "raw": [7, 11], "raw_data_download": [2, 7], "rbac": 3, "read": [3, 5, 11], "readm": 2, "reason": 10, "record": [1, 3, 5, 7, 8, 11, 12], "refresh": [0, 10], "refresh_access_token": [0, 2], "refresh_fil": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "refresh_token": 0, "regist": 8, "regular": 7, "relat": 9, "remov": [1, 6, 11, 13], "replac": 11, "replace_url": 11, "repo": 2, "repres": [3, 5, 10], "represent": [1, 3], "request": [0, 1, 3, 5, 8, 11, 12], "requir": 10, "resolv": 10, "resolve_object": [2, 9, 10], "respect": 7, "respons": [0, 1, 3, 4, 5], "result": [1, 8, 10, 11], "retri": 8, "retriev": [1, 8, 10, 12], "return": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11], "return_full_metadata": 5, "rev": 3, "revers": 8, "revis": 3, "right": 1, "rm": [2, 13], "rm_path": [2, 13], "root": [11, 12], "row": [7, 8, 11, 12], "row_offset": 8, "rtype": 3, "run": [8, 11], "s3": [1, 10, 11], "safe": 11, "same": [5, 11, 13], "sampl": [8, 10], "sandbox": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "save": 10, "save_directori": 10, "schema": 8, "scope": [0, 1], "screen": 8, "script": 2, "search": [0, 2, 3], "second": [1, 4], "secret": 0, "see": [7, 10, 11], "self": 10, "semaphon": 12, "semaphor": 12, "separ": [0, 11], "server": 10, "servic": [1, 3, 4, 5, 6, 8, 11, 12, 13], "service_loc": [3, 4, 5], "session": 11, "set": [0, 1, 5, 10], "setup": 2, "sheepdog": 8, "should": [0, 8, 11], "show": 10, "show_progress": 10, "shown": 11, "sign": 1, "signpost": 3, "similar": 10, "simpl": 3, "simpli": 11, "sinc": 3, "singl": [1, 5, 8], "size": [2, 3, 9, 10, 11], "skip": 8, "sleep": 4, "so": 11, "some": [0, 2], "someth": 11, "sort": 7, "sort_field": 7, "sort_object": 7, "sourc": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "space": [0, 11], "specif": [5, 8, 11, 12], "specifi": [0, 1, 3, 11, 13], "spreadsheet": 8, "src_path": 13, "src_urlstr": 13, "src_w": 13, "src_wskei": 13, "ssl": [3, 4, 5], "start": [3, 4, 7, 8, 10], "start_tim": [2, 9, 10], "static": 10, "statu": [2, 4, 9, 10], "storag": [1, 2, 6], "store": [1, 3, 10], "str": [0, 1, 3, 4, 5, 7, 8, 10, 11, 12], "string": [0, 3, 5, 11, 13], "strip": 11, "sub": 8, "subject": [7, 8], "submiss": 2, "submit": [8, 11], "submit_additional_metadata_column": 11, "submit_fil": [2, 8], "submit_record": [2, 8], "submitter_id": 7, "success": 10, "successfulli": 10, "suffici": 3, "suppli": 3, "support": [0, 1, 5, 8, 11], "sure": 1, "synchron": 11, "syntax": 7, "system": [6, 7, 8, 9], "t": [1, 5, 11], "tab": 11, "task": 9, "temporari": 11, "test": 11, "test1": 11, "test2": 11, "test3": 11, "test4": 11, "test5": 11, "text": [1, 7, 8], "than": [0, 5], "thei": [0, 10], "them": [10, 11], "thi": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "those": 11, "thread": 11, "thread_num": 11, "threadcontrol": [2, 9, 11], "through": [8, 11], "tier": 7, "time": [1, 3, 8, 10, 11], "timestamp": 10, "tmp_folder": [2, 9, 11], "token": [0, 10], "tool": 2, "total": 11, "treat": [1, 5], "tree": 10, "true": [3, 4, 5, 6, 7, 8, 10, 11, 12], "try": 0, "tsv": [8, 11, 12], "tupl": [0, 3, 11, 12], "type": [1, 3, 4, 5, 7, 8, 10, 11, 12], "typic": 10, "uc": 7, "unaccess": 7, "under": [0, 8, 13], "uniqu": [1, 5], "unknown": 10, "unpack": 10, "unpack_packag": 10, "until": [4, 10], "up": [5, 9], "updat": [2, 3, 5, 10, 11], "update_alias": [2, 5], "update_blank": [2, 3], "update_record": [2, 3], "updated_tim": [2, 9, 10], "upload": [1, 2, 3, 8, 13], "upload_fil": [1, 2], "upload_file_to_guid": [1, 2], "upload_url": [2, 13], "url": [1, 2, 3, 9, 10, 11, 12, 13], "urls_metadata": 3, "us": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "usag": 11, "use_agg_md": 5, "user": [0, 10, 12], "user_access": [2, 9, 10], "usual": 12, "utcnow": 1, "util": 9, "uuid": [1, 3, 8], "uuid1": 8, "uuid2": 8, "valid": [3, 7], "valu": [0, 1, 3, 5, 7, 10, 11], "value_from_indexd": 11, "value_from_manifest": 11, "variabl": [0, 7, 8], "variou": 2, "verbos": [7, 8], "verif": 11, "verifi": [2, 9], "verify_manifest": 11, "verify_object_manifest": 11, "version": [3, 4, 5], "vital_statu": 7, "w": 13, "wa": 0, "wai": 10, "wait": 4, "want": [0, 3, 8], "warn": 11, "we": [3, 11], "web": 0, "what": 5, "when": [0, 3, 7, 10, 12], "where": [0, 3, 5, 11, 12], "whether": [3, 4, 5, 8, 11, 12], "which": [8, 10], "while": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "whose": 5, "within": [0, 2, 9], "without": [3, 5], "won": 5, "work": [0, 10], "workaround": 11, "worksheet": 8, "workspac": [0, 2], "wrapper": 10, "write": 11, "ws_urlstr": 13, "wskei": 13, "wss": 13, "wt": [0, 10], "x": 11, "xlsx": 8, "you": [0, 3, 8, 11], "your": 0}, "titles": ["Gen3 Auth Helper", "Gen3 File Class", "Welcome to Gen3 SDK\u2019s documentation!", "Gen3 Index Class", "Gen3 Jobs Class", "Gen3 Metadata Class", "Gen3 Object Class", "Gen3 Query Class", "Gen3 Submission Class", "Gen3 Tools", "DRS Download Tools", "Indexing Tools", "Metadata Tools", "Gen3 Workspace Storage"], "titleterms": {"": 2, "auth": 0, "class": [1, 3, 4, 5, 6, 7, 8], "document": 2, "download": [10, 11], "dr": 10, "file": 1, "gen3": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 13], "helper": 0, "index": [3, 11], "indic": 2, "ingest": 12, "job": 4, "metadata": [5, 12], "object": 6, "queri": 7, "sdk": 2, "storag": 13, "submiss": 8, "tabl": 2, "tool": [9, 10, 11, 12], "verifi": 11, "welcom": 2, "workspac": 13}}) \ No newline at end of file +Search.setIndex({"alltitles": {"DRS Download Tools": [[10, "module-gen3.tools.download.drs_download"]], "Download": [[11, "module-gen3.tools.indexing.download_manifest"]], "Gen3 Auth Helper": [[0, "gen3-auth-helper"]], "Gen3 File Class": [[1, "gen3-file-class"]], "Gen3 Index Class": [[3, "gen3-index-class"]], "Gen3 Jobs Class": [[4, "gen3-jobs-class"]], "Gen3 Metadata Class": [[5, "gen3-metadata-class"]], "Gen3 Object Class": [[6, "gen3-object-class"]], "Gen3 Query Class": [[7, "gen3-query-class"]], "Gen3 Submission Class": [[8, "gen3-submission-class"]], "Gen3 Tools": [[9, "gen3-tools"]], "Gen3 Workspace Storage": [[13, "gen3-workspace-storage"]], "Index": [[11, "module-gen3.tools.indexing.index_manifest"]], "Indexing Tools": [[11, "indexing-tools"]], "Indices and tables": [[2, "indices-and-tables"]], "Ingest": [[12, "module-gen3.tools.metadata.ingest_manifest"]], "Metadata Tools": [[12, "metadata-tools"]], "Verify": [[11, "module-gen3.tools.indexing.verify_manifest"]], "Welcome to Gen3 SDK\u2019s documentation!": [[2, "welcome-to-gen3-sdk-s-documentation"]]}, "docnames": ["auth", "file", "index", "indexing", "jobs", "metadata", "object", "query", "submission", "tools", "tools/drs_pull", "tools/indexing", "tools/metadata", "wss"], "envversion": {"sphinx": 61, "sphinx.domains.c": 3, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 9, "sphinx.domains.index": 1, "sphinx.domains.javascript": 3, "sphinx.domains.math": 2, "sphinx.domains.python": 4, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx.ext.viewcode": 1}, "filenames": ["auth.rst", "file.rst", "index.rst", "indexing.rst", "jobs.rst", "metadata.rst", "object.rst", "query.rst", "submission.rst", "tools.rst", "tools/drs_pull.rst", "tools/indexing.rst", "tools/metadata.rst", "wss.rst"], "indexentries": {"_manager (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable._manager", false]], "access_methods (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.access_methods", false]], "acls (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.ACLS", false]], "async_create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_create", false]], "async_create_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_create_aliases", false]], "async_create_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_create_record", false]], "async_delete_alias() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_delete_alias", false]], "async_delete_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_delete_aliases", false]], "async_download_object_manifest() (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.async_download_object_manifest", false]], "async_get() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_get", false]], "async_get_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_get_aliases", false]], "async_get_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_record", false]], "async_get_records_from_checksum() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_records_from_checksum", false]], "async_get_records_on_page() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_records_on_page", false]], "async_get_with_params() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_with_params", false]], "async_ingest_metadata_manifest() (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.async_ingest_metadata_manifest", false]], "async_query_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_query_urls", false]], "async_query_urls_from_indexd() (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.async_query_urls_from_indexd", false]], "async_run_job_and_wait() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.async_run_job_and_wait", false]], "async_update() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_update", false]], "async_update_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_update_aliases", false]], "async_update_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_update_record", false]], "async_verify_object_manifest() (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.async_verify_object_manifest", false]], "auth_provider (gen3.metadata.gen3metadata attribute)": [[5, "gen3.metadata.Gen3Metadata.auth_provider", false]], "authz (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.AUTHZ", false]], "batch_create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.batch_create", false]], "cache_hosts_wts_tokens() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.cache_hosts_wts_tokens", false]], "children (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.children", false]], "column_to_use_as_guid (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.COLUMN_TO_USE_AS_GUID", false]], "commons_url (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.commons_url", false]], "copy() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.copy", false]], "create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create", false]], "create_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create_aliases", false]], "create_blank() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_blank", false]], "create_index_key_path() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create_index_key_path", false]], "create_job() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.create_job", false]], "create_new_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_new_version", false]], "create_object_list() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.create_object_list", false]], "create_program() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.create_program", false]], "create_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.create_project", false]], "create_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_record", false]], "created_time (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.created_time", false]], "curl() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.curl", false]], "current_dir (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.CURRENT_DIR", false]], "current_dir (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.CURRENT_DIR", false]], "current_dir (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.CURRENT_DIR", false]], "delete() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete", false]], "delete_alias() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_alias", false]], "delete_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_aliases", false]], "delete_all_guids() (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.delete_all_guids", false]], "delete_file() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.delete_file", false]], "delete_file_locations() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.delete_file_locations", false]], "delete_index_key_path() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_index_key_path", false]], "delete_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_node", false]], "delete_nodes() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_nodes", false]], "delete_object() (gen3.object.gen3object method)": [[6, "gen3.object.Gen3Object.delete_object", false]], "delete_program() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_program", false]], "delete_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_project", false]], "delete_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.delete_record", false]], "delete_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_record", false]], "delete_records() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_records", false]], "download() (gen3.tools.download.drs_download.downloadable method)": [[10, "gen3.tools.download.drs_download.Downloadable.download", false]], "download() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.download", false]], "download() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.download", false]], "download_files_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.download_files_in_drs_manifest", false]], "download_single() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.download_single", false]], "download_url() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.download_url", false]], "downloadable (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.Downloadable", false]], "downloadmanager (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.DownloadManager", false]], "downloadstatus (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.DownloadStatus", false]], "end_time (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.end_time", false]], "endpoint (gen3.metadata.gen3metadata attribute)": [[5, "gen3.metadata.Gen3Metadata.endpoint", false]], "export_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.export_node", false]], "export_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.export_record", false]], "file_name (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.file_name", false]], "file_name (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.file_name", false]], "file_size (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.file_size", false]], "file_size (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.file_size", false]], "gen3.tools": [[9, "module-gen3.tools", false]], "gen3.tools.download.drs_download": [[10, "module-gen3.tools.download.drs_download", false]], "gen3.tools.indexing.download_manifest": [[11, "module-gen3.tools.indexing.download_manifest", false]], "gen3.tools.indexing.index_manifest": [[11, "module-gen3.tools.indexing.index_manifest", false]], "gen3.tools.indexing.verify_manifest": [[11, "module-gen3.tools.indexing.verify_manifest", false]], "gen3.tools.metadata.ingest_manifest": [[12, "module-gen3.tools.metadata.ingest_manifest", false]], "gen3auth (class in gen3.auth)": [[0, "gen3.auth.Gen3Auth", false]], "gen3file (class in gen3.file)": [[1, "gen3.file.Gen3File", false]], "gen3index (class in gen3.index)": [[3, "gen3.index.Gen3Index", false]], "gen3jobs (class in gen3.jobs)": [[4, "gen3.jobs.Gen3Jobs", false]], "gen3metadata (class in gen3.metadata)": [[5, "gen3.metadata.Gen3Metadata", false]], "gen3object (class in gen3.object)": [[6, "gen3.object.Gen3Object", false]], "gen3query (class in gen3.query)": [[7, "gen3.query.Gen3Query", false]], "gen3submission (class in gen3.submission)": [[8, "gen3.submission.Gen3Submission", false]], "gen3wsstorage (class in gen3.wss)": [[13, "gen3.wss.Gen3WsStorage", false]], "get() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get", false]], "get() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get", false]], "get_access_token() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.get_access_token", false]], "get_access_token_from_wts() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.get_access_token_from_wts", false]], "get_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_aliases", false]], "get_all_records() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_all_records", false]], "get_dictionary_all() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_dictionary_all", false]], "get_dictionary_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_dictionary_node", false]], "get_fresh_token() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.get_fresh_token", false]], "get_graphql_schema() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_graphql_schema", false]], "get_guids_prefix() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_guids_prefix", false]], "get_index_key_paths() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_index_key_paths", false]], "get_latest_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_latest_version", false]], "get_output() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_output", false]], "get_presigned_url() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.get_presigned_url", false]], "get_programs() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_programs", false]], "get_project_dictionary() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_project_dictionary", false]], "get_project_manifest() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_project_manifest", false]], "get_projects() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_projects", false]], "get_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_record", false]], "get_record_doc() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_record_doc", false]], "get_records() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_records", false]], "get_records_on_page() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_records_on_page", false]], "get_stats() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_stats", false]], "get_status() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_status", false]], "get_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_urls", false]], "get_valid_guids() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_valid_guids", false]], "get_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_version", false]], "get_version() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_version", false]], "get_version() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_version", false]], "get_versions() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_versions", false]], "get_with_params() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_with_params", false]], "graphql_query() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.graphql_query", false]], "guid (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.GUID", false]], "guid_type_for_indexed_file_object (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.GUID_TYPE_FOR_INDEXED_FILE_OBJECT", false]], "guid_type_for_non_indexed_file_object (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.GUID_TYPE_FOR_NON_INDEXED_FILE_OBJECT", false]], "hostname (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.hostname", false]], "index_object_manifest() (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.index_object_manifest", false]], "indexd_record_page_size (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.INDEXD_RECORD_PAGE_SIZE", false]], "is_healthy() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.is_healthy", false]], "is_healthy() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.is_healthy", false]], "is_healthy() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.is_healthy", false]], "list_access_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_access_in_drs_manifest", false]], "list_drs_object() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_drs_object", false]], "list_files_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_files_in_drs_manifest", false]], "list_jobs() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.list_jobs", false]], "load() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.load", false]], "load_manifest() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.load_manifest", false]], "ls() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.ls", false]], "ls_path() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.ls_path", false]], "manifest (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.Manifest", false]], "max_concurrent_requests (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.MAX_CONCURRENT_REQUESTS", false]], "max_concurrent_requests (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.MAX_CONCURRENT_REQUESTS", false]], "max_concurrent_requests (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.MAX_CONCURRENT_REQUESTS", false]], "md5 (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.MD5", false]], "md5sum (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.md5sum", false]], "module": [[9, "module-gen3.tools", false], [10, "module-gen3.tools.download.drs_download", false], [11, "module-gen3.tools.indexing.download_manifest", false], [11, "module-gen3.tools.indexing.index_manifest", false], [11, "module-gen3.tools.indexing.verify_manifest", false], [12, "module-gen3.tools.metadata.ingest_manifest", false]], "object_id (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.object_id", false]], "object_id (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.object_id", false]], "object_type (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.object_type", false]], "open_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.open_project", false]], "pprint() (gen3.tools.download.drs_download.downloadable method)": [[10, "gen3.tools.download.drs_download.Downloadable.pprint", false]], "prev_guid (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.PREV_GUID", false]], "query() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.query", false]], "query() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.query", false]], "query() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.query", false]], "query_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.query_urls", false]], "raw_data_download() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.raw_data_download", false]], "refresh_access_token() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.refresh_access_token", false]], "resolve_objects() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.resolve_objects", false]], "rm() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.rm", false]], "rm_path() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.rm_path", false]], "size (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.SIZE", false]], "start_time (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.start_time", false]], "status (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.status", false]], "submit_file() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.submit_file", false]], "submit_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.submit_record", false]], "threadcontrol (class in gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.ThreadControl", false]], "tmp_folder (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.TMP_FOLDER", false]], "update() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.update", false]], "update_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.update_aliases", false]], "update_blank() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.update_blank", false]], "update_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.update_record", false]], "updated_time (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.updated_time", false]], "upload() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.upload", false]], "upload_file() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.upload_file", false]], "upload_file_to_guid() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.upload_file_to_guid", false]], "upload_url() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.upload_url", false]], "urls (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.URLS", false]], "user_access() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.user_access", false]]}, "objects": {"gen3": [[9, 3, 0, "-", "tools"]], "gen3.auth": [[0, 0, 1, "", "Gen3Auth"]], "gen3.auth.Gen3Auth": [[0, 1, 1, "", "curl"], [0, 1, 1, "", "get_access_token"], [0, 1, 1, "", "get_access_token_from_wts"], [0, 1, 1, "", "refresh_access_token"]], "gen3.file": [[1, 0, 1, "", "Gen3File"]], "gen3.file.Gen3File": [[1, 1, 1, "", "delete_file"], [1, 1, 1, "", "delete_file_locations"], [1, 1, 1, "", "download_single"], [1, 1, 1, "", "get_presigned_url"], [1, 1, 1, "", "upload_file"], [1, 1, 1, "", "upload_file_to_guid"]], "gen3.index": [[3, 0, 1, "", "Gen3Index"]], "gen3.index.Gen3Index": [[3, 1, 1, "", "async_create_record"], [3, 1, 1, "", "async_get_record"], [3, 1, 1, "", "async_get_records_from_checksum"], [3, 1, 1, "", "async_get_records_on_page"], [3, 1, 1, "", "async_get_with_params"], [3, 1, 1, "", "async_query_urls"], [3, 1, 1, "", "async_update_record"], [3, 1, 1, "", "create_blank"], [3, 1, 1, "", "create_new_version"], [3, 1, 1, "", "create_record"], [3, 1, 1, "", "delete_record"], [3, 1, 1, "", "get"], [3, 1, 1, "", "get_all_records"], [3, 1, 1, "", "get_guids_prefix"], [3, 1, 1, "", "get_latest_version"], [3, 1, 1, "", "get_record"], [3, 1, 1, "", "get_record_doc"], [3, 1, 1, "", "get_records"], [3, 1, 1, "", "get_records_on_page"], [3, 1, 1, "", "get_stats"], [3, 1, 1, "", "get_urls"], [3, 1, 1, "", "get_valid_guids"], [3, 1, 1, "", "get_version"], [3, 1, 1, "", "get_versions"], [3, 1, 1, "", "get_with_params"], [3, 1, 1, "", "is_healthy"], [3, 1, 1, "", "query_urls"], [3, 1, 1, "", "update_blank"], [3, 1, 1, "", "update_record"]], "gen3.jobs": [[4, 0, 1, "", "Gen3Jobs"]], "gen3.jobs.Gen3Jobs": [[4, 1, 1, "", "async_run_job_and_wait"], [4, 1, 1, "", "create_job"], [4, 1, 1, "", "get_output"], [4, 1, 1, "", "get_status"], [4, 1, 1, "", "get_version"], [4, 1, 1, "", "is_healthy"], [4, 1, 1, "", "list_jobs"]], "gen3.metadata": [[5, 0, 1, "", "Gen3Metadata"]], "gen3.metadata.Gen3Metadata": [[5, 1, 1, "", "async_create"], [5, 1, 1, "", "async_create_aliases"], [5, 1, 1, "", "async_delete_alias"], [5, 1, 1, "", "async_delete_aliases"], [5, 1, 1, "", "async_get"], [5, 1, 1, "", "async_get_aliases"], [5, 1, 1, "", "async_update"], [5, 1, 1, "", "async_update_aliases"], [5, 2, 1, "", "auth_provider"], [5, 1, 1, "", "batch_create"], [5, 1, 1, "", "create"], [5, 1, 1, "", "create_aliases"], [5, 1, 1, "", "create_index_key_path"], [5, 1, 1, "", "delete"], [5, 1, 1, "", "delete_alias"], [5, 1, 1, "", "delete_aliases"], [5, 1, 1, "", "delete_index_key_path"], [5, 2, 1, "", "endpoint"], [5, 1, 1, "", "get"], [5, 1, 1, "", "get_aliases"], [5, 1, 1, "", "get_index_key_paths"], [5, 1, 1, "", "get_version"], [5, 1, 1, "", "is_healthy"], [5, 1, 1, "", "query"], [5, 1, 1, "", "update"], [5, 1, 1, "", "update_aliases"]], "gen3.object": [[6, 0, 1, "", "Gen3Object"]], "gen3.object.Gen3Object": [[6, 1, 1, "", "delete_object"]], "gen3.query": [[7, 0, 1, "", "Gen3Query"]], "gen3.query.Gen3Query": [[7, 1, 1, "", "graphql_query"], [7, 1, 1, "", "query"], [7, 1, 1, "", "raw_data_download"]], "gen3.submission": [[8, 0, 1, "", "Gen3Submission"]], "gen3.submission.Gen3Submission": [[8, 1, 1, "", "create_program"], [8, 1, 1, "", "create_project"], [8, 1, 1, "", "delete_node"], [8, 1, 1, "", "delete_nodes"], [8, 1, 1, "", "delete_program"], [8, 1, 1, "", "delete_project"], [8, 1, 1, "", "delete_record"], [8, 1, 1, "", "delete_records"], [8, 1, 1, "", "export_node"], [8, 1, 1, "", "export_record"], [8, 1, 1, "", "get_dictionary_all"], [8, 1, 1, "", "get_dictionary_node"], [8, 1, 1, "", "get_graphql_schema"], [8, 1, 1, "", "get_programs"], [8, 1, 1, "", "get_project_dictionary"], [8, 1, 1, "", "get_project_manifest"], [8, 1, 1, "", "get_projects"], [8, 1, 1, "", "open_project"], [8, 1, 1, "", "query"], [8, 1, 1, "", "submit_file"], [8, 1, 1, "", "submit_record"]], "gen3.tools.download": [[10, 3, 0, "-", "drs_download"]], "gen3.tools.download.drs_download": [[10, 0, 1, "", "DownloadManager"], [10, 0, 1, "", "DownloadStatus"], [10, 0, 1, "", "Downloadable"], [10, 0, 1, "", "Manifest"], [10, 4, 1, "", "download_files_in_drs_manifest"], [10, 4, 1, "", "list_access_in_drs_manifest"], [10, 4, 1, "", "list_drs_object"], [10, 4, 1, "", "list_files_in_drs_manifest"]], "gen3.tools.download.drs_download.DownloadManager": [[10, 1, 1, "", "cache_hosts_wts_tokens"], [10, 1, 1, "", "download"], [10, 1, 1, "", "get_fresh_token"], [10, 1, 1, "", "resolve_objects"], [10, 1, 1, "", "user_access"]], "gen3.tools.download.drs_download.DownloadStatus": [[10, 2, 1, "", "end_time"], [10, 2, 1, "", "start_time"], [10, 2, 1, "", "status"]], "gen3.tools.download.drs_download.Downloadable": [[10, 2, 1, "", "_manager"], [10, 2, 1, "", "access_methods"], [10, 2, 1, "", "children"], [10, 2, 1, "", "created_time"], [10, 1, 1, "", "download"], [10, 2, 1, "", "file_name"], [10, 2, 1, "", "file_size"], [10, 2, 1, "", "hostname"], [10, 2, 1, "", "object_id"], [10, 2, 1, "", "object_type"], [10, 1, 1, "", "pprint"], [10, 2, 1, "", "updated_time"]], "gen3.tools.download.drs_download.Manifest": [[10, 2, 1, "", "commons_url"], [10, 1, 1, "", "create_object_list"], [10, 2, 1, "", "file_name"], [10, 2, 1, "", "file_size"], [10, 1, 1, "", "load"], [10, 1, 1, "", "load_manifest"], [10, 2, 1, "", "md5sum"], [10, 2, 1, "", "object_id"]], "gen3.tools.indexing": [[11, 3, 0, "-", "download_manifest"], [11, 3, 0, "-", "index_manifest"], [11, 3, 0, "-", "verify_manifest"]], "gen3.tools.indexing.download_manifest": [[11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "INDEXD_RECORD_PAGE_SIZE"], [11, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [11, 2, 1, "", "TMP_FOLDER"], [11, 4, 1, "", "async_download_object_manifest"]], "gen3.tools.indexing.index_manifest": [[11, 2, 1, "", "ACLS"], [11, 2, 1, "", "AUTHZ"], [11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "GUID"], [11, 2, 1, "", "MD5"], [11, 2, 1, "", "PREV_GUID"], [11, 2, 1, "", "SIZE"], [11, 0, 1, "", "ThreadControl"], [11, 2, 1, "", "URLS"], [11, 4, 1, "", "delete_all_guids"], [11, 4, 1, "", "index_object_manifest"]], "gen3.tools.indexing.verify_manifest": [[11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [11, 4, 1, "", "async_verify_object_manifest"]], "gen3.tools.metadata": [[12, 3, 0, "-", "ingest_manifest"]], "gen3.tools.metadata.ingest_manifest": [[12, 2, 1, "", "COLUMN_TO_USE_AS_GUID"], [12, 2, 1, "", "GUID_TYPE_FOR_INDEXED_FILE_OBJECT"], [12, 2, 1, "", "GUID_TYPE_FOR_NON_INDEXED_FILE_OBJECT"], [12, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [12, 4, 1, "", "async_ingest_metadata_manifest"], [12, 4, 1, "", "async_query_urls_from_indexd"]], "gen3.wss": [[13, 0, 1, "", "Gen3WsStorage"]], "gen3.wss.Gen3WsStorage": [[13, 1, 1, "", "copy"], [13, 1, 1, "", "download"], [13, 1, 1, "", "download_url"], [13, 1, 1, "", "ls"], [13, 1, 1, "", "ls_path"], [13, 1, 1, "", "rm"], [13, 1, 1, "", "rm_path"], [13, 1, 1, "", "upload"], [13, 1, 1, "", "upload_url"]]}, "objnames": {"0": ["py", "class", "Python class"], "1": ["py", "method", "Python method"], "2": ["py", "attribute", "Python attribute"], "3": ["py", "module", "Python module"], "4": ["py", "function", "Python function"]}, "objtypes": {"0": "py:class", "1": "py:method", "2": "py:attribute", "3": "py:module", "4": "py:function"}, "terms": {"": [1, 4, 8, 10, 11], "0": [5, 7, 8, 11], "0046513": [], "052073": [], "0576868": [], "058966": 12, "064572": [], "07464": [], "0790412": [], "0a80fada010c": 11, "0a80fada096c": 11, "0a80fada097c": 11, "0a80fada098c": 11, "0a80fada099c": 11, "1": [4, 5, 8, 10, 11], "10": [5, 7, 11], "100": [8, 11], "11e9": 11, "1344793": [], "1676264": [], "1713542306": [], "1713542765": [], "1713543033": [], "1713543225": [], "1713543506": [], "1713543956": [], "1713544131": [], "1713544132": [], "1713544397": [], "1713544598": [], "1713545857": [], "1713545858": [], "1713549370": [], "1713549689": [], "1713550571": [], "1713557245": [], "1713559376": [], "1713560080": [], "1713560402": [], "1713560403": [], "1713561061": [], "1713562690": [], "1717169008": [], "1717170449": [], "1717171842": 11, "1717171843": 12, "1731803": [], "1771936": [], "1913438": [], "2": [5, 11], "2184267": [], "24": [11, 12], "255e396f": 11, "2877355": [], "2930224": [], "2995": [], "3": [5, 11], "30": 8, "3102272": [], "33": 5, "333": 5, "343434344": 11, "363455714": 11, "3935378": [], "4": [5, 11], "4017086": [], "4052968": [], "4090197": [], "4463434": [], "450c": 11, "4632835": [], "4649727": [], "4714": 8, "473d83400bc1bc9dc635e334fadd433c": 11, "473d83400bc1bc9dc635e334faddd33c": 11, "473d83400bc1bc9dc635e334fadde33c": 11, "473d83400bc1bc9dc635e334faddf33c": 11, "4752307": [], "4756553": [], "5": [0, 5], "50": 7, "517729": [], "5202463": [], "543434443": 11, "5669184": [], "568308": [], "5899982": [], "6692646": [], "6739478": [], "674552": [], "6f90": 8, "700799": [], "7232893": [], "756255": [], "760149": [], "7841465": 11, "7d3d8d2083b4": 11, "8044841": [], "8375325": [], "8420": 8, "8630717": [], "8874054": [], "8882551": [], "93d9af72": 11, "9a07": 11, "A": [1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "AND": 5, "Be": 1, "But": 5, "By": 11, "For": [1, 5, 6, 7, 8, 9, 11], "IF": 11, "If": [0, 1, 7, 11, 12], "In": 10, "It": 10, "NOT": 12, "OR": 5, "One": 7, "Such": 9, "THE": 11, "That": 3, "The": [0, 1, 2, 3, 5, 8, 10, 11], "There": 11, "These": 9, "To": 11, "Will": [4, 7, 10], "_get_acl_from_row": 11, "_get_authz_from_row": 11, "_get_file_name_from_row": 11, "_get_file_size_from_row": 11, "_get_guid_for_row": 12, "_get_guid_from_row": 11, "_get_md5_from_row": 11, "_get_urls_from_row": 11, "_guid_typ": 12, "_manag": [2, 9, 10], "_query_for_associated_indexd_record_guid": 12, "_ssl": [3, 4, 5], "a5c6": 11, "ab167e49d25b488939b1ede42752458b": 3, "about": [2, 3], "abov": 11, "access": [0, 1, 3, 7, 10], "access_method": [2, 9, 10], "access_token": 0, "accesstoken": 0, "acl": [2, 3, 9, 11], "across": 11, "act": 0, "action": [9, 11], "actual": 11, "ad": 3, "add": [3, 5], "addit": [3, 5, 10, 11], "admin": [5, 11], "admin_endpoint_suffix": 5, "after": 10, "against": [3, 7, 8, 11, 12], "algorithm": 3, "alia": [3, 5], "alias": 5, "aliv": 7, "all": [1, 3, 4, 5, 6, 7, 8, 10, 11, 12], "allow": [0, 6, 8, 10, 11, 12], "allowed_data_upload_bucket": 1, "along": 2, "alreadi": 9, "also": 1, "altern": [5, 11], "alwai": 5, "ammount": 12, "amount": [1, 9], "an": [0, 3, 6, 8, 10, 11], "ani": [0, 5, 10, 11], "anoth": 5, "api": [0, 5, 8, 11], "api_kei": 11, "appli": 7, "appropri": 13, "ar": [5, 7, 8, 9, 10, 11], "arbitrari": 0, "argument": [0, 13], "arrai": 8, "asc": 7, "assign": 9, "assist": 10, "associ": [3, 5], "assum": 11, "async": [3, 4, 5, 9, 11, 12], "async_cr": [2, 5], "async_create_alias": [2, 5], "async_create_record": [2, 3], "async_delete_alia": [2, 5], "async_delete_alias": [2, 5], "async_download_object_manifest": [2, 9, 11], "async_get": [2, 5], "async_get_alias": [2, 5], "async_get_record": [2, 3], "async_get_records_from_checksum": [2, 3], "async_get_records_on_pag": [2, 3], "async_get_with_param": [2, 3], "async_ingest_metadata_manifest": [2, 9, 12], "async_query_url": [2, 3], "async_query_urls_from_indexd": [2, 9, 12], "async_run_job_and_wait": [2, 4], "async_upd": [2, 5], "async_update_alias": [2, 5], "async_update_record": [2, 3], "async_verify_object_manifest": [2, 9, 11], "asynchron": [3, 4, 5], "asyncio": [11, 12], "asyncron": 5, "attach": [3, 5], "attempt": 11, "attribut": [10, 11], "auth": [1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "auth_provid": [1, 2, 3, 4, 5, 6, 7, 8, 13], "authbas": 0, "authent": 0, "author": 1, "authz": [0, 1, 2, 3, 9, 10, 11], "auto": [0, 2], "automat": 0, "avail": [1, 2, 10, 11], "az": 1, "b": [5, 11], "b0f1": 11, "bar": 10, "base": [0, 1, 3, 4, 5, 6, 7, 8, 9, 11, 13], "baseid": 3, "basic": [3, 11, 12], "batch_creat": [2, 5], "batch_siz": 8, "behalf": 0, "behavior": 11, "being": 3, "belong": 8, "below": 11, "blank": 3, "blob": [5, 7], "bodi": 3, "bool": [4, 5, 8, 10, 11, 12], "boolean": 3, "bownload": 10, "broad": 9, "broken": 9, "bucket": [1, 6], "bundl": 10, "byte": 10, "c": [5, 11], "cach": 10, "cache_hosts_wts_token": [2, 9, 10], "call": [10, 13], "can": [0, 3, 4, 8, 11, 12], "capabl": 9, "case": [0, 10], "categori": 9, "ccle": 8, "ccle_one_record": 8, "ccle_sample_nod": 8, "cdi": 7, "chang": [3, 11], "checksum": [3, 10], "checksum_typ": 3, "child": 10, "children": [2, 9, 10], "chunk_siz": 8, "class": [0, 2, 10, 11, 13], "cli": 10, "client": [0, 3], "client_credenti": 0, "client_id": 0, "client_scop": 0, "client_secret": 0, "code": [2, 8], "column": [11, 12], "column_to_use_as_guid": [2, 9, 12], "columna": 11, "columnb": 11, "columnc": 11, "com": 7, "comma": 11, "command": [10, 11], "common": [0, 1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13], "commons_url": [2, 9, 10, 11, 12], "complet": [4, 11], "complex": 7, "concat": 11, "concurr": [11, 12], "configur": 1, "connect": 12, "consist": 3, "constructor": 0, "contain": [0, 2, 5, 8, 9, 10, 11, 12], "content": [3, 13], "content_created_d": 3, "content_updated_d": 3, "continu": 10, "control": 3, "conveni": 10, "copi": [2, 13], "coroutin": 11, "correspond": 3, "count": 3, "crdc": 0, "creat": [2, 3, 4, 5, 6, 8, 10, 11], "create_alias": [2, 5], "create_blank": [2, 3], "create_index_key_path": [2, 5], "create_job": [2, 4], "create_new_vers": [2, 3], "create_object_list": [2, 9, 10], "create_program": [2, 8], "create_project": [2, 8], "create_record": [2, 3], "created_tim": [2, 9, 10], "creation": [3, 11], "cred": 3, "credenti": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "csv": [8, 11, 12], "curl": [0, 2], "current": [6, 8, 10], "current_dir": [2, 9, 11], "custom": 11, "d": 5, "d70b41b9": 8, "data": [0, 1, 3, 5, 7, 8, 10, 11], "data_spreadsheet": 8, "data_typ": 7, "data_upload_bucket": 1, "dataa": 11, "datab": 11, "databas": 5, "datacommon": 0, "datafil": 10, "datamanag": 10, "date": 3, "datetim": [1, 3, 10], "dbgap": 12, "dcf": 8, "def": 11, "default": [0, 1, 3, 7, 8, 11, 12], "defin": [5, 8, 10], "delai": 4, "delet": [0, 1, 2, 3, 5, 6, 8, 10, 11], "delete_alia": [2, 5], "delete_alias": [2, 5], "delete_all_guid": [2, 9, 11], "delete_fil": [1, 2], "delete_file_loc": [1, 2, 6], "delete_index_key_path": [2, 5], "delete_nod": [2, 8], "delete_object": [2, 6], "delete_program": [2, 8], "delete_project": [2, 8], "delete_record": [2, 3, 8], "delete_unpacked_packag": 10, "delimet": [11, 12], "delimit": 11, "demograph": 8, "deprec": 1, "descript": [3, 5], "desir": 11, "dest_path": 13, "dest_urlstr": 13, "dest_w": 13, "dest_wskei": 13, "detail": [2, 7, 10], "determin": [10, 11, 12], "dev": 11, "dict": [3, 4, 5, 10, 11, 12], "dictionari": [3, 4, 5, 7, 8], "did": 3, "differ": 5, "direct": 0, "directori": [10, 11], "disabl": 10, "discoveri": 10, "disk": 13, "dispatch": 4, "dist_resolut": 3, "distribut": 3, "doc": [7, 10], "docstr": 2, "document": [1, 3], "doe": [0, 12], "domain": [11, 12], "done": 4, "download": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 13], "download_files_in_drs_manifest": [2, 9, 10], "download_list": 10, "download_manifest": 11, "download_singl": [1, 2], "download_url": [2, 13], "downloadmanag": [2, 9, 10], "downloadstatu": [2, 9, 10], "dr": [2, 9], "drs_download": 10, "drs_hostnam": 10, "drsdownload": 10, "drsobjecttyp": 10, "e": [5, 10], "e043ab8b77b9": 8, "each": [3, 8, 10, 11], "effici": 9, "eg": 3, "either": 8, "elasticsearch": 7, "els": [0, 12], "elsewher": 12, "empti": [8, 11], "enabl": 11, "end": [5, 10], "end_tim": [2, 9, 10], "endpoint": [0, 1, 2, 3, 4, 5, 7, 8, 13], "entir": 8, "entri": [3, 11], "env": 0, "environ": 0, "equal": 7, "error": [10, 11, 12], "error_nam": 11, "etc": 8, "even": 11, "everi": [9, 11], "everyth": 11, "ex": [0, 11, 12], "exampl": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "exclud": 3, "execut": [7, 8, 11], "exist": [1, 3, 5, 6, 9, 12], "expect": [5, 9, 11], "experi": 8, "expir": [0, 1], "expires_in": 1, "export": [8, 10], "export_nod": [2, 8], "export_record": [2, 8], "f1f8": 11, "factori": 10, "fail": [8, 10], "fals": [3, 5, 6, 10, 11], "featur": [1, 6], "fenc": [0, 1], "fetch": 0, "field": [3, 5, 7, 11, 12], "fieldnam": 11, "file": [0, 2, 3, 4, 8, 9, 10, 11, 12, 13], "file_nam": [1, 2, 3, 9, 10, 11], "file_s": [2, 9, 10, 11], "file_st": 3, "fileformat": 8, "filenam": [0, 8, 10, 11, 12], "files": 10, "fill": 12, "filter": [5, 7], "filter_object": 7, "first": [7, 8], "flag": 11, "folder": 11, "follow": [0, 11], "forc": 11, "force_metadata_columns_even_if_empti": 11, "form": 13, "format": [3, 5, 8, 11], "from": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13], "func_to_parse_row": [11, 12], "function": [2, 3, 4, 5, 9, 10, 11, 12], "g": 10, "gen3": [10, 11, 12], "gen3_api_kei": 0, "gen3_oidc_client_creds_secret": 0, "gen3auth": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "gen3fil": [1, 2], "gen3index": [2, 3], "gen3job": [2, 4, 10], "gen3metadata": [2, 5], "gen3object": [2, 6], "gen3queri": [2, 7], "gen3submiss": [2, 8], "gen3wsstorag": [2, 13], "gener": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 13], "get": [0, 1, 2, 3, 4, 5, 8, 10, 11, 12, 13], "get_access_token": [0, 2], "get_access_token_from_wt": [0, 2], "get_alias": [2, 5], "get_all_record": [2, 3], "get_dictionary_al": [2, 8], "get_dictionary_nod": [2, 8], "get_fresh_token": [2, 9, 10], "get_graphql_schema": [2, 8], "get_guid_from_fil": 12, "get_guids_prefix": [2, 3], "get_index_key_path": [2, 5], "get_latest_vers": [2, 3], "get_output": [2, 4], "get_presigned_url": [1, 2], "get_program": [2, 8], "get_project": [2, 8], "get_project_dictionari": [2, 8], "get_project_manifest": [2, 8], "get_record": [2, 3], "get_record_doc": [2, 3], "get_records_on_pag": [2, 3], "get_stat": [2, 3], "get_statu": [2, 4], "get_url": [2, 3], "get_valid_guid": [2, 3], "get_vers": [2, 3, 4, 5], "get_with_param": [2, 3], "giangb": 11, "github": [2, 7], "give": 1, "given": [0, 3, 4, 5, 8, 10, 12, 13], "global": [4, 5], "good": 3, "grant": 0, "graph": 8, "graphql": [7, 8], "graphql_queri": [2, 7], "group": 3, "guid": [1, 2, 3, 5, 6, 9, 11, 12], "guid_exampl": 11, "guid_for_row": 12, "guid_from_fil": 12, "guid_type_for_indexed_file_object": [2, 9, 12], "guid_type_for_non_indexed_file_object": [2, 9, 12], "guppi": 7, "ha": [0, 11], "handl": [3, 10], "hardcod": 0, "has_vers": 3, "hash": [3, 11], "hash_typ": 3, "have": [5, 11], "header": 11, "healthi": [3, 4, 5], "help": 11, "helper": 2, "hit": 11, "host": 10, "hostnam": [2, 9, 10], "how": [8, 11], "howto": 10, "http": [0, 7, 11, 12], "i": [0, 1, 2, 3, 4, 5, 8, 10, 11, 12], "id": [0, 1, 3, 5, 10, 11], "idea": 3, "identifi": [3, 5, 9, 11], "idp": 0, "illustr": 11, "immut": 3, "implement": 0, "implic": 11, "import": 11, "includ": [0, 3], "indent": 10, "index": [0, 2, 5, 9], "index_manifest": 11, "index_object_manifest": [2, 9, 11], "indexd": [1, 3, 6, 10, 11, 12], "indexd_field": [11, 12], "indexd_record_page_s": [2, 9, 11], "indexed_file_object_guid": 12, "indic": [0, 11], "infil": 10, "info": [3, 11], "inform": [2, 3, 10], "ingest": [2, 9], "ingest_manifest": 12, "initi": [0, 10], "input": [4, 10, 11], "input_manifest": 11, "instal": [0, 2, 11], "instanc": [1, 3, 6, 7, 8, 9, 10], "instead": [1, 7, 11], "int": [1, 3, 5, 7, 8, 10, 11, 12], "integ": [1, 3, 8], "intend": 0, "interact": [1, 3, 4, 5, 6, 8, 13], "interest": 10, "interpret": 0, "introspect": 8, "involv": 9, "is_healthi": [2, 3, 4, 5], "is_indexed_file_object": 12, "isn": 1, "issu": 0, "its": [1, 3], "job": 2, "job_id": 4, "job_input": 4, "job_nam": 4, "json": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "just": [5, 11, 12], "jwt": 0, "kei": [0, 3, 5, 13], "know": 11, "known": 10, "kwarg": [3, 4, 5], "l": [2, 13], "larg": 9, "last": 10, "latest": 3, "least": 3, "level": 6, "librari": 11, "like": [3, 5, 9, 11, 12], "limit": [1, 3, 5, 12], "linear": 4, "linux": 10, "list": [0, 1, 3, 4, 5, 7, 8, 10, 11, 13], "list_access_in_drs_manifest": [2, 9, 10], "list_drs_object": [2, 9, 10], "list_files_in_drs_manifest": [2, 9, 10], "list_job": [2, 4], "live": [11, 12], "load": [2, 9, 10], "load_manifest": [2, 9, 10], "local": [0, 13], "locat": [1, 6], "lock": 12, "log": [8, 10, 11, 12], "logic": [5, 12], "loop": 11, "ls_path": [2, 13], "maco": 11, "made": 3, "mai": [0, 9, 11], "main": 10, "make": [9, 11], "manag": [1, 5, 10], "mani": [8, 11], "manifest": [2, 8, 9, 10, 11, 12], "manifest_1": 10, "manifest_fil": [11, 12], "manifest_file_delimit": [11, 12], "manifest_row_pars": [11, 12], "map": [0, 11], "mark": 8, "master": 7, "match": [3, 5, 12], "max": 5, "max_concurrent_request": [2, 9, 11, 12], "max_presigned_url_ttl": 1, "max_tri": 8, "maximum": [11, 12], "md": [5, 7, 10, 12], "md5": [2, 3, 9, 11], "md5_hash": 11, "md5sum": [2, 9, 10], "mean": 8, "mechan": 3, "merg": 5, "metadata": [2, 3, 6, 9, 11], "metadata_list": 5, "metadata_sourc": 12, "metadata_typ": 12, "metdata": 12, "method": [1, 7, 10], "minimum": 10, "minut": 0, "mode": 7, "modul": [2, 10, 11], "more": [2, 5, 7, 9, 10], "most": 9, "mostli": 2, "multipl": [8, 11], "must": [1, 5], "my_common": 10, "my_credenti": 10, "my_field": 7, "my_index": 7, "my_program": 7, "my_project": 7, "name": [3, 4, 8, 10, 11, 12, 13], "namespac": [0, 12], "necessari": [3, 5], "need": [3, 7, 10, 11], "nest": 5, "net": 11, "never": 0, "new": [0, 3], "node": 8, "node_nam": 8, "node_typ": 8, "none": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "note": [0, 3, 11, 12], "noth": [3, 6], "now": [1, 8], "num": 5, "num_process": 11, "num_total_fil": 11, "number": [3, 7, 8, 11, 12], "o": 0, "object": [1, 2, 3, 4, 5, 7, 8, 9, 10, 11, 13], "object_id": [1, 2, 9, 10], "object_list": 10, "object_typ": [2, 9, 10], "objectid": 10, "obtain": [0, 10], "occur": 10, "off": 5, "offset": [5, 7], "oidc": 0, "old": 3, "one": [3, 5, 10, 11], "onli": [3, 5, 7, 8, 10, 11], "open": [8, 10, 11], "open_project": [2, 8], "openid": 0, "opt": 0, "option": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11], "order": [0, 8], "ordered_node_list": 8, "org": 10, "otherwis": 10, "output": [4, 5, 11, 12], "output_dir": 10, "output_filenam": [11, 12], "overrid": [0, 11, 12], "overwrit": 5, "own": 0, "packag": 10, "page": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 13], "pagin": 3, "parallel": 11, "param": [3, 5, 8, 10], "paramet": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "pars": [10, 11, 12, 13], "parser": [11, 12], "particular": 0, "pass": [0, 7, 8, 10], "password": [11, 12], "path": [0, 1, 5, 10, 11, 13], "path_to_manifest": 11, "pattern": [3, 12], "pdcdatastor": 11, "pend": 10, "per": [11, 12], "peregrin": 8, "permiss": 10, "persist": 9, "phs0001": 11, "phs0002": 11, "pick": 1, "pla": 11, "place": 11, "planx": 11, "point": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "popul": [10, 12], "posit": [1, 7], "possibl": 10, "post": [0, 11], "pprint": [2, 9, 10], "prefix": 3, "presign": 1, "pretti": 10, "prev_guid": [2, 9, 11], "previou": [3, 11], "previous": 4, "print": [8, 10], "process": 11, "processed_fil": 11, "profil": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "program": [8, 11], "progress": [8, 10], "project": [8, 11], "project_id": [7, 8], "protocol": 1, "provid": [0, 1, 3, 5, 7, 8, 12], "public": [3, 5], "put": 0, "py": 11, "python": [2, 9, 11], "python3": 11, "python_subprocess_command": 11, "queri": [1, 2, 3, 5, 8, 11, 12], "query_str": 7, "query_txt": [7, 8], "query_url": [2, 3], "quickstart": 2, "rather": 0, "raw": [7, 11], "raw_data_download": [2, 7], "rbac": 3, "read": [3, 5, 11], "readm": 2, "reason": 10, "record": [1, 3, 5, 7, 8, 11, 12], "refresh": [0, 10], "refresh_access_token": [0, 2], "refresh_fil": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "refresh_token": 0, "regist": 8, "regular": 7, "relat": 9, "remov": [1, 6, 11, 13], "replac": 11, "replace_url": 11, "repo": 2, "repres": [3, 5, 10], "represent": [1, 3], "request": [0, 1, 3, 5, 8, 11, 12], "requir": 10, "resolv": 10, "resolve_object": [2, 9, 10], "respect": 7, "respons": [0, 1, 3, 4, 5], "result": [1, 8, 10, 11], "retri": 8, "retriev": [1, 8, 10, 12], "return": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11], "return_full_metadata": 5, "rev": 3, "revers": 8, "revis": 3, "right": 1, "rm": [2, 13], "rm_path": [2, 13], "root": [11, 12], "row": [7, 8, 11, 12], "row_offset": 8, "rtype": 3, "run": [8, 11], "s3": [1, 10, 11], "safe": 11, "same": [5, 11, 13], "sampl": [8, 10], "sandbox": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "save": 10, "save_directori": 10, "schema": 8, "scope": [0, 1], "screen": 8, "script": 2, "search": [0, 2, 3], "second": [1, 4], "secret": 0, "see": [7, 10, 11], "self": 10, "semaphon": 12, "semaphor": 12, "separ": [0, 11], "server": 10, "servic": [1, 3, 4, 5, 6, 8, 11, 12, 13], "service_loc": [3, 4, 5], "session": 11, "set": [0, 1, 5, 10], "setup": 2, "sheepdog": 8, "should": [0, 8, 11], "show": 10, "show_progress": 10, "shown": 11, "sign": 1, "signpost": 3, "similar": 10, "simpl": 3, "simpli": 11, "sinc": 3, "singl": [1, 5, 8], "size": [2, 3, 9, 10, 11], "skip": 8, "sleep": 4, "so": 11, "some": [0, 2], "someth": 11, "sort": 7, "sort_field": 7, "sort_object": 7, "sourc": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "space": [0, 11], "specif": [5, 8, 11, 12], "specifi": [0, 1, 3, 11, 13], "spreadsheet": 8, "src_path": 13, "src_urlstr": 13, "src_w": 13, "src_wskei": 13, "ssl": [3, 4, 5], "start": [3, 4, 7, 8, 10], "start_tim": [2, 9, 10], "static": 10, "statu": [2, 4, 9, 10], "storag": [1, 2, 6], "store": [1, 3, 10], "str": [0, 1, 3, 4, 5, 7, 8, 10, 11, 12], "string": [0, 3, 5, 11, 13], "strip": 11, "sub": 8, "subject": [7, 8], "submiss": 2, "submit": [8, 11], "submit_additional_metadata_column": 11, "submit_fil": [2, 8], "submit_record": [2, 8], "submitter_id": 7, "success": 10, "successfulli": 10, "suffici": 3, "suppli": 3, "support": [0, 1, 5, 8, 11], "sure": 1, "synchron": 11, "syntax": 7, "system": [6, 7, 8, 9], "t": [1, 5, 11], "tab": 11, "task": 9, "temporari": 11, "test": 11, "test1": 11, "test2": 11, "test3": 11, "test4": 11, "test5": 11, "text": [1, 7, 8], "than": [0, 5], "thei": [0, 10], "them": [10, 11], "thi": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "those": 11, "thread": 11, "thread_num": 11, "threadcontrol": [2, 9, 11], "through": [8, 11], "tier": 7, "time": [1, 3, 8, 10, 11], "timestamp": 10, "tmp_folder": [2, 9, 11], "token": [0, 10], "tool": 2, "total": 11, "treat": [1, 5], "tree": 10, "true": [3, 4, 5, 6, 7, 8, 10, 11, 12], "try": 0, "tsv": [8, 11, 12], "tupl": [0, 3, 11, 12], "type": [1, 3, 4, 5, 7, 8, 10, 11, 12], "typic": 10, "uc": 7, "unaccess": 7, "under": [0, 8, 13], "uniqu": [1, 5], "unknown": 10, "unpack": 10, "unpack_packag": 10, "until": [4, 10], "up": [5, 9], "updat": [2, 3, 5, 10, 11], "update_alias": [2, 5], "update_blank": [2, 3], "update_record": [2, 3], "updated_tim": [2, 9, 10], "upload": [1, 2, 3, 8, 13], "upload_fil": [1, 2], "upload_file_to_guid": [1, 2], "upload_url": [2, 13], "url": [1, 2, 3, 9, 10, 11, 12, 13], "urls_metadata": 3, "us": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "usag": 11, "use_agg_md": 5, "user": [0, 10, 12], "user_access": [2, 9, 10], "usual": 12, "utcnow": 1, "util": 9, "uuid": [1, 3, 8], "uuid1": 8, "uuid2": 8, "valid": [3, 7], "valu": [0, 1, 3, 5, 7, 10, 11], "value_from_indexd": 11, "value_from_manifest": 11, "variabl": [0, 7, 8], "variou": 2, "verbos": [7, 8], "verif": 11, "verifi": [2, 9], "verify_manifest": 11, "verify_object_manifest": 11, "version": [3, 4, 5], "vital_statu": 7, "w": 13, "wa": 0, "wai": 10, "wait": 4, "want": [0, 3, 8], "warn": 11, "we": [3, 11], "web": 0, "what": 5, "when": [0, 3, 7, 10, 12], "where": [0, 3, 5, 11, 12], "whether": [3, 4, 5, 8, 11, 12], "which": [8, 10], "while": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "whose": 5, "within": [0, 2, 9], "without": [3, 5], "won": 5, "work": [0, 10], "workaround": 11, "worksheet": 8, "workspac": [0, 2], "wrapper": 10, "write": 11, "ws_urlstr": 13, "wskei": 13, "wss": 13, "wt": [0, 10], "x": 11, "xlsx": 8, "you": [0, 3, 8, 11], "your": 0}, "titles": ["Gen3 Auth Helper", "Gen3 File Class", "Welcome to Gen3 SDK\u2019s documentation!", "Gen3 Index Class", "Gen3 Jobs Class", "Gen3 Metadata Class", "Gen3 Object Class", "Gen3 Query Class", "Gen3 Submission Class", "Gen3 Tools", "DRS Download Tools", "Indexing Tools", "Metadata Tools", "Gen3 Workspace Storage"], "titleterms": {"": 2, "auth": 0, "class": [1, 3, 4, 5, 6, 7, 8], "document": 2, "download": [10, 11], "dr": 10, "file": 1, "gen3": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 13], "helper": 0, "index": [3, 11], "indic": 2, "ingest": 12, "job": 4, "metadata": [5, 12], "object": 6, "queri": 7, "sdk": 2, "storag": 13, "submiss": 8, "tabl": 2, "tool": [9, 10, 11, 12], "verifi": 11, "welcom": 2, "workspac": 13}}) \ No newline at end of file diff --git a/docs/_build/html/tools/indexing.html b/docs/_build/html/tools/indexing.html index f747995ad..dabdf42b8 100644 --- a/docs/_build/html/tools/indexing.html +++ b/docs/_build/html/tools/indexing.html @@ -381,7 +381,7 @@

Indexing Tools
-async gen3.tools.indexing.verify_manifest.async_verify_object_manifest(commons_url, manifest_file, max_concurrent_requests=24, manifest_row_parsers={'acl': <function _get_acl_from_row>, 'authz': <function _get_authz_from_row>, 'file_name': <function _get_file_name_from_row>, 'file_size': <function _get_file_size_from_row>, 'guid': <function _get_guid_from_row>, 'md5': <function _get_md5_from_row>, 'urls': <function _get_urls_from_row>}, manifest_file_delimiter=None, output_filename='verify-manifest-errors-1717170449.568308.log')[source]
+async gen3.tools.indexing.verify_manifest.async_verify_object_manifest(commons_url, manifest_file, max_concurrent_requests=24, manifest_row_parsers={'acl': <function _get_acl_from_row>, 'authz': <function _get_authz_from_row>, 'file_name': <function _get_file_name_from_row>, 'file_size': <function _get_file_size_from_row>, 'guid': <function _get_guid_from_row>, 'md5': <function _get_md5_from_row>, 'urls': <function _get_urls_from_row>}, manifest_file_delimiter=None, output_filename='verify-manifest-errors-1717171842.7841465.log')[source]

Verify all file object records into a manifest csv

Parameters:
diff --git a/docs/_build/html/tools/metadata.html b/docs/_build/html/tools/metadata.html index 6eb183041..7b9f1edbd 100644 --- a/docs/_build/html/tools/metadata.html +++ b/docs/_build/html/tools/metadata.html @@ -102,7 +102,7 @@

Metadata Tools
-async gen3.tools.metadata.ingest_manifest.async_ingest_metadata_manifest(commons_url, manifest_file, metadata_source, auth=None, max_concurrent_requests=24, manifest_row_parsers={'guid_for_row': <function _get_guid_for_row>, 'indexed_file_object_guid': <function _query_for_associated_indexd_record_guid>}, manifest_file_delimiter=None, output_filename='ingest-metadata-manifest-errors-1717170449.8630717.log', get_guid_from_file=True, metadata_type=None)[source]
+async gen3.tools.metadata.ingest_manifest.async_ingest_metadata_manifest(commons_url, manifest_file, metadata_source, auth=None, max_concurrent_requests=24, manifest_row_parsers={'guid_for_row': <function _get_guid_for_row>, 'indexed_file_object_guid': <function _query_for_associated_indexd_record_guid>}, manifest_file_delimiter=None, output_filename='ingest-metadata-manifest-errors-1717171843.058966.log', get_guid_from_file=True, metadata_type=None)[source]

Ingest all metadata records into a manifest csv

Parameters:
From 99d8e55196a12e8a7e6c1855a28204d6f7a75565 Mon Sep 17 00:00:00 2001 From: Alex Date: Fri, 31 May 2024 11:18:09 -0500 Subject: [PATCH 45/62] chore(build): don't fail fast --- .github/workflows/build.yaml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index b6d6387eb..120f1a57c 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -9,6 +9,8 @@ jobs: runs-on: ${{ matrix.os }} strategy: + # fully attempt building in every OS + fail-fast: false matrix: os: [ubuntu-latest, windows-latest, macos-latest] From a744e3d643e05d3502b95969a3824ba2b531c4a2 Mon Sep 17 00:00:00 2001 From: Avantol13 Date: Fri, 31 May 2024 16:19:24 +0000 Subject: [PATCH 46/62] Apply automatic documentation changes --- docs/_build/doctrees/environment.pickle | Bin 1579888 -> 1579893 bytes docs/_build/doctrees/tools/indexing.doctree | Bin 100291 -> 100291 bytes docs/_build/doctrees/tools/metadata.doctree | Bin 35929 -> 35934 bytes docs/_build/html/searchindex.js | 2 +- docs/_build/html/tools/indexing.html | 2 +- docs/_build/html/tools/metadata.html | 2 +- 6 files changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/_build/doctrees/environment.pickle b/docs/_build/doctrees/environment.pickle index c5f8d14c882f8711c84fffa9049121641eb15848..574468e1f1083ede0131ac12385ef1163f2d3376 100644 GIT binary patch delta 9020 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 delta 9233 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 diff --git a/docs/_build/doctrees/tools/indexing.doctree b/docs/_build/doctrees/tools/indexing.doctree index 530261e8c22e1e9895ae136c42fa87266509aae1..b960b26afdf1138b1483e12aaf59cbb52657c533 100644 GIT binary patch delta 99 zcmX@y&vv+c`rr*ZF=rQ@NxjBj!Jqt;Qs1%YxW_mgK>FQH5*kh+;i1lD-+I-WZ GAs7JA7AqS7 delta 145 zcmcaNgX!iBCYA=)seT(-mT0idVPs&KT&pX$`ILqOBbT9tiLsu6sfDH4Indexing Tools
-async gen3.tools.indexing.verify_manifest.async_verify_object_manifest(commons_url, manifest_file, max_concurrent_requests=24, manifest_row_parsers={'acl': <function _get_acl_from_row>, 'authz': <function _get_authz_from_row>, 'file_name': <function _get_file_name_from_row>, 'file_size': <function _get_file_size_from_row>, 'guid': <function _get_guid_from_row>, 'md5': <function _get_md5_from_row>, 'urls': <function _get_urls_from_row>}, manifest_file_delimiter=None, output_filename='verify-manifest-errors-1717171842.7841465.log')[source]
+async gen3.tools.indexing.verify_manifest.async_verify_object_manifest(commons_url, manifest_file, max_concurrent_requests=24, manifest_row_parsers={'acl': <function _get_acl_from_row>, 'authz': <function _get_authz_from_row>, 'file_name': <function _get_file_name_from_row>, 'file_size': <function _get_file_size_from_row>, 'guid': <function _get_guid_from_row>, 'md5': <function _get_md5_from_row>, 'urls': <function _get_urls_from_row>}, manifest_file_delimiter=None, output_filename='verify-manifest-errors-1717172360.0185335.log')[source]

Verify all file object records into a manifest csv

Parameters:
diff --git a/docs/_build/html/tools/metadata.html b/docs/_build/html/tools/metadata.html index 7b9f1edbd..8182aea42 100644 --- a/docs/_build/html/tools/metadata.html +++ b/docs/_build/html/tools/metadata.html @@ -102,7 +102,7 @@

Metadata Tools
-async gen3.tools.metadata.ingest_manifest.async_ingest_metadata_manifest(commons_url, manifest_file, metadata_source, auth=None, max_concurrent_requests=24, manifest_row_parsers={'guid_for_row': <function _get_guid_for_row>, 'indexed_file_object_guid': <function _query_for_associated_indexd_record_guid>}, manifest_file_delimiter=None, output_filename='ingest-metadata-manifest-errors-1717171843.058966.log', get_guid_from_file=True, metadata_type=None)[source]
+async gen3.tools.metadata.ingest_manifest.async_ingest_metadata_manifest(commons_url, manifest_file, metadata_source, auth=None, max_concurrent_requests=24, manifest_row_parsers={'guid_for_row': <function _get_guid_for_row>, 'indexed_file_object_guid': <function _query_for_associated_indexd_record_guid>}, manifest_file_delimiter=None, output_filename='ingest-metadata-manifest-errors-1717172360.3041446.log', get_guid_from_file=True, metadata_type=None)[source]

Ingest all metadata records into a manifest csv

Parameters:
From c5de7ff2e13b7c09f23410806ce91e16523db6f9 Mon Sep 17 00:00:00 2001 From: Alex Date: Fri, 31 May 2024 11:21:44 -0500 Subject: [PATCH 47/62] fix(postgres): install packages normally --- .github/workflows/build.yaml | 59 ++++++++---------------------------- 1 file changed, 13 insertions(+), 46 deletions(-) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index 120f1a57c..1066c13b3 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -14,55 +14,22 @@ jobs: matrix: os: [ubuntu-latest, windows-latest, macos-latest] - # Defining a Postgres DB service, mainly to get the required OS packages - # so we can build and deal with `psycopg` from source (which pyinstaller - # needs to do when building the binary) - services: - postgres: - # Docker Hub image - image: postgres:13 - env: - # trust connections from other jobs in this workflow to access this service - # this simplifies the networking to this service - POSTGRES_HOST_AUTH_METHOD: trust - # Set health checks to wait until postgres has started - options: >- - --health-cmd pg_isready - --health-interval 10s - --health-timeout 5s - --health-retries 5 - ports: - # Maps tcp port 5432 on service container to the host - - 5432:5432 - steps: - - name: Additional Postgres service configuration - # PostgreSQL 15 will revoke the CREATE permission from all users - # except a database owner from the public (or default) schema. - # This is required by some services for db setup for testing, so grant - # that permission to the postgres user now to hopefully avoid headache - # when we eventually upgrade to 15 (even though it's not technically required - # in postgres 13). + - name: Install PostgreSQL and dependencies on Ubuntu + if: matrix.os == 'ubuntu-latest' run: | - echo "Versions" - psql --version - psql -U postgres -h localhost -d postgres -c 'SELECT version();' + sudo apt-get update + sudo apt-get install -y postgresql postgresql-contrib libpq-dev - echo "Grant admin privileges to postgres user" - psql -U postgres -h localhost -d postgres -c 'GRANT CREATE ON SCHEMA public TO postgres;' - env: - # The hostname used to communicate with the PostgreSQL service container - POSTGRES_HOST: localhost - POSTGRES_PORT: 5432 - - - name: Check out code - uses: actions/checkout@v3 - with: - persist-credentials: false + - name: Install PostgreSQL and dependencies on macOS + if: matrix.os == 'macos-latest' + run: | + brew update + brew install postgresql - - name: Set up python - uses: actions/setup-python@v4 - with: - python-version: '3.9' + - name: Install PostgreSQL and dependencies on Windows + if: matrix.os == 'windows-latest' + run: | + choco install postgresql # https://pyinstaller.org/en/stable/when-things-go-wrong.html#helping-pyinstaller-find-modules - name: Install poetry From bc1b78b3febedf13d2722a8ac6202c49621335db Mon Sep 17 00:00:00 2001 From: Avantol13 Date: Fri, 31 May 2024 16:23:01 +0000 Subject: [PATCH 48/62] Apply automatic documentation changes --- docs/_build/doctrees/environment.pickle | Bin 1579893 -> 1579888 bytes docs/_build/doctrees/tools/indexing.doctree | Bin 100291 -> 100291 bytes docs/_build/doctrees/tools/metadata.doctree | Bin 35934 -> 35929 bytes docs/_build/html/searchindex.js | 2 +- docs/_build/html/tools/indexing.html | 2 +- docs/_build/html/tools/metadata.html | 2 +- 6 files changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/_build/doctrees/environment.pickle b/docs/_build/doctrees/environment.pickle index 574468e1f1083ede0131ac12385ef1163f2d3376..d5254aba31ef1978699834ffb9634d9b6933e600 100644 GIT binary patch delta 10761 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 oF1yAyUapPmtfRwSbmSGUqtXU6u&XAUaL IZ&4o%0PLeIWdHyG delta 149 zcmcaPgX!K3CYA=)slgjrmT0idWn^HOJTY8u^C=BSMs8y>13hB{6GIadv&rfDHk$*r zjx#gXZuHVYR=rQ@NxdndO7*&>QgeIndexing Tools
-async gen3.tools.indexing.verify_manifest.async_verify_object_manifest(commons_url, manifest_file, max_concurrent_requests=24, manifest_row_parsers={'acl': <function _get_acl_from_row>, 'authz': <function _get_authz_from_row>, 'file_name': <function _get_file_name_from_row>, 'file_size': <function _get_file_size_from_row>, 'guid': <function _get_guid_from_row>, 'md5': <function _get_md5_from_row>, 'urls': <function _get_urls_from_row>}, manifest_file_delimiter=None, output_filename='verify-manifest-errors-1717172360.0185335.log')[source]
+async gen3.tools.indexing.verify_manifest.async_verify_object_manifest(commons_url, manifest_file, max_concurrent_requests=24, manifest_row_parsers={'acl': <function _get_acl_from_row>, 'authz': <function _get_authz_from_row>, 'file_name': <function _get_file_name_from_row>, 'file_size': <function _get_file_size_from_row>, 'guid': <function _get_guid_from_row>, 'md5': <function _get_md5_from_row>, 'urls': <function _get_urls_from_row>}, manifest_file_delimiter=None, output_filename='verify-manifest-errors-1717172577.1069167.log')[source]

Verify all file object records into a manifest csv

Parameters:
diff --git a/docs/_build/html/tools/metadata.html b/docs/_build/html/tools/metadata.html index 8182aea42..d27262bb1 100644 --- a/docs/_build/html/tools/metadata.html +++ b/docs/_build/html/tools/metadata.html @@ -102,7 +102,7 @@

Metadata Tools
-async gen3.tools.metadata.ingest_manifest.async_ingest_metadata_manifest(commons_url, manifest_file, metadata_source, auth=None, max_concurrent_requests=24, manifest_row_parsers={'guid_for_row': <function _get_guid_for_row>, 'indexed_file_object_guid': <function _query_for_associated_indexd_record_guid>}, manifest_file_delimiter=None, output_filename='ingest-metadata-manifest-errors-1717172360.3041446.log', get_guid_from_file=True, metadata_type=None)[source]
+async gen3.tools.metadata.ingest_manifest.async_ingest_metadata_manifest(commons_url, manifest_file, metadata_source, auth=None, max_concurrent_requests=24, manifest_row_parsers={'guid_for_row': <function _get_guid_for_row>, 'indexed_file_object_guid': <function _query_for_associated_indexd_record_guid>}, manifest_file_delimiter=None, output_filename='ingest-metadata-manifest-errors-1717172577.573305.log', get_guid_from_file=True, metadata_type=None)[source]

Ingest all metadata records into a manifest csv

Parameters:
From dbafd07b2280e718b642d1fd896d1945aa027e4f Mon Sep 17 00:00:00 2001 From: Alex Date: Fri, 31 May 2024 11:25:04 -0500 Subject: [PATCH 49/62] chore(deps): remove comment --- .github/workflows/build.yaml | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index 1066c13b3..f5124467f 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -9,7 +9,6 @@ jobs: runs-on: ${{ matrix.os }} strategy: - # fully attempt building in every OS fail-fast: false matrix: os: [ubuntu-latest, windows-latest, macos-latest] From bc30c13b3a7f7204d1813ab9483f31f5402c6ca6 Mon Sep 17 00:00:00 2001 From: Avantol13 Date: Fri, 31 May 2024 16:26:17 +0000 Subject: [PATCH 50/62] Apply automatic documentation changes --- docs/_build/doctrees/environment.pickle | Bin 1579888 -> 1579888 bytes docs/_build/doctrees/tools/indexing.doctree | Bin 100291 -> 100286 bytes docs/_build/doctrees/tools/metadata.doctree | Bin 35929 -> 35934 bytes docs/_build/html/searchindex.js | 2 +- docs/_build/html/tools/indexing.html | 2 +- docs/_build/html/tools/metadata.html | 2 +- 6 files changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/_build/doctrees/environment.pickle b/docs/_build/doctrees/environment.pickle index d5254aba31ef1978699834ffb9634d9b6933e600..5f0cf4eeb16a6d2e3312001ccbfcb7cdd0f9210e 100644 GIT binary patch delta 10899 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 E0h@UexBvhE delta 10976 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 delta 166 zcmdnj&vv+YZ7^Vl>G0IHt+AX_X)}C=OBe$u!xt^hcnWdqb z`SwC<#%^ZDi`)O&F&;*hIpx5(m7CFi`a}mteE}pbdO7*&>eC(F8HJ&elIW6CGT39M RWQg@Z^rBc7uHVYR=rQ@NxdndO7*&>Qge(oF delta 149 zcmcaNgX!iBCYA=)seT(-mT0idVPs&KT&pX$`ILquBbTYUxt^)Hv9W>aL IZ&4o%0PLeIWdHyG diff --git a/docs/_build/html/searchindex.js b/docs/_build/html/searchindex.js index e2b1d574d..6505b1ee4 100644 --- a/docs/_build/html/searchindex.js +++ b/docs/_build/html/searchindex.js @@ -1 +1 @@ -Search.setIndex({"alltitles": {"DRS Download Tools": [[10, "module-gen3.tools.download.drs_download"]], "Download": [[11, "module-gen3.tools.indexing.download_manifest"]], "Gen3 Auth Helper": [[0, "gen3-auth-helper"]], "Gen3 File Class": [[1, "gen3-file-class"]], "Gen3 Index Class": [[3, "gen3-index-class"]], "Gen3 Jobs Class": [[4, "gen3-jobs-class"]], "Gen3 Metadata Class": [[5, "gen3-metadata-class"]], "Gen3 Object Class": [[6, "gen3-object-class"]], "Gen3 Query Class": [[7, "gen3-query-class"]], "Gen3 Submission Class": [[8, "gen3-submission-class"]], "Gen3 Tools": [[9, "gen3-tools"]], "Gen3 Workspace Storage": [[13, "gen3-workspace-storage"]], "Index": [[11, "module-gen3.tools.indexing.index_manifest"]], "Indexing Tools": [[11, "indexing-tools"]], "Indices and tables": [[2, "indices-and-tables"]], "Ingest": [[12, "module-gen3.tools.metadata.ingest_manifest"]], "Metadata Tools": [[12, "metadata-tools"]], "Verify": [[11, "module-gen3.tools.indexing.verify_manifest"]], "Welcome to Gen3 SDK\u2019s documentation!": [[2, "welcome-to-gen3-sdk-s-documentation"]]}, "docnames": ["auth", "file", "index", "indexing", "jobs", "metadata", "object", "query", "submission", "tools", "tools/drs_pull", "tools/indexing", "tools/metadata", "wss"], "envversion": {"sphinx": 61, "sphinx.domains.c": 3, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 9, "sphinx.domains.index": 1, "sphinx.domains.javascript": 3, "sphinx.domains.math": 2, "sphinx.domains.python": 4, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx.ext.viewcode": 1}, "filenames": ["auth.rst", "file.rst", "index.rst", "indexing.rst", "jobs.rst", "metadata.rst", "object.rst", "query.rst", "submission.rst", "tools.rst", "tools/drs_pull.rst", "tools/indexing.rst", "tools/metadata.rst", "wss.rst"], "indexentries": {"_manager (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable._manager", false]], "access_methods (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.access_methods", false]], "acls (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.ACLS", false]], "async_create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_create", false]], "async_create_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_create_aliases", false]], "async_create_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_create_record", false]], "async_delete_alias() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_delete_alias", false]], "async_delete_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_delete_aliases", false]], "async_download_object_manifest() (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.async_download_object_manifest", false]], "async_get() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_get", false]], "async_get_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_get_aliases", false]], "async_get_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_record", false]], "async_get_records_from_checksum() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_records_from_checksum", false]], "async_get_records_on_page() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_records_on_page", false]], "async_get_with_params() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_with_params", false]], "async_ingest_metadata_manifest() (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.async_ingest_metadata_manifest", false]], "async_query_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_query_urls", false]], "async_query_urls_from_indexd() (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.async_query_urls_from_indexd", false]], "async_run_job_and_wait() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.async_run_job_and_wait", false]], "async_update() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_update", false]], "async_update_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_update_aliases", false]], "async_update_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_update_record", false]], "async_verify_object_manifest() (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.async_verify_object_manifest", false]], "auth_provider (gen3.metadata.gen3metadata attribute)": [[5, "gen3.metadata.Gen3Metadata.auth_provider", false]], "authz (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.AUTHZ", false]], "batch_create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.batch_create", false]], "cache_hosts_wts_tokens() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.cache_hosts_wts_tokens", false]], "children (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.children", false]], "column_to_use_as_guid (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.COLUMN_TO_USE_AS_GUID", false]], "commons_url (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.commons_url", false]], "copy() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.copy", false]], "create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create", false]], "create_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create_aliases", false]], "create_blank() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_blank", false]], "create_index_key_path() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create_index_key_path", false]], "create_job() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.create_job", false]], "create_new_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_new_version", false]], "create_object_list() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.create_object_list", false]], "create_program() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.create_program", false]], "create_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.create_project", false]], "create_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_record", false]], "created_time (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.created_time", false]], "curl() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.curl", false]], "current_dir (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.CURRENT_DIR", false]], "current_dir (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.CURRENT_DIR", false]], "current_dir (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.CURRENT_DIR", false]], "delete() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete", false]], "delete_alias() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_alias", false]], "delete_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_aliases", false]], "delete_all_guids() (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.delete_all_guids", false]], "delete_file() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.delete_file", false]], "delete_file_locations() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.delete_file_locations", false]], "delete_index_key_path() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_index_key_path", false]], "delete_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_node", false]], "delete_nodes() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_nodes", false]], "delete_object() (gen3.object.gen3object method)": [[6, "gen3.object.Gen3Object.delete_object", false]], "delete_program() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_program", false]], "delete_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_project", false]], "delete_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.delete_record", false]], "delete_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_record", false]], "delete_records() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_records", false]], "download() (gen3.tools.download.drs_download.downloadable method)": [[10, "gen3.tools.download.drs_download.Downloadable.download", false]], "download() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.download", false]], "download() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.download", false]], "download_files_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.download_files_in_drs_manifest", false]], "download_single() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.download_single", false]], "download_url() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.download_url", false]], "downloadable (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.Downloadable", false]], "downloadmanager (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.DownloadManager", false]], "downloadstatus (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.DownloadStatus", false]], "end_time (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.end_time", false]], "endpoint (gen3.metadata.gen3metadata attribute)": [[5, "gen3.metadata.Gen3Metadata.endpoint", false]], "export_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.export_node", false]], "export_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.export_record", false]], "file_name (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.file_name", false]], "file_name (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.file_name", false]], "file_size (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.file_size", false]], "file_size (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.file_size", false]], "gen3.tools": [[9, "module-gen3.tools", false]], "gen3.tools.download.drs_download": [[10, "module-gen3.tools.download.drs_download", false]], "gen3.tools.indexing.download_manifest": [[11, "module-gen3.tools.indexing.download_manifest", false]], "gen3.tools.indexing.index_manifest": [[11, "module-gen3.tools.indexing.index_manifest", false]], "gen3.tools.indexing.verify_manifest": [[11, "module-gen3.tools.indexing.verify_manifest", false]], "gen3.tools.metadata.ingest_manifest": [[12, "module-gen3.tools.metadata.ingest_manifest", false]], "gen3auth (class in gen3.auth)": [[0, "gen3.auth.Gen3Auth", false]], "gen3file (class in gen3.file)": [[1, "gen3.file.Gen3File", false]], "gen3index (class in gen3.index)": [[3, "gen3.index.Gen3Index", false]], "gen3jobs (class in gen3.jobs)": [[4, "gen3.jobs.Gen3Jobs", false]], "gen3metadata (class in gen3.metadata)": [[5, "gen3.metadata.Gen3Metadata", false]], "gen3object (class in gen3.object)": [[6, "gen3.object.Gen3Object", false]], "gen3query (class in gen3.query)": [[7, "gen3.query.Gen3Query", false]], "gen3submission (class in gen3.submission)": [[8, "gen3.submission.Gen3Submission", false]], "gen3wsstorage (class in gen3.wss)": [[13, "gen3.wss.Gen3WsStorage", false]], "get() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get", false]], "get() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get", false]], "get_access_token() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.get_access_token", false]], "get_access_token_from_wts() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.get_access_token_from_wts", false]], "get_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_aliases", false]], "get_all_records() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_all_records", false]], "get_dictionary_all() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_dictionary_all", false]], "get_dictionary_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_dictionary_node", false]], "get_fresh_token() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.get_fresh_token", false]], "get_graphql_schema() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_graphql_schema", false]], "get_guids_prefix() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_guids_prefix", false]], "get_index_key_paths() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_index_key_paths", false]], "get_latest_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_latest_version", false]], "get_output() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_output", false]], "get_presigned_url() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.get_presigned_url", false]], "get_programs() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_programs", false]], "get_project_dictionary() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_project_dictionary", false]], "get_project_manifest() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_project_manifest", false]], "get_projects() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_projects", false]], "get_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_record", false]], "get_record_doc() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_record_doc", false]], "get_records() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_records", false]], "get_records_on_page() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_records_on_page", false]], "get_stats() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_stats", false]], "get_status() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_status", false]], "get_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_urls", false]], "get_valid_guids() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_valid_guids", false]], "get_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_version", false]], "get_version() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_version", false]], "get_version() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_version", false]], "get_versions() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_versions", false]], "get_with_params() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_with_params", false]], "graphql_query() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.graphql_query", false]], "guid (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.GUID", false]], "guid_type_for_indexed_file_object (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.GUID_TYPE_FOR_INDEXED_FILE_OBJECT", false]], "guid_type_for_non_indexed_file_object (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.GUID_TYPE_FOR_NON_INDEXED_FILE_OBJECT", false]], "hostname (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.hostname", false]], "index_object_manifest() (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.index_object_manifest", false]], "indexd_record_page_size (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.INDEXD_RECORD_PAGE_SIZE", false]], "is_healthy() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.is_healthy", false]], "is_healthy() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.is_healthy", false]], "is_healthy() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.is_healthy", false]], "list_access_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_access_in_drs_manifest", false]], "list_drs_object() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_drs_object", false]], "list_files_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_files_in_drs_manifest", false]], "list_jobs() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.list_jobs", false]], "load() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.load", false]], "load_manifest() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.load_manifest", false]], "ls() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.ls", false]], "ls_path() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.ls_path", false]], "manifest (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.Manifest", false]], "max_concurrent_requests (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.MAX_CONCURRENT_REQUESTS", false]], "max_concurrent_requests (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.MAX_CONCURRENT_REQUESTS", false]], "max_concurrent_requests (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.MAX_CONCURRENT_REQUESTS", false]], "md5 (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.MD5", false]], "md5sum (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.md5sum", false]], "module": [[9, "module-gen3.tools", false], [10, "module-gen3.tools.download.drs_download", false], [11, "module-gen3.tools.indexing.download_manifest", false], [11, "module-gen3.tools.indexing.index_manifest", false], [11, "module-gen3.tools.indexing.verify_manifest", false], [12, "module-gen3.tools.metadata.ingest_manifest", false]], "object_id (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.object_id", false]], "object_id (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.object_id", false]], "object_type (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.object_type", false]], "open_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.open_project", false]], "pprint() (gen3.tools.download.drs_download.downloadable method)": [[10, "gen3.tools.download.drs_download.Downloadable.pprint", false]], "prev_guid (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.PREV_GUID", false]], "query() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.query", false]], "query() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.query", false]], "query() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.query", false]], "query_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.query_urls", false]], "raw_data_download() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.raw_data_download", false]], "refresh_access_token() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.refresh_access_token", false]], "resolve_objects() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.resolve_objects", false]], "rm() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.rm", false]], "rm_path() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.rm_path", false]], "size (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.SIZE", false]], "start_time (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.start_time", false]], "status (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.status", false]], "submit_file() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.submit_file", false]], "submit_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.submit_record", false]], "threadcontrol (class in gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.ThreadControl", false]], "tmp_folder (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.TMP_FOLDER", false]], "update() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.update", false]], "update_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.update_aliases", false]], "update_blank() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.update_blank", false]], "update_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.update_record", false]], "updated_time (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.updated_time", false]], "upload() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.upload", false]], "upload_file() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.upload_file", false]], "upload_file_to_guid() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.upload_file_to_guid", false]], "upload_url() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.upload_url", false]], "urls (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.URLS", false]], "user_access() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.user_access", false]]}, "objects": {"gen3": [[9, 3, 0, "-", "tools"]], "gen3.auth": [[0, 0, 1, "", "Gen3Auth"]], "gen3.auth.Gen3Auth": [[0, 1, 1, "", "curl"], [0, 1, 1, "", "get_access_token"], [0, 1, 1, "", "get_access_token_from_wts"], [0, 1, 1, "", "refresh_access_token"]], "gen3.file": [[1, 0, 1, "", "Gen3File"]], "gen3.file.Gen3File": [[1, 1, 1, "", "delete_file"], [1, 1, 1, "", "delete_file_locations"], [1, 1, 1, "", "download_single"], [1, 1, 1, "", "get_presigned_url"], [1, 1, 1, "", "upload_file"], [1, 1, 1, "", "upload_file_to_guid"]], "gen3.index": [[3, 0, 1, "", "Gen3Index"]], "gen3.index.Gen3Index": [[3, 1, 1, "", "async_create_record"], [3, 1, 1, "", "async_get_record"], [3, 1, 1, "", "async_get_records_from_checksum"], [3, 1, 1, "", "async_get_records_on_page"], [3, 1, 1, "", "async_get_with_params"], [3, 1, 1, "", "async_query_urls"], [3, 1, 1, "", "async_update_record"], [3, 1, 1, "", "create_blank"], [3, 1, 1, "", "create_new_version"], [3, 1, 1, "", "create_record"], [3, 1, 1, "", "delete_record"], [3, 1, 1, "", "get"], [3, 1, 1, "", "get_all_records"], [3, 1, 1, "", "get_guids_prefix"], [3, 1, 1, "", "get_latest_version"], [3, 1, 1, "", "get_record"], [3, 1, 1, "", "get_record_doc"], [3, 1, 1, "", "get_records"], [3, 1, 1, "", "get_records_on_page"], [3, 1, 1, "", "get_stats"], [3, 1, 1, "", "get_urls"], [3, 1, 1, "", "get_valid_guids"], [3, 1, 1, "", "get_version"], [3, 1, 1, "", "get_versions"], [3, 1, 1, "", "get_with_params"], [3, 1, 1, "", "is_healthy"], [3, 1, 1, "", "query_urls"], [3, 1, 1, "", "update_blank"], [3, 1, 1, "", "update_record"]], "gen3.jobs": [[4, 0, 1, "", "Gen3Jobs"]], "gen3.jobs.Gen3Jobs": [[4, 1, 1, "", "async_run_job_and_wait"], [4, 1, 1, "", "create_job"], [4, 1, 1, "", "get_output"], [4, 1, 1, "", "get_status"], [4, 1, 1, "", "get_version"], [4, 1, 1, "", "is_healthy"], [4, 1, 1, "", "list_jobs"]], "gen3.metadata": [[5, 0, 1, "", "Gen3Metadata"]], "gen3.metadata.Gen3Metadata": [[5, 1, 1, "", "async_create"], [5, 1, 1, "", "async_create_aliases"], [5, 1, 1, "", "async_delete_alias"], [5, 1, 1, "", "async_delete_aliases"], [5, 1, 1, "", "async_get"], [5, 1, 1, "", "async_get_aliases"], [5, 1, 1, "", "async_update"], [5, 1, 1, "", "async_update_aliases"], [5, 2, 1, "", "auth_provider"], [5, 1, 1, "", "batch_create"], [5, 1, 1, "", "create"], [5, 1, 1, "", "create_aliases"], [5, 1, 1, "", "create_index_key_path"], [5, 1, 1, "", "delete"], [5, 1, 1, "", "delete_alias"], [5, 1, 1, "", "delete_aliases"], [5, 1, 1, "", "delete_index_key_path"], [5, 2, 1, "", "endpoint"], [5, 1, 1, "", "get"], [5, 1, 1, "", "get_aliases"], [5, 1, 1, "", "get_index_key_paths"], [5, 1, 1, "", "get_version"], [5, 1, 1, "", "is_healthy"], [5, 1, 1, "", "query"], [5, 1, 1, "", "update"], [5, 1, 1, "", "update_aliases"]], "gen3.object": [[6, 0, 1, "", "Gen3Object"]], "gen3.object.Gen3Object": [[6, 1, 1, "", "delete_object"]], "gen3.query": [[7, 0, 1, "", "Gen3Query"]], "gen3.query.Gen3Query": [[7, 1, 1, "", "graphql_query"], [7, 1, 1, "", "query"], [7, 1, 1, "", "raw_data_download"]], "gen3.submission": [[8, 0, 1, "", "Gen3Submission"]], "gen3.submission.Gen3Submission": [[8, 1, 1, "", "create_program"], [8, 1, 1, "", "create_project"], [8, 1, 1, "", "delete_node"], [8, 1, 1, "", "delete_nodes"], [8, 1, 1, "", "delete_program"], [8, 1, 1, "", "delete_project"], [8, 1, 1, "", "delete_record"], [8, 1, 1, "", "delete_records"], [8, 1, 1, "", "export_node"], [8, 1, 1, "", "export_record"], [8, 1, 1, "", "get_dictionary_all"], [8, 1, 1, "", "get_dictionary_node"], [8, 1, 1, "", "get_graphql_schema"], [8, 1, 1, "", "get_programs"], [8, 1, 1, "", "get_project_dictionary"], [8, 1, 1, "", "get_project_manifest"], [8, 1, 1, "", "get_projects"], [8, 1, 1, "", "open_project"], [8, 1, 1, "", "query"], [8, 1, 1, "", "submit_file"], [8, 1, 1, "", "submit_record"]], "gen3.tools.download": [[10, 3, 0, "-", "drs_download"]], "gen3.tools.download.drs_download": [[10, 0, 1, "", "DownloadManager"], [10, 0, 1, "", "DownloadStatus"], [10, 0, 1, "", "Downloadable"], [10, 0, 1, "", "Manifest"], [10, 4, 1, "", "download_files_in_drs_manifest"], [10, 4, 1, "", "list_access_in_drs_manifest"], [10, 4, 1, "", "list_drs_object"], [10, 4, 1, "", "list_files_in_drs_manifest"]], "gen3.tools.download.drs_download.DownloadManager": [[10, 1, 1, "", "cache_hosts_wts_tokens"], [10, 1, 1, "", "download"], [10, 1, 1, "", "get_fresh_token"], [10, 1, 1, "", "resolve_objects"], [10, 1, 1, "", "user_access"]], "gen3.tools.download.drs_download.DownloadStatus": [[10, 2, 1, "", "end_time"], [10, 2, 1, "", "start_time"], [10, 2, 1, "", "status"]], "gen3.tools.download.drs_download.Downloadable": [[10, 2, 1, "", "_manager"], [10, 2, 1, "", "access_methods"], [10, 2, 1, "", "children"], [10, 2, 1, "", "created_time"], [10, 1, 1, "", "download"], [10, 2, 1, "", "file_name"], [10, 2, 1, "", "file_size"], [10, 2, 1, "", "hostname"], [10, 2, 1, "", "object_id"], [10, 2, 1, "", "object_type"], [10, 1, 1, "", "pprint"], [10, 2, 1, "", "updated_time"]], "gen3.tools.download.drs_download.Manifest": [[10, 2, 1, "", "commons_url"], [10, 1, 1, "", "create_object_list"], [10, 2, 1, "", "file_name"], [10, 2, 1, "", "file_size"], [10, 1, 1, "", "load"], [10, 1, 1, "", "load_manifest"], [10, 2, 1, "", "md5sum"], [10, 2, 1, "", "object_id"]], "gen3.tools.indexing": [[11, 3, 0, "-", "download_manifest"], [11, 3, 0, "-", "index_manifest"], [11, 3, 0, "-", "verify_manifest"]], "gen3.tools.indexing.download_manifest": [[11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "INDEXD_RECORD_PAGE_SIZE"], [11, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [11, 2, 1, "", "TMP_FOLDER"], [11, 4, 1, "", "async_download_object_manifest"]], "gen3.tools.indexing.index_manifest": [[11, 2, 1, "", "ACLS"], [11, 2, 1, "", "AUTHZ"], [11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "GUID"], [11, 2, 1, "", "MD5"], [11, 2, 1, "", "PREV_GUID"], [11, 2, 1, "", "SIZE"], [11, 0, 1, "", "ThreadControl"], [11, 2, 1, "", "URLS"], [11, 4, 1, "", "delete_all_guids"], [11, 4, 1, "", "index_object_manifest"]], "gen3.tools.indexing.verify_manifest": [[11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [11, 4, 1, "", "async_verify_object_manifest"]], "gen3.tools.metadata": [[12, 3, 0, "-", "ingest_manifest"]], "gen3.tools.metadata.ingest_manifest": [[12, 2, 1, "", "COLUMN_TO_USE_AS_GUID"], [12, 2, 1, "", "GUID_TYPE_FOR_INDEXED_FILE_OBJECT"], [12, 2, 1, "", "GUID_TYPE_FOR_NON_INDEXED_FILE_OBJECT"], [12, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [12, 4, 1, "", "async_ingest_metadata_manifest"], [12, 4, 1, "", "async_query_urls_from_indexd"]], "gen3.wss": [[13, 0, 1, "", "Gen3WsStorage"]], "gen3.wss.Gen3WsStorage": [[13, 1, 1, "", "copy"], [13, 1, 1, "", "download"], [13, 1, 1, "", "download_url"], [13, 1, 1, "", "ls"], [13, 1, 1, "", "ls_path"], [13, 1, 1, "", "rm"], [13, 1, 1, "", "rm_path"], [13, 1, 1, "", "upload"], [13, 1, 1, "", "upload_url"]]}, "objnames": {"0": ["py", "class", "Python class"], "1": ["py", "method", "Python method"], "2": ["py", "attribute", "Python attribute"], "3": ["py", "module", "Python module"], "4": ["py", "function", "Python function"]}, "objtypes": {"0": "py:class", "1": "py:method", "2": "py:attribute", "3": "py:module", "4": "py:function"}, "terms": {"": [1, 4, 8, 10, 11], "0": [5, 7, 8, 11], "0046513": [], "0185335": [], "052073": [], "0576868": [], "058966": [], "064572": [], "07464": [], "0790412": [], "0a80fada010c": 11, "0a80fada096c": 11, "0a80fada097c": 11, "0a80fada098c": 11, "0a80fada099c": 11, "1": [4, 5, 8, 10, 11], "10": [5, 7, 11], "100": [8, 11], "1069167": 11, "11e9": 11, "1344793": [], "1676264": [], "1713542306": [], "1713542765": [], "1713543033": [], "1713543225": [], "1713543506": [], "1713543956": [], "1713544131": [], "1713544132": [], "1713544397": [], "1713544598": [], "1713545857": [], "1713545858": [], "1713549370": [], "1713549689": [], "1713550571": [], "1713557245": [], "1713559376": [], "1713560080": [], "1713560402": [], "1713560403": [], "1713561061": [], "1713562690": [], "1717169008": [], "1717170449": [], "1717171842": [], "1717171843": [], "1717172360": [], "1717172577": [11, 12], "1731803": [], "1771936": [], "1913438": [], "2": [5, 11], "2184267": [], "24": [11, 12], "255e396f": 11, "2877355": [], "2930224": [], "2995": [], "3": [5, 11], "30": 8, "3041446": [], "3102272": [], "33": 5, "333": 5, "343434344": 11, "363455714": 11, "3935378": [], "4": [5, 11], "4017086": [], "4052968": [], "4090197": [], "4463434": [], "450c": 11, "4632835": [], "4649727": [], "4714": 8, "473d83400bc1bc9dc635e334fadd433c": 11, "473d83400bc1bc9dc635e334faddd33c": 11, "473d83400bc1bc9dc635e334fadde33c": 11, "473d83400bc1bc9dc635e334faddf33c": 11, "4752307": [], "4756553": [], "5": [0, 5], "50": 7, "517729": [], "5202463": [], "543434443": 11, "5669184": [], "568308": [], "573305": 12, "5899982": [], "6692646": [], "6739478": [], "674552": [], "6f90": 8, "700799": [], "7232893": [], "756255": [], "760149": [], "7841465": [], "7d3d8d2083b4": 11, "8044841": [], "8375325": [], "8420": 8, "8630717": [], "8874054": [], "8882551": [], "93d9af72": 11, "9a07": 11, "A": [1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "AND": 5, "Be": 1, "But": 5, "By": 11, "For": [1, 5, 6, 7, 8, 9, 11], "IF": 11, "If": [0, 1, 7, 11, 12], "In": 10, "It": 10, "NOT": 12, "OR": 5, "One": 7, "Such": 9, "THE": 11, "That": 3, "The": [0, 1, 2, 3, 5, 8, 10, 11], "There": 11, "These": 9, "To": 11, "Will": [4, 7, 10], "_get_acl_from_row": 11, "_get_authz_from_row": 11, "_get_file_name_from_row": 11, "_get_file_size_from_row": 11, "_get_guid_for_row": 12, "_get_guid_from_row": 11, "_get_md5_from_row": 11, "_get_urls_from_row": 11, "_guid_typ": 12, "_manag": [2, 9, 10], "_query_for_associated_indexd_record_guid": 12, "_ssl": [3, 4, 5], "a5c6": 11, "ab167e49d25b488939b1ede42752458b": 3, "about": [2, 3], "abov": 11, "access": [0, 1, 3, 7, 10], "access_method": [2, 9, 10], "access_token": 0, "accesstoken": 0, "acl": [2, 3, 9, 11], "across": 11, "act": 0, "action": [9, 11], "actual": 11, "ad": 3, "add": [3, 5], "addit": [3, 5, 10, 11], "admin": [5, 11], "admin_endpoint_suffix": 5, "after": 10, "against": [3, 7, 8, 11, 12], "algorithm": 3, "alia": [3, 5], "alias": 5, "aliv": 7, "all": [1, 3, 4, 5, 6, 7, 8, 10, 11, 12], "allow": [0, 6, 8, 10, 11, 12], "allowed_data_upload_bucket": 1, "along": 2, "alreadi": 9, "also": 1, "altern": [5, 11], "alwai": 5, "ammount": 12, "amount": [1, 9], "an": [0, 3, 6, 8, 10, 11], "ani": [0, 5, 10, 11], "anoth": 5, "api": [0, 5, 8, 11], "api_kei": 11, "appli": 7, "appropri": 13, "ar": [5, 7, 8, 9, 10, 11], "arbitrari": 0, "argument": [0, 13], "arrai": 8, "asc": 7, "assign": 9, "assist": 10, "associ": [3, 5], "assum": 11, "async": [3, 4, 5, 9, 11, 12], "async_cr": [2, 5], "async_create_alias": [2, 5], "async_create_record": [2, 3], "async_delete_alia": [2, 5], "async_delete_alias": [2, 5], "async_download_object_manifest": [2, 9, 11], "async_get": [2, 5], "async_get_alias": [2, 5], "async_get_record": [2, 3], "async_get_records_from_checksum": [2, 3], "async_get_records_on_pag": [2, 3], "async_get_with_param": [2, 3], "async_ingest_metadata_manifest": [2, 9, 12], "async_query_url": [2, 3], "async_query_urls_from_indexd": [2, 9, 12], "async_run_job_and_wait": [2, 4], "async_upd": [2, 5], "async_update_alias": [2, 5], "async_update_record": [2, 3], "async_verify_object_manifest": [2, 9, 11], "asynchron": [3, 4, 5], "asyncio": [11, 12], "asyncron": 5, "attach": [3, 5], "attempt": 11, "attribut": [10, 11], "auth": [1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "auth_provid": [1, 2, 3, 4, 5, 6, 7, 8, 13], "authbas": 0, "authent": 0, "author": 1, "authz": [0, 1, 2, 3, 9, 10, 11], "auto": [0, 2], "automat": 0, "avail": [1, 2, 10, 11], "az": 1, "b": [5, 11], "b0f1": 11, "bar": 10, "base": [0, 1, 3, 4, 5, 6, 7, 8, 9, 11, 13], "baseid": 3, "basic": [3, 11, 12], "batch_creat": [2, 5], "batch_siz": 8, "behalf": 0, "behavior": 11, "being": 3, "belong": 8, "below": 11, "blank": 3, "blob": [5, 7], "bodi": 3, "bool": [4, 5, 8, 10, 11, 12], "boolean": 3, "bownload": 10, "broad": 9, "broken": 9, "bucket": [1, 6], "bundl": 10, "byte": 10, "c": [5, 11], "cach": 10, "cache_hosts_wts_token": [2, 9, 10], "call": [10, 13], "can": [0, 3, 4, 8, 11, 12], "capabl": 9, "case": [0, 10], "categori": 9, "ccle": 8, "ccle_one_record": 8, "ccle_sample_nod": 8, "cdi": 7, "chang": [3, 11], "checksum": [3, 10], "checksum_typ": 3, "child": 10, "children": [2, 9, 10], "chunk_siz": 8, "class": [0, 2, 10, 11, 13], "cli": 10, "client": [0, 3], "client_credenti": 0, "client_id": 0, "client_scop": 0, "client_secret": 0, "code": [2, 8], "column": [11, 12], "column_to_use_as_guid": [2, 9, 12], "columna": 11, "columnb": 11, "columnc": 11, "com": 7, "comma": 11, "command": [10, 11], "common": [0, 1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13], "commons_url": [2, 9, 10, 11, 12], "complet": [4, 11], "complex": 7, "concat": 11, "concurr": [11, 12], "configur": 1, "connect": 12, "consist": 3, "constructor": 0, "contain": [0, 2, 5, 8, 9, 10, 11, 12], "content": [3, 13], "content_created_d": 3, "content_updated_d": 3, "continu": 10, "control": 3, "conveni": 10, "copi": [2, 13], "coroutin": 11, "correspond": 3, "count": 3, "crdc": 0, "creat": [2, 3, 4, 5, 6, 8, 10, 11], "create_alias": [2, 5], "create_blank": [2, 3], "create_index_key_path": [2, 5], "create_job": [2, 4], "create_new_vers": [2, 3], "create_object_list": [2, 9, 10], "create_program": [2, 8], "create_project": [2, 8], "create_record": [2, 3], "created_tim": [2, 9, 10], "creation": [3, 11], "cred": 3, "credenti": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "csv": [8, 11, 12], "curl": [0, 2], "current": [6, 8, 10], "current_dir": [2, 9, 11], "custom": 11, "d": 5, "d70b41b9": 8, "data": [0, 1, 3, 5, 7, 8, 10, 11], "data_spreadsheet": 8, "data_typ": 7, "data_upload_bucket": 1, "dataa": 11, "datab": 11, "databas": 5, "datacommon": 0, "datafil": 10, "datamanag": 10, "date": 3, "datetim": [1, 3, 10], "dbgap": 12, "dcf": 8, "def": 11, "default": [0, 1, 3, 7, 8, 11, 12], "defin": [5, 8, 10], "delai": 4, "delet": [0, 1, 2, 3, 5, 6, 8, 10, 11], "delete_alia": [2, 5], "delete_alias": [2, 5], "delete_all_guid": [2, 9, 11], "delete_fil": [1, 2], "delete_file_loc": [1, 2, 6], "delete_index_key_path": [2, 5], "delete_nod": [2, 8], "delete_object": [2, 6], "delete_program": [2, 8], "delete_project": [2, 8], "delete_record": [2, 3, 8], "delete_unpacked_packag": 10, "delimet": [11, 12], "delimit": 11, "demograph": 8, "deprec": 1, "descript": [3, 5], "desir": 11, "dest_path": 13, "dest_urlstr": 13, "dest_w": 13, "dest_wskei": 13, "detail": [2, 7, 10], "determin": [10, 11, 12], "dev": 11, "dict": [3, 4, 5, 10, 11, 12], "dictionari": [3, 4, 5, 7, 8], "did": 3, "differ": 5, "direct": 0, "directori": [10, 11], "disabl": 10, "discoveri": 10, "disk": 13, "dispatch": 4, "dist_resolut": 3, "distribut": 3, "doc": [7, 10], "docstr": 2, "document": [1, 3], "doe": [0, 12], "domain": [11, 12], "done": 4, "download": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 13], "download_files_in_drs_manifest": [2, 9, 10], "download_list": 10, "download_manifest": 11, "download_singl": [1, 2], "download_url": [2, 13], "downloadmanag": [2, 9, 10], "downloadstatu": [2, 9, 10], "dr": [2, 9], "drs_download": 10, "drs_hostnam": 10, "drsdownload": 10, "drsobjecttyp": 10, "e": [5, 10], "e043ab8b77b9": 8, "each": [3, 8, 10, 11], "effici": 9, "eg": 3, "either": 8, "elasticsearch": 7, "els": [0, 12], "elsewher": 12, "empti": [8, 11], "enabl": 11, "end": [5, 10], "end_tim": [2, 9, 10], "endpoint": [0, 1, 2, 3, 4, 5, 7, 8, 13], "entir": 8, "entri": [3, 11], "env": 0, "environ": 0, "equal": 7, "error": [10, 11, 12], "error_nam": 11, "etc": 8, "even": 11, "everi": [9, 11], "everyth": 11, "ex": [0, 11, 12], "exampl": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "exclud": 3, "execut": [7, 8, 11], "exist": [1, 3, 5, 6, 9, 12], "expect": [5, 9, 11], "experi": 8, "expir": [0, 1], "expires_in": 1, "export": [8, 10], "export_nod": [2, 8], "export_record": [2, 8], "f1f8": 11, "factori": 10, "fail": [8, 10], "fals": [3, 5, 6, 10, 11], "featur": [1, 6], "fenc": [0, 1], "fetch": 0, "field": [3, 5, 7, 11, 12], "fieldnam": 11, "file": [0, 2, 3, 4, 8, 9, 10, 11, 12, 13], "file_nam": [1, 2, 3, 9, 10, 11], "file_s": [2, 9, 10, 11], "file_st": 3, "fileformat": 8, "filenam": [0, 8, 10, 11, 12], "files": 10, "fill": 12, "filter": [5, 7], "filter_object": 7, "first": [7, 8], "flag": 11, "folder": 11, "follow": [0, 11], "forc": 11, "force_metadata_columns_even_if_empti": 11, "form": 13, "format": [3, 5, 8, 11], "from": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13], "func_to_parse_row": [11, 12], "function": [2, 3, 4, 5, 9, 10, 11, 12], "g": 10, "gen3": [10, 11, 12], "gen3_api_kei": 0, "gen3_oidc_client_creds_secret": 0, "gen3auth": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "gen3fil": [1, 2], "gen3index": [2, 3], "gen3job": [2, 4, 10], "gen3metadata": [2, 5], "gen3object": [2, 6], "gen3queri": [2, 7], "gen3submiss": [2, 8], "gen3wsstorag": [2, 13], "gener": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 13], "get": [0, 1, 2, 3, 4, 5, 8, 10, 11, 12, 13], "get_access_token": [0, 2], "get_access_token_from_wt": [0, 2], "get_alias": [2, 5], "get_all_record": [2, 3], "get_dictionary_al": [2, 8], "get_dictionary_nod": [2, 8], "get_fresh_token": [2, 9, 10], "get_graphql_schema": [2, 8], "get_guid_from_fil": 12, "get_guids_prefix": [2, 3], "get_index_key_path": [2, 5], "get_latest_vers": [2, 3], "get_output": [2, 4], "get_presigned_url": [1, 2], "get_program": [2, 8], "get_project": [2, 8], "get_project_dictionari": [2, 8], "get_project_manifest": [2, 8], "get_record": [2, 3], "get_record_doc": [2, 3], "get_records_on_pag": [2, 3], "get_stat": [2, 3], "get_statu": [2, 4], "get_url": [2, 3], "get_valid_guid": [2, 3], "get_vers": [2, 3, 4, 5], "get_with_param": [2, 3], "giangb": 11, "github": [2, 7], "give": 1, "given": [0, 3, 4, 5, 8, 10, 12, 13], "global": [4, 5], "good": 3, "grant": 0, "graph": 8, "graphql": [7, 8], "graphql_queri": [2, 7], "group": 3, "guid": [1, 2, 3, 5, 6, 9, 11, 12], "guid_exampl": 11, "guid_for_row": 12, "guid_from_fil": 12, "guid_type_for_indexed_file_object": [2, 9, 12], "guid_type_for_non_indexed_file_object": [2, 9, 12], "guppi": 7, "ha": [0, 11], "handl": [3, 10], "hardcod": 0, "has_vers": 3, "hash": [3, 11], "hash_typ": 3, "have": [5, 11], "header": 11, "healthi": [3, 4, 5], "help": 11, "helper": 2, "hit": 11, "host": 10, "hostnam": [2, 9, 10], "how": [8, 11], "howto": 10, "http": [0, 7, 11, 12], "i": [0, 1, 2, 3, 4, 5, 8, 10, 11, 12], "id": [0, 1, 3, 5, 10, 11], "idea": 3, "identifi": [3, 5, 9, 11], "idp": 0, "illustr": 11, "immut": 3, "implement": 0, "implic": 11, "import": 11, "includ": [0, 3], "indent": 10, "index": [0, 2, 5, 9], "index_manifest": 11, "index_object_manifest": [2, 9, 11], "indexd": [1, 3, 6, 10, 11, 12], "indexd_field": [11, 12], "indexd_record_page_s": [2, 9, 11], "indexed_file_object_guid": 12, "indic": [0, 11], "infil": 10, "info": [3, 11], "inform": [2, 3, 10], "ingest": [2, 9], "ingest_manifest": 12, "initi": [0, 10], "input": [4, 10, 11], "input_manifest": 11, "instal": [0, 2, 11], "instanc": [1, 3, 6, 7, 8, 9, 10], "instead": [1, 7, 11], "int": [1, 3, 5, 7, 8, 10, 11, 12], "integ": [1, 3, 8], "intend": 0, "interact": [1, 3, 4, 5, 6, 8, 13], "interest": 10, "interpret": 0, "introspect": 8, "involv": 9, "is_healthi": [2, 3, 4, 5], "is_indexed_file_object": 12, "isn": 1, "issu": 0, "its": [1, 3], "job": 2, "job_id": 4, "job_input": 4, "job_nam": 4, "json": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "just": [5, 11, 12], "jwt": 0, "kei": [0, 3, 5, 13], "know": 11, "known": 10, "kwarg": [3, 4, 5], "l": [2, 13], "larg": 9, "last": 10, "latest": 3, "least": 3, "level": 6, "librari": 11, "like": [3, 5, 9, 11, 12], "limit": [1, 3, 5, 12], "linear": 4, "linux": 10, "list": [0, 1, 3, 4, 5, 7, 8, 10, 11, 13], "list_access_in_drs_manifest": [2, 9, 10], "list_drs_object": [2, 9, 10], "list_files_in_drs_manifest": [2, 9, 10], "list_job": [2, 4], "live": [11, 12], "load": [2, 9, 10], "load_manifest": [2, 9, 10], "local": [0, 13], "locat": [1, 6], "lock": 12, "log": [8, 10, 11, 12], "logic": [5, 12], "loop": 11, "ls_path": [2, 13], "maco": 11, "made": 3, "mai": [0, 9, 11], "main": 10, "make": [9, 11], "manag": [1, 5, 10], "mani": [8, 11], "manifest": [2, 8, 9, 10, 11, 12], "manifest_1": 10, "manifest_fil": [11, 12], "manifest_file_delimit": [11, 12], "manifest_row_pars": [11, 12], "map": [0, 11], "mark": 8, "master": 7, "match": [3, 5, 12], "max": 5, "max_concurrent_request": [2, 9, 11, 12], "max_presigned_url_ttl": 1, "max_tri": 8, "maximum": [11, 12], "md": [5, 7, 10, 12], "md5": [2, 3, 9, 11], "md5_hash": 11, "md5sum": [2, 9, 10], "mean": 8, "mechan": 3, "merg": 5, "metadata": [2, 3, 6, 9, 11], "metadata_list": 5, "metadata_sourc": 12, "metadata_typ": 12, "metdata": 12, "method": [1, 7, 10], "minimum": 10, "minut": 0, "mode": 7, "modul": [2, 10, 11], "more": [2, 5, 7, 9, 10], "most": 9, "mostli": 2, "multipl": [8, 11], "must": [1, 5], "my_common": 10, "my_credenti": 10, "my_field": 7, "my_index": 7, "my_program": 7, "my_project": 7, "name": [3, 4, 8, 10, 11, 12, 13], "namespac": [0, 12], "necessari": [3, 5], "need": [3, 7, 10, 11], "nest": 5, "net": 11, "never": 0, "new": [0, 3], "node": 8, "node_nam": 8, "node_typ": 8, "none": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "note": [0, 3, 11, 12], "noth": [3, 6], "now": [1, 8], "num": 5, "num_process": 11, "num_total_fil": 11, "number": [3, 7, 8, 11, 12], "o": 0, "object": [1, 2, 3, 4, 5, 7, 8, 9, 10, 11, 13], "object_id": [1, 2, 9, 10], "object_list": 10, "object_typ": [2, 9, 10], "objectid": 10, "obtain": [0, 10], "occur": 10, "off": 5, "offset": [5, 7], "oidc": 0, "old": 3, "one": [3, 5, 10, 11], "onli": [3, 5, 7, 8, 10, 11], "open": [8, 10, 11], "open_project": [2, 8], "openid": 0, "opt": 0, "option": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11], "order": [0, 8], "ordered_node_list": 8, "org": 10, "otherwis": 10, "output": [4, 5, 11, 12], "output_dir": 10, "output_filenam": [11, 12], "overrid": [0, 11, 12], "overwrit": 5, "own": 0, "packag": 10, "page": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 13], "pagin": 3, "parallel": 11, "param": [3, 5, 8, 10], "paramet": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "pars": [10, 11, 12, 13], "parser": [11, 12], "particular": 0, "pass": [0, 7, 8, 10], "password": [11, 12], "path": [0, 1, 5, 10, 11, 13], "path_to_manifest": 11, "pattern": [3, 12], "pdcdatastor": 11, "pend": 10, "per": [11, 12], "peregrin": 8, "permiss": 10, "persist": 9, "phs0001": 11, "phs0002": 11, "pick": 1, "pla": 11, "place": 11, "planx": 11, "point": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "popul": [10, 12], "posit": [1, 7], "possibl": 10, "post": [0, 11], "pprint": [2, 9, 10], "prefix": 3, "presign": 1, "pretti": 10, "prev_guid": [2, 9, 11], "previou": [3, 11], "previous": 4, "print": [8, 10], "process": 11, "processed_fil": 11, "profil": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "program": [8, 11], "progress": [8, 10], "project": [8, 11], "project_id": [7, 8], "protocol": 1, "provid": [0, 1, 3, 5, 7, 8, 12], "public": [3, 5], "put": 0, "py": 11, "python": [2, 9, 11], "python3": 11, "python_subprocess_command": 11, "queri": [1, 2, 3, 5, 8, 11, 12], "query_str": 7, "query_txt": [7, 8], "query_url": [2, 3], "quickstart": 2, "rather": 0, "raw": [7, 11], "raw_data_download": [2, 7], "rbac": 3, "read": [3, 5, 11], "readm": 2, "reason": 10, "record": [1, 3, 5, 7, 8, 11, 12], "refresh": [0, 10], "refresh_access_token": [0, 2], "refresh_fil": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "refresh_token": 0, "regist": 8, "regular": 7, "relat": 9, "remov": [1, 6, 11, 13], "replac": 11, "replace_url": 11, "repo": 2, "repres": [3, 5, 10], "represent": [1, 3], "request": [0, 1, 3, 5, 8, 11, 12], "requir": 10, "resolv": 10, "resolve_object": [2, 9, 10], "respect": 7, "respons": [0, 1, 3, 4, 5], "result": [1, 8, 10, 11], "retri": 8, "retriev": [1, 8, 10, 12], "return": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11], "return_full_metadata": 5, "rev": 3, "revers": 8, "revis": 3, "right": 1, "rm": [2, 13], "rm_path": [2, 13], "root": [11, 12], "row": [7, 8, 11, 12], "row_offset": 8, "rtype": 3, "run": [8, 11], "s3": [1, 10, 11], "safe": 11, "same": [5, 11, 13], "sampl": [8, 10], "sandbox": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "save": 10, "save_directori": 10, "schema": 8, "scope": [0, 1], "screen": 8, "script": 2, "search": [0, 2, 3], "second": [1, 4], "secret": 0, "see": [7, 10, 11], "self": 10, "semaphon": 12, "semaphor": 12, "separ": [0, 11], "server": 10, "servic": [1, 3, 4, 5, 6, 8, 11, 12, 13], "service_loc": [3, 4, 5], "session": 11, "set": [0, 1, 5, 10], "setup": 2, "sheepdog": 8, "should": [0, 8, 11], "show": 10, "show_progress": 10, "shown": 11, "sign": 1, "signpost": 3, "similar": 10, "simpl": 3, "simpli": 11, "sinc": 3, "singl": [1, 5, 8], "size": [2, 3, 9, 10, 11], "skip": 8, "sleep": 4, "so": 11, "some": [0, 2], "someth": 11, "sort": 7, "sort_field": 7, "sort_object": 7, "sourc": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "space": [0, 11], "specif": [5, 8, 11, 12], "specifi": [0, 1, 3, 11, 13], "spreadsheet": 8, "src_path": 13, "src_urlstr": 13, "src_w": 13, "src_wskei": 13, "ssl": [3, 4, 5], "start": [3, 4, 7, 8, 10], "start_tim": [2, 9, 10], "static": 10, "statu": [2, 4, 9, 10], "storag": [1, 2, 6], "store": [1, 3, 10], "str": [0, 1, 3, 4, 5, 7, 8, 10, 11, 12], "string": [0, 3, 5, 11, 13], "strip": 11, "sub": 8, "subject": [7, 8], "submiss": 2, "submit": [8, 11], "submit_additional_metadata_column": 11, "submit_fil": [2, 8], "submit_record": [2, 8], "submitter_id": 7, "success": 10, "successfulli": 10, "suffici": 3, "suppli": 3, "support": [0, 1, 5, 8, 11], "sure": 1, "synchron": 11, "syntax": 7, "system": [6, 7, 8, 9], "t": [1, 5, 11], "tab": 11, "task": 9, "temporari": 11, "test": 11, "test1": 11, "test2": 11, "test3": 11, "test4": 11, "test5": 11, "text": [1, 7, 8], "than": [0, 5], "thei": [0, 10], "them": [10, 11], "thi": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "those": 11, "thread": 11, "thread_num": 11, "threadcontrol": [2, 9, 11], "through": [8, 11], "tier": 7, "time": [1, 3, 8, 10, 11], "timestamp": 10, "tmp_folder": [2, 9, 11], "token": [0, 10], "tool": 2, "total": 11, "treat": [1, 5], "tree": 10, "true": [3, 4, 5, 6, 7, 8, 10, 11, 12], "try": 0, "tsv": [8, 11, 12], "tupl": [0, 3, 11, 12], "type": [1, 3, 4, 5, 7, 8, 10, 11, 12], "typic": 10, "uc": 7, "unaccess": 7, "under": [0, 8, 13], "uniqu": [1, 5], "unknown": 10, "unpack": 10, "unpack_packag": 10, "until": [4, 10], "up": [5, 9], "updat": [2, 3, 5, 10, 11], "update_alias": [2, 5], "update_blank": [2, 3], "update_record": [2, 3], "updated_tim": [2, 9, 10], "upload": [1, 2, 3, 8, 13], "upload_fil": [1, 2], "upload_file_to_guid": [1, 2], "upload_url": [2, 13], "url": [1, 2, 3, 9, 10, 11, 12, 13], "urls_metadata": 3, "us": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "usag": 11, "use_agg_md": 5, "user": [0, 10, 12], "user_access": [2, 9, 10], "usual": 12, "utcnow": 1, "util": 9, "uuid": [1, 3, 8], "uuid1": 8, "uuid2": 8, "valid": [3, 7], "valu": [0, 1, 3, 5, 7, 10, 11], "value_from_indexd": 11, "value_from_manifest": 11, "variabl": [0, 7, 8], "variou": 2, "verbos": [7, 8], "verif": 11, "verifi": [2, 9], "verify_manifest": 11, "verify_object_manifest": 11, "version": [3, 4, 5], "vital_statu": 7, "w": 13, "wa": 0, "wai": 10, "wait": 4, "want": [0, 3, 8], "warn": 11, "we": [3, 11], "web": 0, "what": 5, "when": [0, 3, 7, 10, 12], "where": [0, 3, 5, 11, 12], "whether": [3, 4, 5, 8, 11, 12], "which": [8, 10], "while": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "whose": 5, "within": [0, 2, 9], "without": [3, 5], "won": 5, "work": [0, 10], "workaround": 11, "worksheet": 8, "workspac": [0, 2], "wrapper": 10, "write": 11, "ws_urlstr": 13, "wskei": 13, "wss": 13, "wt": [0, 10], "x": 11, "xlsx": 8, "you": [0, 3, 8, 11], "your": 0}, "titles": ["Gen3 Auth Helper", "Gen3 File Class", "Welcome to Gen3 SDK\u2019s documentation!", "Gen3 Index Class", "Gen3 Jobs Class", "Gen3 Metadata Class", "Gen3 Object Class", "Gen3 Query Class", "Gen3 Submission Class", "Gen3 Tools", "DRS Download Tools", "Indexing Tools", "Metadata Tools", "Gen3 Workspace Storage"], "titleterms": {"": 2, "auth": 0, "class": [1, 3, 4, 5, 6, 7, 8], "document": 2, "download": [10, 11], "dr": 10, "file": 1, "gen3": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 13], "helper": 0, "index": [3, 11], "indic": 2, "ingest": 12, "job": 4, "metadata": [5, 12], "object": 6, "queri": 7, "sdk": 2, "storag": 13, "submiss": 8, "tabl": 2, "tool": [9, 10, 11, 12], "verifi": 11, "welcom": 2, "workspac": 13}}) \ No newline at end of file +Search.setIndex({"alltitles": {"DRS Download Tools": [[10, "module-gen3.tools.download.drs_download"]], "Download": [[11, "module-gen3.tools.indexing.download_manifest"]], "Gen3 Auth Helper": [[0, "gen3-auth-helper"]], "Gen3 File Class": [[1, "gen3-file-class"]], "Gen3 Index Class": [[3, "gen3-index-class"]], "Gen3 Jobs Class": [[4, "gen3-jobs-class"]], "Gen3 Metadata Class": [[5, "gen3-metadata-class"]], "Gen3 Object Class": [[6, "gen3-object-class"]], "Gen3 Query Class": [[7, "gen3-query-class"]], "Gen3 Submission Class": [[8, "gen3-submission-class"]], "Gen3 Tools": [[9, "gen3-tools"]], "Gen3 Workspace Storage": [[13, "gen3-workspace-storage"]], "Index": [[11, "module-gen3.tools.indexing.index_manifest"]], "Indexing Tools": [[11, "indexing-tools"]], "Indices and tables": [[2, "indices-and-tables"]], "Ingest": [[12, "module-gen3.tools.metadata.ingest_manifest"]], "Metadata Tools": [[12, "metadata-tools"]], "Verify": [[11, "module-gen3.tools.indexing.verify_manifest"]], "Welcome to Gen3 SDK\u2019s documentation!": [[2, "welcome-to-gen3-sdk-s-documentation"]]}, "docnames": ["auth", "file", "index", "indexing", "jobs", "metadata", "object", "query", "submission", "tools", "tools/drs_pull", "tools/indexing", "tools/metadata", "wss"], "envversion": {"sphinx": 61, "sphinx.domains.c": 3, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 9, "sphinx.domains.index": 1, "sphinx.domains.javascript": 3, "sphinx.domains.math": 2, "sphinx.domains.python": 4, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx.ext.viewcode": 1}, "filenames": ["auth.rst", "file.rst", "index.rst", "indexing.rst", "jobs.rst", "metadata.rst", "object.rst", "query.rst", "submission.rst", "tools.rst", "tools/drs_pull.rst", "tools/indexing.rst", "tools/metadata.rst", "wss.rst"], "indexentries": {"_manager (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable._manager", false]], "access_methods (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.access_methods", false]], "acls (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.ACLS", false]], "async_create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_create", false]], "async_create_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_create_aliases", false]], "async_create_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_create_record", false]], "async_delete_alias() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_delete_alias", false]], "async_delete_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_delete_aliases", false]], "async_download_object_manifest() (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.async_download_object_manifest", false]], "async_get() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_get", false]], "async_get_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_get_aliases", false]], "async_get_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_record", false]], "async_get_records_from_checksum() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_records_from_checksum", false]], "async_get_records_on_page() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_records_on_page", false]], "async_get_with_params() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_with_params", false]], "async_ingest_metadata_manifest() (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.async_ingest_metadata_manifest", false]], "async_query_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_query_urls", false]], "async_query_urls_from_indexd() (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.async_query_urls_from_indexd", false]], "async_run_job_and_wait() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.async_run_job_and_wait", false]], "async_update() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_update", false]], "async_update_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_update_aliases", false]], "async_update_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_update_record", false]], "async_verify_object_manifest() (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.async_verify_object_manifest", false]], "auth_provider (gen3.metadata.gen3metadata attribute)": [[5, "gen3.metadata.Gen3Metadata.auth_provider", false]], "authz (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.AUTHZ", false]], "batch_create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.batch_create", false]], "cache_hosts_wts_tokens() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.cache_hosts_wts_tokens", false]], "children (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.children", false]], "column_to_use_as_guid (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.COLUMN_TO_USE_AS_GUID", false]], "commons_url (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.commons_url", false]], "copy() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.copy", false]], "create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create", false]], "create_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create_aliases", false]], "create_blank() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_blank", false]], "create_index_key_path() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create_index_key_path", false]], "create_job() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.create_job", false]], "create_new_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_new_version", false]], "create_object_list() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.create_object_list", false]], "create_program() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.create_program", false]], "create_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.create_project", false]], "create_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_record", false]], "created_time (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.created_time", false]], "curl() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.curl", false]], "current_dir (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.CURRENT_DIR", false]], "current_dir (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.CURRENT_DIR", false]], "current_dir (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.CURRENT_DIR", false]], "delete() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete", false]], "delete_alias() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_alias", false]], "delete_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_aliases", false]], "delete_all_guids() (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.delete_all_guids", false]], "delete_file() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.delete_file", false]], "delete_file_locations() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.delete_file_locations", false]], "delete_index_key_path() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_index_key_path", false]], "delete_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_node", false]], "delete_nodes() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_nodes", false]], "delete_object() (gen3.object.gen3object method)": [[6, "gen3.object.Gen3Object.delete_object", false]], "delete_program() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_program", false]], "delete_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_project", false]], "delete_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.delete_record", false]], "delete_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_record", false]], "delete_records() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_records", false]], "download() (gen3.tools.download.drs_download.downloadable method)": [[10, "gen3.tools.download.drs_download.Downloadable.download", false]], "download() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.download", false]], "download() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.download", false]], "download_files_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.download_files_in_drs_manifest", false]], "download_single() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.download_single", false]], "download_url() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.download_url", false]], "downloadable (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.Downloadable", false]], "downloadmanager (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.DownloadManager", false]], "downloadstatus (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.DownloadStatus", false]], "end_time (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.end_time", false]], "endpoint (gen3.metadata.gen3metadata attribute)": [[5, "gen3.metadata.Gen3Metadata.endpoint", false]], "export_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.export_node", false]], "export_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.export_record", false]], "file_name (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.file_name", false]], "file_name (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.file_name", false]], "file_size (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.file_size", false]], "file_size (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.file_size", false]], "gen3.tools": [[9, "module-gen3.tools", false]], "gen3.tools.download.drs_download": [[10, "module-gen3.tools.download.drs_download", false]], "gen3.tools.indexing.download_manifest": [[11, "module-gen3.tools.indexing.download_manifest", false]], "gen3.tools.indexing.index_manifest": [[11, "module-gen3.tools.indexing.index_manifest", false]], "gen3.tools.indexing.verify_manifest": [[11, "module-gen3.tools.indexing.verify_manifest", false]], "gen3.tools.metadata.ingest_manifest": [[12, "module-gen3.tools.metadata.ingest_manifest", false]], "gen3auth (class in gen3.auth)": [[0, "gen3.auth.Gen3Auth", false]], "gen3file (class in gen3.file)": [[1, "gen3.file.Gen3File", false]], "gen3index (class in gen3.index)": [[3, "gen3.index.Gen3Index", false]], "gen3jobs (class in gen3.jobs)": [[4, "gen3.jobs.Gen3Jobs", false]], "gen3metadata (class in gen3.metadata)": [[5, "gen3.metadata.Gen3Metadata", false]], "gen3object (class in gen3.object)": [[6, "gen3.object.Gen3Object", false]], "gen3query (class in gen3.query)": [[7, "gen3.query.Gen3Query", false]], "gen3submission (class in gen3.submission)": [[8, "gen3.submission.Gen3Submission", false]], "gen3wsstorage (class in gen3.wss)": [[13, "gen3.wss.Gen3WsStorage", false]], "get() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get", false]], "get() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get", false]], "get_access_token() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.get_access_token", false]], "get_access_token_from_wts() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.get_access_token_from_wts", false]], "get_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_aliases", false]], "get_all_records() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_all_records", false]], "get_dictionary_all() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_dictionary_all", false]], "get_dictionary_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_dictionary_node", false]], "get_fresh_token() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.get_fresh_token", false]], "get_graphql_schema() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_graphql_schema", false]], "get_guids_prefix() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_guids_prefix", false]], "get_index_key_paths() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_index_key_paths", false]], "get_latest_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_latest_version", false]], "get_output() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_output", false]], "get_presigned_url() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.get_presigned_url", false]], "get_programs() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_programs", false]], "get_project_dictionary() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_project_dictionary", false]], "get_project_manifest() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_project_manifest", false]], "get_projects() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_projects", false]], "get_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_record", false]], "get_record_doc() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_record_doc", false]], "get_records() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_records", false]], "get_records_on_page() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_records_on_page", false]], "get_stats() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_stats", false]], "get_status() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_status", false]], "get_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_urls", false]], "get_valid_guids() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_valid_guids", false]], "get_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_version", false]], "get_version() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_version", false]], "get_version() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_version", false]], "get_versions() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_versions", false]], "get_with_params() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_with_params", false]], "graphql_query() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.graphql_query", false]], "guid (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.GUID", false]], "guid_type_for_indexed_file_object (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.GUID_TYPE_FOR_INDEXED_FILE_OBJECT", false]], "guid_type_for_non_indexed_file_object (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.GUID_TYPE_FOR_NON_INDEXED_FILE_OBJECT", false]], "hostname (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.hostname", false]], "index_object_manifest() (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.index_object_manifest", false]], "indexd_record_page_size (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.INDEXD_RECORD_PAGE_SIZE", false]], "is_healthy() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.is_healthy", false]], "is_healthy() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.is_healthy", false]], "is_healthy() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.is_healthy", false]], "list_access_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_access_in_drs_manifest", false]], "list_drs_object() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_drs_object", false]], "list_files_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_files_in_drs_manifest", false]], "list_jobs() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.list_jobs", false]], "load() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.load", false]], "load_manifest() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.load_manifest", false]], "ls() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.ls", false]], "ls_path() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.ls_path", false]], "manifest (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.Manifest", false]], "max_concurrent_requests (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.MAX_CONCURRENT_REQUESTS", false]], "max_concurrent_requests (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.MAX_CONCURRENT_REQUESTS", false]], "max_concurrent_requests (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.MAX_CONCURRENT_REQUESTS", false]], "md5 (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.MD5", false]], "md5sum (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.md5sum", false]], "module": [[9, "module-gen3.tools", false], [10, "module-gen3.tools.download.drs_download", false], [11, "module-gen3.tools.indexing.download_manifest", false], [11, "module-gen3.tools.indexing.index_manifest", false], [11, "module-gen3.tools.indexing.verify_manifest", false], [12, "module-gen3.tools.metadata.ingest_manifest", false]], "object_id (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.object_id", false]], "object_id (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.object_id", false]], "object_type (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.object_type", false]], "open_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.open_project", false]], "pprint() (gen3.tools.download.drs_download.downloadable method)": [[10, "gen3.tools.download.drs_download.Downloadable.pprint", false]], "prev_guid (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.PREV_GUID", false]], "query() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.query", false]], "query() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.query", false]], "query() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.query", false]], "query_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.query_urls", false]], "raw_data_download() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.raw_data_download", false]], "refresh_access_token() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.refresh_access_token", false]], "resolve_objects() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.resolve_objects", false]], "rm() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.rm", false]], "rm_path() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.rm_path", false]], "size (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.SIZE", false]], "start_time (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.start_time", false]], "status (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.status", false]], "submit_file() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.submit_file", false]], "submit_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.submit_record", false]], "threadcontrol (class in gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.ThreadControl", false]], "tmp_folder (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.TMP_FOLDER", false]], "update() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.update", false]], "update_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.update_aliases", false]], "update_blank() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.update_blank", false]], "update_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.update_record", false]], "updated_time (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.updated_time", false]], "upload() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.upload", false]], "upload_file() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.upload_file", false]], "upload_file_to_guid() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.upload_file_to_guid", false]], "upload_url() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.upload_url", false]], "urls (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.URLS", false]], "user_access() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.user_access", false]]}, "objects": {"gen3": [[9, 3, 0, "-", "tools"]], "gen3.auth": [[0, 0, 1, "", "Gen3Auth"]], "gen3.auth.Gen3Auth": [[0, 1, 1, "", "curl"], [0, 1, 1, "", "get_access_token"], [0, 1, 1, "", "get_access_token_from_wts"], [0, 1, 1, "", "refresh_access_token"]], "gen3.file": [[1, 0, 1, "", "Gen3File"]], "gen3.file.Gen3File": [[1, 1, 1, "", "delete_file"], [1, 1, 1, "", "delete_file_locations"], [1, 1, 1, "", "download_single"], [1, 1, 1, "", "get_presigned_url"], [1, 1, 1, "", "upload_file"], [1, 1, 1, "", "upload_file_to_guid"]], "gen3.index": [[3, 0, 1, "", "Gen3Index"]], "gen3.index.Gen3Index": [[3, 1, 1, "", "async_create_record"], [3, 1, 1, "", "async_get_record"], [3, 1, 1, "", "async_get_records_from_checksum"], [3, 1, 1, "", "async_get_records_on_page"], [3, 1, 1, "", "async_get_with_params"], [3, 1, 1, "", "async_query_urls"], [3, 1, 1, "", "async_update_record"], [3, 1, 1, "", "create_blank"], [3, 1, 1, "", "create_new_version"], [3, 1, 1, "", "create_record"], [3, 1, 1, "", "delete_record"], [3, 1, 1, "", "get"], [3, 1, 1, "", "get_all_records"], [3, 1, 1, "", "get_guids_prefix"], [3, 1, 1, "", "get_latest_version"], [3, 1, 1, "", "get_record"], [3, 1, 1, "", "get_record_doc"], [3, 1, 1, "", "get_records"], [3, 1, 1, "", "get_records_on_page"], [3, 1, 1, "", "get_stats"], [3, 1, 1, "", "get_urls"], [3, 1, 1, "", "get_valid_guids"], [3, 1, 1, "", "get_version"], [3, 1, 1, "", "get_versions"], [3, 1, 1, "", "get_with_params"], [3, 1, 1, "", "is_healthy"], [3, 1, 1, "", "query_urls"], [3, 1, 1, "", "update_blank"], [3, 1, 1, "", "update_record"]], "gen3.jobs": [[4, 0, 1, "", "Gen3Jobs"]], "gen3.jobs.Gen3Jobs": [[4, 1, 1, "", "async_run_job_and_wait"], [4, 1, 1, "", "create_job"], [4, 1, 1, "", "get_output"], [4, 1, 1, "", "get_status"], [4, 1, 1, "", "get_version"], [4, 1, 1, "", "is_healthy"], [4, 1, 1, "", "list_jobs"]], "gen3.metadata": [[5, 0, 1, "", "Gen3Metadata"]], "gen3.metadata.Gen3Metadata": [[5, 1, 1, "", "async_create"], [5, 1, 1, "", "async_create_aliases"], [5, 1, 1, "", "async_delete_alias"], [5, 1, 1, "", "async_delete_aliases"], [5, 1, 1, "", "async_get"], [5, 1, 1, "", "async_get_aliases"], [5, 1, 1, "", "async_update"], [5, 1, 1, "", "async_update_aliases"], [5, 2, 1, "", "auth_provider"], [5, 1, 1, "", "batch_create"], [5, 1, 1, "", "create"], [5, 1, 1, "", "create_aliases"], [5, 1, 1, "", "create_index_key_path"], [5, 1, 1, "", "delete"], [5, 1, 1, "", "delete_alias"], [5, 1, 1, "", "delete_aliases"], [5, 1, 1, "", "delete_index_key_path"], [5, 2, 1, "", "endpoint"], [5, 1, 1, "", "get"], [5, 1, 1, "", "get_aliases"], [5, 1, 1, "", "get_index_key_paths"], [5, 1, 1, "", "get_version"], [5, 1, 1, "", "is_healthy"], [5, 1, 1, "", "query"], [5, 1, 1, "", "update"], [5, 1, 1, "", "update_aliases"]], "gen3.object": [[6, 0, 1, "", "Gen3Object"]], "gen3.object.Gen3Object": [[6, 1, 1, "", "delete_object"]], "gen3.query": [[7, 0, 1, "", "Gen3Query"]], "gen3.query.Gen3Query": [[7, 1, 1, "", "graphql_query"], [7, 1, 1, "", "query"], [7, 1, 1, "", "raw_data_download"]], "gen3.submission": [[8, 0, 1, "", "Gen3Submission"]], "gen3.submission.Gen3Submission": [[8, 1, 1, "", "create_program"], [8, 1, 1, "", "create_project"], [8, 1, 1, "", "delete_node"], [8, 1, 1, "", "delete_nodes"], [8, 1, 1, "", "delete_program"], [8, 1, 1, "", "delete_project"], [8, 1, 1, "", "delete_record"], [8, 1, 1, "", "delete_records"], [8, 1, 1, "", "export_node"], [8, 1, 1, "", "export_record"], [8, 1, 1, "", "get_dictionary_all"], [8, 1, 1, "", "get_dictionary_node"], [8, 1, 1, "", "get_graphql_schema"], [8, 1, 1, "", "get_programs"], [8, 1, 1, "", "get_project_dictionary"], [8, 1, 1, "", "get_project_manifest"], [8, 1, 1, "", "get_projects"], [8, 1, 1, "", "open_project"], [8, 1, 1, "", "query"], [8, 1, 1, "", "submit_file"], [8, 1, 1, "", "submit_record"]], "gen3.tools.download": [[10, 3, 0, "-", "drs_download"]], "gen3.tools.download.drs_download": [[10, 0, 1, "", "DownloadManager"], [10, 0, 1, "", "DownloadStatus"], [10, 0, 1, "", "Downloadable"], [10, 0, 1, "", "Manifest"], [10, 4, 1, "", "download_files_in_drs_manifest"], [10, 4, 1, "", "list_access_in_drs_manifest"], [10, 4, 1, "", "list_drs_object"], [10, 4, 1, "", "list_files_in_drs_manifest"]], "gen3.tools.download.drs_download.DownloadManager": [[10, 1, 1, "", "cache_hosts_wts_tokens"], [10, 1, 1, "", "download"], [10, 1, 1, "", "get_fresh_token"], [10, 1, 1, "", "resolve_objects"], [10, 1, 1, "", "user_access"]], "gen3.tools.download.drs_download.DownloadStatus": [[10, 2, 1, "", "end_time"], [10, 2, 1, "", "start_time"], [10, 2, 1, "", "status"]], "gen3.tools.download.drs_download.Downloadable": [[10, 2, 1, "", "_manager"], [10, 2, 1, "", "access_methods"], [10, 2, 1, "", "children"], [10, 2, 1, "", "created_time"], [10, 1, 1, "", "download"], [10, 2, 1, "", "file_name"], [10, 2, 1, "", "file_size"], [10, 2, 1, "", "hostname"], [10, 2, 1, "", "object_id"], [10, 2, 1, "", "object_type"], [10, 1, 1, "", "pprint"], [10, 2, 1, "", "updated_time"]], "gen3.tools.download.drs_download.Manifest": [[10, 2, 1, "", "commons_url"], [10, 1, 1, "", "create_object_list"], [10, 2, 1, "", "file_name"], [10, 2, 1, "", "file_size"], [10, 1, 1, "", "load"], [10, 1, 1, "", "load_manifest"], [10, 2, 1, "", "md5sum"], [10, 2, 1, "", "object_id"]], "gen3.tools.indexing": [[11, 3, 0, "-", "download_manifest"], [11, 3, 0, "-", "index_manifest"], [11, 3, 0, "-", "verify_manifest"]], "gen3.tools.indexing.download_manifest": [[11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "INDEXD_RECORD_PAGE_SIZE"], [11, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [11, 2, 1, "", "TMP_FOLDER"], [11, 4, 1, "", "async_download_object_manifest"]], "gen3.tools.indexing.index_manifest": [[11, 2, 1, "", "ACLS"], [11, 2, 1, "", "AUTHZ"], [11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "GUID"], [11, 2, 1, "", "MD5"], [11, 2, 1, "", "PREV_GUID"], [11, 2, 1, "", "SIZE"], [11, 0, 1, "", "ThreadControl"], [11, 2, 1, "", "URLS"], [11, 4, 1, "", "delete_all_guids"], [11, 4, 1, "", "index_object_manifest"]], "gen3.tools.indexing.verify_manifest": [[11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [11, 4, 1, "", "async_verify_object_manifest"]], "gen3.tools.metadata": [[12, 3, 0, "-", "ingest_manifest"]], "gen3.tools.metadata.ingest_manifest": [[12, 2, 1, "", "COLUMN_TO_USE_AS_GUID"], [12, 2, 1, "", "GUID_TYPE_FOR_INDEXED_FILE_OBJECT"], [12, 2, 1, "", "GUID_TYPE_FOR_NON_INDEXED_FILE_OBJECT"], [12, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [12, 4, 1, "", "async_ingest_metadata_manifest"], [12, 4, 1, "", "async_query_urls_from_indexd"]], "gen3.wss": [[13, 0, 1, "", "Gen3WsStorage"]], "gen3.wss.Gen3WsStorage": [[13, 1, 1, "", "copy"], [13, 1, 1, "", "download"], [13, 1, 1, "", "download_url"], [13, 1, 1, "", "ls"], [13, 1, 1, "", "ls_path"], [13, 1, 1, "", "rm"], [13, 1, 1, "", "rm_path"], [13, 1, 1, "", "upload"], [13, 1, 1, "", "upload_url"]]}, "objnames": {"0": ["py", "class", "Python class"], "1": ["py", "method", "Python method"], "2": ["py", "attribute", "Python attribute"], "3": ["py", "module", "Python module"], "4": ["py", "function", "Python function"]}, "objtypes": {"0": "py:class", "1": "py:method", "2": "py:attribute", "3": "py:module", "4": "py:function"}, "terms": {"": [1, 4, 8, 10, 11], "0": [5, 7, 8, 11], "0046513": [], "0185335": [], "052073": [], "0576868": [], "058966": [], "064572": [], "07464": [], "0790412": [], "0a80fada010c": 11, "0a80fada096c": 11, "0a80fada097c": 11, "0a80fada098c": 11, "0a80fada099c": 11, "1": [4, 5, 8, 10, 11], "10": [5, 7, 11], "100": [8, 11], "1069167": [], "11e9": 11, "1344793": [], "1676264": [], "1713542306": [], "1713542765": [], "1713543033": [], "1713543225": [], "1713543506": [], "1713543956": [], "1713544131": [], "1713544132": [], "1713544397": [], "1713544598": [], "1713545857": [], "1713545858": [], "1713549370": [], "1713549689": [], "1713550571": [], "1713557245": [], "1713559376": [], "1713560080": [], "1713560402": [], "1713560403": [], "1713561061": [], "1713562690": [], "1717169008": [], "1717170449": [], "1717171842": [], "1717171843": [], "1717172360": [], "1717172577": [], "1717172773": [11, 12], "1731803": [], "1771936": [], "1913438": [], "2": [5, 11], "2184267": [], "24": [11, 12], "255e396f": 11, "2877355": [], "2930224": [], "2995": [], "3": [5, 11], "30": 8, "3041446": [], "3102272": [], "33": 5, "333": 5, "343434344": 11, "363455714": 11, "3935378": [], "4": [5, 11], "4017086": [], "4052968": [], "4090197": [], "4463434": [], "450c": 11, "4632835": [], "4649727": [], "4714": 8, "473d83400bc1bc9dc635e334fadd433c": 11, "473d83400bc1bc9dc635e334faddd33c": 11, "473d83400bc1bc9dc635e334fadde33c": 11, "473d83400bc1bc9dc635e334faddf33c": 11, "4752307": [], "4756553": [], "5": [0, 5], "50": 7, "517729": [], "5202463": [], "543434443": 11, "5669184": [], "568308": [], "573305": [], "5899982": [], "639124": 11, "6692646": [], "6739478": [], "674552": [], "6f90": 8, "700799": [], "7232893": [], "756255": [], "760149": [], "7841465": [], "7d3d8d2083b4": 11, "8044841": [], "8375325": [], "8420": 8, "8630717": [], "8874054": [], "8882551": [], "9306026": 12, "93d9af72": 11, "9a07": 11, "A": [1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "AND": 5, "Be": 1, "But": 5, "By": 11, "For": [1, 5, 6, 7, 8, 9, 11], "IF": 11, "If": [0, 1, 7, 11, 12], "In": 10, "It": 10, "NOT": 12, "OR": 5, "One": 7, "Such": 9, "THE": 11, "That": 3, "The": [0, 1, 2, 3, 5, 8, 10, 11], "There": 11, "These": 9, "To": 11, "Will": [4, 7, 10], "_get_acl_from_row": 11, "_get_authz_from_row": 11, "_get_file_name_from_row": 11, "_get_file_size_from_row": 11, "_get_guid_for_row": 12, "_get_guid_from_row": 11, "_get_md5_from_row": 11, "_get_urls_from_row": 11, "_guid_typ": 12, "_manag": [2, 9, 10], "_query_for_associated_indexd_record_guid": 12, "_ssl": [3, 4, 5], "a5c6": 11, "ab167e49d25b488939b1ede42752458b": 3, "about": [2, 3], "abov": 11, "access": [0, 1, 3, 7, 10], "access_method": [2, 9, 10], "access_token": 0, "accesstoken": 0, "acl": [2, 3, 9, 11], "across": 11, "act": 0, "action": [9, 11], "actual": 11, "ad": 3, "add": [3, 5], "addit": [3, 5, 10, 11], "admin": [5, 11], "admin_endpoint_suffix": 5, "after": 10, "against": [3, 7, 8, 11, 12], "algorithm": 3, "alia": [3, 5], "alias": 5, "aliv": 7, "all": [1, 3, 4, 5, 6, 7, 8, 10, 11, 12], "allow": [0, 6, 8, 10, 11, 12], "allowed_data_upload_bucket": 1, "along": 2, "alreadi": 9, "also": 1, "altern": [5, 11], "alwai": 5, "ammount": 12, "amount": [1, 9], "an": [0, 3, 6, 8, 10, 11], "ani": [0, 5, 10, 11], "anoth": 5, "api": [0, 5, 8, 11], "api_kei": 11, "appli": 7, "appropri": 13, "ar": [5, 7, 8, 9, 10, 11], "arbitrari": 0, "argument": [0, 13], "arrai": 8, "asc": 7, "assign": 9, "assist": 10, "associ": [3, 5], "assum": 11, "async": [3, 4, 5, 9, 11, 12], "async_cr": [2, 5], "async_create_alias": [2, 5], "async_create_record": [2, 3], "async_delete_alia": [2, 5], "async_delete_alias": [2, 5], "async_download_object_manifest": [2, 9, 11], "async_get": [2, 5], "async_get_alias": [2, 5], "async_get_record": [2, 3], "async_get_records_from_checksum": [2, 3], "async_get_records_on_pag": [2, 3], "async_get_with_param": [2, 3], "async_ingest_metadata_manifest": [2, 9, 12], "async_query_url": [2, 3], "async_query_urls_from_indexd": [2, 9, 12], "async_run_job_and_wait": [2, 4], "async_upd": [2, 5], "async_update_alias": [2, 5], "async_update_record": [2, 3], "async_verify_object_manifest": [2, 9, 11], "asynchron": [3, 4, 5], "asyncio": [11, 12], "asyncron": 5, "attach": [3, 5], "attempt": 11, "attribut": [10, 11], "auth": [1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "auth_provid": [1, 2, 3, 4, 5, 6, 7, 8, 13], "authbas": 0, "authent": 0, "author": 1, "authz": [0, 1, 2, 3, 9, 10, 11], "auto": [0, 2], "automat": 0, "avail": [1, 2, 10, 11], "az": 1, "b": [5, 11], "b0f1": 11, "bar": 10, "base": [0, 1, 3, 4, 5, 6, 7, 8, 9, 11, 13], "baseid": 3, "basic": [3, 11, 12], "batch_creat": [2, 5], "batch_siz": 8, "behalf": 0, "behavior": 11, "being": 3, "belong": 8, "below": 11, "blank": 3, "blob": [5, 7], "bodi": 3, "bool": [4, 5, 8, 10, 11, 12], "boolean": 3, "bownload": 10, "broad": 9, "broken": 9, "bucket": [1, 6], "bundl": 10, "byte": 10, "c": [5, 11], "cach": 10, "cache_hosts_wts_token": [2, 9, 10], "call": [10, 13], "can": [0, 3, 4, 8, 11, 12], "capabl": 9, "case": [0, 10], "categori": 9, "ccle": 8, "ccle_one_record": 8, "ccle_sample_nod": 8, "cdi": 7, "chang": [3, 11], "checksum": [3, 10], "checksum_typ": 3, "child": 10, "children": [2, 9, 10], "chunk_siz": 8, "class": [0, 2, 10, 11, 13], "cli": 10, "client": [0, 3], "client_credenti": 0, "client_id": 0, "client_scop": 0, "client_secret": 0, "code": [2, 8], "column": [11, 12], "column_to_use_as_guid": [2, 9, 12], "columna": 11, "columnb": 11, "columnc": 11, "com": 7, "comma": 11, "command": [10, 11], "common": [0, 1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13], "commons_url": [2, 9, 10, 11, 12], "complet": [4, 11], "complex": 7, "concat": 11, "concurr": [11, 12], "configur": 1, "connect": 12, "consist": 3, "constructor": 0, "contain": [0, 2, 5, 8, 9, 10, 11, 12], "content": [3, 13], "content_created_d": 3, "content_updated_d": 3, "continu": 10, "control": 3, "conveni": 10, "copi": [2, 13], "coroutin": 11, "correspond": 3, "count": 3, "crdc": 0, "creat": [2, 3, 4, 5, 6, 8, 10, 11], "create_alias": [2, 5], "create_blank": [2, 3], "create_index_key_path": [2, 5], "create_job": [2, 4], "create_new_vers": [2, 3], "create_object_list": [2, 9, 10], "create_program": [2, 8], "create_project": [2, 8], "create_record": [2, 3], "created_tim": [2, 9, 10], "creation": [3, 11], "cred": 3, "credenti": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "csv": [8, 11, 12], "curl": [0, 2], "current": [6, 8, 10], "current_dir": [2, 9, 11], "custom": 11, "d": 5, "d70b41b9": 8, "data": [0, 1, 3, 5, 7, 8, 10, 11], "data_spreadsheet": 8, "data_typ": 7, "data_upload_bucket": 1, "dataa": 11, "datab": 11, "databas": 5, "datacommon": 0, "datafil": 10, "datamanag": 10, "date": 3, "datetim": [1, 3, 10], "dbgap": 12, "dcf": 8, "def": 11, "default": [0, 1, 3, 7, 8, 11, 12], "defin": [5, 8, 10], "delai": 4, "delet": [0, 1, 2, 3, 5, 6, 8, 10, 11], "delete_alia": [2, 5], "delete_alias": [2, 5], "delete_all_guid": [2, 9, 11], "delete_fil": [1, 2], "delete_file_loc": [1, 2, 6], "delete_index_key_path": [2, 5], "delete_nod": [2, 8], "delete_object": [2, 6], "delete_program": [2, 8], "delete_project": [2, 8], "delete_record": [2, 3, 8], "delete_unpacked_packag": 10, "delimet": [11, 12], "delimit": 11, "demograph": 8, "deprec": 1, "descript": [3, 5], "desir": 11, "dest_path": 13, "dest_urlstr": 13, "dest_w": 13, "dest_wskei": 13, "detail": [2, 7, 10], "determin": [10, 11, 12], "dev": 11, "dict": [3, 4, 5, 10, 11, 12], "dictionari": [3, 4, 5, 7, 8], "did": 3, "differ": 5, "direct": 0, "directori": [10, 11], "disabl": 10, "discoveri": 10, "disk": 13, "dispatch": 4, "dist_resolut": 3, "distribut": 3, "doc": [7, 10], "docstr": 2, "document": [1, 3], "doe": [0, 12], "domain": [11, 12], "done": 4, "download": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 13], "download_files_in_drs_manifest": [2, 9, 10], "download_list": 10, "download_manifest": 11, "download_singl": [1, 2], "download_url": [2, 13], "downloadmanag": [2, 9, 10], "downloadstatu": [2, 9, 10], "dr": [2, 9], "drs_download": 10, "drs_hostnam": 10, "drsdownload": 10, "drsobjecttyp": 10, "e": [5, 10], "e043ab8b77b9": 8, "each": [3, 8, 10, 11], "effici": 9, "eg": 3, "either": 8, "elasticsearch": 7, "els": [0, 12], "elsewher": 12, "empti": [8, 11], "enabl": 11, "end": [5, 10], "end_tim": [2, 9, 10], "endpoint": [0, 1, 2, 3, 4, 5, 7, 8, 13], "entir": 8, "entri": [3, 11], "env": 0, "environ": 0, "equal": 7, "error": [10, 11, 12], "error_nam": 11, "etc": 8, "even": 11, "everi": [9, 11], "everyth": 11, "ex": [0, 11, 12], "exampl": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "exclud": 3, "execut": [7, 8, 11], "exist": [1, 3, 5, 6, 9, 12], "expect": [5, 9, 11], "experi": 8, "expir": [0, 1], "expires_in": 1, "export": [8, 10], "export_nod": [2, 8], "export_record": [2, 8], "f1f8": 11, "factori": 10, "fail": [8, 10], "fals": [3, 5, 6, 10, 11], "featur": [1, 6], "fenc": [0, 1], "fetch": 0, "field": [3, 5, 7, 11, 12], "fieldnam": 11, "file": [0, 2, 3, 4, 8, 9, 10, 11, 12, 13], "file_nam": [1, 2, 3, 9, 10, 11], "file_s": [2, 9, 10, 11], "file_st": 3, "fileformat": 8, "filenam": [0, 8, 10, 11, 12], "files": 10, "fill": 12, "filter": [5, 7], "filter_object": 7, "first": [7, 8], "flag": 11, "folder": 11, "follow": [0, 11], "forc": 11, "force_metadata_columns_even_if_empti": 11, "form": 13, "format": [3, 5, 8, 11], "from": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13], "func_to_parse_row": [11, 12], "function": [2, 3, 4, 5, 9, 10, 11, 12], "g": 10, "gen3": [10, 11, 12], "gen3_api_kei": 0, "gen3_oidc_client_creds_secret": 0, "gen3auth": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "gen3fil": [1, 2], "gen3index": [2, 3], "gen3job": [2, 4, 10], "gen3metadata": [2, 5], "gen3object": [2, 6], "gen3queri": [2, 7], "gen3submiss": [2, 8], "gen3wsstorag": [2, 13], "gener": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 13], "get": [0, 1, 2, 3, 4, 5, 8, 10, 11, 12, 13], "get_access_token": [0, 2], "get_access_token_from_wt": [0, 2], "get_alias": [2, 5], "get_all_record": [2, 3], "get_dictionary_al": [2, 8], "get_dictionary_nod": [2, 8], "get_fresh_token": [2, 9, 10], "get_graphql_schema": [2, 8], "get_guid_from_fil": 12, "get_guids_prefix": [2, 3], "get_index_key_path": [2, 5], "get_latest_vers": [2, 3], "get_output": [2, 4], "get_presigned_url": [1, 2], "get_program": [2, 8], "get_project": [2, 8], "get_project_dictionari": [2, 8], "get_project_manifest": [2, 8], "get_record": [2, 3], "get_record_doc": [2, 3], "get_records_on_pag": [2, 3], "get_stat": [2, 3], "get_statu": [2, 4], "get_url": [2, 3], "get_valid_guid": [2, 3], "get_vers": [2, 3, 4, 5], "get_with_param": [2, 3], "giangb": 11, "github": [2, 7], "give": 1, "given": [0, 3, 4, 5, 8, 10, 12, 13], "global": [4, 5], "good": 3, "grant": 0, "graph": 8, "graphql": [7, 8], "graphql_queri": [2, 7], "group": 3, "guid": [1, 2, 3, 5, 6, 9, 11, 12], "guid_exampl": 11, "guid_for_row": 12, "guid_from_fil": 12, "guid_type_for_indexed_file_object": [2, 9, 12], "guid_type_for_non_indexed_file_object": [2, 9, 12], "guppi": 7, "ha": [0, 11], "handl": [3, 10], "hardcod": 0, "has_vers": 3, "hash": [3, 11], "hash_typ": 3, "have": [5, 11], "header": 11, "healthi": [3, 4, 5], "help": 11, "helper": 2, "hit": 11, "host": 10, "hostnam": [2, 9, 10], "how": [8, 11], "howto": 10, "http": [0, 7, 11, 12], "i": [0, 1, 2, 3, 4, 5, 8, 10, 11, 12], "id": [0, 1, 3, 5, 10, 11], "idea": 3, "identifi": [3, 5, 9, 11], "idp": 0, "illustr": 11, "immut": 3, "implement": 0, "implic": 11, "import": 11, "includ": [0, 3], "indent": 10, "index": [0, 2, 5, 9], "index_manifest": 11, "index_object_manifest": [2, 9, 11], "indexd": [1, 3, 6, 10, 11, 12], "indexd_field": [11, 12], "indexd_record_page_s": [2, 9, 11], "indexed_file_object_guid": 12, "indic": [0, 11], "infil": 10, "info": [3, 11], "inform": [2, 3, 10], "ingest": [2, 9], "ingest_manifest": 12, "initi": [0, 10], "input": [4, 10, 11], "input_manifest": 11, "instal": [0, 2, 11], "instanc": [1, 3, 6, 7, 8, 9, 10], "instead": [1, 7, 11], "int": [1, 3, 5, 7, 8, 10, 11, 12], "integ": [1, 3, 8], "intend": 0, "interact": [1, 3, 4, 5, 6, 8, 13], "interest": 10, "interpret": 0, "introspect": 8, "involv": 9, "is_healthi": [2, 3, 4, 5], "is_indexed_file_object": 12, "isn": 1, "issu": 0, "its": [1, 3], "job": 2, "job_id": 4, "job_input": 4, "job_nam": 4, "json": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "just": [5, 11, 12], "jwt": 0, "kei": [0, 3, 5, 13], "know": 11, "known": 10, "kwarg": [3, 4, 5], "l": [2, 13], "larg": 9, "last": 10, "latest": 3, "least": 3, "level": 6, "librari": 11, "like": [3, 5, 9, 11, 12], "limit": [1, 3, 5, 12], "linear": 4, "linux": 10, "list": [0, 1, 3, 4, 5, 7, 8, 10, 11, 13], "list_access_in_drs_manifest": [2, 9, 10], "list_drs_object": [2, 9, 10], "list_files_in_drs_manifest": [2, 9, 10], "list_job": [2, 4], "live": [11, 12], "load": [2, 9, 10], "load_manifest": [2, 9, 10], "local": [0, 13], "locat": [1, 6], "lock": 12, "log": [8, 10, 11, 12], "logic": [5, 12], "loop": 11, "ls_path": [2, 13], "maco": 11, "made": 3, "mai": [0, 9, 11], "main": 10, "make": [9, 11], "manag": [1, 5, 10], "mani": [8, 11], "manifest": [2, 8, 9, 10, 11, 12], "manifest_1": 10, "manifest_fil": [11, 12], "manifest_file_delimit": [11, 12], "manifest_row_pars": [11, 12], "map": [0, 11], "mark": 8, "master": 7, "match": [3, 5, 12], "max": 5, "max_concurrent_request": [2, 9, 11, 12], "max_presigned_url_ttl": 1, "max_tri": 8, "maximum": [11, 12], "md": [5, 7, 10, 12], "md5": [2, 3, 9, 11], "md5_hash": 11, "md5sum": [2, 9, 10], "mean": 8, "mechan": 3, "merg": 5, "metadata": [2, 3, 6, 9, 11], "metadata_list": 5, "metadata_sourc": 12, "metadata_typ": 12, "metdata": 12, "method": [1, 7, 10], "minimum": 10, "minut": 0, "mode": 7, "modul": [2, 10, 11], "more": [2, 5, 7, 9, 10], "most": 9, "mostli": 2, "multipl": [8, 11], "must": [1, 5], "my_common": 10, "my_credenti": 10, "my_field": 7, "my_index": 7, "my_program": 7, "my_project": 7, "name": [3, 4, 8, 10, 11, 12, 13], "namespac": [0, 12], "necessari": [3, 5], "need": [3, 7, 10, 11], "nest": 5, "net": 11, "never": 0, "new": [0, 3], "node": 8, "node_nam": 8, "node_typ": 8, "none": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "note": [0, 3, 11, 12], "noth": [3, 6], "now": [1, 8], "num": 5, "num_process": 11, "num_total_fil": 11, "number": [3, 7, 8, 11, 12], "o": 0, "object": [1, 2, 3, 4, 5, 7, 8, 9, 10, 11, 13], "object_id": [1, 2, 9, 10], "object_list": 10, "object_typ": [2, 9, 10], "objectid": 10, "obtain": [0, 10], "occur": 10, "off": 5, "offset": [5, 7], "oidc": 0, "old": 3, "one": [3, 5, 10, 11], "onli": [3, 5, 7, 8, 10, 11], "open": [8, 10, 11], "open_project": [2, 8], "openid": 0, "opt": 0, "option": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11], "order": [0, 8], "ordered_node_list": 8, "org": 10, "otherwis": 10, "output": [4, 5, 11, 12], "output_dir": 10, "output_filenam": [11, 12], "overrid": [0, 11, 12], "overwrit": 5, "own": 0, "packag": 10, "page": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 13], "pagin": 3, "parallel": 11, "param": [3, 5, 8, 10], "paramet": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "pars": [10, 11, 12, 13], "parser": [11, 12], "particular": 0, "pass": [0, 7, 8, 10], "password": [11, 12], "path": [0, 1, 5, 10, 11, 13], "path_to_manifest": 11, "pattern": [3, 12], "pdcdatastor": 11, "pend": 10, "per": [11, 12], "peregrin": 8, "permiss": 10, "persist": 9, "phs0001": 11, "phs0002": 11, "pick": 1, "pla": 11, "place": 11, "planx": 11, "point": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "popul": [10, 12], "posit": [1, 7], "possibl": 10, "post": [0, 11], "pprint": [2, 9, 10], "prefix": 3, "presign": 1, "pretti": 10, "prev_guid": [2, 9, 11], "previou": [3, 11], "previous": 4, "print": [8, 10], "process": 11, "processed_fil": 11, "profil": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "program": [8, 11], "progress": [8, 10], "project": [8, 11], "project_id": [7, 8], "protocol": 1, "provid": [0, 1, 3, 5, 7, 8, 12], "public": [3, 5], "put": 0, "py": 11, "python": [2, 9, 11], "python3": 11, "python_subprocess_command": 11, "queri": [1, 2, 3, 5, 8, 11, 12], "query_str": 7, "query_txt": [7, 8], "query_url": [2, 3], "quickstart": 2, "rather": 0, "raw": [7, 11], "raw_data_download": [2, 7], "rbac": 3, "read": [3, 5, 11], "readm": 2, "reason": 10, "record": [1, 3, 5, 7, 8, 11, 12], "refresh": [0, 10], "refresh_access_token": [0, 2], "refresh_fil": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "refresh_token": 0, "regist": 8, "regular": 7, "relat": 9, "remov": [1, 6, 11, 13], "replac": 11, "replace_url": 11, "repo": 2, "repres": [3, 5, 10], "represent": [1, 3], "request": [0, 1, 3, 5, 8, 11, 12], "requir": 10, "resolv": 10, "resolve_object": [2, 9, 10], "respect": 7, "respons": [0, 1, 3, 4, 5], "result": [1, 8, 10, 11], "retri": 8, "retriev": [1, 8, 10, 12], "return": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11], "return_full_metadata": 5, "rev": 3, "revers": 8, "revis": 3, "right": 1, "rm": [2, 13], "rm_path": [2, 13], "root": [11, 12], "row": [7, 8, 11, 12], "row_offset": 8, "rtype": 3, "run": [8, 11], "s3": [1, 10, 11], "safe": 11, "same": [5, 11, 13], "sampl": [8, 10], "sandbox": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "save": 10, "save_directori": 10, "schema": 8, "scope": [0, 1], "screen": 8, "script": 2, "search": [0, 2, 3], "second": [1, 4], "secret": 0, "see": [7, 10, 11], "self": 10, "semaphon": 12, "semaphor": 12, "separ": [0, 11], "server": 10, "servic": [1, 3, 4, 5, 6, 8, 11, 12, 13], "service_loc": [3, 4, 5], "session": 11, "set": [0, 1, 5, 10], "setup": 2, "sheepdog": 8, "should": [0, 8, 11], "show": 10, "show_progress": 10, "shown": 11, "sign": 1, "signpost": 3, "similar": 10, "simpl": 3, "simpli": 11, "sinc": 3, "singl": [1, 5, 8], "size": [2, 3, 9, 10, 11], "skip": 8, "sleep": 4, "so": 11, "some": [0, 2], "someth": 11, "sort": 7, "sort_field": 7, "sort_object": 7, "sourc": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "space": [0, 11], "specif": [5, 8, 11, 12], "specifi": [0, 1, 3, 11, 13], "spreadsheet": 8, "src_path": 13, "src_urlstr": 13, "src_w": 13, "src_wskei": 13, "ssl": [3, 4, 5], "start": [3, 4, 7, 8, 10], "start_tim": [2, 9, 10], "static": 10, "statu": [2, 4, 9, 10], "storag": [1, 2, 6], "store": [1, 3, 10], "str": [0, 1, 3, 4, 5, 7, 8, 10, 11, 12], "string": [0, 3, 5, 11, 13], "strip": 11, "sub": 8, "subject": [7, 8], "submiss": 2, "submit": [8, 11], "submit_additional_metadata_column": 11, "submit_fil": [2, 8], "submit_record": [2, 8], "submitter_id": 7, "success": 10, "successfulli": 10, "suffici": 3, "suppli": 3, "support": [0, 1, 5, 8, 11], "sure": 1, "synchron": 11, "syntax": 7, "system": [6, 7, 8, 9], "t": [1, 5, 11], "tab": 11, "task": 9, "temporari": 11, "test": 11, "test1": 11, "test2": 11, "test3": 11, "test4": 11, "test5": 11, "text": [1, 7, 8], "than": [0, 5], "thei": [0, 10], "them": [10, 11], "thi": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "those": 11, "thread": 11, "thread_num": 11, "threadcontrol": [2, 9, 11], "through": [8, 11], "tier": 7, "time": [1, 3, 8, 10, 11], "timestamp": 10, "tmp_folder": [2, 9, 11], "token": [0, 10], "tool": 2, "total": 11, "treat": [1, 5], "tree": 10, "true": [3, 4, 5, 6, 7, 8, 10, 11, 12], "try": 0, "tsv": [8, 11, 12], "tupl": [0, 3, 11, 12], "type": [1, 3, 4, 5, 7, 8, 10, 11, 12], "typic": 10, "uc": 7, "unaccess": 7, "under": [0, 8, 13], "uniqu": [1, 5], "unknown": 10, "unpack": 10, "unpack_packag": 10, "until": [4, 10], "up": [5, 9], "updat": [2, 3, 5, 10, 11], "update_alias": [2, 5], "update_blank": [2, 3], "update_record": [2, 3], "updated_tim": [2, 9, 10], "upload": [1, 2, 3, 8, 13], "upload_fil": [1, 2], "upload_file_to_guid": [1, 2], "upload_url": [2, 13], "url": [1, 2, 3, 9, 10, 11, 12, 13], "urls_metadata": 3, "us": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "usag": 11, "use_agg_md": 5, "user": [0, 10, 12], "user_access": [2, 9, 10], "usual": 12, "utcnow": 1, "util": 9, "uuid": [1, 3, 8], "uuid1": 8, "uuid2": 8, "valid": [3, 7], "valu": [0, 1, 3, 5, 7, 10, 11], "value_from_indexd": 11, "value_from_manifest": 11, "variabl": [0, 7, 8], "variou": 2, "verbos": [7, 8], "verif": 11, "verifi": [2, 9], "verify_manifest": 11, "verify_object_manifest": 11, "version": [3, 4, 5], "vital_statu": 7, "w": 13, "wa": 0, "wai": 10, "wait": 4, "want": [0, 3, 8], "warn": 11, "we": [3, 11], "web": 0, "what": 5, "when": [0, 3, 7, 10, 12], "where": [0, 3, 5, 11, 12], "whether": [3, 4, 5, 8, 11, 12], "which": [8, 10], "while": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "whose": 5, "within": [0, 2, 9], "without": [3, 5], "won": 5, "work": [0, 10], "workaround": 11, "worksheet": 8, "workspac": [0, 2], "wrapper": 10, "write": 11, "ws_urlstr": 13, "wskei": 13, "wss": 13, "wt": [0, 10], "x": 11, "xlsx": 8, "you": [0, 3, 8, 11], "your": 0}, "titles": ["Gen3 Auth Helper", "Gen3 File Class", "Welcome to Gen3 SDK\u2019s documentation!", "Gen3 Index Class", "Gen3 Jobs Class", "Gen3 Metadata Class", "Gen3 Object Class", "Gen3 Query Class", "Gen3 Submission Class", "Gen3 Tools", "DRS Download Tools", "Indexing Tools", "Metadata Tools", "Gen3 Workspace Storage"], "titleterms": {"": 2, "auth": 0, "class": [1, 3, 4, 5, 6, 7, 8], "document": 2, "download": [10, 11], "dr": 10, "file": 1, "gen3": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 13], "helper": 0, "index": [3, 11], "indic": 2, "ingest": 12, "job": 4, "metadata": [5, 12], "object": 6, "queri": 7, "sdk": 2, "storag": 13, "submiss": 8, "tabl": 2, "tool": [9, 10, 11, 12], "verifi": 11, "welcom": 2, "workspac": 13}}) \ No newline at end of file diff --git a/docs/_build/html/tools/indexing.html b/docs/_build/html/tools/indexing.html index 30b6ccf83..6f3628237 100644 --- a/docs/_build/html/tools/indexing.html +++ b/docs/_build/html/tools/indexing.html @@ -381,7 +381,7 @@

Indexing Tools
-async gen3.tools.indexing.verify_manifest.async_verify_object_manifest(commons_url, manifest_file, max_concurrent_requests=24, manifest_row_parsers={'acl': <function _get_acl_from_row>, 'authz': <function _get_authz_from_row>, 'file_name': <function _get_file_name_from_row>, 'file_size': <function _get_file_size_from_row>, 'guid': <function _get_guid_from_row>, 'md5': <function _get_md5_from_row>, 'urls': <function _get_urls_from_row>}, manifest_file_delimiter=None, output_filename='verify-manifest-errors-1717172577.1069167.log')[source]
+async gen3.tools.indexing.verify_manifest.async_verify_object_manifest(commons_url, manifest_file, max_concurrent_requests=24, manifest_row_parsers={'acl': <function _get_acl_from_row>, 'authz': <function _get_authz_from_row>, 'file_name': <function _get_file_name_from_row>, 'file_size': <function _get_file_size_from_row>, 'guid': <function _get_guid_from_row>, 'md5': <function _get_md5_from_row>, 'urls': <function _get_urls_from_row>}, manifest_file_delimiter=None, output_filename='verify-manifest-errors-1717172773.639124.log')[source]

Verify all file object records into a manifest csv

Parameters:
diff --git a/docs/_build/html/tools/metadata.html b/docs/_build/html/tools/metadata.html index d27262bb1..7885a4faa 100644 --- a/docs/_build/html/tools/metadata.html +++ b/docs/_build/html/tools/metadata.html @@ -102,7 +102,7 @@

Metadata Tools
-async gen3.tools.metadata.ingest_manifest.async_ingest_metadata_manifest(commons_url, manifest_file, metadata_source, auth=None, max_concurrent_requests=24, manifest_row_parsers={'guid_for_row': <function _get_guid_for_row>, 'indexed_file_object_guid': <function _query_for_associated_indexd_record_guid>}, manifest_file_delimiter=None, output_filename='ingest-metadata-manifest-errors-1717172577.573305.log', get_guid_from_file=True, metadata_type=None)[source]
+async gen3.tools.metadata.ingest_manifest.async_ingest_metadata_manifest(commons_url, manifest_file, metadata_source, auth=None, max_concurrent_requests=24, manifest_row_parsers={'guid_for_row': <function _get_guid_for_row>, 'indexed_file_object_guid': <function _query_for_associated_indexd_record_guid>}, manifest_file_delimiter=None, output_filename='ingest-metadata-manifest-errors-1717172773.9306026.log', get_guid_from_file=True, metadata_type=None)[source]

Ingest all metadata records into a manifest csv

Parameters:
From 28176f5bdbd91df2c8b5add6f6f67d452529626b Mon Sep 17 00:00:00 2001 From: Alexander VanTol Date: Fri, 31 May 2024 12:15:20 -0500 Subject: [PATCH 51/62] Update build.yaml --- .github/workflows/build.yaml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index f5124467f..6ab13c24b 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -13,6 +13,7 @@ jobs: matrix: os: [ubuntu-latest, windows-latest, macos-latest] + steps: - name: Install PostgreSQL and dependencies on Ubuntu if: matrix.os == 'ubuntu-latest' run: | From 222a57509551682f894ec3a01acd06074cd6f8fb Mon Sep 17 00:00:00 2001 From: Avantol13 Date: Fri, 31 May 2024 17:16:26 +0000 Subject: [PATCH 52/62] Apply automatic documentation changes --- docs/_build/doctrees/environment.pickle | Bin 1579888 -> 1579893 bytes docs/_build/doctrees/tools/indexing.doctree | Bin 100286 -> 100291 bytes docs/_build/doctrees/tools/metadata.doctree | Bin 35934 -> 35934 bytes docs/_build/html/searchindex.js | 2 +- docs/_build/html/tools/indexing.html | 2 +- docs/_build/html/tools/metadata.html | 2 +- 6 files changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/_build/doctrees/environment.pickle b/docs/_build/doctrees/environment.pickle index 5f0cf4eeb16a6d2e3312001ccbfcb7cdd0f9210e..f9628c898adf2aee990f240d79ee42e99585ae73 100644 GIT binary patch delta 10520 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 delta 10673 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 C2(b$Q diff --git a/docs/_build/doctrees/tools/indexing.doctree b/docs/_build/doctrees/tools/indexing.doctree index 603eeeea425c20e2bab19b88f538631d34cbf6ce..611aad0ddf7dc0b32393151148c054da2a065ea0 100644 GIT binary patch delta 168 zcmdnj&vv+YZ7^Vl>G0IHt+AX_X)}C<@Be$u!g`u9Mk+GSH z;r0S+#vW$Ii`)O&F&;vdIqAT-jhoSa`a}mtJwYTbCVDyf>FU!R-5G_UvQikbQ!?0N Sr(}rrKy;&680gEGYXt!NcP@|s delta 163 zcmX@y&$h3htzinI2;-uyqKrkBEN>VY7^WLoGRjQu+AX_X&Yp1*BbSl6xv`#^v8AEW z_CjmM9%jZ1+yB`y9zu~g?ZCK=o6&B%tS_UU078R_UQT|x`t(LmMq#L=B)a634EES5 R8Dc#Uy~vh@`7-8O0RZ4>EMx!x diff --git a/docs/_build/doctrees/tools/metadata.doctree b/docs/_build/doctrees/tools/metadata.doctree index b57deae41ef037b835352f00ea4f95630b3d6e5f..4b2ba70946bada2d1e407b6d3ff259ecc2f72993 100644 GIT binary patch delta 110 zcmcaNgX!K3rVU(LJf`LrMtX*pMn=Y_rjs-EZ8isKakHX`ZqC%-%OQxYPA?}vU48Pw Y9O21c78WRKC-+&nq6lohZ&4o%0Dj;d=l}o! delta 110 zcmcaNgX!K3rVU(LJVxf`#(I{<24)6EW|K4ZZ8isKakHX`ZqC%-%OQxYPA?}vU48Pw Y9O21c78WRKC-+&nq6lohZ&4o%0D8|I)Bpeg diff --git a/docs/_build/html/searchindex.js b/docs/_build/html/searchindex.js index 6505b1ee4..70ac71891 100644 --- a/docs/_build/html/searchindex.js +++ b/docs/_build/html/searchindex.js @@ -1 +1 @@ -Search.setIndex({"alltitles": {"DRS Download Tools": [[10, "module-gen3.tools.download.drs_download"]], "Download": [[11, "module-gen3.tools.indexing.download_manifest"]], "Gen3 Auth Helper": [[0, "gen3-auth-helper"]], "Gen3 File Class": [[1, "gen3-file-class"]], "Gen3 Index Class": [[3, "gen3-index-class"]], "Gen3 Jobs Class": [[4, "gen3-jobs-class"]], "Gen3 Metadata Class": [[5, "gen3-metadata-class"]], "Gen3 Object Class": [[6, "gen3-object-class"]], "Gen3 Query Class": [[7, "gen3-query-class"]], "Gen3 Submission Class": [[8, "gen3-submission-class"]], "Gen3 Tools": [[9, "gen3-tools"]], "Gen3 Workspace Storage": [[13, "gen3-workspace-storage"]], "Index": [[11, "module-gen3.tools.indexing.index_manifest"]], "Indexing Tools": [[11, "indexing-tools"]], "Indices and tables": [[2, "indices-and-tables"]], "Ingest": [[12, "module-gen3.tools.metadata.ingest_manifest"]], "Metadata Tools": [[12, "metadata-tools"]], "Verify": [[11, "module-gen3.tools.indexing.verify_manifest"]], "Welcome to Gen3 SDK\u2019s documentation!": [[2, "welcome-to-gen3-sdk-s-documentation"]]}, "docnames": ["auth", "file", "index", "indexing", "jobs", "metadata", "object", "query", "submission", "tools", "tools/drs_pull", "tools/indexing", "tools/metadata", "wss"], "envversion": {"sphinx": 61, "sphinx.domains.c": 3, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 9, "sphinx.domains.index": 1, "sphinx.domains.javascript": 3, "sphinx.domains.math": 2, "sphinx.domains.python": 4, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx.ext.viewcode": 1}, "filenames": ["auth.rst", "file.rst", "index.rst", "indexing.rst", "jobs.rst", "metadata.rst", "object.rst", "query.rst", "submission.rst", "tools.rst", "tools/drs_pull.rst", "tools/indexing.rst", "tools/metadata.rst", "wss.rst"], "indexentries": {"_manager (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable._manager", false]], "access_methods (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.access_methods", false]], "acls (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.ACLS", false]], "async_create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_create", false]], "async_create_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_create_aliases", false]], "async_create_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_create_record", false]], "async_delete_alias() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_delete_alias", false]], "async_delete_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_delete_aliases", false]], "async_download_object_manifest() (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.async_download_object_manifest", false]], "async_get() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_get", false]], "async_get_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_get_aliases", false]], "async_get_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_record", false]], "async_get_records_from_checksum() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_records_from_checksum", false]], "async_get_records_on_page() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_records_on_page", false]], "async_get_with_params() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_with_params", false]], "async_ingest_metadata_manifest() (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.async_ingest_metadata_manifest", false]], "async_query_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_query_urls", false]], "async_query_urls_from_indexd() (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.async_query_urls_from_indexd", false]], "async_run_job_and_wait() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.async_run_job_and_wait", false]], "async_update() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_update", false]], "async_update_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_update_aliases", false]], "async_update_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_update_record", false]], "async_verify_object_manifest() (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.async_verify_object_manifest", false]], "auth_provider (gen3.metadata.gen3metadata attribute)": [[5, "gen3.metadata.Gen3Metadata.auth_provider", false]], "authz (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.AUTHZ", false]], "batch_create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.batch_create", false]], "cache_hosts_wts_tokens() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.cache_hosts_wts_tokens", false]], "children (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.children", false]], "column_to_use_as_guid (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.COLUMN_TO_USE_AS_GUID", false]], "commons_url (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.commons_url", false]], "copy() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.copy", false]], "create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create", false]], "create_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create_aliases", false]], "create_blank() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_blank", false]], "create_index_key_path() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create_index_key_path", false]], "create_job() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.create_job", false]], "create_new_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_new_version", false]], "create_object_list() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.create_object_list", false]], "create_program() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.create_program", false]], "create_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.create_project", false]], "create_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_record", false]], "created_time (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.created_time", false]], "curl() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.curl", false]], "current_dir (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.CURRENT_DIR", false]], "current_dir (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.CURRENT_DIR", false]], "current_dir (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.CURRENT_DIR", false]], "delete() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete", false]], "delete_alias() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_alias", false]], "delete_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_aliases", false]], "delete_all_guids() (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.delete_all_guids", false]], "delete_file() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.delete_file", false]], "delete_file_locations() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.delete_file_locations", false]], "delete_index_key_path() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_index_key_path", false]], "delete_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_node", false]], "delete_nodes() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_nodes", false]], "delete_object() (gen3.object.gen3object method)": [[6, "gen3.object.Gen3Object.delete_object", false]], "delete_program() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_program", false]], "delete_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_project", false]], "delete_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.delete_record", false]], "delete_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_record", false]], "delete_records() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_records", false]], "download() (gen3.tools.download.drs_download.downloadable method)": [[10, "gen3.tools.download.drs_download.Downloadable.download", false]], "download() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.download", false]], "download() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.download", false]], "download_files_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.download_files_in_drs_manifest", false]], "download_single() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.download_single", false]], "download_url() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.download_url", false]], "downloadable (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.Downloadable", false]], "downloadmanager (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.DownloadManager", false]], "downloadstatus (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.DownloadStatus", false]], "end_time (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.end_time", false]], "endpoint (gen3.metadata.gen3metadata attribute)": [[5, "gen3.metadata.Gen3Metadata.endpoint", false]], "export_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.export_node", false]], "export_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.export_record", false]], "file_name (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.file_name", false]], "file_name (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.file_name", false]], "file_size (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.file_size", false]], "file_size (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.file_size", false]], "gen3.tools": [[9, "module-gen3.tools", false]], "gen3.tools.download.drs_download": [[10, "module-gen3.tools.download.drs_download", false]], "gen3.tools.indexing.download_manifest": [[11, "module-gen3.tools.indexing.download_manifest", false]], "gen3.tools.indexing.index_manifest": [[11, "module-gen3.tools.indexing.index_manifest", false]], "gen3.tools.indexing.verify_manifest": [[11, "module-gen3.tools.indexing.verify_manifest", false]], "gen3.tools.metadata.ingest_manifest": [[12, "module-gen3.tools.metadata.ingest_manifest", false]], "gen3auth (class in gen3.auth)": [[0, "gen3.auth.Gen3Auth", false]], "gen3file (class in gen3.file)": [[1, "gen3.file.Gen3File", false]], "gen3index (class in gen3.index)": [[3, "gen3.index.Gen3Index", false]], "gen3jobs (class in gen3.jobs)": [[4, "gen3.jobs.Gen3Jobs", false]], "gen3metadata (class in gen3.metadata)": [[5, "gen3.metadata.Gen3Metadata", false]], "gen3object (class in gen3.object)": [[6, "gen3.object.Gen3Object", false]], "gen3query (class in gen3.query)": [[7, "gen3.query.Gen3Query", false]], "gen3submission (class in gen3.submission)": [[8, "gen3.submission.Gen3Submission", false]], "gen3wsstorage (class in gen3.wss)": [[13, "gen3.wss.Gen3WsStorage", false]], "get() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get", false]], "get() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get", false]], "get_access_token() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.get_access_token", false]], "get_access_token_from_wts() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.get_access_token_from_wts", false]], "get_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_aliases", false]], "get_all_records() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_all_records", false]], "get_dictionary_all() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_dictionary_all", false]], "get_dictionary_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_dictionary_node", false]], "get_fresh_token() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.get_fresh_token", false]], "get_graphql_schema() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_graphql_schema", false]], "get_guids_prefix() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_guids_prefix", false]], "get_index_key_paths() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_index_key_paths", false]], "get_latest_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_latest_version", false]], "get_output() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_output", false]], "get_presigned_url() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.get_presigned_url", false]], "get_programs() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_programs", false]], "get_project_dictionary() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_project_dictionary", false]], "get_project_manifest() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_project_manifest", false]], "get_projects() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_projects", false]], "get_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_record", false]], "get_record_doc() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_record_doc", false]], "get_records() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_records", false]], "get_records_on_page() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_records_on_page", false]], "get_stats() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_stats", false]], "get_status() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_status", false]], "get_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_urls", false]], "get_valid_guids() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_valid_guids", false]], "get_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_version", false]], "get_version() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_version", false]], "get_version() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_version", false]], "get_versions() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_versions", false]], "get_with_params() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_with_params", false]], "graphql_query() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.graphql_query", false]], "guid (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.GUID", false]], "guid_type_for_indexed_file_object (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.GUID_TYPE_FOR_INDEXED_FILE_OBJECT", false]], "guid_type_for_non_indexed_file_object (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.GUID_TYPE_FOR_NON_INDEXED_FILE_OBJECT", false]], "hostname (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.hostname", false]], "index_object_manifest() (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.index_object_manifest", false]], "indexd_record_page_size (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.INDEXD_RECORD_PAGE_SIZE", false]], "is_healthy() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.is_healthy", false]], "is_healthy() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.is_healthy", false]], "is_healthy() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.is_healthy", false]], "list_access_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_access_in_drs_manifest", false]], "list_drs_object() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_drs_object", false]], "list_files_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_files_in_drs_manifest", false]], "list_jobs() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.list_jobs", false]], "load() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.load", false]], "load_manifest() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.load_manifest", false]], "ls() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.ls", false]], "ls_path() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.ls_path", false]], "manifest (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.Manifest", false]], "max_concurrent_requests (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.MAX_CONCURRENT_REQUESTS", false]], "max_concurrent_requests (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.MAX_CONCURRENT_REQUESTS", false]], "max_concurrent_requests (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.MAX_CONCURRENT_REQUESTS", false]], "md5 (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.MD5", false]], "md5sum (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.md5sum", false]], "module": [[9, "module-gen3.tools", false], [10, "module-gen3.tools.download.drs_download", false], [11, "module-gen3.tools.indexing.download_manifest", false], [11, "module-gen3.tools.indexing.index_manifest", false], [11, "module-gen3.tools.indexing.verify_manifest", false], [12, "module-gen3.tools.metadata.ingest_manifest", false]], "object_id (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.object_id", false]], "object_id (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.object_id", false]], "object_type (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.object_type", false]], "open_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.open_project", false]], "pprint() (gen3.tools.download.drs_download.downloadable method)": [[10, "gen3.tools.download.drs_download.Downloadable.pprint", false]], "prev_guid (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.PREV_GUID", false]], "query() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.query", false]], "query() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.query", false]], "query() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.query", false]], "query_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.query_urls", false]], "raw_data_download() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.raw_data_download", false]], "refresh_access_token() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.refresh_access_token", false]], "resolve_objects() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.resolve_objects", false]], "rm() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.rm", false]], "rm_path() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.rm_path", false]], "size (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.SIZE", false]], "start_time (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.start_time", false]], "status (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.status", false]], "submit_file() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.submit_file", false]], "submit_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.submit_record", false]], "threadcontrol (class in gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.ThreadControl", false]], "tmp_folder (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.TMP_FOLDER", false]], "update() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.update", false]], "update_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.update_aliases", false]], "update_blank() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.update_blank", false]], "update_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.update_record", false]], "updated_time (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.updated_time", false]], "upload() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.upload", false]], "upload_file() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.upload_file", false]], "upload_file_to_guid() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.upload_file_to_guid", false]], "upload_url() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.upload_url", false]], "urls (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.URLS", false]], "user_access() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.user_access", false]]}, "objects": {"gen3": [[9, 3, 0, "-", "tools"]], "gen3.auth": [[0, 0, 1, "", "Gen3Auth"]], "gen3.auth.Gen3Auth": [[0, 1, 1, "", "curl"], [0, 1, 1, "", "get_access_token"], [0, 1, 1, "", "get_access_token_from_wts"], [0, 1, 1, "", "refresh_access_token"]], "gen3.file": [[1, 0, 1, "", "Gen3File"]], "gen3.file.Gen3File": [[1, 1, 1, "", "delete_file"], [1, 1, 1, "", "delete_file_locations"], [1, 1, 1, "", "download_single"], [1, 1, 1, "", "get_presigned_url"], [1, 1, 1, "", "upload_file"], [1, 1, 1, "", "upload_file_to_guid"]], "gen3.index": [[3, 0, 1, "", "Gen3Index"]], "gen3.index.Gen3Index": [[3, 1, 1, "", "async_create_record"], [3, 1, 1, "", "async_get_record"], [3, 1, 1, "", "async_get_records_from_checksum"], [3, 1, 1, "", "async_get_records_on_page"], [3, 1, 1, "", "async_get_with_params"], [3, 1, 1, "", "async_query_urls"], [3, 1, 1, "", "async_update_record"], [3, 1, 1, "", "create_blank"], [3, 1, 1, "", "create_new_version"], [3, 1, 1, "", "create_record"], [3, 1, 1, "", "delete_record"], [3, 1, 1, "", "get"], [3, 1, 1, "", "get_all_records"], [3, 1, 1, "", "get_guids_prefix"], [3, 1, 1, "", "get_latest_version"], [3, 1, 1, "", "get_record"], [3, 1, 1, "", "get_record_doc"], [3, 1, 1, "", "get_records"], [3, 1, 1, "", "get_records_on_page"], [3, 1, 1, "", "get_stats"], [3, 1, 1, "", "get_urls"], [3, 1, 1, "", "get_valid_guids"], [3, 1, 1, "", "get_version"], [3, 1, 1, "", "get_versions"], [3, 1, 1, "", "get_with_params"], [3, 1, 1, "", "is_healthy"], [3, 1, 1, "", "query_urls"], [3, 1, 1, "", "update_blank"], [3, 1, 1, "", "update_record"]], "gen3.jobs": [[4, 0, 1, "", "Gen3Jobs"]], "gen3.jobs.Gen3Jobs": [[4, 1, 1, "", "async_run_job_and_wait"], [4, 1, 1, "", "create_job"], [4, 1, 1, "", "get_output"], [4, 1, 1, "", "get_status"], [4, 1, 1, "", "get_version"], [4, 1, 1, "", "is_healthy"], [4, 1, 1, "", "list_jobs"]], "gen3.metadata": [[5, 0, 1, "", "Gen3Metadata"]], "gen3.metadata.Gen3Metadata": [[5, 1, 1, "", "async_create"], [5, 1, 1, "", "async_create_aliases"], [5, 1, 1, "", "async_delete_alias"], [5, 1, 1, "", "async_delete_aliases"], [5, 1, 1, "", "async_get"], [5, 1, 1, "", "async_get_aliases"], [5, 1, 1, "", "async_update"], [5, 1, 1, "", "async_update_aliases"], [5, 2, 1, "", "auth_provider"], [5, 1, 1, "", "batch_create"], [5, 1, 1, "", "create"], [5, 1, 1, "", "create_aliases"], [5, 1, 1, "", "create_index_key_path"], [5, 1, 1, "", "delete"], [5, 1, 1, "", "delete_alias"], [5, 1, 1, "", "delete_aliases"], [5, 1, 1, "", "delete_index_key_path"], [5, 2, 1, "", "endpoint"], [5, 1, 1, "", "get"], [5, 1, 1, "", "get_aliases"], [5, 1, 1, "", "get_index_key_paths"], [5, 1, 1, "", "get_version"], [5, 1, 1, "", "is_healthy"], [5, 1, 1, "", "query"], [5, 1, 1, "", "update"], [5, 1, 1, "", "update_aliases"]], "gen3.object": [[6, 0, 1, "", "Gen3Object"]], "gen3.object.Gen3Object": [[6, 1, 1, "", "delete_object"]], "gen3.query": [[7, 0, 1, "", "Gen3Query"]], "gen3.query.Gen3Query": [[7, 1, 1, "", "graphql_query"], [7, 1, 1, "", "query"], [7, 1, 1, "", "raw_data_download"]], "gen3.submission": [[8, 0, 1, "", "Gen3Submission"]], "gen3.submission.Gen3Submission": [[8, 1, 1, "", "create_program"], [8, 1, 1, "", "create_project"], [8, 1, 1, "", "delete_node"], [8, 1, 1, "", "delete_nodes"], [8, 1, 1, "", "delete_program"], [8, 1, 1, "", "delete_project"], [8, 1, 1, "", "delete_record"], [8, 1, 1, "", "delete_records"], [8, 1, 1, "", "export_node"], [8, 1, 1, "", "export_record"], [8, 1, 1, "", "get_dictionary_all"], [8, 1, 1, "", "get_dictionary_node"], [8, 1, 1, "", "get_graphql_schema"], [8, 1, 1, "", "get_programs"], [8, 1, 1, "", "get_project_dictionary"], [8, 1, 1, "", "get_project_manifest"], [8, 1, 1, "", "get_projects"], [8, 1, 1, "", "open_project"], [8, 1, 1, "", "query"], [8, 1, 1, "", "submit_file"], [8, 1, 1, "", "submit_record"]], "gen3.tools.download": [[10, 3, 0, "-", "drs_download"]], "gen3.tools.download.drs_download": [[10, 0, 1, "", "DownloadManager"], [10, 0, 1, "", "DownloadStatus"], [10, 0, 1, "", "Downloadable"], [10, 0, 1, "", "Manifest"], [10, 4, 1, "", "download_files_in_drs_manifest"], [10, 4, 1, "", "list_access_in_drs_manifest"], [10, 4, 1, "", "list_drs_object"], [10, 4, 1, "", "list_files_in_drs_manifest"]], "gen3.tools.download.drs_download.DownloadManager": [[10, 1, 1, "", "cache_hosts_wts_tokens"], [10, 1, 1, "", "download"], [10, 1, 1, "", "get_fresh_token"], [10, 1, 1, "", "resolve_objects"], [10, 1, 1, "", "user_access"]], "gen3.tools.download.drs_download.DownloadStatus": [[10, 2, 1, "", "end_time"], [10, 2, 1, "", "start_time"], [10, 2, 1, "", "status"]], "gen3.tools.download.drs_download.Downloadable": [[10, 2, 1, "", "_manager"], [10, 2, 1, "", "access_methods"], [10, 2, 1, "", "children"], [10, 2, 1, "", "created_time"], [10, 1, 1, "", "download"], [10, 2, 1, "", "file_name"], [10, 2, 1, "", "file_size"], [10, 2, 1, "", "hostname"], [10, 2, 1, "", "object_id"], [10, 2, 1, "", "object_type"], [10, 1, 1, "", "pprint"], [10, 2, 1, "", "updated_time"]], "gen3.tools.download.drs_download.Manifest": [[10, 2, 1, "", "commons_url"], [10, 1, 1, "", "create_object_list"], [10, 2, 1, "", "file_name"], [10, 2, 1, "", "file_size"], [10, 1, 1, "", "load"], [10, 1, 1, "", "load_manifest"], [10, 2, 1, "", "md5sum"], [10, 2, 1, "", "object_id"]], "gen3.tools.indexing": [[11, 3, 0, "-", "download_manifest"], [11, 3, 0, "-", "index_manifest"], [11, 3, 0, "-", "verify_manifest"]], "gen3.tools.indexing.download_manifest": [[11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "INDEXD_RECORD_PAGE_SIZE"], [11, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [11, 2, 1, "", "TMP_FOLDER"], [11, 4, 1, "", "async_download_object_manifest"]], "gen3.tools.indexing.index_manifest": [[11, 2, 1, "", "ACLS"], [11, 2, 1, "", "AUTHZ"], [11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "GUID"], [11, 2, 1, "", "MD5"], [11, 2, 1, "", "PREV_GUID"], [11, 2, 1, "", "SIZE"], [11, 0, 1, "", "ThreadControl"], [11, 2, 1, "", "URLS"], [11, 4, 1, "", "delete_all_guids"], [11, 4, 1, "", "index_object_manifest"]], "gen3.tools.indexing.verify_manifest": [[11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [11, 4, 1, "", "async_verify_object_manifest"]], "gen3.tools.metadata": [[12, 3, 0, "-", "ingest_manifest"]], "gen3.tools.metadata.ingest_manifest": [[12, 2, 1, "", "COLUMN_TO_USE_AS_GUID"], [12, 2, 1, "", "GUID_TYPE_FOR_INDEXED_FILE_OBJECT"], [12, 2, 1, "", "GUID_TYPE_FOR_NON_INDEXED_FILE_OBJECT"], [12, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [12, 4, 1, "", "async_ingest_metadata_manifest"], [12, 4, 1, "", "async_query_urls_from_indexd"]], "gen3.wss": [[13, 0, 1, "", "Gen3WsStorage"]], "gen3.wss.Gen3WsStorage": [[13, 1, 1, "", "copy"], [13, 1, 1, "", "download"], [13, 1, 1, "", "download_url"], [13, 1, 1, "", "ls"], [13, 1, 1, "", "ls_path"], [13, 1, 1, "", "rm"], [13, 1, 1, "", "rm_path"], [13, 1, 1, "", "upload"], [13, 1, 1, "", "upload_url"]]}, "objnames": {"0": ["py", "class", "Python class"], "1": ["py", "method", "Python method"], "2": ["py", "attribute", "Python attribute"], "3": ["py", "module", "Python module"], "4": ["py", "function", "Python function"]}, "objtypes": {"0": "py:class", "1": "py:method", "2": "py:attribute", "3": "py:module", "4": "py:function"}, "terms": {"": [1, 4, 8, 10, 11], "0": [5, 7, 8, 11], "0046513": [], "0185335": [], "052073": [], "0576868": [], "058966": [], "064572": [], "07464": [], "0790412": [], "0a80fada010c": 11, "0a80fada096c": 11, "0a80fada097c": 11, "0a80fada098c": 11, "0a80fada099c": 11, "1": [4, 5, 8, 10, 11], "10": [5, 7, 11], "100": [8, 11], "1069167": [], "11e9": 11, "1344793": [], "1676264": [], "1713542306": [], "1713542765": [], "1713543033": [], "1713543225": [], "1713543506": [], "1713543956": [], "1713544131": [], "1713544132": [], "1713544397": [], "1713544598": [], "1713545857": [], "1713545858": [], "1713549370": [], "1713549689": [], "1713550571": [], "1713557245": [], "1713559376": [], "1713560080": [], "1713560402": [], "1713560403": [], "1713561061": [], "1713562690": [], "1717169008": [], "1717170449": [], "1717171842": [], "1717171843": [], "1717172360": [], "1717172577": [], "1717172773": [11, 12], "1731803": [], "1771936": [], "1913438": [], "2": [5, 11], "2184267": [], "24": [11, 12], "255e396f": 11, "2877355": [], "2930224": [], "2995": [], "3": [5, 11], "30": 8, "3041446": [], "3102272": [], "33": 5, "333": 5, "343434344": 11, "363455714": 11, "3935378": [], "4": [5, 11], "4017086": [], "4052968": [], "4090197": [], "4463434": [], "450c": 11, "4632835": [], "4649727": [], "4714": 8, "473d83400bc1bc9dc635e334fadd433c": 11, "473d83400bc1bc9dc635e334faddd33c": 11, "473d83400bc1bc9dc635e334fadde33c": 11, "473d83400bc1bc9dc635e334faddf33c": 11, "4752307": [], "4756553": [], "5": [0, 5], "50": 7, "517729": [], "5202463": [], "543434443": 11, "5669184": [], "568308": [], "573305": [], "5899982": [], "639124": 11, "6692646": [], "6739478": [], "674552": [], "6f90": 8, "700799": [], "7232893": [], "756255": [], "760149": [], "7841465": [], "7d3d8d2083b4": 11, "8044841": [], "8375325": [], "8420": 8, "8630717": [], "8874054": [], "8882551": [], "9306026": 12, "93d9af72": 11, "9a07": 11, "A": [1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "AND": 5, "Be": 1, "But": 5, "By": 11, "For": [1, 5, 6, 7, 8, 9, 11], "IF": 11, "If": [0, 1, 7, 11, 12], "In": 10, "It": 10, "NOT": 12, "OR": 5, "One": 7, "Such": 9, "THE": 11, "That": 3, "The": [0, 1, 2, 3, 5, 8, 10, 11], "There": 11, "These": 9, "To": 11, "Will": [4, 7, 10], "_get_acl_from_row": 11, "_get_authz_from_row": 11, "_get_file_name_from_row": 11, "_get_file_size_from_row": 11, "_get_guid_for_row": 12, "_get_guid_from_row": 11, "_get_md5_from_row": 11, "_get_urls_from_row": 11, "_guid_typ": 12, "_manag": [2, 9, 10], "_query_for_associated_indexd_record_guid": 12, "_ssl": [3, 4, 5], "a5c6": 11, "ab167e49d25b488939b1ede42752458b": 3, "about": [2, 3], "abov": 11, "access": [0, 1, 3, 7, 10], "access_method": [2, 9, 10], "access_token": 0, "accesstoken": 0, "acl": [2, 3, 9, 11], "across": 11, "act": 0, "action": [9, 11], "actual": 11, "ad": 3, "add": [3, 5], "addit": [3, 5, 10, 11], "admin": [5, 11], "admin_endpoint_suffix": 5, "after": 10, "against": [3, 7, 8, 11, 12], "algorithm": 3, "alia": [3, 5], "alias": 5, "aliv": 7, "all": [1, 3, 4, 5, 6, 7, 8, 10, 11, 12], "allow": [0, 6, 8, 10, 11, 12], "allowed_data_upload_bucket": 1, "along": 2, "alreadi": 9, "also": 1, "altern": [5, 11], "alwai": 5, "ammount": 12, "amount": [1, 9], "an": [0, 3, 6, 8, 10, 11], "ani": [0, 5, 10, 11], "anoth": 5, "api": [0, 5, 8, 11], "api_kei": 11, "appli": 7, "appropri": 13, "ar": [5, 7, 8, 9, 10, 11], "arbitrari": 0, "argument": [0, 13], "arrai": 8, "asc": 7, "assign": 9, "assist": 10, "associ": [3, 5], "assum": 11, "async": [3, 4, 5, 9, 11, 12], "async_cr": [2, 5], "async_create_alias": [2, 5], "async_create_record": [2, 3], "async_delete_alia": [2, 5], "async_delete_alias": [2, 5], "async_download_object_manifest": [2, 9, 11], "async_get": [2, 5], "async_get_alias": [2, 5], "async_get_record": [2, 3], "async_get_records_from_checksum": [2, 3], "async_get_records_on_pag": [2, 3], "async_get_with_param": [2, 3], "async_ingest_metadata_manifest": [2, 9, 12], "async_query_url": [2, 3], "async_query_urls_from_indexd": [2, 9, 12], "async_run_job_and_wait": [2, 4], "async_upd": [2, 5], "async_update_alias": [2, 5], "async_update_record": [2, 3], "async_verify_object_manifest": [2, 9, 11], "asynchron": [3, 4, 5], "asyncio": [11, 12], "asyncron": 5, "attach": [3, 5], "attempt": 11, "attribut": [10, 11], "auth": [1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "auth_provid": [1, 2, 3, 4, 5, 6, 7, 8, 13], "authbas": 0, "authent": 0, "author": 1, "authz": [0, 1, 2, 3, 9, 10, 11], "auto": [0, 2], "automat": 0, "avail": [1, 2, 10, 11], "az": 1, "b": [5, 11], "b0f1": 11, "bar": 10, "base": [0, 1, 3, 4, 5, 6, 7, 8, 9, 11, 13], "baseid": 3, "basic": [3, 11, 12], "batch_creat": [2, 5], "batch_siz": 8, "behalf": 0, "behavior": 11, "being": 3, "belong": 8, "below": 11, "blank": 3, "blob": [5, 7], "bodi": 3, "bool": [4, 5, 8, 10, 11, 12], "boolean": 3, "bownload": 10, "broad": 9, "broken": 9, "bucket": [1, 6], "bundl": 10, "byte": 10, "c": [5, 11], "cach": 10, "cache_hosts_wts_token": [2, 9, 10], "call": [10, 13], "can": [0, 3, 4, 8, 11, 12], "capabl": 9, "case": [0, 10], "categori": 9, "ccle": 8, "ccle_one_record": 8, "ccle_sample_nod": 8, "cdi": 7, "chang": [3, 11], "checksum": [3, 10], "checksum_typ": 3, "child": 10, "children": [2, 9, 10], "chunk_siz": 8, "class": [0, 2, 10, 11, 13], "cli": 10, "client": [0, 3], "client_credenti": 0, "client_id": 0, "client_scop": 0, "client_secret": 0, "code": [2, 8], "column": [11, 12], "column_to_use_as_guid": [2, 9, 12], "columna": 11, "columnb": 11, "columnc": 11, "com": 7, "comma": 11, "command": [10, 11], "common": [0, 1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13], "commons_url": [2, 9, 10, 11, 12], "complet": [4, 11], "complex": 7, "concat": 11, "concurr": [11, 12], "configur": 1, "connect": 12, "consist": 3, "constructor": 0, "contain": [0, 2, 5, 8, 9, 10, 11, 12], "content": [3, 13], "content_created_d": 3, "content_updated_d": 3, "continu": 10, "control": 3, "conveni": 10, "copi": [2, 13], "coroutin": 11, "correspond": 3, "count": 3, "crdc": 0, "creat": [2, 3, 4, 5, 6, 8, 10, 11], "create_alias": [2, 5], "create_blank": [2, 3], "create_index_key_path": [2, 5], "create_job": [2, 4], "create_new_vers": [2, 3], "create_object_list": [2, 9, 10], "create_program": [2, 8], "create_project": [2, 8], "create_record": [2, 3], "created_tim": [2, 9, 10], "creation": [3, 11], "cred": 3, "credenti": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "csv": [8, 11, 12], "curl": [0, 2], "current": [6, 8, 10], "current_dir": [2, 9, 11], "custom": 11, "d": 5, "d70b41b9": 8, "data": [0, 1, 3, 5, 7, 8, 10, 11], "data_spreadsheet": 8, "data_typ": 7, "data_upload_bucket": 1, "dataa": 11, "datab": 11, "databas": 5, "datacommon": 0, "datafil": 10, "datamanag": 10, "date": 3, "datetim": [1, 3, 10], "dbgap": 12, "dcf": 8, "def": 11, "default": [0, 1, 3, 7, 8, 11, 12], "defin": [5, 8, 10], "delai": 4, "delet": [0, 1, 2, 3, 5, 6, 8, 10, 11], "delete_alia": [2, 5], "delete_alias": [2, 5], "delete_all_guid": [2, 9, 11], "delete_fil": [1, 2], "delete_file_loc": [1, 2, 6], "delete_index_key_path": [2, 5], "delete_nod": [2, 8], "delete_object": [2, 6], "delete_program": [2, 8], "delete_project": [2, 8], "delete_record": [2, 3, 8], "delete_unpacked_packag": 10, "delimet": [11, 12], "delimit": 11, "demograph": 8, "deprec": 1, "descript": [3, 5], "desir": 11, "dest_path": 13, "dest_urlstr": 13, "dest_w": 13, "dest_wskei": 13, "detail": [2, 7, 10], "determin": [10, 11, 12], "dev": 11, "dict": [3, 4, 5, 10, 11, 12], "dictionari": [3, 4, 5, 7, 8], "did": 3, "differ": 5, "direct": 0, "directori": [10, 11], "disabl": 10, "discoveri": 10, "disk": 13, "dispatch": 4, "dist_resolut": 3, "distribut": 3, "doc": [7, 10], "docstr": 2, "document": [1, 3], "doe": [0, 12], "domain": [11, 12], "done": 4, "download": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 13], "download_files_in_drs_manifest": [2, 9, 10], "download_list": 10, "download_manifest": 11, "download_singl": [1, 2], "download_url": [2, 13], "downloadmanag": [2, 9, 10], "downloadstatu": [2, 9, 10], "dr": [2, 9], "drs_download": 10, "drs_hostnam": 10, "drsdownload": 10, "drsobjecttyp": 10, "e": [5, 10], "e043ab8b77b9": 8, "each": [3, 8, 10, 11], "effici": 9, "eg": 3, "either": 8, "elasticsearch": 7, "els": [0, 12], "elsewher": 12, "empti": [8, 11], "enabl": 11, "end": [5, 10], "end_tim": [2, 9, 10], "endpoint": [0, 1, 2, 3, 4, 5, 7, 8, 13], "entir": 8, "entri": [3, 11], "env": 0, "environ": 0, "equal": 7, "error": [10, 11, 12], "error_nam": 11, "etc": 8, "even": 11, "everi": [9, 11], "everyth": 11, "ex": [0, 11, 12], "exampl": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "exclud": 3, "execut": [7, 8, 11], "exist": [1, 3, 5, 6, 9, 12], "expect": [5, 9, 11], "experi": 8, "expir": [0, 1], "expires_in": 1, "export": [8, 10], "export_nod": [2, 8], "export_record": [2, 8], "f1f8": 11, "factori": 10, "fail": [8, 10], "fals": [3, 5, 6, 10, 11], "featur": [1, 6], "fenc": [0, 1], "fetch": 0, "field": [3, 5, 7, 11, 12], "fieldnam": 11, "file": [0, 2, 3, 4, 8, 9, 10, 11, 12, 13], "file_nam": [1, 2, 3, 9, 10, 11], "file_s": [2, 9, 10, 11], "file_st": 3, "fileformat": 8, "filenam": [0, 8, 10, 11, 12], "files": 10, "fill": 12, "filter": [5, 7], "filter_object": 7, "first": [7, 8], "flag": 11, "folder": 11, "follow": [0, 11], "forc": 11, "force_metadata_columns_even_if_empti": 11, "form": 13, "format": [3, 5, 8, 11], "from": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13], "func_to_parse_row": [11, 12], "function": [2, 3, 4, 5, 9, 10, 11, 12], "g": 10, "gen3": [10, 11, 12], "gen3_api_kei": 0, "gen3_oidc_client_creds_secret": 0, "gen3auth": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "gen3fil": [1, 2], "gen3index": [2, 3], "gen3job": [2, 4, 10], "gen3metadata": [2, 5], "gen3object": [2, 6], "gen3queri": [2, 7], "gen3submiss": [2, 8], "gen3wsstorag": [2, 13], "gener": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 13], "get": [0, 1, 2, 3, 4, 5, 8, 10, 11, 12, 13], "get_access_token": [0, 2], "get_access_token_from_wt": [0, 2], "get_alias": [2, 5], "get_all_record": [2, 3], "get_dictionary_al": [2, 8], "get_dictionary_nod": [2, 8], "get_fresh_token": [2, 9, 10], "get_graphql_schema": [2, 8], "get_guid_from_fil": 12, "get_guids_prefix": [2, 3], "get_index_key_path": [2, 5], "get_latest_vers": [2, 3], "get_output": [2, 4], "get_presigned_url": [1, 2], "get_program": [2, 8], "get_project": [2, 8], "get_project_dictionari": [2, 8], "get_project_manifest": [2, 8], "get_record": [2, 3], "get_record_doc": [2, 3], "get_records_on_pag": [2, 3], "get_stat": [2, 3], "get_statu": [2, 4], "get_url": [2, 3], "get_valid_guid": [2, 3], "get_vers": [2, 3, 4, 5], "get_with_param": [2, 3], "giangb": 11, "github": [2, 7], "give": 1, "given": [0, 3, 4, 5, 8, 10, 12, 13], "global": [4, 5], "good": 3, "grant": 0, "graph": 8, "graphql": [7, 8], "graphql_queri": [2, 7], "group": 3, "guid": [1, 2, 3, 5, 6, 9, 11, 12], "guid_exampl": 11, "guid_for_row": 12, "guid_from_fil": 12, "guid_type_for_indexed_file_object": [2, 9, 12], "guid_type_for_non_indexed_file_object": [2, 9, 12], "guppi": 7, "ha": [0, 11], "handl": [3, 10], "hardcod": 0, "has_vers": 3, "hash": [3, 11], "hash_typ": 3, "have": [5, 11], "header": 11, "healthi": [3, 4, 5], "help": 11, "helper": 2, "hit": 11, "host": 10, "hostnam": [2, 9, 10], "how": [8, 11], "howto": 10, "http": [0, 7, 11, 12], "i": [0, 1, 2, 3, 4, 5, 8, 10, 11, 12], "id": [0, 1, 3, 5, 10, 11], "idea": 3, "identifi": [3, 5, 9, 11], "idp": 0, "illustr": 11, "immut": 3, "implement": 0, "implic": 11, "import": 11, "includ": [0, 3], "indent": 10, "index": [0, 2, 5, 9], "index_manifest": 11, "index_object_manifest": [2, 9, 11], "indexd": [1, 3, 6, 10, 11, 12], "indexd_field": [11, 12], "indexd_record_page_s": [2, 9, 11], "indexed_file_object_guid": 12, "indic": [0, 11], "infil": 10, "info": [3, 11], "inform": [2, 3, 10], "ingest": [2, 9], "ingest_manifest": 12, "initi": [0, 10], "input": [4, 10, 11], "input_manifest": 11, "instal": [0, 2, 11], "instanc": [1, 3, 6, 7, 8, 9, 10], "instead": [1, 7, 11], "int": [1, 3, 5, 7, 8, 10, 11, 12], "integ": [1, 3, 8], "intend": 0, "interact": [1, 3, 4, 5, 6, 8, 13], "interest": 10, "interpret": 0, "introspect": 8, "involv": 9, "is_healthi": [2, 3, 4, 5], "is_indexed_file_object": 12, "isn": 1, "issu": 0, "its": [1, 3], "job": 2, "job_id": 4, "job_input": 4, "job_nam": 4, "json": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "just": [5, 11, 12], "jwt": 0, "kei": [0, 3, 5, 13], "know": 11, "known": 10, "kwarg": [3, 4, 5], "l": [2, 13], "larg": 9, "last": 10, "latest": 3, "least": 3, "level": 6, "librari": 11, "like": [3, 5, 9, 11, 12], "limit": [1, 3, 5, 12], "linear": 4, "linux": 10, "list": [0, 1, 3, 4, 5, 7, 8, 10, 11, 13], "list_access_in_drs_manifest": [2, 9, 10], "list_drs_object": [2, 9, 10], "list_files_in_drs_manifest": [2, 9, 10], "list_job": [2, 4], "live": [11, 12], "load": [2, 9, 10], "load_manifest": [2, 9, 10], "local": [0, 13], "locat": [1, 6], "lock": 12, "log": [8, 10, 11, 12], "logic": [5, 12], "loop": 11, "ls_path": [2, 13], "maco": 11, "made": 3, "mai": [0, 9, 11], "main": 10, "make": [9, 11], "manag": [1, 5, 10], "mani": [8, 11], "manifest": [2, 8, 9, 10, 11, 12], "manifest_1": 10, "manifest_fil": [11, 12], "manifest_file_delimit": [11, 12], "manifest_row_pars": [11, 12], "map": [0, 11], "mark": 8, "master": 7, "match": [3, 5, 12], "max": 5, "max_concurrent_request": [2, 9, 11, 12], "max_presigned_url_ttl": 1, "max_tri": 8, "maximum": [11, 12], "md": [5, 7, 10, 12], "md5": [2, 3, 9, 11], "md5_hash": 11, "md5sum": [2, 9, 10], "mean": 8, "mechan": 3, "merg": 5, "metadata": [2, 3, 6, 9, 11], "metadata_list": 5, "metadata_sourc": 12, "metadata_typ": 12, "metdata": 12, "method": [1, 7, 10], "minimum": 10, "minut": 0, "mode": 7, "modul": [2, 10, 11], "more": [2, 5, 7, 9, 10], "most": 9, "mostli": 2, "multipl": [8, 11], "must": [1, 5], "my_common": 10, "my_credenti": 10, "my_field": 7, "my_index": 7, "my_program": 7, "my_project": 7, "name": [3, 4, 8, 10, 11, 12, 13], "namespac": [0, 12], "necessari": [3, 5], "need": [3, 7, 10, 11], "nest": 5, "net": 11, "never": 0, "new": [0, 3], "node": 8, "node_nam": 8, "node_typ": 8, "none": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "note": [0, 3, 11, 12], "noth": [3, 6], "now": [1, 8], "num": 5, "num_process": 11, "num_total_fil": 11, "number": [3, 7, 8, 11, 12], "o": 0, "object": [1, 2, 3, 4, 5, 7, 8, 9, 10, 11, 13], "object_id": [1, 2, 9, 10], "object_list": 10, "object_typ": [2, 9, 10], "objectid": 10, "obtain": [0, 10], "occur": 10, "off": 5, "offset": [5, 7], "oidc": 0, "old": 3, "one": [3, 5, 10, 11], "onli": [3, 5, 7, 8, 10, 11], "open": [8, 10, 11], "open_project": [2, 8], "openid": 0, "opt": 0, "option": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11], "order": [0, 8], "ordered_node_list": 8, "org": 10, "otherwis": 10, "output": [4, 5, 11, 12], "output_dir": 10, "output_filenam": [11, 12], "overrid": [0, 11, 12], "overwrit": 5, "own": 0, "packag": 10, "page": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 13], "pagin": 3, "parallel": 11, "param": [3, 5, 8, 10], "paramet": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "pars": [10, 11, 12, 13], "parser": [11, 12], "particular": 0, "pass": [0, 7, 8, 10], "password": [11, 12], "path": [0, 1, 5, 10, 11, 13], "path_to_manifest": 11, "pattern": [3, 12], "pdcdatastor": 11, "pend": 10, "per": [11, 12], "peregrin": 8, "permiss": 10, "persist": 9, "phs0001": 11, "phs0002": 11, "pick": 1, "pla": 11, "place": 11, "planx": 11, "point": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "popul": [10, 12], "posit": [1, 7], "possibl": 10, "post": [0, 11], "pprint": [2, 9, 10], "prefix": 3, "presign": 1, "pretti": 10, "prev_guid": [2, 9, 11], "previou": [3, 11], "previous": 4, "print": [8, 10], "process": 11, "processed_fil": 11, "profil": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "program": [8, 11], "progress": [8, 10], "project": [8, 11], "project_id": [7, 8], "protocol": 1, "provid": [0, 1, 3, 5, 7, 8, 12], "public": [3, 5], "put": 0, "py": 11, "python": [2, 9, 11], "python3": 11, "python_subprocess_command": 11, "queri": [1, 2, 3, 5, 8, 11, 12], "query_str": 7, "query_txt": [7, 8], "query_url": [2, 3], "quickstart": 2, "rather": 0, "raw": [7, 11], "raw_data_download": [2, 7], "rbac": 3, "read": [3, 5, 11], "readm": 2, "reason": 10, "record": [1, 3, 5, 7, 8, 11, 12], "refresh": [0, 10], "refresh_access_token": [0, 2], "refresh_fil": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "refresh_token": 0, "regist": 8, "regular": 7, "relat": 9, "remov": [1, 6, 11, 13], "replac": 11, "replace_url": 11, "repo": 2, "repres": [3, 5, 10], "represent": [1, 3], "request": [0, 1, 3, 5, 8, 11, 12], "requir": 10, "resolv": 10, "resolve_object": [2, 9, 10], "respect": 7, "respons": [0, 1, 3, 4, 5], "result": [1, 8, 10, 11], "retri": 8, "retriev": [1, 8, 10, 12], "return": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11], "return_full_metadata": 5, "rev": 3, "revers": 8, "revis": 3, "right": 1, "rm": [2, 13], "rm_path": [2, 13], "root": [11, 12], "row": [7, 8, 11, 12], "row_offset": 8, "rtype": 3, "run": [8, 11], "s3": [1, 10, 11], "safe": 11, "same": [5, 11, 13], "sampl": [8, 10], "sandbox": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "save": 10, "save_directori": 10, "schema": 8, "scope": [0, 1], "screen": 8, "script": 2, "search": [0, 2, 3], "second": [1, 4], "secret": 0, "see": [7, 10, 11], "self": 10, "semaphon": 12, "semaphor": 12, "separ": [0, 11], "server": 10, "servic": [1, 3, 4, 5, 6, 8, 11, 12, 13], "service_loc": [3, 4, 5], "session": 11, "set": [0, 1, 5, 10], "setup": 2, "sheepdog": 8, "should": [0, 8, 11], "show": 10, "show_progress": 10, "shown": 11, "sign": 1, "signpost": 3, "similar": 10, "simpl": 3, "simpli": 11, "sinc": 3, "singl": [1, 5, 8], "size": [2, 3, 9, 10, 11], "skip": 8, "sleep": 4, "so": 11, "some": [0, 2], "someth": 11, "sort": 7, "sort_field": 7, "sort_object": 7, "sourc": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "space": [0, 11], "specif": [5, 8, 11, 12], "specifi": [0, 1, 3, 11, 13], "spreadsheet": 8, "src_path": 13, "src_urlstr": 13, "src_w": 13, "src_wskei": 13, "ssl": [3, 4, 5], "start": [3, 4, 7, 8, 10], "start_tim": [2, 9, 10], "static": 10, "statu": [2, 4, 9, 10], "storag": [1, 2, 6], "store": [1, 3, 10], "str": [0, 1, 3, 4, 5, 7, 8, 10, 11, 12], "string": [0, 3, 5, 11, 13], "strip": 11, "sub": 8, "subject": [7, 8], "submiss": 2, "submit": [8, 11], "submit_additional_metadata_column": 11, "submit_fil": [2, 8], "submit_record": [2, 8], "submitter_id": 7, "success": 10, "successfulli": 10, "suffici": 3, "suppli": 3, "support": [0, 1, 5, 8, 11], "sure": 1, "synchron": 11, "syntax": 7, "system": [6, 7, 8, 9], "t": [1, 5, 11], "tab": 11, "task": 9, "temporari": 11, "test": 11, "test1": 11, "test2": 11, "test3": 11, "test4": 11, "test5": 11, "text": [1, 7, 8], "than": [0, 5], "thei": [0, 10], "them": [10, 11], "thi": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "those": 11, "thread": 11, "thread_num": 11, "threadcontrol": [2, 9, 11], "through": [8, 11], "tier": 7, "time": [1, 3, 8, 10, 11], "timestamp": 10, "tmp_folder": [2, 9, 11], "token": [0, 10], "tool": 2, "total": 11, "treat": [1, 5], "tree": 10, "true": [3, 4, 5, 6, 7, 8, 10, 11, 12], "try": 0, "tsv": [8, 11, 12], "tupl": [0, 3, 11, 12], "type": [1, 3, 4, 5, 7, 8, 10, 11, 12], "typic": 10, "uc": 7, "unaccess": 7, "under": [0, 8, 13], "uniqu": [1, 5], "unknown": 10, "unpack": 10, "unpack_packag": 10, "until": [4, 10], "up": [5, 9], "updat": [2, 3, 5, 10, 11], "update_alias": [2, 5], "update_blank": [2, 3], "update_record": [2, 3], "updated_tim": [2, 9, 10], "upload": [1, 2, 3, 8, 13], "upload_fil": [1, 2], "upload_file_to_guid": [1, 2], "upload_url": [2, 13], "url": [1, 2, 3, 9, 10, 11, 12, 13], "urls_metadata": 3, "us": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "usag": 11, "use_agg_md": 5, "user": [0, 10, 12], "user_access": [2, 9, 10], "usual": 12, "utcnow": 1, "util": 9, "uuid": [1, 3, 8], "uuid1": 8, "uuid2": 8, "valid": [3, 7], "valu": [0, 1, 3, 5, 7, 10, 11], "value_from_indexd": 11, "value_from_manifest": 11, "variabl": [0, 7, 8], "variou": 2, "verbos": [7, 8], "verif": 11, "verifi": [2, 9], "verify_manifest": 11, "verify_object_manifest": 11, "version": [3, 4, 5], "vital_statu": 7, "w": 13, "wa": 0, "wai": 10, "wait": 4, "want": [0, 3, 8], "warn": 11, "we": [3, 11], "web": 0, "what": 5, "when": [0, 3, 7, 10, 12], "where": [0, 3, 5, 11, 12], "whether": [3, 4, 5, 8, 11, 12], "which": [8, 10], "while": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "whose": 5, "within": [0, 2, 9], "without": [3, 5], "won": 5, "work": [0, 10], "workaround": 11, "worksheet": 8, "workspac": [0, 2], "wrapper": 10, "write": 11, "ws_urlstr": 13, "wskei": 13, "wss": 13, "wt": [0, 10], "x": 11, "xlsx": 8, "you": [0, 3, 8, 11], "your": 0}, "titles": ["Gen3 Auth Helper", "Gen3 File Class", "Welcome to Gen3 SDK\u2019s documentation!", "Gen3 Index Class", "Gen3 Jobs Class", "Gen3 Metadata Class", "Gen3 Object Class", "Gen3 Query Class", "Gen3 Submission Class", "Gen3 Tools", "DRS Download Tools", "Indexing Tools", "Metadata Tools", "Gen3 Workspace Storage"], "titleterms": {"": 2, "auth": 0, "class": [1, 3, 4, 5, 6, 7, 8], "document": 2, "download": [10, 11], "dr": 10, "file": 1, "gen3": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 13], "helper": 0, "index": [3, 11], "indic": 2, "ingest": 12, "job": 4, "metadata": [5, 12], "object": 6, "queri": 7, "sdk": 2, "storag": 13, "submiss": 8, "tabl": 2, "tool": [9, 10, 11, 12], "verifi": 11, "welcom": 2, "workspac": 13}}) \ No newline at end of file +Search.setIndex({"alltitles": {"DRS Download Tools": [[10, "module-gen3.tools.download.drs_download"]], "Download": [[11, "module-gen3.tools.indexing.download_manifest"]], "Gen3 Auth Helper": [[0, "gen3-auth-helper"]], "Gen3 File Class": [[1, "gen3-file-class"]], "Gen3 Index Class": [[3, "gen3-index-class"]], "Gen3 Jobs Class": [[4, "gen3-jobs-class"]], "Gen3 Metadata Class": [[5, "gen3-metadata-class"]], "Gen3 Object Class": [[6, "gen3-object-class"]], "Gen3 Query Class": [[7, "gen3-query-class"]], "Gen3 Submission Class": [[8, "gen3-submission-class"]], "Gen3 Tools": [[9, "gen3-tools"]], "Gen3 Workspace Storage": [[13, "gen3-workspace-storage"]], "Index": [[11, "module-gen3.tools.indexing.index_manifest"]], "Indexing Tools": [[11, "indexing-tools"]], "Indices and tables": [[2, "indices-and-tables"]], "Ingest": [[12, "module-gen3.tools.metadata.ingest_manifest"]], "Metadata Tools": [[12, "metadata-tools"]], "Verify": [[11, "module-gen3.tools.indexing.verify_manifest"]], "Welcome to Gen3 SDK\u2019s documentation!": [[2, "welcome-to-gen3-sdk-s-documentation"]]}, "docnames": ["auth", "file", "index", "indexing", "jobs", "metadata", "object", "query", "submission", "tools", "tools/drs_pull", "tools/indexing", "tools/metadata", "wss"], "envversion": {"sphinx": 61, "sphinx.domains.c": 3, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 9, "sphinx.domains.index": 1, "sphinx.domains.javascript": 3, "sphinx.domains.math": 2, "sphinx.domains.python": 4, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx.ext.viewcode": 1}, "filenames": ["auth.rst", "file.rst", "index.rst", "indexing.rst", "jobs.rst", "metadata.rst", "object.rst", "query.rst", "submission.rst", "tools.rst", "tools/drs_pull.rst", "tools/indexing.rst", "tools/metadata.rst", "wss.rst"], "indexentries": {"_manager (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable._manager", false]], "access_methods (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.access_methods", false]], "acls (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.ACLS", false]], "async_create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_create", false]], "async_create_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_create_aliases", false]], "async_create_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_create_record", false]], "async_delete_alias() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_delete_alias", false]], "async_delete_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_delete_aliases", false]], "async_download_object_manifest() (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.async_download_object_manifest", false]], "async_get() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_get", false]], "async_get_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_get_aliases", false]], "async_get_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_record", false]], "async_get_records_from_checksum() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_records_from_checksum", false]], "async_get_records_on_page() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_records_on_page", false]], "async_get_with_params() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_with_params", false]], "async_ingest_metadata_manifest() (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.async_ingest_metadata_manifest", false]], "async_query_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_query_urls", false]], "async_query_urls_from_indexd() (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.async_query_urls_from_indexd", false]], "async_run_job_and_wait() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.async_run_job_and_wait", false]], "async_update() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_update", false]], "async_update_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_update_aliases", false]], "async_update_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_update_record", false]], "async_verify_object_manifest() (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.async_verify_object_manifest", false]], "auth_provider (gen3.metadata.gen3metadata attribute)": [[5, "gen3.metadata.Gen3Metadata.auth_provider", false]], "authz (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.AUTHZ", false]], "batch_create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.batch_create", false]], "cache_hosts_wts_tokens() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.cache_hosts_wts_tokens", false]], "children (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.children", false]], "column_to_use_as_guid (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.COLUMN_TO_USE_AS_GUID", false]], "commons_url (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.commons_url", false]], "copy() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.copy", false]], "create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create", false]], "create_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create_aliases", false]], "create_blank() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_blank", false]], "create_index_key_path() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create_index_key_path", false]], "create_job() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.create_job", false]], "create_new_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_new_version", false]], "create_object_list() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.create_object_list", false]], "create_program() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.create_program", false]], "create_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.create_project", false]], "create_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_record", false]], "created_time (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.created_time", false]], "curl() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.curl", false]], "current_dir (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.CURRENT_DIR", false]], "current_dir (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.CURRENT_DIR", false]], "current_dir (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.CURRENT_DIR", false]], "delete() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete", false]], "delete_alias() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_alias", false]], "delete_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_aliases", false]], "delete_all_guids() (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.delete_all_guids", false]], "delete_file() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.delete_file", false]], "delete_file_locations() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.delete_file_locations", false]], "delete_index_key_path() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_index_key_path", false]], "delete_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_node", false]], "delete_nodes() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_nodes", false]], "delete_object() (gen3.object.gen3object method)": [[6, "gen3.object.Gen3Object.delete_object", false]], "delete_program() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_program", false]], "delete_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_project", false]], "delete_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.delete_record", false]], "delete_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_record", false]], "delete_records() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_records", false]], "download() (gen3.tools.download.drs_download.downloadable method)": [[10, "gen3.tools.download.drs_download.Downloadable.download", false]], "download() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.download", false]], "download() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.download", false]], "download_files_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.download_files_in_drs_manifest", false]], "download_single() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.download_single", false]], "download_url() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.download_url", false]], "downloadable (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.Downloadable", false]], "downloadmanager (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.DownloadManager", false]], "downloadstatus (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.DownloadStatus", false]], "end_time (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.end_time", false]], "endpoint (gen3.metadata.gen3metadata attribute)": [[5, "gen3.metadata.Gen3Metadata.endpoint", false]], "export_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.export_node", false]], "export_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.export_record", false]], "file_name (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.file_name", false]], "file_name (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.file_name", false]], "file_size (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.file_size", false]], "file_size (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.file_size", false]], "gen3.tools": [[9, "module-gen3.tools", false]], "gen3.tools.download.drs_download": [[10, "module-gen3.tools.download.drs_download", false]], "gen3.tools.indexing.download_manifest": [[11, "module-gen3.tools.indexing.download_manifest", false]], "gen3.tools.indexing.index_manifest": [[11, "module-gen3.tools.indexing.index_manifest", false]], "gen3.tools.indexing.verify_manifest": [[11, "module-gen3.tools.indexing.verify_manifest", false]], "gen3.tools.metadata.ingest_manifest": [[12, "module-gen3.tools.metadata.ingest_manifest", false]], "gen3auth (class in gen3.auth)": [[0, "gen3.auth.Gen3Auth", false]], "gen3file (class in gen3.file)": [[1, "gen3.file.Gen3File", false]], "gen3index (class in gen3.index)": [[3, "gen3.index.Gen3Index", false]], "gen3jobs (class in gen3.jobs)": [[4, "gen3.jobs.Gen3Jobs", false]], "gen3metadata (class in gen3.metadata)": [[5, "gen3.metadata.Gen3Metadata", false]], "gen3object (class in gen3.object)": [[6, "gen3.object.Gen3Object", false]], "gen3query (class in gen3.query)": [[7, "gen3.query.Gen3Query", false]], "gen3submission (class in gen3.submission)": [[8, "gen3.submission.Gen3Submission", false]], "gen3wsstorage (class in gen3.wss)": [[13, "gen3.wss.Gen3WsStorage", false]], "get() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get", false]], "get() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get", false]], "get_access_token() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.get_access_token", false]], "get_access_token_from_wts() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.get_access_token_from_wts", false]], "get_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_aliases", false]], "get_all_records() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_all_records", false]], "get_dictionary_all() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_dictionary_all", false]], "get_dictionary_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_dictionary_node", false]], "get_fresh_token() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.get_fresh_token", false]], "get_graphql_schema() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_graphql_schema", false]], "get_guids_prefix() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_guids_prefix", false]], "get_index_key_paths() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_index_key_paths", false]], "get_latest_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_latest_version", false]], "get_output() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_output", false]], "get_presigned_url() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.get_presigned_url", false]], "get_programs() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_programs", false]], "get_project_dictionary() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_project_dictionary", false]], "get_project_manifest() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_project_manifest", false]], "get_projects() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_projects", false]], "get_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_record", false]], "get_record_doc() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_record_doc", false]], "get_records() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_records", false]], "get_records_on_page() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_records_on_page", false]], "get_stats() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_stats", false]], "get_status() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_status", false]], "get_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_urls", false]], "get_valid_guids() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_valid_guids", false]], "get_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_version", false]], "get_version() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_version", false]], "get_version() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_version", false]], "get_versions() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_versions", false]], "get_with_params() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_with_params", false]], "graphql_query() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.graphql_query", false]], "guid (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.GUID", false]], "guid_type_for_indexed_file_object (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.GUID_TYPE_FOR_INDEXED_FILE_OBJECT", false]], "guid_type_for_non_indexed_file_object (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.GUID_TYPE_FOR_NON_INDEXED_FILE_OBJECT", false]], "hostname (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.hostname", false]], "index_object_manifest() (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.index_object_manifest", false]], "indexd_record_page_size (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.INDEXD_RECORD_PAGE_SIZE", false]], "is_healthy() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.is_healthy", false]], "is_healthy() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.is_healthy", false]], "is_healthy() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.is_healthy", false]], "list_access_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_access_in_drs_manifest", false]], "list_drs_object() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_drs_object", false]], "list_files_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_files_in_drs_manifest", false]], "list_jobs() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.list_jobs", false]], "load() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.load", false]], "load_manifest() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.load_manifest", false]], "ls() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.ls", false]], "ls_path() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.ls_path", false]], "manifest (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.Manifest", false]], "max_concurrent_requests (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.MAX_CONCURRENT_REQUESTS", false]], "max_concurrent_requests (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.MAX_CONCURRENT_REQUESTS", false]], "max_concurrent_requests (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.MAX_CONCURRENT_REQUESTS", false]], "md5 (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.MD5", false]], "md5sum (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.md5sum", false]], "module": [[9, "module-gen3.tools", false], [10, "module-gen3.tools.download.drs_download", false], [11, "module-gen3.tools.indexing.download_manifest", false], [11, "module-gen3.tools.indexing.index_manifest", false], [11, "module-gen3.tools.indexing.verify_manifest", false], [12, "module-gen3.tools.metadata.ingest_manifest", false]], "object_id (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.object_id", false]], "object_id (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.object_id", false]], "object_type (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.object_type", false]], "open_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.open_project", false]], "pprint() (gen3.tools.download.drs_download.downloadable method)": [[10, "gen3.tools.download.drs_download.Downloadable.pprint", false]], "prev_guid (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.PREV_GUID", false]], "query() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.query", false]], "query() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.query", false]], "query() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.query", false]], "query_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.query_urls", false]], "raw_data_download() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.raw_data_download", false]], "refresh_access_token() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.refresh_access_token", false]], "resolve_objects() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.resolve_objects", false]], "rm() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.rm", false]], "rm_path() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.rm_path", false]], "size (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.SIZE", false]], "start_time (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.start_time", false]], "status (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.status", false]], "submit_file() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.submit_file", false]], "submit_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.submit_record", false]], "threadcontrol (class in gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.ThreadControl", false]], "tmp_folder (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.TMP_FOLDER", false]], "update() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.update", false]], "update_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.update_aliases", false]], "update_blank() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.update_blank", false]], "update_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.update_record", false]], "updated_time (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.updated_time", false]], "upload() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.upload", false]], "upload_file() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.upload_file", false]], "upload_file_to_guid() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.upload_file_to_guid", false]], "upload_url() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.upload_url", false]], "urls (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.URLS", false]], "user_access() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.user_access", false]]}, "objects": {"gen3": [[9, 3, 0, "-", "tools"]], "gen3.auth": [[0, 0, 1, "", "Gen3Auth"]], "gen3.auth.Gen3Auth": [[0, 1, 1, "", "curl"], [0, 1, 1, "", "get_access_token"], [0, 1, 1, "", "get_access_token_from_wts"], [0, 1, 1, "", "refresh_access_token"]], "gen3.file": [[1, 0, 1, "", "Gen3File"]], "gen3.file.Gen3File": [[1, 1, 1, "", "delete_file"], [1, 1, 1, "", "delete_file_locations"], [1, 1, 1, "", "download_single"], [1, 1, 1, "", "get_presigned_url"], [1, 1, 1, "", "upload_file"], [1, 1, 1, "", "upload_file_to_guid"]], "gen3.index": [[3, 0, 1, "", "Gen3Index"]], "gen3.index.Gen3Index": [[3, 1, 1, "", "async_create_record"], [3, 1, 1, "", "async_get_record"], [3, 1, 1, "", "async_get_records_from_checksum"], [3, 1, 1, "", "async_get_records_on_page"], [3, 1, 1, "", "async_get_with_params"], [3, 1, 1, "", "async_query_urls"], [3, 1, 1, "", "async_update_record"], [3, 1, 1, "", "create_blank"], [3, 1, 1, "", "create_new_version"], [3, 1, 1, "", "create_record"], [3, 1, 1, "", "delete_record"], [3, 1, 1, "", "get"], [3, 1, 1, "", "get_all_records"], [3, 1, 1, "", "get_guids_prefix"], [3, 1, 1, "", "get_latest_version"], [3, 1, 1, "", "get_record"], [3, 1, 1, "", "get_record_doc"], [3, 1, 1, "", "get_records"], [3, 1, 1, "", "get_records_on_page"], [3, 1, 1, "", "get_stats"], [3, 1, 1, "", "get_urls"], [3, 1, 1, "", "get_valid_guids"], [3, 1, 1, "", "get_version"], [3, 1, 1, "", "get_versions"], [3, 1, 1, "", "get_with_params"], [3, 1, 1, "", "is_healthy"], [3, 1, 1, "", "query_urls"], [3, 1, 1, "", "update_blank"], [3, 1, 1, "", "update_record"]], "gen3.jobs": [[4, 0, 1, "", "Gen3Jobs"]], "gen3.jobs.Gen3Jobs": [[4, 1, 1, "", "async_run_job_and_wait"], [4, 1, 1, "", "create_job"], [4, 1, 1, "", "get_output"], [4, 1, 1, "", "get_status"], [4, 1, 1, "", "get_version"], [4, 1, 1, "", "is_healthy"], [4, 1, 1, "", "list_jobs"]], "gen3.metadata": [[5, 0, 1, "", "Gen3Metadata"]], "gen3.metadata.Gen3Metadata": [[5, 1, 1, "", "async_create"], [5, 1, 1, "", "async_create_aliases"], [5, 1, 1, "", "async_delete_alias"], [5, 1, 1, "", "async_delete_aliases"], [5, 1, 1, "", "async_get"], [5, 1, 1, "", "async_get_aliases"], [5, 1, 1, "", "async_update"], [5, 1, 1, "", "async_update_aliases"], [5, 2, 1, "", "auth_provider"], [5, 1, 1, "", "batch_create"], [5, 1, 1, "", "create"], [5, 1, 1, "", "create_aliases"], [5, 1, 1, "", "create_index_key_path"], [5, 1, 1, "", "delete"], [5, 1, 1, "", "delete_alias"], [5, 1, 1, "", "delete_aliases"], [5, 1, 1, "", "delete_index_key_path"], [5, 2, 1, "", "endpoint"], [5, 1, 1, "", "get"], [5, 1, 1, "", "get_aliases"], [5, 1, 1, "", "get_index_key_paths"], [5, 1, 1, "", "get_version"], [5, 1, 1, "", "is_healthy"], [5, 1, 1, "", "query"], [5, 1, 1, "", "update"], [5, 1, 1, "", "update_aliases"]], "gen3.object": [[6, 0, 1, "", "Gen3Object"]], "gen3.object.Gen3Object": [[6, 1, 1, "", "delete_object"]], "gen3.query": [[7, 0, 1, "", "Gen3Query"]], "gen3.query.Gen3Query": [[7, 1, 1, "", "graphql_query"], [7, 1, 1, "", "query"], [7, 1, 1, "", "raw_data_download"]], "gen3.submission": [[8, 0, 1, "", "Gen3Submission"]], "gen3.submission.Gen3Submission": [[8, 1, 1, "", "create_program"], [8, 1, 1, "", "create_project"], [8, 1, 1, "", "delete_node"], [8, 1, 1, "", "delete_nodes"], [8, 1, 1, "", "delete_program"], [8, 1, 1, "", "delete_project"], [8, 1, 1, "", "delete_record"], [8, 1, 1, "", "delete_records"], [8, 1, 1, "", "export_node"], [8, 1, 1, "", "export_record"], [8, 1, 1, "", "get_dictionary_all"], [8, 1, 1, "", "get_dictionary_node"], [8, 1, 1, "", "get_graphql_schema"], [8, 1, 1, "", "get_programs"], [8, 1, 1, "", "get_project_dictionary"], [8, 1, 1, "", "get_project_manifest"], [8, 1, 1, "", "get_projects"], [8, 1, 1, "", "open_project"], [8, 1, 1, "", "query"], [8, 1, 1, "", "submit_file"], [8, 1, 1, "", "submit_record"]], "gen3.tools.download": [[10, 3, 0, "-", "drs_download"]], "gen3.tools.download.drs_download": [[10, 0, 1, "", "DownloadManager"], [10, 0, 1, "", "DownloadStatus"], [10, 0, 1, "", "Downloadable"], [10, 0, 1, "", "Manifest"], [10, 4, 1, "", "download_files_in_drs_manifest"], [10, 4, 1, "", "list_access_in_drs_manifest"], [10, 4, 1, "", "list_drs_object"], [10, 4, 1, "", "list_files_in_drs_manifest"]], "gen3.tools.download.drs_download.DownloadManager": [[10, 1, 1, "", "cache_hosts_wts_tokens"], [10, 1, 1, "", "download"], [10, 1, 1, "", "get_fresh_token"], [10, 1, 1, "", "resolve_objects"], [10, 1, 1, "", "user_access"]], "gen3.tools.download.drs_download.DownloadStatus": [[10, 2, 1, "", "end_time"], [10, 2, 1, "", "start_time"], [10, 2, 1, "", "status"]], "gen3.tools.download.drs_download.Downloadable": [[10, 2, 1, "", "_manager"], [10, 2, 1, "", "access_methods"], [10, 2, 1, "", "children"], [10, 2, 1, "", "created_time"], [10, 1, 1, "", "download"], [10, 2, 1, "", "file_name"], [10, 2, 1, "", "file_size"], [10, 2, 1, "", "hostname"], [10, 2, 1, "", "object_id"], [10, 2, 1, "", "object_type"], [10, 1, 1, "", "pprint"], [10, 2, 1, "", "updated_time"]], "gen3.tools.download.drs_download.Manifest": [[10, 2, 1, "", "commons_url"], [10, 1, 1, "", "create_object_list"], [10, 2, 1, "", "file_name"], [10, 2, 1, "", "file_size"], [10, 1, 1, "", "load"], [10, 1, 1, "", "load_manifest"], [10, 2, 1, "", "md5sum"], [10, 2, 1, "", "object_id"]], "gen3.tools.indexing": [[11, 3, 0, "-", "download_manifest"], [11, 3, 0, "-", "index_manifest"], [11, 3, 0, "-", "verify_manifest"]], "gen3.tools.indexing.download_manifest": [[11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "INDEXD_RECORD_PAGE_SIZE"], [11, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [11, 2, 1, "", "TMP_FOLDER"], [11, 4, 1, "", "async_download_object_manifest"]], "gen3.tools.indexing.index_manifest": [[11, 2, 1, "", "ACLS"], [11, 2, 1, "", "AUTHZ"], [11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "GUID"], [11, 2, 1, "", "MD5"], [11, 2, 1, "", "PREV_GUID"], [11, 2, 1, "", "SIZE"], [11, 0, 1, "", "ThreadControl"], [11, 2, 1, "", "URLS"], [11, 4, 1, "", "delete_all_guids"], [11, 4, 1, "", "index_object_manifest"]], "gen3.tools.indexing.verify_manifest": [[11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [11, 4, 1, "", "async_verify_object_manifest"]], "gen3.tools.metadata": [[12, 3, 0, "-", "ingest_manifest"]], "gen3.tools.metadata.ingest_manifest": [[12, 2, 1, "", "COLUMN_TO_USE_AS_GUID"], [12, 2, 1, "", "GUID_TYPE_FOR_INDEXED_FILE_OBJECT"], [12, 2, 1, "", "GUID_TYPE_FOR_NON_INDEXED_FILE_OBJECT"], [12, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [12, 4, 1, "", "async_ingest_metadata_manifest"], [12, 4, 1, "", "async_query_urls_from_indexd"]], "gen3.wss": [[13, 0, 1, "", "Gen3WsStorage"]], "gen3.wss.Gen3WsStorage": [[13, 1, 1, "", "copy"], [13, 1, 1, "", "download"], [13, 1, 1, "", "download_url"], [13, 1, 1, "", "ls"], [13, 1, 1, "", "ls_path"], [13, 1, 1, "", "rm"], [13, 1, 1, "", "rm_path"], [13, 1, 1, "", "upload"], [13, 1, 1, "", "upload_url"]]}, "objnames": {"0": ["py", "class", "Python class"], "1": ["py", "method", "Python method"], "2": ["py", "attribute", "Python attribute"], "3": ["py", "module", "Python module"], "4": ["py", "function", "Python function"]}, "objtypes": {"0": "py:class", "1": "py:method", "2": "py:attribute", "3": "py:module", "4": "py:function"}, "terms": {"": [1, 4, 8, 10, 11], "0": [5, 7, 8, 11], "0046513": [], "0185335": [], "052073": [], "0576868": [], "058966": [], "064572": [], "07464": [], "0790412": [], "0a80fada010c": 11, "0a80fada096c": 11, "0a80fada097c": 11, "0a80fada098c": 11, "0a80fada099c": 11, "1": [4, 5, 8, 10, 11], "10": [5, 7, 11], "100": [8, 11], "1069167": [], "11e9": 11, "1344793": [], "1676264": [], "1713542306": [], "1713542765": [], "1713543033": [], "1713543225": [], "1713543506": [], "1713543956": [], "1713544131": [], "1713544132": [], "1713544397": [], "1713544598": [], "1713545857": [], "1713545858": [], "1713549370": [], "1713549689": [], "1713550571": [], "1713557245": [], "1713559376": [], "1713560080": [], "1713560402": [], "1713560403": [], "1713561061": [], "1713562690": [], "1717169008": [], "1717170449": [], "1717171842": [], "1717171843": [], "1717172360": [], "1717172577": [], "1717172773": [], "1717175781": 11, "1717175782": 12, "1731803": [], "1771936": [], "1913438": [], "1922355": 12, "2": [5, 11], "2184267": [], "24": [11, 12], "255e396f": 11, "2877355": [], "2930224": [], "2995": [], "3": [5, 11], "30": 8, "3041446": [], "3102272": [], "33": 5, "333": 5, "343434344": 11, "363455714": 11, "3935378": [], "4": [5, 11], "4017086": [], "4052968": [], "4090197": [], "4463434": [], "450c": 11, "4632835": [], "4649727": [], "4714": 8, "473d83400bc1bc9dc635e334fadd433c": 11, "473d83400bc1bc9dc635e334faddd33c": 11, "473d83400bc1bc9dc635e334fadde33c": 11, "473d83400bc1bc9dc635e334faddf33c": 11, "4752307": [], "4756553": [], "5": [0, 5], "50": 7, "517729": [], "5202463": [], "543434443": 11, "5669184": [], "568308": [], "573305": [], "5899982": [], "639124": [], "6692646": [], "6739478": [], "674552": [], "6f90": 8, "700799": [], "7232893": [], "756255": [], "760149": [], "7841465": [], "7d3d8d2083b4": 11, "8044841": [], "8375325": [], "8420": 8, "8630717": [], "8874054": [], "8882551": [], "9236414": 11, "9306026": [], "93d9af72": 11, "9a07": 11, "A": [1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "AND": 5, "Be": 1, "But": 5, "By": 11, "For": [1, 5, 6, 7, 8, 9, 11], "IF": 11, "If": [0, 1, 7, 11, 12], "In": 10, "It": 10, "NOT": 12, "OR": 5, "One": 7, "Such": 9, "THE": 11, "That": 3, "The": [0, 1, 2, 3, 5, 8, 10, 11], "There": 11, "These": 9, "To": 11, "Will": [4, 7, 10], "_get_acl_from_row": 11, "_get_authz_from_row": 11, "_get_file_name_from_row": 11, "_get_file_size_from_row": 11, "_get_guid_for_row": 12, "_get_guid_from_row": 11, "_get_md5_from_row": 11, "_get_urls_from_row": 11, "_guid_typ": 12, "_manag": [2, 9, 10], "_query_for_associated_indexd_record_guid": 12, "_ssl": [3, 4, 5], "a5c6": 11, "ab167e49d25b488939b1ede42752458b": 3, "about": [2, 3], "abov": 11, "access": [0, 1, 3, 7, 10], "access_method": [2, 9, 10], "access_token": 0, "accesstoken": 0, "acl": [2, 3, 9, 11], "across": 11, "act": 0, "action": [9, 11], "actual": 11, "ad": 3, "add": [3, 5], "addit": [3, 5, 10, 11], "admin": [5, 11], "admin_endpoint_suffix": 5, "after": 10, "against": [3, 7, 8, 11, 12], "algorithm": 3, "alia": [3, 5], "alias": 5, "aliv": 7, "all": [1, 3, 4, 5, 6, 7, 8, 10, 11, 12], "allow": [0, 6, 8, 10, 11, 12], "allowed_data_upload_bucket": 1, "along": 2, "alreadi": 9, "also": 1, "altern": [5, 11], "alwai": 5, "ammount": 12, "amount": [1, 9], "an": [0, 3, 6, 8, 10, 11], "ani": [0, 5, 10, 11], "anoth": 5, "api": [0, 5, 8, 11], "api_kei": 11, "appli": 7, "appropri": 13, "ar": [5, 7, 8, 9, 10, 11], "arbitrari": 0, "argument": [0, 13], "arrai": 8, "asc": 7, "assign": 9, "assist": 10, "associ": [3, 5], "assum": 11, "async": [3, 4, 5, 9, 11, 12], "async_cr": [2, 5], "async_create_alias": [2, 5], "async_create_record": [2, 3], "async_delete_alia": [2, 5], "async_delete_alias": [2, 5], "async_download_object_manifest": [2, 9, 11], "async_get": [2, 5], "async_get_alias": [2, 5], "async_get_record": [2, 3], "async_get_records_from_checksum": [2, 3], "async_get_records_on_pag": [2, 3], "async_get_with_param": [2, 3], "async_ingest_metadata_manifest": [2, 9, 12], "async_query_url": [2, 3], "async_query_urls_from_indexd": [2, 9, 12], "async_run_job_and_wait": [2, 4], "async_upd": [2, 5], "async_update_alias": [2, 5], "async_update_record": [2, 3], "async_verify_object_manifest": [2, 9, 11], "asynchron": [3, 4, 5], "asyncio": [11, 12], "asyncron": 5, "attach": [3, 5], "attempt": 11, "attribut": [10, 11], "auth": [1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "auth_provid": [1, 2, 3, 4, 5, 6, 7, 8, 13], "authbas": 0, "authent": 0, "author": 1, "authz": [0, 1, 2, 3, 9, 10, 11], "auto": [0, 2], "automat": 0, "avail": [1, 2, 10, 11], "az": 1, "b": [5, 11], "b0f1": 11, "bar": 10, "base": [0, 1, 3, 4, 5, 6, 7, 8, 9, 11, 13], "baseid": 3, "basic": [3, 11, 12], "batch_creat": [2, 5], "batch_siz": 8, "behalf": 0, "behavior": 11, "being": 3, "belong": 8, "below": 11, "blank": 3, "blob": [5, 7], "bodi": 3, "bool": [4, 5, 8, 10, 11, 12], "boolean": 3, "bownload": 10, "broad": 9, "broken": 9, "bucket": [1, 6], "bundl": 10, "byte": 10, "c": [5, 11], "cach": 10, "cache_hosts_wts_token": [2, 9, 10], "call": [10, 13], "can": [0, 3, 4, 8, 11, 12], "capabl": 9, "case": [0, 10], "categori": 9, "ccle": 8, "ccle_one_record": 8, "ccle_sample_nod": 8, "cdi": 7, "chang": [3, 11], "checksum": [3, 10], "checksum_typ": 3, "child": 10, "children": [2, 9, 10], "chunk_siz": 8, "class": [0, 2, 10, 11, 13], "cli": 10, "client": [0, 3], "client_credenti": 0, "client_id": 0, "client_scop": 0, "client_secret": 0, "code": [2, 8], "column": [11, 12], "column_to_use_as_guid": [2, 9, 12], "columna": 11, "columnb": 11, "columnc": 11, "com": 7, "comma": 11, "command": [10, 11], "common": [0, 1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13], "commons_url": [2, 9, 10, 11, 12], "complet": [4, 11], "complex": 7, "concat": 11, "concurr": [11, 12], "configur": 1, "connect": 12, "consist": 3, "constructor": 0, "contain": [0, 2, 5, 8, 9, 10, 11, 12], "content": [3, 13], "content_created_d": 3, "content_updated_d": 3, "continu": 10, "control": 3, "conveni": 10, "copi": [2, 13], "coroutin": 11, "correspond": 3, "count": 3, "crdc": 0, "creat": [2, 3, 4, 5, 6, 8, 10, 11], "create_alias": [2, 5], "create_blank": [2, 3], "create_index_key_path": [2, 5], "create_job": [2, 4], "create_new_vers": [2, 3], "create_object_list": [2, 9, 10], "create_program": [2, 8], "create_project": [2, 8], "create_record": [2, 3], "created_tim": [2, 9, 10], "creation": [3, 11], "cred": 3, "credenti": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "csv": [8, 11, 12], "curl": [0, 2], "current": [6, 8, 10], "current_dir": [2, 9, 11], "custom": 11, "d": 5, "d70b41b9": 8, "data": [0, 1, 3, 5, 7, 8, 10, 11], "data_spreadsheet": 8, "data_typ": 7, "data_upload_bucket": 1, "dataa": 11, "datab": 11, "databas": 5, "datacommon": 0, "datafil": 10, "datamanag": 10, "date": 3, "datetim": [1, 3, 10], "dbgap": 12, "dcf": 8, "def": 11, "default": [0, 1, 3, 7, 8, 11, 12], "defin": [5, 8, 10], "delai": 4, "delet": [0, 1, 2, 3, 5, 6, 8, 10, 11], "delete_alia": [2, 5], "delete_alias": [2, 5], "delete_all_guid": [2, 9, 11], "delete_fil": [1, 2], "delete_file_loc": [1, 2, 6], "delete_index_key_path": [2, 5], "delete_nod": [2, 8], "delete_object": [2, 6], "delete_program": [2, 8], "delete_project": [2, 8], "delete_record": [2, 3, 8], "delete_unpacked_packag": 10, "delimet": [11, 12], "delimit": 11, "demograph": 8, "deprec": 1, "descript": [3, 5], "desir": 11, "dest_path": 13, "dest_urlstr": 13, "dest_w": 13, "dest_wskei": 13, "detail": [2, 7, 10], "determin": [10, 11, 12], "dev": 11, "dict": [3, 4, 5, 10, 11, 12], "dictionari": [3, 4, 5, 7, 8], "did": 3, "differ": 5, "direct": 0, "directori": [10, 11], "disabl": 10, "discoveri": 10, "disk": 13, "dispatch": 4, "dist_resolut": 3, "distribut": 3, "doc": [7, 10], "docstr": 2, "document": [1, 3], "doe": [0, 12], "domain": [11, 12], "done": 4, "download": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 13], "download_files_in_drs_manifest": [2, 9, 10], "download_list": 10, "download_manifest": 11, "download_singl": [1, 2], "download_url": [2, 13], "downloadmanag": [2, 9, 10], "downloadstatu": [2, 9, 10], "dr": [2, 9], "drs_download": 10, "drs_hostnam": 10, "drsdownload": 10, "drsobjecttyp": 10, "e": [5, 10], "e043ab8b77b9": 8, "each": [3, 8, 10, 11], "effici": 9, "eg": 3, "either": 8, "elasticsearch": 7, "els": [0, 12], "elsewher": 12, "empti": [8, 11], "enabl": 11, "end": [5, 10], "end_tim": [2, 9, 10], "endpoint": [0, 1, 2, 3, 4, 5, 7, 8, 13], "entir": 8, "entri": [3, 11], "env": 0, "environ": 0, "equal": 7, "error": [10, 11, 12], "error_nam": 11, "etc": 8, "even": 11, "everi": [9, 11], "everyth": 11, "ex": [0, 11, 12], "exampl": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "exclud": 3, "execut": [7, 8, 11], "exist": [1, 3, 5, 6, 9, 12], "expect": [5, 9, 11], "experi": 8, "expir": [0, 1], "expires_in": 1, "export": [8, 10], "export_nod": [2, 8], "export_record": [2, 8], "f1f8": 11, "factori": 10, "fail": [8, 10], "fals": [3, 5, 6, 10, 11], "featur": [1, 6], "fenc": [0, 1], "fetch": 0, "field": [3, 5, 7, 11, 12], "fieldnam": 11, "file": [0, 2, 3, 4, 8, 9, 10, 11, 12, 13], "file_nam": [1, 2, 3, 9, 10, 11], "file_s": [2, 9, 10, 11], "file_st": 3, "fileformat": 8, "filenam": [0, 8, 10, 11, 12], "files": 10, "fill": 12, "filter": [5, 7], "filter_object": 7, "first": [7, 8], "flag": 11, "folder": 11, "follow": [0, 11], "forc": 11, "force_metadata_columns_even_if_empti": 11, "form": 13, "format": [3, 5, 8, 11], "from": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13], "func_to_parse_row": [11, 12], "function": [2, 3, 4, 5, 9, 10, 11, 12], "g": 10, "gen3": [10, 11, 12], "gen3_api_kei": 0, "gen3_oidc_client_creds_secret": 0, "gen3auth": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "gen3fil": [1, 2], "gen3index": [2, 3], "gen3job": [2, 4, 10], "gen3metadata": [2, 5], "gen3object": [2, 6], "gen3queri": [2, 7], "gen3submiss": [2, 8], "gen3wsstorag": [2, 13], "gener": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 13], "get": [0, 1, 2, 3, 4, 5, 8, 10, 11, 12, 13], "get_access_token": [0, 2], "get_access_token_from_wt": [0, 2], "get_alias": [2, 5], "get_all_record": [2, 3], "get_dictionary_al": [2, 8], "get_dictionary_nod": [2, 8], "get_fresh_token": [2, 9, 10], "get_graphql_schema": [2, 8], "get_guid_from_fil": 12, "get_guids_prefix": [2, 3], "get_index_key_path": [2, 5], "get_latest_vers": [2, 3], "get_output": [2, 4], "get_presigned_url": [1, 2], "get_program": [2, 8], "get_project": [2, 8], "get_project_dictionari": [2, 8], "get_project_manifest": [2, 8], "get_record": [2, 3], "get_record_doc": [2, 3], "get_records_on_pag": [2, 3], "get_stat": [2, 3], "get_statu": [2, 4], "get_url": [2, 3], "get_valid_guid": [2, 3], "get_vers": [2, 3, 4, 5], "get_with_param": [2, 3], "giangb": 11, "github": [2, 7], "give": 1, "given": [0, 3, 4, 5, 8, 10, 12, 13], "global": [4, 5], "good": 3, "grant": 0, "graph": 8, "graphql": [7, 8], "graphql_queri": [2, 7], "group": 3, "guid": [1, 2, 3, 5, 6, 9, 11, 12], "guid_exampl": 11, "guid_for_row": 12, "guid_from_fil": 12, "guid_type_for_indexed_file_object": [2, 9, 12], "guid_type_for_non_indexed_file_object": [2, 9, 12], "guppi": 7, "ha": [0, 11], "handl": [3, 10], "hardcod": 0, "has_vers": 3, "hash": [3, 11], "hash_typ": 3, "have": [5, 11], "header": 11, "healthi": [3, 4, 5], "help": 11, "helper": 2, "hit": 11, "host": 10, "hostnam": [2, 9, 10], "how": [8, 11], "howto": 10, "http": [0, 7, 11, 12], "i": [0, 1, 2, 3, 4, 5, 8, 10, 11, 12], "id": [0, 1, 3, 5, 10, 11], "idea": 3, "identifi": [3, 5, 9, 11], "idp": 0, "illustr": 11, "immut": 3, "implement": 0, "implic": 11, "import": 11, "includ": [0, 3], "indent": 10, "index": [0, 2, 5, 9], "index_manifest": 11, "index_object_manifest": [2, 9, 11], "indexd": [1, 3, 6, 10, 11, 12], "indexd_field": [11, 12], "indexd_record_page_s": [2, 9, 11], "indexed_file_object_guid": 12, "indic": [0, 11], "infil": 10, "info": [3, 11], "inform": [2, 3, 10], "ingest": [2, 9], "ingest_manifest": 12, "initi": [0, 10], "input": [4, 10, 11], "input_manifest": 11, "instal": [0, 2, 11], "instanc": [1, 3, 6, 7, 8, 9, 10], "instead": [1, 7, 11], "int": [1, 3, 5, 7, 8, 10, 11, 12], "integ": [1, 3, 8], "intend": 0, "interact": [1, 3, 4, 5, 6, 8, 13], "interest": 10, "interpret": 0, "introspect": 8, "involv": 9, "is_healthi": [2, 3, 4, 5], "is_indexed_file_object": 12, "isn": 1, "issu": 0, "its": [1, 3], "job": 2, "job_id": 4, "job_input": 4, "job_nam": 4, "json": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "just": [5, 11, 12], "jwt": 0, "kei": [0, 3, 5, 13], "know": 11, "known": 10, "kwarg": [3, 4, 5], "l": [2, 13], "larg": 9, "last": 10, "latest": 3, "least": 3, "level": 6, "librari": 11, "like": [3, 5, 9, 11, 12], "limit": [1, 3, 5, 12], "linear": 4, "linux": 10, "list": [0, 1, 3, 4, 5, 7, 8, 10, 11, 13], "list_access_in_drs_manifest": [2, 9, 10], "list_drs_object": [2, 9, 10], "list_files_in_drs_manifest": [2, 9, 10], "list_job": [2, 4], "live": [11, 12], "load": [2, 9, 10], "load_manifest": [2, 9, 10], "local": [0, 13], "locat": [1, 6], "lock": 12, "log": [8, 10, 11, 12], "logic": [5, 12], "loop": 11, "ls_path": [2, 13], "maco": 11, "made": 3, "mai": [0, 9, 11], "main": 10, "make": [9, 11], "manag": [1, 5, 10], "mani": [8, 11], "manifest": [2, 8, 9, 10, 11, 12], "manifest_1": 10, "manifest_fil": [11, 12], "manifest_file_delimit": [11, 12], "manifest_row_pars": [11, 12], "map": [0, 11], "mark": 8, "master": 7, "match": [3, 5, 12], "max": 5, "max_concurrent_request": [2, 9, 11, 12], "max_presigned_url_ttl": 1, "max_tri": 8, "maximum": [11, 12], "md": [5, 7, 10, 12], "md5": [2, 3, 9, 11], "md5_hash": 11, "md5sum": [2, 9, 10], "mean": 8, "mechan": 3, "merg": 5, "metadata": [2, 3, 6, 9, 11], "metadata_list": 5, "metadata_sourc": 12, "metadata_typ": 12, "metdata": 12, "method": [1, 7, 10], "minimum": 10, "minut": 0, "mode": 7, "modul": [2, 10, 11], "more": [2, 5, 7, 9, 10], "most": 9, "mostli": 2, "multipl": [8, 11], "must": [1, 5], "my_common": 10, "my_credenti": 10, "my_field": 7, "my_index": 7, "my_program": 7, "my_project": 7, "name": [3, 4, 8, 10, 11, 12, 13], "namespac": [0, 12], "necessari": [3, 5], "need": [3, 7, 10, 11], "nest": 5, "net": 11, "never": 0, "new": [0, 3], "node": 8, "node_nam": 8, "node_typ": 8, "none": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "note": [0, 3, 11, 12], "noth": [3, 6], "now": [1, 8], "num": 5, "num_process": 11, "num_total_fil": 11, "number": [3, 7, 8, 11, 12], "o": 0, "object": [1, 2, 3, 4, 5, 7, 8, 9, 10, 11, 13], "object_id": [1, 2, 9, 10], "object_list": 10, "object_typ": [2, 9, 10], "objectid": 10, "obtain": [0, 10], "occur": 10, "off": 5, "offset": [5, 7], "oidc": 0, "old": 3, "one": [3, 5, 10, 11], "onli": [3, 5, 7, 8, 10, 11], "open": [8, 10, 11], "open_project": [2, 8], "openid": 0, "opt": 0, "option": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11], "order": [0, 8], "ordered_node_list": 8, "org": 10, "otherwis": 10, "output": [4, 5, 11, 12], "output_dir": 10, "output_filenam": [11, 12], "overrid": [0, 11, 12], "overwrit": 5, "own": 0, "packag": 10, "page": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 13], "pagin": 3, "parallel": 11, "param": [3, 5, 8, 10], "paramet": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "pars": [10, 11, 12, 13], "parser": [11, 12], "particular": 0, "pass": [0, 7, 8, 10], "password": [11, 12], "path": [0, 1, 5, 10, 11, 13], "path_to_manifest": 11, "pattern": [3, 12], "pdcdatastor": 11, "pend": 10, "per": [11, 12], "peregrin": 8, "permiss": 10, "persist": 9, "phs0001": 11, "phs0002": 11, "pick": 1, "pla": 11, "place": 11, "planx": 11, "point": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "popul": [10, 12], "posit": [1, 7], "possibl": 10, "post": [0, 11], "pprint": [2, 9, 10], "prefix": 3, "presign": 1, "pretti": 10, "prev_guid": [2, 9, 11], "previou": [3, 11], "previous": 4, "print": [8, 10], "process": 11, "processed_fil": 11, "profil": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "program": [8, 11], "progress": [8, 10], "project": [8, 11], "project_id": [7, 8], "protocol": 1, "provid": [0, 1, 3, 5, 7, 8, 12], "public": [3, 5], "put": 0, "py": 11, "python": [2, 9, 11], "python3": 11, "python_subprocess_command": 11, "queri": [1, 2, 3, 5, 8, 11, 12], "query_str": 7, "query_txt": [7, 8], "query_url": [2, 3], "quickstart": 2, "rather": 0, "raw": [7, 11], "raw_data_download": [2, 7], "rbac": 3, "read": [3, 5, 11], "readm": 2, "reason": 10, "record": [1, 3, 5, 7, 8, 11, 12], "refresh": [0, 10], "refresh_access_token": [0, 2], "refresh_fil": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "refresh_token": 0, "regist": 8, "regular": 7, "relat": 9, "remov": [1, 6, 11, 13], "replac": 11, "replace_url": 11, "repo": 2, "repres": [3, 5, 10], "represent": [1, 3], "request": [0, 1, 3, 5, 8, 11, 12], "requir": 10, "resolv": 10, "resolve_object": [2, 9, 10], "respect": 7, "respons": [0, 1, 3, 4, 5], "result": [1, 8, 10, 11], "retri": 8, "retriev": [1, 8, 10, 12], "return": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11], "return_full_metadata": 5, "rev": 3, "revers": 8, "revis": 3, "right": 1, "rm": [2, 13], "rm_path": [2, 13], "root": [11, 12], "row": [7, 8, 11, 12], "row_offset": 8, "rtype": 3, "run": [8, 11], "s3": [1, 10, 11], "safe": 11, "same": [5, 11, 13], "sampl": [8, 10], "sandbox": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "save": 10, "save_directori": 10, "schema": 8, "scope": [0, 1], "screen": 8, "script": 2, "search": [0, 2, 3], "second": [1, 4], "secret": 0, "see": [7, 10, 11], "self": 10, "semaphon": 12, "semaphor": 12, "separ": [0, 11], "server": 10, "servic": [1, 3, 4, 5, 6, 8, 11, 12, 13], "service_loc": [3, 4, 5], "session": 11, "set": [0, 1, 5, 10], "setup": 2, "sheepdog": 8, "should": [0, 8, 11], "show": 10, "show_progress": 10, "shown": 11, "sign": 1, "signpost": 3, "similar": 10, "simpl": 3, "simpli": 11, "sinc": 3, "singl": [1, 5, 8], "size": [2, 3, 9, 10, 11], "skip": 8, "sleep": 4, "so": 11, "some": [0, 2], "someth": 11, "sort": 7, "sort_field": 7, "sort_object": 7, "sourc": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "space": [0, 11], "specif": [5, 8, 11, 12], "specifi": [0, 1, 3, 11, 13], "spreadsheet": 8, "src_path": 13, "src_urlstr": 13, "src_w": 13, "src_wskei": 13, "ssl": [3, 4, 5], "start": [3, 4, 7, 8, 10], "start_tim": [2, 9, 10], "static": 10, "statu": [2, 4, 9, 10], "storag": [1, 2, 6], "store": [1, 3, 10], "str": [0, 1, 3, 4, 5, 7, 8, 10, 11, 12], "string": [0, 3, 5, 11, 13], "strip": 11, "sub": 8, "subject": [7, 8], "submiss": 2, "submit": [8, 11], "submit_additional_metadata_column": 11, "submit_fil": [2, 8], "submit_record": [2, 8], "submitter_id": 7, "success": 10, "successfulli": 10, "suffici": 3, "suppli": 3, "support": [0, 1, 5, 8, 11], "sure": 1, "synchron": 11, "syntax": 7, "system": [6, 7, 8, 9], "t": [1, 5, 11], "tab": 11, "task": 9, "temporari": 11, "test": 11, "test1": 11, "test2": 11, "test3": 11, "test4": 11, "test5": 11, "text": [1, 7, 8], "than": [0, 5], "thei": [0, 10], "them": [10, 11], "thi": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "those": 11, "thread": 11, "thread_num": 11, "threadcontrol": [2, 9, 11], "through": [8, 11], "tier": 7, "time": [1, 3, 8, 10, 11], "timestamp": 10, "tmp_folder": [2, 9, 11], "token": [0, 10], "tool": 2, "total": 11, "treat": [1, 5], "tree": 10, "true": [3, 4, 5, 6, 7, 8, 10, 11, 12], "try": 0, "tsv": [8, 11, 12], "tupl": [0, 3, 11, 12], "type": [1, 3, 4, 5, 7, 8, 10, 11, 12], "typic": 10, "uc": 7, "unaccess": 7, "under": [0, 8, 13], "uniqu": [1, 5], "unknown": 10, "unpack": 10, "unpack_packag": 10, "until": [4, 10], "up": [5, 9], "updat": [2, 3, 5, 10, 11], "update_alias": [2, 5], "update_blank": [2, 3], "update_record": [2, 3], "updated_tim": [2, 9, 10], "upload": [1, 2, 3, 8, 13], "upload_fil": [1, 2], "upload_file_to_guid": [1, 2], "upload_url": [2, 13], "url": [1, 2, 3, 9, 10, 11, 12, 13], "urls_metadata": 3, "us": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "usag": 11, "use_agg_md": 5, "user": [0, 10, 12], "user_access": [2, 9, 10], "usual": 12, "utcnow": 1, "util": 9, "uuid": [1, 3, 8], "uuid1": 8, "uuid2": 8, "valid": [3, 7], "valu": [0, 1, 3, 5, 7, 10, 11], "value_from_indexd": 11, "value_from_manifest": 11, "variabl": [0, 7, 8], "variou": 2, "verbos": [7, 8], "verif": 11, "verifi": [2, 9], "verify_manifest": 11, "verify_object_manifest": 11, "version": [3, 4, 5], "vital_statu": 7, "w": 13, "wa": 0, "wai": 10, "wait": 4, "want": [0, 3, 8], "warn": 11, "we": [3, 11], "web": 0, "what": 5, "when": [0, 3, 7, 10, 12], "where": [0, 3, 5, 11, 12], "whether": [3, 4, 5, 8, 11, 12], "which": [8, 10], "while": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "whose": 5, "within": [0, 2, 9], "without": [3, 5], "won": 5, "work": [0, 10], "workaround": 11, "worksheet": 8, "workspac": [0, 2], "wrapper": 10, "write": 11, "ws_urlstr": 13, "wskei": 13, "wss": 13, "wt": [0, 10], "x": 11, "xlsx": 8, "you": [0, 3, 8, 11], "your": 0}, "titles": ["Gen3 Auth Helper", "Gen3 File Class", "Welcome to Gen3 SDK\u2019s documentation!", "Gen3 Index Class", "Gen3 Jobs Class", "Gen3 Metadata Class", "Gen3 Object Class", "Gen3 Query Class", "Gen3 Submission Class", "Gen3 Tools", "DRS Download Tools", "Indexing Tools", "Metadata Tools", "Gen3 Workspace Storage"], "titleterms": {"": 2, "auth": 0, "class": [1, 3, 4, 5, 6, 7, 8], "document": 2, "download": [10, 11], "dr": 10, "file": 1, "gen3": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 13], "helper": 0, "index": [3, 11], "indic": 2, "ingest": 12, "job": 4, "metadata": [5, 12], "object": 6, "queri": 7, "sdk": 2, "storag": 13, "submiss": 8, "tabl": 2, "tool": [9, 10, 11, 12], "verifi": 11, "welcom": 2, "workspac": 13}}) \ No newline at end of file diff --git a/docs/_build/html/tools/indexing.html b/docs/_build/html/tools/indexing.html index 6f3628237..3f02d52f1 100644 --- a/docs/_build/html/tools/indexing.html +++ b/docs/_build/html/tools/indexing.html @@ -381,7 +381,7 @@

Indexing Tools
-async gen3.tools.indexing.verify_manifest.async_verify_object_manifest(commons_url, manifest_file, max_concurrent_requests=24, manifest_row_parsers={'acl': <function _get_acl_from_row>, 'authz': <function _get_authz_from_row>, 'file_name': <function _get_file_name_from_row>, 'file_size': <function _get_file_size_from_row>, 'guid': <function _get_guid_from_row>, 'md5': <function _get_md5_from_row>, 'urls': <function _get_urls_from_row>}, manifest_file_delimiter=None, output_filename='verify-manifest-errors-1717172773.639124.log')[source]
+async gen3.tools.indexing.verify_manifest.async_verify_object_manifest(commons_url, manifest_file, max_concurrent_requests=24, manifest_row_parsers={'acl': <function _get_acl_from_row>, 'authz': <function _get_authz_from_row>, 'file_name': <function _get_file_name_from_row>, 'file_size': <function _get_file_size_from_row>, 'guid': <function _get_guid_from_row>, 'md5': <function _get_md5_from_row>, 'urls': <function _get_urls_from_row>}, manifest_file_delimiter=None, output_filename='verify-manifest-errors-1717175781.9236414.log')[source]

Verify all file object records into a manifest csv

Parameters:
diff --git a/docs/_build/html/tools/metadata.html b/docs/_build/html/tools/metadata.html index 7885a4faa..1b966ae34 100644 --- a/docs/_build/html/tools/metadata.html +++ b/docs/_build/html/tools/metadata.html @@ -102,7 +102,7 @@

Metadata Tools
-async gen3.tools.metadata.ingest_manifest.async_ingest_metadata_manifest(commons_url, manifest_file, metadata_source, auth=None, max_concurrent_requests=24, manifest_row_parsers={'guid_for_row': <function _get_guid_for_row>, 'indexed_file_object_guid': <function _query_for_associated_indexd_record_guid>}, manifest_file_delimiter=None, output_filename='ingest-metadata-manifest-errors-1717172773.9306026.log', get_guid_from_file=True, metadata_type=None)[source]
+async gen3.tools.metadata.ingest_manifest.async_ingest_metadata_manifest(commons_url, manifest_file, metadata_source, auth=None, max_concurrent_requests=24, manifest_row_parsers={'guid_for_row': <function _get_guid_for_row>, 'indexed_file_object_guid': <function _query_for_associated_indexd_record_guid>}, manifest_file_delimiter=None, output_filename='ingest-metadata-manifest-errors-1717175782.1922355.log', get_guid_from_file=True, metadata_type=None)[source]

Ingest all metadata records into a manifest csv

Parameters:
From 964c1f2e584c654f198a2f03683b2120eb481b92 Mon Sep 17 00:00:00 2001 From: Alex Date: Fri, 31 May 2024 12:32:50 -0500 Subject: [PATCH 53/62] feat(build): add missing steps --- .github/workflows/build.yaml | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index 6ab13c24b..2d8f5fa30 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -14,6 +14,16 @@ jobs: os: [ubuntu-latest, windows-latest, macos-latest] steps: + - name: Check out code + uses: actions/checkout@v3 + with: + persist-credentials: false + + - name: Set up python + uses: actions/setup-python@v4 + with: + python-version: '3.9' + - name: Install PostgreSQL and dependencies on Ubuntu if: matrix.os == 'ubuntu-latest' run: | From b54bba97198744a5a1ff0c847439f0cba9cde9b5 Mon Sep 17 00:00:00 2001 From: Avantol13 Date: Fri, 31 May 2024 17:34:00 +0000 Subject: [PATCH 54/62] Apply automatic documentation changes --- docs/_build/doctrees/environment.pickle | Bin 1579893 -> 1579888 bytes docs/_build/doctrees/tools/indexing.doctree | Bin 100291 -> 100291 bytes docs/_build/doctrees/tools/metadata.doctree | Bin 35934 -> 35929 bytes docs/_build/html/searchindex.js | 2 +- docs/_build/html/tools/indexing.html | 2 +- docs/_build/html/tools/metadata.html | 2 +- 6 files changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/_build/doctrees/environment.pickle b/docs/_build/doctrees/environment.pickle index f9628c898adf2aee990f240d79ee42e99585ae73..013e1fb99f7e6eac6acde1e3d40bd3e0b55fb76c 100644 GIT binary patch delta 9157 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 delta 8728 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 diff --git a/docs/_build/doctrees/tools/indexing.doctree b/docs/_build/doctrees/tools/indexing.doctree index 611aad0ddf7dc0b32393151148c054da2a065ea0..cfb5b9530db2b9d2d078dac8c6f509c22074e354 100644 GIT binary patch delta 104 zcmX@y&vv+X9#o6SL5 z$C(-HHcRO_qsVQ})Nkcrbf5g*+*|-ji(XECy87gUIl>SrNpz_x8SJrBGQ@ho8j7b4HcioUY%>!RRsht+_d>CVdMDh_Dp0S$aA7>FQH5*kh+;i1lFV+I-8R GJ{SOiI4nm1 diff --git a/docs/_build/html/searchindex.js b/docs/_build/html/searchindex.js index 70ac71891..6b04465c8 100644 --- a/docs/_build/html/searchindex.js +++ b/docs/_build/html/searchindex.js @@ -1 +1 @@ -Search.setIndex({"alltitles": {"DRS Download Tools": [[10, "module-gen3.tools.download.drs_download"]], "Download": [[11, "module-gen3.tools.indexing.download_manifest"]], "Gen3 Auth Helper": [[0, "gen3-auth-helper"]], "Gen3 File Class": [[1, "gen3-file-class"]], "Gen3 Index Class": [[3, "gen3-index-class"]], "Gen3 Jobs Class": [[4, "gen3-jobs-class"]], "Gen3 Metadata Class": [[5, "gen3-metadata-class"]], "Gen3 Object Class": [[6, "gen3-object-class"]], "Gen3 Query Class": [[7, "gen3-query-class"]], "Gen3 Submission Class": [[8, "gen3-submission-class"]], "Gen3 Tools": [[9, "gen3-tools"]], "Gen3 Workspace Storage": [[13, "gen3-workspace-storage"]], "Index": [[11, "module-gen3.tools.indexing.index_manifest"]], "Indexing Tools": [[11, "indexing-tools"]], "Indices and tables": [[2, "indices-and-tables"]], "Ingest": [[12, "module-gen3.tools.metadata.ingest_manifest"]], "Metadata Tools": [[12, "metadata-tools"]], "Verify": [[11, "module-gen3.tools.indexing.verify_manifest"]], "Welcome to Gen3 SDK\u2019s documentation!": [[2, "welcome-to-gen3-sdk-s-documentation"]]}, "docnames": ["auth", "file", "index", "indexing", "jobs", "metadata", "object", "query", "submission", "tools", "tools/drs_pull", "tools/indexing", "tools/metadata", "wss"], "envversion": {"sphinx": 61, "sphinx.domains.c": 3, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 9, "sphinx.domains.index": 1, "sphinx.domains.javascript": 3, "sphinx.domains.math": 2, "sphinx.domains.python": 4, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx.ext.viewcode": 1}, "filenames": ["auth.rst", "file.rst", "index.rst", "indexing.rst", "jobs.rst", "metadata.rst", "object.rst", "query.rst", "submission.rst", "tools.rst", "tools/drs_pull.rst", "tools/indexing.rst", "tools/metadata.rst", "wss.rst"], "indexentries": {"_manager (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable._manager", false]], "access_methods (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.access_methods", false]], "acls (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.ACLS", false]], "async_create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_create", false]], "async_create_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_create_aliases", false]], "async_create_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_create_record", false]], "async_delete_alias() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_delete_alias", false]], "async_delete_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_delete_aliases", false]], "async_download_object_manifest() (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.async_download_object_manifest", false]], "async_get() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_get", false]], "async_get_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_get_aliases", false]], "async_get_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_record", false]], "async_get_records_from_checksum() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_records_from_checksum", false]], "async_get_records_on_page() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_records_on_page", false]], "async_get_with_params() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_with_params", false]], "async_ingest_metadata_manifest() (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.async_ingest_metadata_manifest", false]], "async_query_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_query_urls", false]], "async_query_urls_from_indexd() (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.async_query_urls_from_indexd", false]], "async_run_job_and_wait() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.async_run_job_and_wait", false]], "async_update() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_update", false]], "async_update_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_update_aliases", false]], "async_update_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_update_record", false]], "async_verify_object_manifest() (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.async_verify_object_manifest", false]], "auth_provider (gen3.metadata.gen3metadata attribute)": [[5, "gen3.metadata.Gen3Metadata.auth_provider", false]], "authz (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.AUTHZ", false]], "batch_create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.batch_create", false]], "cache_hosts_wts_tokens() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.cache_hosts_wts_tokens", false]], "children (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.children", false]], "column_to_use_as_guid (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.COLUMN_TO_USE_AS_GUID", false]], "commons_url (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.commons_url", false]], "copy() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.copy", false]], "create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create", false]], "create_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create_aliases", false]], "create_blank() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_blank", false]], "create_index_key_path() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create_index_key_path", false]], "create_job() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.create_job", false]], "create_new_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_new_version", false]], "create_object_list() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.create_object_list", false]], "create_program() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.create_program", false]], "create_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.create_project", false]], "create_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_record", false]], "created_time (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.created_time", false]], "curl() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.curl", false]], "current_dir (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.CURRENT_DIR", false]], "current_dir (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.CURRENT_DIR", false]], "current_dir (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.CURRENT_DIR", false]], "delete() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete", false]], "delete_alias() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_alias", false]], "delete_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_aliases", false]], "delete_all_guids() (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.delete_all_guids", false]], "delete_file() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.delete_file", false]], "delete_file_locations() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.delete_file_locations", false]], "delete_index_key_path() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_index_key_path", false]], "delete_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_node", false]], "delete_nodes() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_nodes", false]], "delete_object() (gen3.object.gen3object method)": [[6, "gen3.object.Gen3Object.delete_object", false]], "delete_program() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_program", false]], "delete_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_project", false]], "delete_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.delete_record", false]], "delete_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_record", false]], "delete_records() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_records", false]], "download() (gen3.tools.download.drs_download.downloadable method)": [[10, "gen3.tools.download.drs_download.Downloadable.download", false]], "download() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.download", false]], "download() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.download", false]], "download_files_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.download_files_in_drs_manifest", false]], "download_single() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.download_single", false]], "download_url() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.download_url", false]], "downloadable (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.Downloadable", false]], "downloadmanager (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.DownloadManager", false]], "downloadstatus (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.DownloadStatus", false]], "end_time (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.end_time", false]], "endpoint (gen3.metadata.gen3metadata attribute)": [[5, "gen3.metadata.Gen3Metadata.endpoint", false]], "export_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.export_node", false]], "export_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.export_record", false]], "file_name (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.file_name", false]], "file_name (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.file_name", false]], "file_size (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.file_size", false]], "file_size (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.file_size", false]], "gen3.tools": [[9, "module-gen3.tools", false]], "gen3.tools.download.drs_download": [[10, "module-gen3.tools.download.drs_download", false]], "gen3.tools.indexing.download_manifest": [[11, "module-gen3.tools.indexing.download_manifest", false]], "gen3.tools.indexing.index_manifest": [[11, "module-gen3.tools.indexing.index_manifest", false]], "gen3.tools.indexing.verify_manifest": [[11, "module-gen3.tools.indexing.verify_manifest", false]], "gen3.tools.metadata.ingest_manifest": [[12, "module-gen3.tools.metadata.ingest_manifest", false]], "gen3auth (class in gen3.auth)": [[0, "gen3.auth.Gen3Auth", false]], "gen3file (class in gen3.file)": [[1, "gen3.file.Gen3File", false]], "gen3index (class in gen3.index)": [[3, "gen3.index.Gen3Index", false]], "gen3jobs (class in gen3.jobs)": [[4, "gen3.jobs.Gen3Jobs", false]], "gen3metadata (class in gen3.metadata)": [[5, "gen3.metadata.Gen3Metadata", false]], "gen3object (class in gen3.object)": [[6, "gen3.object.Gen3Object", false]], "gen3query (class in gen3.query)": [[7, "gen3.query.Gen3Query", false]], "gen3submission (class in gen3.submission)": [[8, "gen3.submission.Gen3Submission", false]], "gen3wsstorage (class in gen3.wss)": [[13, "gen3.wss.Gen3WsStorage", false]], "get() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get", false]], "get() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get", false]], "get_access_token() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.get_access_token", false]], "get_access_token_from_wts() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.get_access_token_from_wts", false]], "get_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_aliases", false]], "get_all_records() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_all_records", false]], "get_dictionary_all() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_dictionary_all", false]], "get_dictionary_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_dictionary_node", false]], "get_fresh_token() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.get_fresh_token", false]], "get_graphql_schema() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_graphql_schema", false]], "get_guids_prefix() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_guids_prefix", false]], "get_index_key_paths() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_index_key_paths", false]], "get_latest_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_latest_version", false]], "get_output() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_output", false]], "get_presigned_url() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.get_presigned_url", false]], "get_programs() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_programs", false]], "get_project_dictionary() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_project_dictionary", false]], "get_project_manifest() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_project_manifest", false]], "get_projects() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_projects", false]], "get_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_record", false]], "get_record_doc() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_record_doc", false]], "get_records() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_records", false]], "get_records_on_page() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_records_on_page", false]], "get_stats() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_stats", false]], "get_status() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_status", false]], "get_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_urls", false]], "get_valid_guids() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_valid_guids", false]], "get_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_version", false]], "get_version() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_version", false]], "get_version() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_version", false]], "get_versions() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_versions", false]], "get_with_params() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_with_params", false]], "graphql_query() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.graphql_query", false]], "guid (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.GUID", false]], "guid_type_for_indexed_file_object (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.GUID_TYPE_FOR_INDEXED_FILE_OBJECT", false]], "guid_type_for_non_indexed_file_object (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.GUID_TYPE_FOR_NON_INDEXED_FILE_OBJECT", false]], "hostname (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.hostname", false]], "index_object_manifest() (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.index_object_manifest", false]], "indexd_record_page_size (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.INDEXD_RECORD_PAGE_SIZE", false]], "is_healthy() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.is_healthy", false]], "is_healthy() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.is_healthy", false]], "is_healthy() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.is_healthy", false]], "list_access_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_access_in_drs_manifest", false]], "list_drs_object() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_drs_object", false]], "list_files_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_files_in_drs_manifest", false]], "list_jobs() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.list_jobs", false]], "load() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.load", false]], "load_manifest() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.load_manifest", false]], "ls() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.ls", false]], "ls_path() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.ls_path", false]], "manifest (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.Manifest", false]], "max_concurrent_requests (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.MAX_CONCURRENT_REQUESTS", false]], "max_concurrent_requests (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.MAX_CONCURRENT_REQUESTS", false]], "max_concurrent_requests (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.MAX_CONCURRENT_REQUESTS", false]], "md5 (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.MD5", false]], "md5sum (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.md5sum", false]], "module": [[9, "module-gen3.tools", false], [10, "module-gen3.tools.download.drs_download", false], [11, "module-gen3.tools.indexing.download_manifest", false], [11, "module-gen3.tools.indexing.index_manifest", false], [11, "module-gen3.tools.indexing.verify_manifest", false], [12, "module-gen3.tools.metadata.ingest_manifest", false]], "object_id (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.object_id", false]], "object_id (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.object_id", false]], "object_type (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.object_type", false]], "open_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.open_project", false]], "pprint() (gen3.tools.download.drs_download.downloadable method)": [[10, "gen3.tools.download.drs_download.Downloadable.pprint", false]], "prev_guid (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.PREV_GUID", false]], "query() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.query", false]], "query() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.query", false]], "query() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.query", false]], "query_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.query_urls", false]], "raw_data_download() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.raw_data_download", false]], "refresh_access_token() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.refresh_access_token", false]], "resolve_objects() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.resolve_objects", false]], "rm() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.rm", false]], "rm_path() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.rm_path", false]], "size (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.SIZE", false]], "start_time (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.start_time", false]], "status (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.status", false]], "submit_file() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.submit_file", false]], "submit_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.submit_record", false]], "threadcontrol (class in gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.ThreadControl", false]], "tmp_folder (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.TMP_FOLDER", false]], "update() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.update", false]], "update_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.update_aliases", false]], "update_blank() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.update_blank", false]], "update_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.update_record", false]], "updated_time (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.updated_time", false]], "upload() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.upload", false]], "upload_file() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.upload_file", false]], "upload_file_to_guid() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.upload_file_to_guid", false]], "upload_url() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.upload_url", false]], "urls (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.URLS", false]], "user_access() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.user_access", false]]}, "objects": {"gen3": [[9, 3, 0, "-", "tools"]], "gen3.auth": [[0, 0, 1, "", "Gen3Auth"]], "gen3.auth.Gen3Auth": [[0, 1, 1, "", "curl"], [0, 1, 1, "", "get_access_token"], [0, 1, 1, "", "get_access_token_from_wts"], [0, 1, 1, "", "refresh_access_token"]], "gen3.file": [[1, 0, 1, "", "Gen3File"]], "gen3.file.Gen3File": [[1, 1, 1, "", "delete_file"], [1, 1, 1, "", "delete_file_locations"], [1, 1, 1, "", "download_single"], [1, 1, 1, "", "get_presigned_url"], [1, 1, 1, "", "upload_file"], [1, 1, 1, "", "upload_file_to_guid"]], "gen3.index": [[3, 0, 1, "", "Gen3Index"]], "gen3.index.Gen3Index": [[3, 1, 1, "", "async_create_record"], [3, 1, 1, "", "async_get_record"], [3, 1, 1, "", "async_get_records_from_checksum"], [3, 1, 1, "", "async_get_records_on_page"], [3, 1, 1, "", "async_get_with_params"], [3, 1, 1, "", "async_query_urls"], [3, 1, 1, "", "async_update_record"], [3, 1, 1, "", "create_blank"], [3, 1, 1, "", "create_new_version"], [3, 1, 1, "", "create_record"], [3, 1, 1, "", "delete_record"], [3, 1, 1, "", "get"], [3, 1, 1, "", "get_all_records"], [3, 1, 1, "", "get_guids_prefix"], [3, 1, 1, "", "get_latest_version"], [3, 1, 1, "", "get_record"], [3, 1, 1, "", "get_record_doc"], [3, 1, 1, "", "get_records"], [3, 1, 1, "", "get_records_on_page"], [3, 1, 1, "", "get_stats"], [3, 1, 1, "", "get_urls"], [3, 1, 1, "", "get_valid_guids"], [3, 1, 1, "", "get_version"], [3, 1, 1, "", "get_versions"], [3, 1, 1, "", "get_with_params"], [3, 1, 1, "", "is_healthy"], [3, 1, 1, "", "query_urls"], [3, 1, 1, "", "update_blank"], [3, 1, 1, "", "update_record"]], "gen3.jobs": [[4, 0, 1, "", "Gen3Jobs"]], "gen3.jobs.Gen3Jobs": [[4, 1, 1, "", "async_run_job_and_wait"], [4, 1, 1, "", "create_job"], [4, 1, 1, "", "get_output"], [4, 1, 1, "", "get_status"], [4, 1, 1, "", "get_version"], [4, 1, 1, "", "is_healthy"], [4, 1, 1, "", "list_jobs"]], "gen3.metadata": [[5, 0, 1, "", "Gen3Metadata"]], "gen3.metadata.Gen3Metadata": [[5, 1, 1, "", "async_create"], [5, 1, 1, "", "async_create_aliases"], [5, 1, 1, "", "async_delete_alias"], [5, 1, 1, "", "async_delete_aliases"], [5, 1, 1, "", "async_get"], [5, 1, 1, "", "async_get_aliases"], [5, 1, 1, "", "async_update"], [5, 1, 1, "", "async_update_aliases"], [5, 2, 1, "", "auth_provider"], [5, 1, 1, "", "batch_create"], [5, 1, 1, "", "create"], [5, 1, 1, "", "create_aliases"], [5, 1, 1, "", "create_index_key_path"], [5, 1, 1, "", "delete"], [5, 1, 1, "", "delete_alias"], [5, 1, 1, "", "delete_aliases"], [5, 1, 1, "", "delete_index_key_path"], [5, 2, 1, "", "endpoint"], [5, 1, 1, "", "get"], [5, 1, 1, "", "get_aliases"], [5, 1, 1, "", "get_index_key_paths"], [5, 1, 1, "", "get_version"], [5, 1, 1, "", "is_healthy"], [5, 1, 1, "", "query"], [5, 1, 1, "", "update"], [5, 1, 1, "", "update_aliases"]], "gen3.object": [[6, 0, 1, "", "Gen3Object"]], "gen3.object.Gen3Object": [[6, 1, 1, "", "delete_object"]], "gen3.query": [[7, 0, 1, "", "Gen3Query"]], "gen3.query.Gen3Query": [[7, 1, 1, "", "graphql_query"], [7, 1, 1, "", "query"], [7, 1, 1, "", "raw_data_download"]], "gen3.submission": [[8, 0, 1, "", "Gen3Submission"]], "gen3.submission.Gen3Submission": [[8, 1, 1, "", "create_program"], [8, 1, 1, "", "create_project"], [8, 1, 1, "", "delete_node"], [8, 1, 1, "", "delete_nodes"], [8, 1, 1, "", "delete_program"], [8, 1, 1, "", "delete_project"], [8, 1, 1, "", "delete_record"], [8, 1, 1, "", "delete_records"], [8, 1, 1, "", "export_node"], [8, 1, 1, "", "export_record"], [8, 1, 1, "", "get_dictionary_all"], [8, 1, 1, "", "get_dictionary_node"], [8, 1, 1, "", "get_graphql_schema"], [8, 1, 1, "", "get_programs"], [8, 1, 1, "", "get_project_dictionary"], [8, 1, 1, "", "get_project_manifest"], [8, 1, 1, "", "get_projects"], [8, 1, 1, "", "open_project"], [8, 1, 1, "", "query"], [8, 1, 1, "", "submit_file"], [8, 1, 1, "", "submit_record"]], "gen3.tools.download": [[10, 3, 0, "-", "drs_download"]], "gen3.tools.download.drs_download": [[10, 0, 1, "", "DownloadManager"], [10, 0, 1, "", "DownloadStatus"], [10, 0, 1, "", "Downloadable"], [10, 0, 1, "", "Manifest"], [10, 4, 1, "", "download_files_in_drs_manifest"], [10, 4, 1, "", "list_access_in_drs_manifest"], [10, 4, 1, "", "list_drs_object"], [10, 4, 1, "", "list_files_in_drs_manifest"]], "gen3.tools.download.drs_download.DownloadManager": [[10, 1, 1, "", "cache_hosts_wts_tokens"], [10, 1, 1, "", "download"], [10, 1, 1, "", "get_fresh_token"], [10, 1, 1, "", "resolve_objects"], [10, 1, 1, "", "user_access"]], "gen3.tools.download.drs_download.DownloadStatus": [[10, 2, 1, "", "end_time"], [10, 2, 1, "", "start_time"], [10, 2, 1, "", "status"]], "gen3.tools.download.drs_download.Downloadable": [[10, 2, 1, "", "_manager"], [10, 2, 1, "", "access_methods"], [10, 2, 1, "", "children"], [10, 2, 1, "", "created_time"], [10, 1, 1, "", "download"], [10, 2, 1, "", "file_name"], [10, 2, 1, "", "file_size"], [10, 2, 1, "", "hostname"], [10, 2, 1, "", "object_id"], [10, 2, 1, "", "object_type"], [10, 1, 1, "", "pprint"], [10, 2, 1, "", "updated_time"]], "gen3.tools.download.drs_download.Manifest": [[10, 2, 1, "", "commons_url"], [10, 1, 1, "", "create_object_list"], [10, 2, 1, "", "file_name"], [10, 2, 1, "", "file_size"], [10, 1, 1, "", "load"], [10, 1, 1, "", "load_manifest"], [10, 2, 1, "", "md5sum"], [10, 2, 1, "", "object_id"]], "gen3.tools.indexing": [[11, 3, 0, "-", "download_manifest"], [11, 3, 0, "-", "index_manifest"], [11, 3, 0, "-", "verify_manifest"]], "gen3.tools.indexing.download_manifest": [[11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "INDEXD_RECORD_PAGE_SIZE"], [11, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [11, 2, 1, "", "TMP_FOLDER"], [11, 4, 1, "", "async_download_object_manifest"]], "gen3.tools.indexing.index_manifest": [[11, 2, 1, "", "ACLS"], [11, 2, 1, "", "AUTHZ"], [11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "GUID"], [11, 2, 1, "", "MD5"], [11, 2, 1, "", "PREV_GUID"], [11, 2, 1, "", "SIZE"], [11, 0, 1, "", "ThreadControl"], [11, 2, 1, "", "URLS"], [11, 4, 1, "", "delete_all_guids"], [11, 4, 1, "", "index_object_manifest"]], "gen3.tools.indexing.verify_manifest": [[11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [11, 4, 1, "", "async_verify_object_manifest"]], "gen3.tools.metadata": [[12, 3, 0, "-", "ingest_manifest"]], "gen3.tools.metadata.ingest_manifest": [[12, 2, 1, "", "COLUMN_TO_USE_AS_GUID"], [12, 2, 1, "", "GUID_TYPE_FOR_INDEXED_FILE_OBJECT"], [12, 2, 1, "", "GUID_TYPE_FOR_NON_INDEXED_FILE_OBJECT"], [12, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [12, 4, 1, "", "async_ingest_metadata_manifest"], [12, 4, 1, "", "async_query_urls_from_indexd"]], "gen3.wss": [[13, 0, 1, "", "Gen3WsStorage"]], "gen3.wss.Gen3WsStorage": [[13, 1, 1, "", "copy"], [13, 1, 1, "", "download"], [13, 1, 1, "", "download_url"], [13, 1, 1, "", "ls"], [13, 1, 1, "", "ls_path"], [13, 1, 1, "", "rm"], [13, 1, 1, "", "rm_path"], [13, 1, 1, "", "upload"], [13, 1, 1, "", "upload_url"]]}, "objnames": {"0": ["py", "class", "Python class"], "1": ["py", "method", "Python method"], "2": ["py", "attribute", "Python attribute"], "3": ["py", "module", "Python module"], "4": ["py", "function", "Python function"]}, "objtypes": {"0": "py:class", "1": "py:method", "2": "py:attribute", "3": "py:module", "4": "py:function"}, "terms": {"": [1, 4, 8, 10, 11], "0": [5, 7, 8, 11], "0046513": [], "0185335": [], "052073": [], "0576868": [], "058966": [], "064572": [], "07464": [], "0790412": [], "0a80fada010c": 11, "0a80fada096c": 11, "0a80fada097c": 11, "0a80fada098c": 11, "0a80fada099c": 11, "1": [4, 5, 8, 10, 11], "10": [5, 7, 11], "100": [8, 11], "1069167": [], "11e9": 11, "1344793": [], "1676264": [], "1713542306": [], "1713542765": [], "1713543033": [], "1713543225": [], "1713543506": [], "1713543956": [], "1713544131": [], "1713544132": [], "1713544397": [], "1713544598": [], "1713545857": [], "1713545858": [], "1713549370": [], "1713549689": [], "1713550571": [], "1713557245": [], "1713559376": [], "1713560080": [], "1713560402": [], "1713560403": [], "1713561061": [], "1713562690": [], "1717169008": [], "1717170449": [], "1717171842": [], "1717171843": [], "1717172360": [], "1717172577": [], "1717172773": [], "1717175781": 11, "1717175782": 12, "1731803": [], "1771936": [], "1913438": [], "1922355": 12, "2": [5, 11], "2184267": [], "24": [11, 12], "255e396f": 11, "2877355": [], "2930224": [], "2995": [], "3": [5, 11], "30": 8, "3041446": [], "3102272": [], "33": 5, "333": 5, "343434344": 11, "363455714": 11, "3935378": [], "4": [5, 11], "4017086": [], "4052968": [], "4090197": [], "4463434": [], "450c": 11, "4632835": [], "4649727": [], "4714": 8, "473d83400bc1bc9dc635e334fadd433c": 11, "473d83400bc1bc9dc635e334faddd33c": 11, "473d83400bc1bc9dc635e334fadde33c": 11, "473d83400bc1bc9dc635e334faddf33c": 11, "4752307": [], "4756553": [], "5": [0, 5], "50": 7, "517729": [], "5202463": [], "543434443": 11, "5669184": [], "568308": [], "573305": [], "5899982": [], "639124": [], "6692646": [], "6739478": [], "674552": [], "6f90": 8, "700799": [], "7232893": [], "756255": [], "760149": [], "7841465": [], "7d3d8d2083b4": 11, "8044841": [], "8375325": [], "8420": 8, "8630717": [], "8874054": [], "8882551": [], "9236414": 11, "9306026": [], "93d9af72": 11, "9a07": 11, "A": [1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "AND": 5, "Be": 1, "But": 5, "By": 11, "For": [1, 5, 6, 7, 8, 9, 11], "IF": 11, "If": [0, 1, 7, 11, 12], "In": 10, "It": 10, "NOT": 12, "OR": 5, "One": 7, "Such": 9, "THE": 11, "That": 3, "The": [0, 1, 2, 3, 5, 8, 10, 11], "There": 11, "These": 9, "To": 11, "Will": [4, 7, 10], "_get_acl_from_row": 11, "_get_authz_from_row": 11, "_get_file_name_from_row": 11, "_get_file_size_from_row": 11, "_get_guid_for_row": 12, "_get_guid_from_row": 11, "_get_md5_from_row": 11, "_get_urls_from_row": 11, "_guid_typ": 12, "_manag": [2, 9, 10], "_query_for_associated_indexd_record_guid": 12, "_ssl": [3, 4, 5], "a5c6": 11, "ab167e49d25b488939b1ede42752458b": 3, "about": [2, 3], "abov": 11, "access": [0, 1, 3, 7, 10], "access_method": [2, 9, 10], "access_token": 0, "accesstoken": 0, "acl": [2, 3, 9, 11], "across": 11, "act": 0, "action": [9, 11], "actual": 11, "ad": 3, "add": [3, 5], "addit": [3, 5, 10, 11], "admin": [5, 11], "admin_endpoint_suffix": 5, "after": 10, "against": [3, 7, 8, 11, 12], "algorithm": 3, "alia": [3, 5], "alias": 5, "aliv": 7, "all": [1, 3, 4, 5, 6, 7, 8, 10, 11, 12], "allow": [0, 6, 8, 10, 11, 12], "allowed_data_upload_bucket": 1, "along": 2, "alreadi": 9, "also": 1, "altern": [5, 11], "alwai": 5, "ammount": 12, "amount": [1, 9], "an": [0, 3, 6, 8, 10, 11], "ani": [0, 5, 10, 11], "anoth": 5, "api": [0, 5, 8, 11], "api_kei": 11, "appli": 7, "appropri": 13, "ar": [5, 7, 8, 9, 10, 11], "arbitrari": 0, "argument": [0, 13], "arrai": 8, "asc": 7, "assign": 9, "assist": 10, "associ": [3, 5], "assum": 11, "async": [3, 4, 5, 9, 11, 12], "async_cr": [2, 5], "async_create_alias": [2, 5], "async_create_record": [2, 3], "async_delete_alia": [2, 5], "async_delete_alias": [2, 5], "async_download_object_manifest": [2, 9, 11], "async_get": [2, 5], "async_get_alias": [2, 5], "async_get_record": [2, 3], "async_get_records_from_checksum": [2, 3], "async_get_records_on_pag": [2, 3], "async_get_with_param": [2, 3], "async_ingest_metadata_manifest": [2, 9, 12], "async_query_url": [2, 3], "async_query_urls_from_indexd": [2, 9, 12], "async_run_job_and_wait": [2, 4], "async_upd": [2, 5], "async_update_alias": [2, 5], "async_update_record": [2, 3], "async_verify_object_manifest": [2, 9, 11], "asynchron": [3, 4, 5], "asyncio": [11, 12], "asyncron": 5, "attach": [3, 5], "attempt": 11, "attribut": [10, 11], "auth": [1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "auth_provid": [1, 2, 3, 4, 5, 6, 7, 8, 13], "authbas": 0, "authent": 0, "author": 1, "authz": [0, 1, 2, 3, 9, 10, 11], "auto": [0, 2], "automat": 0, "avail": [1, 2, 10, 11], "az": 1, "b": [5, 11], "b0f1": 11, "bar": 10, "base": [0, 1, 3, 4, 5, 6, 7, 8, 9, 11, 13], "baseid": 3, "basic": [3, 11, 12], "batch_creat": [2, 5], "batch_siz": 8, "behalf": 0, "behavior": 11, "being": 3, "belong": 8, "below": 11, "blank": 3, "blob": [5, 7], "bodi": 3, "bool": [4, 5, 8, 10, 11, 12], "boolean": 3, "bownload": 10, "broad": 9, "broken": 9, "bucket": [1, 6], "bundl": 10, "byte": 10, "c": [5, 11], "cach": 10, "cache_hosts_wts_token": [2, 9, 10], "call": [10, 13], "can": [0, 3, 4, 8, 11, 12], "capabl": 9, "case": [0, 10], "categori": 9, "ccle": 8, "ccle_one_record": 8, "ccle_sample_nod": 8, "cdi": 7, "chang": [3, 11], "checksum": [3, 10], "checksum_typ": 3, "child": 10, "children": [2, 9, 10], "chunk_siz": 8, "class": [0, 2, 10, 11, 13], "cli": 10, "client": [0, 3], "client_credenti": 0, "client_id": 0, "client_scop": 0, "client_secret": 0, "code": [2, 8], "column": [11, 12], "column_to_use_as_guid": [2, 9, 12], "columna": 11, "columnb": 11, "columnc": 11, "com": 7, "comma": 11, "command": [10, 11], "common": [0, 1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13], "commons_url": [2, 9, 10, 11, 12], "complet": [4, 11], "complex": 7, "concat": 11, "concurr": [11, 12], "configur": 1, "connect": 12, "consist": 3, "constructor": 0, "contain": [0, 2, 5, 8, 9, 10, 11, 12], "content": [3, 13], "content_created_d": 3, "content_updated_d": 3, "continu": 10, "control": 3, "conveni": 10, "copi": [2, 13], "coroutin": 11, "correspond": 3, "count": 3, "crdc": 0, "creat": [2, 3, 4, 5, 6, 8, 10, 11], "create_alias": [2, 5], "create_blank": [2, 3], "create_index_key_path": [2, 5], "create_job": [2, 4], "create_new_vers": [2, 3], "create_object_list": [2, 9, 10], "create_program": [2, 8], "create_project": [2, 8], "create_record": [2, 3], "created_tim": [2, 9, 10], "creation": [3, 11], "cred": 3, "credenti": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "csv": [8, 11, 12], "curl": [0, 2], "current": [6, 8, 10], "current_dir": [2, 9, 11], "custom": 11, "d": 5, "d70b41b9": 8, "data": [0, 1, 3, 5, 7, 8, 10, 11], "data_spreadsheet": 8, "data_typ": 7, "data_upload_bucket": 1, "dataa": 11, "datab": 11, "databas": 5, "datacommon": 0, "datafil": 10, "datamanag": 10, "date": 3, "datetim": [1, 3, 10], "dbgap": 12, "dcf": 8, "def": 11, "default": [0, 1, 3, 7, 8, 11, 12], "defin": [5, 8, 10], "delai": 4, "delet": [0, 1, 2, 3, 5, 6, 8, 10, 11], "delete_alia": [2, 5], "delete_alias": [2, 5], "delete_all_guid": [2, 9, 11], "delete_fil": [1, 2], "delete_file_loc": [1, 2, 6], "delete_index_key_path": [2, 5], "delete_nod": [2, 8], "delete_object": [2, 6], "delete_program": [2, 8], "delete_project": [2, 8], "delete_record": [2, 3, 8], "delete_unpacked_packag": 10, "delimet": [11, 12], "delimit": 11, "demograph": 8, "deprec": 1, "descript": [3, 5], "desir": 11, "dest_path": 13, "dest_urlstr": 13, "dest_w": 13, "dest_wskei": 13, "detail": [2, 7, 10], "determin": [10, 11, 12], "dev": 11, "dict": [3, 4, 5, 10, 11, 12], "dictionari": [3, 4, 5, 7, 8], "did": 3, "differ": 5, "direct": 0, "directori": [10, 11], "disabl": 10, "discoveri": 10, "disk": 13, "dispatch": 4, "dist_resolut": 3, "distribut": 3, "doc": [7, 10], "docstr": 2, "document": [1, 3], "doe": [0, 12], "domain": [11, 12], "done": 4, "download": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 13], "download_files_in_drs_manifest": [2, 9, 10], "download_list": 10, "download_manifest": 11, "download_singl": [1, 2], "download_url": [2, 13], "downloadmanag": [2, 9, 10], "downloadstatu": [2, 9, 10], "dr": [2, 9], "drs_download": 10, "drs_hostnam": 10, "drsdownload": 10, "drsobjecttyp": 10, "e": [5, 10], "e043ab8b77b9": 8, "each": [3, 8, 10, 11], "effici": 9, "eg": 3, "either": 8, "elasticsearch": 7, "els": [0, 12], "elsewher": 12, "empti": [8, 11], "enabl": 11, "end": [5, 10], "end_tim": [2, 9, 10], "endpoint": [0, 1, 2, 3, 4, 5, 7, 8, 13], "entir": 8, "entri": [3, 11], "env": 0, "environ": 0, "equal": 7, "error": [10, 11, 12], "error_nam": 11, "etc": 8, "even": 11, "everi": [9, 11], "everyth": 11, "ex": [0, 11, 12], "exampl": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "exclud": 3, "execut": [7, 8, 11], "exist": [1, 3, 5, 6, 9, 12], "expect": [5, 9, 11], "experi": 8, "expir": [0, 1], "expires_in": 1, "export": [8, 10], "export_nod": [2, 8], "export_record": [2, 8], "f1f8": 11, "factori": 10, "fail": [8, 10], "fals": [3, 5, 6, 10, 11], "featur": [1, 6], "fenc": [0, 1], "fetch": 0, "field": [3, 5, 7, 11, 12], "fieldnam": 11, "file": [0, 2, 3, 4, 8, 9, 10, 11, 12, 13], "file_nam": [1, 2, 3, 9, 10, 11], "file_s": [2, 9, 10, 11], "file_st": 3, "fileformat": 8, "filenam": [0, 8, 10, 11, 12], "files": 10, "fill": 12, "filter": [5, 7], "filter_object": 7, "first": [7, 8], "flag": 11, "folder": 11, "follow": [0, 11], "forc": 11, "force_metadata_columns_even_if_empti": 11, "form": 13, "format": [3, 5, 8, 11], "from": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13], "func_to_parse_row": [11, 12], "function": [2, 3, 4, 5, 9, 10, 11, 12], "g": 10, "gen3": [10, 11, 12], "gen3_api_kei": 0, "gen3_oidc_client_creds_secret": 0, "gen3auth": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "gen3fil": [1, 2], "gen3index": [2, 3], "gen3job": [2, 4, 10], "gen3metadata": [2, 5], "gen3object": [2, 6], "gen3queri": [2, 7], "gen3submiss": [2, 8], "gen3wsstorag": [2, 13], "gener": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 13], "get": [0, 1, 2, 3, 4, 5, 8, 10, 11, 12, 13], "get_access_token": [0, 2], "get_access_token_from_wt": [0, 2], "get_alias": [2, 5], "get_all_record": [2, 3], "get_dictionary_al": [2, 8], "get_dictionary_nod": [2, 8], "get_fresh_token": [2, 9, 10], "get_graphql_schema": [2, 8], "get_guid_from_fil": 12, "get_guids_prefix": [2, 3], "get_index_key_path": [2, 5], "get_latest_vers": [2, 3], "get_output": [2, 4], "get_presigned_url": [1, 2], "get_program": [2, 8], "get_project": [2, 8], "get_project_dictionari": [2, 8], "get_project_manifest": [2, 8], "get_record": [2, 3], "get_record_doc": [2, 3], "get_records_on_pag": [2, 3], "get_stat": [2, 3], "get_statu": [2, 4], "get_url": [2, 3], "get_valid_guid": [2, 3], "get_vers": [2, 3, 4, 5], "get_with_param": [2, 3], "giangb": 11, "github": [2, 7], "give": 1, "given": [0, 3, 4, 5, 8, 10, 12, 13], "global": [4, 5], "good": 3, "grant": 0, "graph": 8, "graphql": [7, 8], "graphql_queri": [2, 7], "group": 3, "guid": [1, 2, 3, 5, 6, 9, 11, 12], "guid_exampl": 11, "guid_for_row": 12, "guid_from_fil": 12, "guid_type_for_indexed_file_object": [2, 9, 12], "guid_type_for_non_indexed_file_object": [2, 9, 12], "guppi": 7, "ha": [0, 11], "handl": [3, 10], "hardcod": 0, "has_vers": 3, "hash": [3, 11], "hash_typ": 3, "have": [5, 11], "header": 11, "healthi": [3, 4, 5], "help": 11, "helper": 2, "hit": 11, "host": 10, "hostnam": [2, 9, 10], "how": [8, 11], "howto": 10, "http": [0, 7, 11, 12], "i": [0, 1, 2, 3, 4, 5, 8, 10, 11, 12], "id": [0, 1, 3, 5, 10, 11], "idea": 3, "identifi": [3, 5, 9, 11], "idp": 0, "illustr": 11, "immut": 3, "implement": 0, "implic": 11, "import": 11, "includ": [0, 3], "indent": 10, "index": [0, 2, 5, 9], "index_manifest": 11, "index_object_manifest": [2, 9, 11], "indexd": [1, 3, 6, 10, 11, 12], "indexd_field": [11, 12], "indexd_record_page_s": [2, 9, 11], "indexed_file_object_guid": 12, "indic": [0, 11], "infil": 10, "info": [3, 11], "inform": [2, 3, 10], "ingest": [2, 9], "ingest_manifest": 12, "initi": [0, 10], "input": [4, 10, 11], "input_manifest": 11, "instal": [0, 2, 11], "instanc": [1, 3, 6, 7, 8, 9, 10], "instead": [1, 7, 11], "int": [1, 3, 5, 7, 8, 10, 11, 12], "integ": [1, 3, 8], "intend": 0, "interact": [1, 3, 4, 5, 6, 8, 13], "interest": 10, "interpret": 0, "introspect": 8, "involv": 9, "is_healthi": [2, 3, 4, 5], "is_indexed_file_object": 12, "isn": 1, "issu": 0, "its": [1, 3], "job": 2, "job_id": 4, "job_input": 4, "job_nam": 4, "json": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "just": [5, 11, 12], "jwt": 0, "kei": [0, 3, 5, 13], "know": 11, "known": 10, "kwarg": [3, 4, 5], "l": [2, 13], "larg": 9, "last": 10, "latest": 3, "least": 3, "level": 6, "librari": 11, "like": [3, 5, 9, 11, 12], "limit": [1, 3, 5, 12], "linear": 4, "linux": 10, "list": [0, 1, 3, 4, 5, 7, 8, 10, 11, 13], "list_access_in_drs_manifest": [2, 9, 10], "list_drs_object": [2, 9, 10], "list_files_in_drs_manifest": [2, 9, 10], "list_job": [2, 4], "live": [11, 12], "load": [2, 9, 10], "load_manifest": [2, 9, 10], "local": [0, 13], "locat": [1, 6], "lock": 12, "log": [8, 10, 11, 12], "logic": [5, 12], "loop": 11, "ls_path": [2, 13], "maco": 11, "made": 3, "mai": [0, 9, 11], "main": 10, "make": [9, 11], "manag": [1, 5, 10], "mani": [8, 11], "manifest": [2, 8, 9, 10, 11, 12], "manifest_1": 10, "manifest_fil": [11, 12], "manifest_file_delimit": [11, 12], "manifest_row_pars": [11, 12], "map": [0, 11], "mark": 8, "master": 7, "match": [3, 5, 12], "max": 5, "max_concurrent_request": [2, 9, 11, 12], "max_presigned_url_ttl": 1, "max_tri": 8, "maximum": [11, 12], "md": [5, 7, 10, 12], "md5": [2, 3, 9, 11], "md5_hash": 11, "md5sum": [2, 9, 10], "mean": 8, "mechan": 3, "merg": 5, "metadata": [2, 3, 6, 9, 11], "metadata_list": 5, "metadata_sourc": 12, "metadata_typ": 12, "metdata": 12, "method": [1, 7, 10], "minimum": 10, "minut": 0, "mode": 7, "modul": [2, 10, 11], "more": [2, 5, 7, 9, 10], "most": 9, "mostli": 2, "multipl": [8, 11], "must": [1, 5], "my_common": 10, "my_credenti": 10, "my_field": 7, "my_index": 7, "my_program": 7, "my_project": 7, "name": [3, 4, 8, 10, 11, 12, 13], "namespac": [0, 12], "necessari": [3, 5], "need": [3, 7, 10, 11], "nest": 5, "net": 11, "never": 0, "new": [0, 3], "node": 8, "node_nam": 8, "node_typ": 8, "none": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "note": [0, 3, 11, 12], "noth": [3, 6], "now": [1, 8], "num": 5, "num_process": 11, "num_total_fil": 11, "number": [3, 7, 8, 11, 12], "o": 0, "object": [1, 2, 3, 4, 5, 7, 8, 9, 10, 11, 13], "object_id": [1, 2, 9, 10], "object_list": 10, "object_typ": [2, 9, 10], "objectid": 10, "obtain": [0, 10], "occur": 10, "off": 5, "offset": [5, 7], "oidc": 0, "old": 3, "one": [3, 5, 10, 11], "onli": [3, 5, 7, 8, 10, 11], "open": [8, 10, 11], "open_project": [2, 8], "openid": 0, "opt": 0, "option": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11], "order": [0, 8], "ordered_node_list": 8, "org": 10, "otherwis": 10, "output": [4, 5, 11, 12], "output_dir": 10, "output_filenam": [11, 12], "overrid": [0, 11, 12], "overwrit": 5, "own": 0, "packag": 10, "page": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 13], "pagin": 3, "parallel": 11, "param": [3, 5, 8, 10], "paramet": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "pars": [10, 11, 12, 13], "parser": [11, 12], "particular": 0, "pass": [0, 7, 8, 10], "password": [11, 12], "path": [0, 1, 5, 10, 11, 13], "path_to_manifest": 11, "pattern": [3, 12], "pdcdatastor": 11, "pend": 10, "per": [11, 12], "peregrin": 8, "permiss": 10, "persist": 9, "phs0001": 11, "phs0002": 11, "pick": 1, "pla": 11, "place": 11, "planx": 11, "point": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "popul": [10, 12], "posit": [1, 7], "possibl": 10, "post": [0, 11], "pprint": [2, 9, 10], "prefix": 3, "presign": 1, "pretti": 10, "prev_guid": [2, 9, 11], "previou": [3, 11], "previous": 4, "print": [8, 10], "process": 11, "processed_fil": 11, "profil": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "program": [8, 11], "progress": [8, 10], "project": [8, 11], "project_id": [7, 8], "protocol": 1, "provid": [0, 1, 3, 5, 7, 8, 12], "public": [3, 5], "put": 0, "py": 11, "python": [2, 9, 11], "python3": 11, "python_subprocess_command": 11, "queri": [1, 2, 3, 5, 8, 11, 12], "query_str": 7, "query_txt": [7, 8], "query_url": [2, 3], "quickstart": 2, "rather": 0, "raw": [7, 11], "raw_data_download": [2, 7], "rbac": 3, "read": [3, 5, 11], "readm": 2, "reason": 10, "record": [1, 3, 5, 7, 8, 11, 12], "refresh": [0, 10], "refresh_access_token": [0, 2], "refresh_fil": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "refresh_token": 0, "regist": 8, "regular": 7, "relat": 9, "remov": [1, 6, 11, 13], "replac": 11, "replace_url": 11, "repo": 2, "repres": [3, 5, 10], "represent": [1, 3], "request": [0, 1, 3, 5, 8, 11, 12], "requir": 10, "resolv": 10, "resolve_object": [2, 9, 10], "respect": 7, "respons": [0, 1, 3, 4, 5], "result": [1, 8, 10, 11], "retri": 8, "retriev": [1, 8, 10, 12], "return": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11], "return_full_metadata": 5, "rev": 3, "revers": 8, "revis": 3, "right": 1, "rm": [2, 13], "rm_path": [2, 13], "root": [11, 12], "row": [7, 8, 11, 12], "row_offset": 8, "rtype": 3, "run": [8, 11], "s3": [1, 10, 11], "safe": 11, "same": [5, 11, 13], "sampl": [8, 10], "sandbox": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "save": 10, "save_directori": 10, "schema": 8, "scope": [0, 1], "screen": 8, "script": 2, "search": [0, 2, 3], "second": [1, 4], "secret": 0, "see": [7, 10, 11], "self": 10, "semaphon": 12, "semaphor": 12, "separ": [0, 11], "server": 10, "servic": [1, 3, 4, 5, 6, 8, 11, 12, 13], "service_loc": [3, 4, 5], "session": 11, "set": [0, 1, 5, 10], "setup": 2, "sheepdog": 8, "should": [0, 8, 11], "show": 10, "show_progress": 10, "shown": 11, "sign": 1, "signpost": 3, "similar": 10, "simpl": 3, "simpli": 11, "sinc": 3, "singl": [1, 5, 8], "size": [2, 3, 9, 10, 11], "skip": 8, "sleep": 4, "so": 11, "some": [0, 2], "someth": 11, "sort": 7, "sort_field": 7, "sort_object": 7, "sourc": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "space": [0, 11], "specif": [5, 8, 11, 12], "specifi": [0, 1, 3, 11, 13], "spreadsheet": 8, "src_path": 13, "src_urlstr": 13, "src_w": 13, "src_wskei": 13, "ssl": [3, 4, 5], "start": [3, 4, 7, 8, 10], "start_tim": [2, 9, 10], "static": 10, "statu": [2, 4, 9, 10], "storag": [1, 2, 6], "store": [1, 3, 10], "str": [0, 1, 3, 4, 5, 7, 8, 10, 11, 12], "string": [0, 3, 5, 11, 13], "strip": 11, "sub": 8, "subject": [7, 8], "submiss": 2, "submit": [8, 11], "submit_additional_metadata_column": 11, "submit_fil": [2, 8], "submit_record": [2, 8], "submitter_id": 7, "success": 10, "successfulli": 10, "suffici": 3, "suppli": 3, "support": [0, 1, 5, 8, 11], "sure": 1, "synchron": 11, "syntax": 7, "system": [6, 7, 8, 9], "t": [1, 5, 11], "tab": 11, "task": 9, "temporari": 11, "test": 11, "test1": 11, "test2": 11, "test3": 11, "test4": 11, "test5": 11, "text": [1, 7, 8], "than": [0, 5], "thei": [0, 10], "them": [10, 11], "thi": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "those": 11, "thread": 11, "thread_num": 11, "threadcontrol": [2, 9, 11], "through": [8, 11], "tier": 7, "time": [1, 3, 8, 10, 11], "timestamp": 10, "tmp_folder": [2, 9, 11], "token": [0, 10], "tool": 2, "total": 11, "treat": [1, 5], "tree": 10, "true": [3, 4, 5, 6, 7, 8, 10, 11, 12], "try": 0, "tsv": [8, 11, 12], "tupl": [0, 3, 11, 12], "type": [1, 3, 4, 5, 7, 8, 10, 11, 12], "typic": 10, "uc": 7, "unaccess": 7, "under": [0, 8, 13], "uniqu": [1, 5], "unknown": 10, "unpack": 10, "unpack_packag": 10, "until": [4, 10], "up": [5, 9], "updat": [2, 3, 5, 10, 11], "update_alias": [2, 5], "update_blank": [2, 3], "update_record": [2, 3], "updated_tim": [2, 9, 10], "upload": [1, 2, 3, 8, 13], "upload_fil": [1, 2], "upload_file_to_guid": [1, 2], "upload_url": [2, 13], "url": [1, 2, 3, 9, 10, 11, 12, 13], "urls_metadata": 3, "us": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "usag": 11, "use_agg_md": 5, "user": [0, 10, 12], "user_access": [2, 9, 10], "usual": 12, "utcnow": 1, "util": 9, "uuid": [1, 3, 8], "uuid1": 8, "uuid2": 8, "valid": [3, 7], "valu": [0, 1, 3, 5, 7, 10, 11], "value_from_indexd": 11, "value_from_manifest": 11, "variabl": [0, 7, 8], "variou": 2, "verbos": [7, 8], "verif": 11, "verifi": [2, 9], "verify_manifest": 11, "verify_object_manifest": 11, "version": [3, 4, 5], "vital_statu": 7, "w": 13, "wa": 0, "wai": 10, "wait": 4, "want": [0, 3, 8], "warn": 11, "we": [3, 11], "web": 0, "what": 5, "when": [0, 3, 7, 10, 12], "where": [0, 3, 5, 11, 12], "whether": [3, 4, 5, 8, 11, 12], "which": [8, 10], "while": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "whose": 5, "within": [0, 2, 9], "without": [3, 5], "won": 5, "work": [0, 10], "workaround": 11, "worksheet": 8, "workspac": [0, 2], "wrapper": 10, "write": 11, "ws_urlstr": 13, "wskei": 13, "wss": 13, "wt": [0, 10], "x": 11, "xlsx": 8, "you": [0, 3, 8, 11], "your": 0}, "titles": ["Gen3 Auth Helper", "Gen3 File Class", "Welcome to Gen3 SDK\u2019s documentation!", "Gen3 Index Class", "Gen3 Jobs Class", "Gen3 Metadata Class", "Gen3 Object Class", "Gen3 Query Class", "Gen3 Submission Class", "Gen3 Tools", "DRS Download Tools", "Indexing Tools", "Metadata Tools", "Gen3 Workspace Storage"], "titleterms": {"": 2, "auth": 0, "class": [1, 3, 4, 5, 6, 7, 8], "document": 2, "download": [10, 11], "dr": 10, "file": 1, "gen3": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 13], "helper": 0, "index": [3, 11], "indic": 2, "ingest": 12, "job": 4, "metadata": [5, 12], "object": 6, "queri": 7, "sdk": 2, "storag": 13, "submiss": 8, "tabl": 2, "tool": [9, 10, 11, 12], "verifi": 11, "welcom": 2, "workspac": 13}}) \ No newline at end of file +Search.setIndex({"alltitles": {"DRS Download Tools": [[10, "module-gen3.tools.download.drs_download"]], "Download": [[11, "module-gen3.tools.indexing.download_manifest"]], "Gen3 Auth Helper": [[0, "gen3-auth-helper"]], "Gen3 File Class": [[1, "gen3-file-class"]], "Gen3 Index Class": [[3, "gen3-index-class"]], "Gen3 Jobs Class": [[4, "gen3-jobs-class"]], "Gen3 Metadata Class": [[5, "gen3-metadata-class"]], "Gen3 Object Class": [[6, "gen3-object-class"]], "Gen3 Query Class": [[7, "gen3-query-class"]], "Gen3 Submission Class": [[8, "gen3-submission-class"]], "Gen3 Tools": [[9, "gen3-tools"]], "Gen3 Workspace Storage": [[13, "gen3-workspace-storage"]], "Index": [[11, "module-gen3.tools.indexing.index_manifest"]], "Indexing Tools": [[11, "indexing-tools"]], "Indices and tables": [[2, "indices-and-tables"]], "Ingest": [[12, "module-gen3.tools.metadata.ingest_manifest"]], "Metadata Tools": [[12, "metadata-tools"]], "Verify": [[11, "module-gen3.tools.indexing.verify_manifest"]], "Welcome to Gen3 SDK\u2019s documentation!": [[2, "welcome-to-gen3-sdk-s-documentation"]]}, "docnames": ["auth", "file", "index", "indexing", "jobs", "metadata", "object", "query", "submission", "tools", "tools/drs_pull", "tools/indexing", "tools/metadata", "wss"], "envversion": {"sphinx": 61, "sphinx.domains.c": 3, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 9, "sphinx.domains.index": 1, "sphinx.domains.javascript": 3, "sphinx.domains.math": 2, "sphinx.domains.python": 4, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx.ext.viewcode": 1}, "filenames": ["auth.rst", "file.rst", "index.rst", "indexing.rst", "jobs.rst", "metadata.rst", "object.rst", "query.rst", "submission.rst", "tools.rst", "tools/drs_pull.rst", "tools/indexing.rst", "tools/metadata.rst", "wss.rst"], "indexentries": {"_manager (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable._manager", false]], "access_methods (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.access_methods", false]], "acls (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.ACLS", false]], "async_create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_create", false]], "async_create_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_create_aliases", false]], "async_create_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_create_record", false]], "async_delete_alias() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_delete_alias", false]], "async_delete_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_delete_aliases", false]], "async_download_object_manifest() (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.async_download_object_manifest", false]], "async_get() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_get", false]], "async_get_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_get_aliases", false]], "async_get_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_record", false]], "async_get_records_from_checksum() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_records_from_checksum", false]], "async_get_records_on_page() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_records_on_page", false]], "async_get_with_params() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_with_params", false]], "async_ingest_metadata_manifest() (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.async_ingest_metadata_manifest", false]], "async_query_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_query_urls", false]], "async_query_urls_from_indexd() (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.async_query_urls_from_indexd", false]], "async_run_job_and_wait() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.async_run_job_and_wait", false]], "async_update() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_update", false]], "async_update_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_update_aliases", false]], "async_update_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_update_record", false]], "async_verify_object_manifest() (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.async_verify_object_manifest", false]], "auth_provider (gen3.metadata.gen3metadata attribute)": [[5, "gen3.metadata.Gen3Metadata.auth_provider", false]], "authz (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.AUTHZ", false]], "batch_create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.batch_create", false]], "cache_hosts_wts_tokens() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.cache_hosts_wts_tokens", false]], "children (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.children", false]], "column_to_use_as_guid (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.COLUMN_TO_USE_AS_GUID", false]], "commons_url (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.commons_url", false]], "copy() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.copy", false]], "create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create", false]], "create_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create_aliases", false]], "create_blank() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_blank", false]], "create_index_key_path() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create_index_key_path", false]], "create_job() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.create_job", false]], "create_new_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_new_version", false]], "create_object_list() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.create_object_list", false]], "create_program() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.create_program", false]], "create_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.create_project", false]], "create_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_record", false]], "created_time (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.created_time", false]], "curl() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.curl", false]], "current_dir (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.CURRENT_DIR", false]], "current_dir (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.CURRENT_DIR", false]], "current_dir (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.CURRENT_DIR", false]], "delete() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete", false]], "delete_alias() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_alias", false]], "delete_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_aliases", false]], "delete_all_guids() (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.delete_all_guids", false]], "delete_file() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.delete_file", false]], "delete_file_locations() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.delete_file_locations", false]], "delete_index_key_path() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_index_key_path", false]], "delete_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_node", false]], "delete_nodes() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_nodes", false]], "delete_object() (gen3.object.gen3object method)": [[6, "gen3.object.Gen3Object.delete_object", false]], "delete_program() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_program", false]], "delete_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_project", false]], "delete_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.delete_record", false]], "delete_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_record", false]], "delete_records() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_records", false]], "download() (gen3.tools.download.drs_download.downloadable method)": [[10, "gen3.tools.download.drs_download.Downloadable.download", false]], "download() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.download", false]], "download() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.download", false]], "download_files_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.download_files_in_drs_manifest", false]], "download_single() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.download_single", false]], "download_url() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.download_url", false]], "downloadable (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.Downloadable", false]], "downloadmanager (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.DownloadManager", false]], "downloadstatus (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.DownloadStatus", false]], "end_time (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.end_time", false]], "endpoint (gen3.metadata.gen3metadata attribute)": [[5, "gen3.metadata.Gen3Metadata.endpoint", false]], "export_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.export_node", false]], "export_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.export_record", false]], "file_name (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.file_name", false]], "file_name (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.file_name", false]], "file_size (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.file_size", false]], "file_size (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.file_size", false]], "gen3.tools": [[9, "module-gen3.tools", false]], "gen3.tools.download.drs_download": [[10, "module-gen3.tools.download.drs_download", false]], "gen3.tools.indexing.download_manifest": [[11, "module-gen3.tools.indexing.download_manifest", false]], "gen3.tools.indexing.index_manifest": [[11, "module-gen3.tools.indexing.index_manifest", false]], "gen3.tools.indexing.verify_manifest": [[11, "module-gen3.tools.indexing.verify_manifest", false]], "gen3.tools.metadata.ingest_manifest": [[12, "module-gen3.tools.metadata.ingest_manifest", false]], "gen3auth (class in gen3.auth)": [[0, "gen3.auth.Gen3Auth", false]], "gen3file (class in gen3.file)": [[1, "gen3.file.Gen3File", false]], "gen3index (class in gen3.index)": [[3, "gen3.index.Gen3Index", false]], "gen3jobs (class in gen3.jobs)": [[4, "gen3.jobs.Gen3Jobs", false]], "gen3metadata (class in gen3.metadata)": [[5, "gen3.metadata.Gen3Metadata", false]], "gen3object (class in gen3.object)": [[6, "gen3.object.Gen3Object", false]], "gen3query (class in gen3.query)": [[7, "gen3.query.Gen3Query", false]], "gen3submission (class in gen3.submission)": [[8, "gen3.submission.Gen3Submission", false]], "gen3wsstorage (class in gen3.wss)": [[13, "gen3.wss.Gen3WsStorage", false]], "get() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get", false]], "get() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get", false]], "get_access_token() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.get_access_token", false]], "get_access_token_from_wts() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.get_access_token_from_wts", false]], "get_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_aliases", false]], "get_all_records() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_all_records", false]], "get_dictionary_all() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_dictionary_all", false]], "get_dictionary_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_dictionary_node", false]], "get_fresh_token() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.get_fresh_token", false]], "get_graphql_schema() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_graphql_schema", false]], "get_guids_prefix() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_guids_prefix", false]], "get_index_key_paths() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_index_key_paths", false]], "get_latest_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_latest_version", false]], "get_output() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_output", false]], "get_presigned_url() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.get_presigned_url", false]], "get_programs() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_programs", false]], "get_project_dictionary() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_project_dictionary", false]], "get_project_manifest() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_project_manifest", false]], "get_projects() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_projects", false]], "get_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_record", false]], "get_record_doc() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_record_doc", false]], "get_records() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_records", false]], "get_records_on_page() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_records_on_page", false]], "get_stats() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_stats", false]], "get_status() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_status", false]], "get_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_urls", false]], "get_valid_guids() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_valid_guids", false]], "get_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_version", false]], "get_version() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_version", false]], "get_version() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_version", false]], "get_versions() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_versions", false]], "get_with_params() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_with_params", false]], "graphql_query() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.graphql_query", false]], "guid (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.GUID", false]], "guid_type_for_indexed_file_object (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.GUID_TYPE_FOR_INDEXED_FILE_OBJECT", false]], "guid_type_for_non_indexed_file_object (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.GUID_TYPE_FOR_NON_INDEXED_FILE_OBJECT", false]], "hostname (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.hostname", false]], "index_object_manifest() (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.index_object_manifest", false]], "indexd_record_page_size (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.INDEXD_RECORD_PAGE_SIZE", false]], "is_healthy() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.is_healthy", false]], "is_healthy() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.is_healthy", false]], "is_healthy() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.is_healthy", false]], "list_access_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_access_in_drs_manifest", false]], "list_drs_object() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_drs_object", false]], "list_files_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_files_in_drs_manifest", false]], "list_jobs() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.list_jobs", false]], "load() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.load", false]], "load_manifest() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.load_manifest", false]], "ls() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.ls", false]], "ls_path() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.ls_path", false]], "manifest (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.Manifest", false]], "max_concurrent_requests (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.MAX_CONCURRENT_REQUESTS", false]], "max_concurrent_requests (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.MAX_CONCURRENT_REQUESTS", false]], "max_concurrent_requests (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.MAX_CONCURRENT_REQUESTS", false]], "md5 (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.MD5", false]], "md5sum (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.md5sum", false]], "module": [[9, "module-gen3.tools", false], [10, "module-gen3.tools.download.drs_download", false], [11, "module-gen3.tools.indexing.download_manifest", false], [11, "module-gen3.tools.indexing.index_manifest", false], [11, "module-gen3.tools.indexing.verify_manifest", false], [12, "module-gen3.tools.metadata.ingest_manifest", false]], "object_id (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.object_id", false]], "object_id (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.object_id", false]], "object_type (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.object_type", false]], "open_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.open_project", false]], "pprint() (gen3.tools.download.drs_download.downloadable method)": [[10, "gen3.tools.download.drs_download.Downloadable.pprint", false]], "prev_guid (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.PREV_GUID", false]], "query() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.query", false]], "query() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.query", false]], "query() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.query", false]], "query_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.query_urls", false]], "raw_data_download() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.raw_data_download", false]], "refresh_access_token() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.refresh_access_token", false]], "resolve_objects() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.resolve_objects", false]], "rm() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.rm", false]], "rm_path() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.rm_path", false]], "size (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.SIZE", false]], "start_time (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.start_time", false]], "status (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.status", false]], "submit_file() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.submit_file", false]], "submit_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.submit_record", false]], "threadcontrol (class in gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.ThreadControl", false]], "tmp_folder (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.TMP_FOLDER", false]], "update() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.update", false]], "update_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.update_aliases", false]], "update_blank() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.update_blank", false]], "update_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.update_record", false]], "updated_time (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.updated_time", false]], "upload() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.upload", false]], "upload_file() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.upload_file", false]], "upload_file_to_guid() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.upload_file_to_guid", false]], "upload_url() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.upload_url", false]], "urls (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.URLS", false]], "user_access() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.user_access", false]]}, "objects": {"gen3": [[9, 3, 0, "-", "tools"]], "gen3.auth": [[0, 0, 1, "", "Gen3Auth"]], "gen3.auth.Gen3Auth": [[0, 1, 1, "", "curl"], [0, 1, 1, "", "get_access_token"], [0, 1, 1, "", "get_access_token_from_wts"], [0, 1, 1, "", "refresh_access_token"]], "gen3.file": [[1, 0, 1, "", "Gen3File"]], "gen3.file.Gen3File": [[1, 1, 1, "", "delete_file"], [1, 1, 1, "", "delete_file_locations"], [1, 1, 1, "", "download_single"], [1, 1, 1, "", "get_presigned_url"], [1, 1, 1, "", "upload_file"], [1, 1, 1, "", "upload_file_to_guid"]], "gen3.index": [[3, 0, 1, "", "Gen3Index"]], "gen3.index.Gen3Index": [[3, 1, 1, "", "async_create_record"], [3, 1, 1, "", "async_get_record"], [3, 1, 1, "", "async_get_records_from_checksum"], [3, 1, 1, "", "async_get_records_on_page"], [3, 1, 1, "", "async_get_with_params"], [3, 1, 1, "", "async_query_urls"], [3, 1, 1, "", "async_update_record"], [3, 1, 1, "", "create_blank"], [3, 1, 1, "", "create_new_version"], [3, 1, 1, "", "create_record"], [3, 1, 1, "", "delete_record"], [3, 1, 1, "", "get"], [3, 1, 1, "", "get_all_records"], [3, 1, 1, "", "get_guids_prefix"], [3, 1, 1, "", "get_latest_version"], [3, 1, 1, "", "get_record"], [3, 1, 1, "", "get_record_doc"], [3, 1, 1, "", "get_records"], [3, 1, 1, "", "get_records_on_page"], [3, 1, 1, "", "get_stats"], [3, 1, 1, "", "get_urls"], [3, 1, 1, "", "get_valid_guids"], [3, 1, 1, "", "get_version"], [3, 1, 1, "", "get_versions"], [3, 1, 1, "", "get_with_params"], [3, 1, 1, "", "is_healthy"], [3, 1, 1, "", "query_urls"], [3, 1, 1, "", "update_blank"], [3, 1, 1, "", "update_record"]], "gen3.jobs": [[4, 0, 1, "", "Gen3Jobs"]], "gen3.jobs.Gen3Jobs": [[4, 1, 1, "", "async_run_job_and_wait"], [4, 1, 1, "", "create_job"], [4, 1, 1, "", "get_output"], [4, 1, 1, "", "get_status"], [4, 1, 1, "", "get_version"], [4, 1, 1, "", "is_healthy"], [4, 1, 1, "", "list_jobs"]], "gen3.metadata": [[5, 0, 1, "", "Gen3Metadata"]], "gen3.metadata.Gen3Metadata": [[5, 1, 1, "", "async_create"], [5, 1, 1, "", "async_create_aliases"], [5, 1, 1, "", "async_delete_alias"], [5, 1, 1, "", "async_delete_aliases"], [5, 1, 1, "", "async_get"], [5, 1, 1, "", "async_get_aliases"], [5, 1, 1, "", "async_update"], [5, 1, 1, "", "async_update_aliases"], [5, 2, 1, "", "auth_provider"], [5, 1, 1, "", "batch_create"], [5, 1, 1, "", "create"], [5, 1, 1, "", "create_aliases"], [5, 1, 1, "", "create_index_key_path"], [5, 1, 1, "", "delete"], [5, 1, 1, "", "delete_alias"], [5, 1, 1, "", "delete_aliases"], [5, 1, 1, "", "delete_index_key_path"], [5, 2, 1, "", "endpoint"], [5, 1, 1, "", "get"], [5, 1, 1, "", "get_aliases"], [5, 1, 1, "", "get_index_key_paths"], [5, 1, 1, "", "get_version"], [5, 1, 1, "", "is_healthy"], [5, 1, 1, "", "query"], [5, 1, 1, "", "update"], [5, 1, 1, "", "update_aliases"]], "gen3.object": [[6, 0, 1, "", "Gen3Object"]], "gen3.object.Gen3Object": [[6, 1, 1, "", "delete_object"]], "gen3.query": [[7, 0, 1, "", "Gen3Query"]], "gen3.query.Gen3Query": [[7, 1, 1, "", "graphql_query"], [7, 1, 1, "", "query"], [7, 1, 1, "", "raw_data_download"]], "gen3.submission": [[8, 0, 1, "", "Gen3Submission"]], "gen3.submission.Gen3Submission": [[8, 1, 1, "", "create_program"], [8, 1, 1, "", "create_project"], [8, 1, 1, "", "delete_node"], [8, 1, 1, "", "delete_nodes"], [8, 1, 1, "", "delete_program"], [8, 1, 1, "", "delete_project"], [8, 1, 1, "", "delete_record"], [8, 1, 1, "", "delete_records"], [8, 1, 1, "", "export_node"], [8, 1, 1, "", "export_record"], [8, 1, 1, "", "get_dictionary_all"], [8, 1, 1, "", "get_dictionary_node"], [8, 1, 1, "", "get_graphql_schema"], [8, 1, 1, "", "get_programs"], [8, 1, 1, "", "get_project_dictionary"], [8, 1, 1, "", "get_project_manifest"], [8, 1, 1, "", "get_projects"], [8, 1, 1, "", "open_project"], [8, 1, 1, "", "query"], [8, 1, 1, "", "submit_file"], [8, 1, 1, "", "submit_record"]], "gen3.tools.download": [[10, 3, 0, "-", "drs_download"]], "gen3.tools.download.drs_download": [[10, 0, 1, "", "DownloadManager"], [10, 0, 1, "", "DownloadStatus"], [10, 0, 1, "", "Downloadable"], [10, 0, 1, "", "Manifest"], [10, 4, 1, "", "download_files_in_drs_manifest"], [10, 4, 1, "", "list_access_in_drs_manifest"], [10, 4, 1, "", "list_drs_object"], [10, 4, 1, "", "list_files_in_drs_manifest"]], "gen3.tools.download.drs_download.DownloadManager": [[10, 1, 1, "", "cache_hosts_wts_tokens"], [10, 1, 1, "", "download"], [10, 1, 1, "", "get_fresh_token"], [10, 1, 1, "", "resolve_objects"], [10, 1, 1, "", "user_access"]], "gen3.tools.download.drs_download.DownloadStatus": [[10, 2, 1, "", "end_time"], [10, 2, 1, "", "start_time"], [10, 2, 1, "", "status"]], "gen3.tools.download.drs_download.Downloadable": [[10, 2, 1, "", "_manager"], [10, 2, 1, "", "access_methods"], [10, 2, 1, "", "children"], [10, 2, 1, "", "created_time"], [10, 1, 1, "", "download"], [10, 2, 1, "", "file_name"], [10, 2, 1, "", "file_size"], [10, 2, 1, "", "hostname"], [10, 2, 1, "", "object_id"], [10, 2, 1, "", "object_type"], [10, 1, 1, "", "pprint"], [10, 2, 1, "", "updated_time"]], "gen3.tools.download.drs_download.Manifest": [[10, 2, 1, "", "commons_url"], [10, 1, 1, "", "create_object_list"], [10, 2, 1, "", "file_name"], [10, 2, 1, "", "file_size"], [10, 1, 1, "", "load"], [10, 1, 1, "", "load_manifest"], [10, 2, 1, "", "md5sum"], [10, 2, 1, "", "object_id"]], "gen3.tools.indexing": [[11, 3, 0, "-", "download_manifest"], [11, 3, 0, "-", "index_manifest"], [11, 3, 0, "-", "verify_manifest"]], "gen3.tools.indexing.download_manifest": [[11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "INDEXD_RECORD_PAGE_SIZE"], [11, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [11, 2, 1, "", "TMP_FOLDER"], [11, 4, 1, "", "async_download_object_manifest"]], "gen3.tools.indexing.index_manifest": [[11, 2, 1, "", "ACLS"], [11, 2, 1, "", "AUTHZ"], [11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "GUID"], [11, 2, 1, "", "MD5"], [11, 2, 1, "", "PREV_GUID"], [11, 2, 1, "", "SIZE"], [11, 0, 1, "", "ThreadControl"], [11, 2, 1, "", "URLS"], [11, 4, 1, "", "delete_all_guids"], [11, 4, 1, "", "index_object_manifest"]], "gen3.tools.indexing.verify_manifest": [[11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [11, 4, 1, "", "async_verify_object_manifest"]], "gen3.tools.metadata": [[12, 3, 0, "-", "ingest_manifest"]], "gen3.tools.metadata.ingest_manifest": [[12, 2, 1, "", "COLUMN_TO_USE_AS_GUID"], [12, 2, 1, "", "GUID_TYPE_FOR_INDEXED_FILE_OBJECT"], [12, 2, 1, "", "GUID_TYPE_FOR_NON_INDEXED_FILE_OBJECT"], [12, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [12, 4, 1, "", "async_ingest_metadata_manifest"], [12, 4, 1, "", "async_query_urls_from_indexd"]], "gen3.wss": [[13, 0, 1, "", "Gen3WsStorage"]], "gen3.wss.Gen3WsStorage": [[13, 1, 1, "", "copy"], [13, 1, 1, "", "download"], [13, 1, 1, "", "download_url"], [13, 1, 1, "", "ls"], [13, 1, 1, "", "ls_path"], [13, 1, 1, "", "rm"], [13, 1, 1, "", "rm_path"], [13, 1, 1, "", "upload"], [13, 1, 1, "", "upload_url"]]}, "objnames": {"0": ["py", "class", "Python class"], "1": ["py", "method", "Python method"], "2": ["py", "attribute", "Python attribute"], "3": ["py", "module", "Python module"], "4": ["py", "function", "Python function"]}, "objtypes": {"0": "py:class", "1": "py:method", "2": "py:attribute", "3": "py:module", "4": "py:function"}, "terms": {"": [1, 4, 8, 10, 11], "0": [5, 7, 8, 11], "0046513": [], "0185335": [], "052073": [], "0576868": [], "058966": [], "064572": [], "07464": [], "0790412": [], "0a80fada010c": 11, "0a80fada096c": 11, "0a80fada097c": 11, "0a80fada098c": 11, "0a80fada099c": 11, "1": [4, 5, 8, 10, 11], "10": [5, 7, 11], "100": [8, 11], "1069167": [], "1187842": 11, "11e9": 11, "1344793": [], "1676264": [], "1713542306": [], "1713542765": [], "1713543033": [], "1713543225": [], "1713543506": [], "1713543956": [], "1713544131": [], "1713544132": [], "1713544397": [], "1713544598": [], "1713545857": [], "1713545858": [], "1713549370": [], "1713549689": [], "1713550571": [], "1713557245": [], "1713559376": [], "1713560080": [], "1713560402": [], "1713560403": [], "1713561061": [], "1713562690": [], "1717169008": [], "1717170449": [], "1717171842": [], "1717171843": [], "1717172360": [], "1717172577": [], "1717172773": [], "1717175781": [], "1717175782": [], "1717176836": [11, 12], "1731803": [], "1771936": [], "1913438": [], "1922355": [], "2": [5, 11], "2184267": [], "24": [11, 12], "255e396f": 11, "2877355": [], "2930224": [], "2995": [], "3": [5, 11], "30": 8, "3041446": [], "3102272": [], "33": 5, "333": 5, "343434344": 11, "363455714": 11, "3935378": [], "4": [5, 11], "4017086": [], "4052968": [], "4090197": [], "427549": 12, "4463434": [], "450c": 11, "4632835": [], "4649727": [], "4714": 8, "473d83400bc1bc9dc635e334fadd433c": 11, "473d83400bc1bc9dc635e334faddd33c": 11, "473d83400bc1bc9dc635e334fadde33c": 11, "473d83400bc1bc9dc635e334faddf33c": 11, "4752307": [], "4756553": [], "5": [0, 5], "50": 7, "517729": [], "5202463": [], "543434443": 11, "5669184": [], "568308": [], "573305": [], "5899982": [], "639124": [], "6692646": [], "6739478": [], "674552": [], "6f90": 8, "700799": [], "7232893": [], "756255": [], "760149": [], "7841465": [], "7d3d8d2083b4": 11, "8044841": [], "8375325": [], "8420": 8, "8630717": [], "8874054": [], "8882551": [], "9236414": [], "9306026": [], "93d9af72": 11, "9a07": 11, "A": [1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "AND": 5, "Be": 1, "But": 5, "By": 11, "For": [1, 5, 6, 7, 8, 9, 11], "IF": 11, "If": [0, 1, 7, 11, 12], "In": 10, "It": 10, "NOT": 12, "OR": 5, "One": 7, "Such": 9, "THE": 11, "That": 3, "The": [0, 1, 2, 3, 5, 8, 10, 11], "There": 11, "These": 9, "To": 11, "Will": [4, 7, 10], "_get_acl_from_row": 11, "_get_authz_from_row": 11, "_get_file_name_from_row": 11, "_get_file_size_from_row": 11, "_get_guid_for_row": 12, "_get_guid_from_row": 11, "_get_md5_from_row": 11, "_get_urls_from_row": 11, "_guid_typ": 12, "_manag": [2, 9, 10], "_query_for_associated_indexd_record_guid": 12, "_ssl": [3, 4, 5], "a5c6": 11, "ab167e49d25b488939b1ede42752458b": 3, "about": [2, 3], "abov": 11, "access": [0, 1, 3, 7, 10], "access_method": [2, 9, 10], "access_token": 0, "accesstoken": 0, "acl": [2, 3, 9, 11], "across": 11, "act": 0, "action": [9, 11], "actual": 11, "ad": 3, "add": [3, 5], "addit": [3, 5, 10, 11], "admin": [5, 11], "admin_endpoint_suffix": 5, "after": 10, "against": [3, 7, 8, 11, 12], "algorithm": 3, "alia": [3, 5], "alias": 5, "aliv": 7, "all": [1, 3, 4, 5, 6, 7, 8, 10, 11, 12], "allow": [0, 6, 8, 10, 11, 12], "allowed_data_upload_bucket": 1, "along": 2, "alreadi": 9, "also": 1, "altern": [5, 11], "alwai": 5, "ammount": 12, "amount": [1, 9], "an": [0, 3, 6, 8, 10, 11], "ani": [0, 5, 10, 11], "anoth": 5, "api": [0, 5, 8, 11], "api_kei": 11, "appli": 7, "appropri": 13, "ar": [5, 7, 8, 9, 10, 11], "arbitrari": 0, "argument": [0, 13], "arrai": 8, "asc": 7, "assign": 9, "assist": 10, "associ": [3, 5], "assum": 11, "async": [3, 4, 5, 9, 11, 12], "async_cr": [2, 5], "async_create_alias": [2, 5], "async_create_record": [2, 3], "async_delete_alia": [2, 5], "async_delete_alias": [2, 5], "async_download_object_manifest": [2, 9, 11], "async_get": [2, 5], "async_get_alias": [2, 5], "async_get_record": [2, 3], "async_get_records_from_checksum": [2, 3], "async_get_records_on_pag": [2, 3], "async_get_with_param": [2, 3], "async_ingest_metadata_manifest": [2, 9, 12], "async_query_url": [2, 3], "async_query_urls_from_indexd": [2, 9, 12], "async_run_job_and_wait": [2, 4], "async_upd": [2, 5], "async_update_alias": [2, 5], "async_update_record": [2, 3], "async_verify_object_manifest": [2, 9, 11], "asynchron": [3, 4, 5], "asyncio": [11, 12], "asyncron": 5, "attach": [3, 5], "attempt": 11, "attribut": [10, 11], "auth": [1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "auth_provid": [1, 2, 3, 4, 5, 6, 7, 8, 13], "authbas": 0, "authent": 0, "author": 1, "authz": [0, 1, 2, 3, 9, 10, 11], "auto": [0, 2], "automat": 0, "avail": [1, 2, 10, 11], "az": 1, "b": [5, 11], "b0f1": 11, "bar": 10, "base": [0, 1, 3, 4, 5, 6, 7, 8, 9, 11, 13], "baseid": 3, "basic": [3, 11, 12], "batch_creat": [2, 5], "batch_siz": 8, "behalf": 0, "behavior": 11, "being": 3, "belong": 8, "below": 11, "blank": 3, "blob": [5, 7], "bodi": 3, "bool": [4, 5, 8, 10, 11, 12], "boolean": 3, "bownload": 10, "broad": 9, "broken": 9, "bucket": [1, 6], "bundl": 10, "byte": 10, "c": [5, 11], "cach": 10, "cache_hosts_wts_token": [2, 9, 10], "call": [10, 13], "can": [0, 3, 4, 8, 11, 12], "capabl": 9, "case": [0, 10], "categori": 9, "ccle": 8, "ccle_one_record": 8, "ccle_sample_nod": 8, "cdi": 7, "chang": [3, 11], "checksum": [3, 10], "checksum_typ": 3, "child": 10, "children": [2, 9, 10], "chunk_siz": 8, "class": [0, 2, 10, 11, 13], "cli": 10, "client": [0, 3], "client_credenti": 0, "client_id": 0, "client_scop": 0, "client_secret": 0, "code": [2, 8], "column": [11, 12], "column_to_use_as_guid": [2, 9, 12], "columna": 11, "columnb": 11, "columnc": 11, "com": 7, "comma": 11, "command": [10, 11], "common": [0, 1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13], "commons_url": [2, 9, 10, 11, 12], "complet": [4, 11], "complex": 7, "concat": 11, "concurr": [11, 12], "configur": 1, "connect": 12, "consist": 3, "constructor": 0, "contain": [0, 2, 5, 8, 9, 10, 11, 12], "content": [3, 13], "content_created_d": 3, "content_updated_d": 3, "continu": 10, "control": 3, "conveni": 10, "copi": [2, 13], "coroutin": 11, "correspond": 3, "count": 3, "crdc": 0, "creat": [2, 3, 4, 5, 6, 8, 10, 11], "create_alias": [2, 5], "create_blank": [2, 3], "create_index_key_path": [2, 5], "create_job": [2, 4], "create_new_vers": [2, 3], "create_object_list": [2, 9, 10], "create_program": [2, 8], "create_project": [2, 8], "create_record": [2, 3], "created_tim": [2, 9, 10], "creation": [3, 11], "cred": 3, "credenti": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "csv": [8, 11, 12], "curl": [0, 2], "current": [6, 8, 10], "current_dir": [2, 9, 11], "custom": 11, "d": 5, "d70b41b9": 8, "data": [0, 1, 3, 5, 7, 8, 10, 11], "data_spreadsheet": 8, "data_typ": 7, "data_upload_bucket": 1, "dataa": 11, "datab": 11, "databas": 5, "datacommon": 0, "datafil": 10, "datamanag": 10, "date": 3, "datetim": [1, 3, 10], "dbgap": 12, "dcf": 8, "def": 11, "default": [0, 1, 3, 7, 8, 11, 12], "defin": [5, 8, 10], "delai": 4, "delet": [0, 1, 2, 3, 5, 6, 8, 10, 11], "delete_alia": [2, 5], "delete_alias": [2, 5], "delete_all_guid": [2, 9, 11], "delete_fil": [1, 2], "delete_file_loc": [1, 2, 6], "delete_index_key_path": [2, 5], "delete_nod": [2, 8], "delete_object": [2, 6], "delete_program": [2, 8], "delete_project": [2, 8], "delete_record": [2, 3, 8], "delete_unpacked_packag": 10, "delimet": [11, 12], "delimit": 11, "demograph": 8, "deprec": 1, "descript": [3, 5], "desir": 11, "dest_path": 13, "dest_urlstr": 13, "dest_w": 13, "dest_wskei": 13, "detail": [2, 7, 10], "determin": [10, 11, 12], "dev": 11, "dict": [3, 4, 5, 10, 11, 12], "dictionari": [3, 4, 5, 7, 8], "did": 3, "differ": 5, "direct": 0, "directori": [10, 11], "disabl": 10, "discoveri": 10, "disk": 13, "dispatch": 4, "dist_resolut": 3, "distribut": 3, "doc": [7, 10], "docstr": 2, "document": [1, 3], "doe": [0, 12], "domain": [11, 12], "done": 4, "download": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 13], "download_files_in_drs_manifest": [2, 9, 10], "download_list": 10, "download_manifest": 11, "download_singl": [1, 2], "download_url": [2, 13], "downloadmanag": [2, 9, 10], "downloadstatu": [2, 9, 10], "dr": [2, 9], "drs_download": 10, "drs_hostnam": 10, "drsdownload": 10, "drsobjecttyp": 10, "e": [5, 10], "e043ab8b77b9": 8, "each": [3, 8, 10, 11], "effici": 9, "eg": 3, "either": 8, "elasticsearch": 7, "els": [0, 12], "elsewher": 12, "empti": [8, 11], "enabl": 11, "end": [5, 10], "end_tim": [2, 9, 10], "endpoint": [0, 1, 2, 3, 4, 5, 7, 8, 13], "entir": 8, "entri": [3, 11], "env": 0, "environ": 0, "equal": 7, "error": [10, 11, 12], "error_nam": 11, "etc": 8, "even": 11, "everi": [9, 11], "everyth": 11, "ex": [0, 11, 12], "exampl": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "exclud": 3, "execut": [7, 8, 11], "exist": [1, 3, 5, 6, 9, 12], "expect": [5, 9, 11], "experi": 8, "expir": [0, 1], "expires_in": 1, "export": [8, 10], "export_nod": [2, 8], "export_record": [2, 8], "f1f8": 11, "factori": 10, "fail": [8, 10], "fals": [3, 5, 6, 10, 11], "featur": [1, 6], "fenc": [0, 1], "fetch": 0, "field": [3, 5, 7, 11, 12], "fieldnam": 11, "file": [0, 2, 3, 4, 8, 9, 10, 11, 12, 13], "file_nam": [1, 2, 3, 9, 10, 11], "file_s": [2, 9, 10, 11], "file_st": 3, "fileformat": 8, "filenam": [0, 8, 10, 11, 12], "files": 10, "fill": 12, "filter": [5, 7], "filter_object": 7, "first": [7, 8], "flag": 11, "folder": 11, "follow": [0, 11], "forc": 11, "force_metadata_columns_even_if_empti": 11, "form": 13, "format": [3, 5, 8, 11], "from": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13], "func_to_parse_row": [11, 12], "function": [2, 3, 4, 5, 9, 10, 11, 12], "g": 10, "gen3": [10, 11, 12], "gen3_api_kei": 0, "gen3_oidc_client_creds_secret": 0, "gen3auth": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "gen3fil": [1, 2], "gen3index": [2, 3], "gen3job": [2, 4, 10], "gen3metadata": [2, 5], "gen3object": [2, 6], "gen3queri": [2, 7], "gen3submiss": [2, 8], "gen3wsstorag": [2, 13], "gener": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 13], "get": [0, 1, 2, 3, 4, 5, 8, 10, 11, 12, 13], "get_access_token": [0, 2], "get_access_token_from_wt": [0, 2], "get_alias": [2, 5], "get_all_record": [2, 3], "get_dictionary_al": [2, 8], "get_dictionary_nod": [2, 8], "get_fresh_token": [2, 9, 10], "get_graphql_schema": [2, 8], "get_guid_from_fil": 12, "get_guids_prefix": [2, 3], "get_index_key_path": [2, 5], "get_latest_vers": [2, 3], "get_output": [2, 4], "get_presigned_url": [1, 2], "get_program": [2, 8], "get_project": [2, 8], "get_project_dictionari": [2, 8], "get_project_manifest": [2, 8], "get_record": [2, 3], "get_record_doc": [2, 3], "get_records_on_pag": [2, 3], "get_stat": [2, 3], "get_statu": [2, 4], "get_url": [2, 3], "get_valid_guid": [2, 3], "get_vers": [2, 3, 4, 5], "get_with_param": [2, 3], "giangb": 11, "github": [2, 7], "give": 1, "given": [0, 3, 4, 5, 8, 10, 12, 13], "global": [4, 5], "good": 3, "grant": 0, "graph": 8, "graphql": [7, 8], "graphql_queri": [2, 7], "group": 3, "guid": [1, 2, 3, 5, 6, 9, 11, 12], "guid_exampl": 11, "guid_for_row": 12, "guid_from_fil": 12, "guid_type_for_indexed_file_object": [2, 9, 12], "guid_type_for_non_indexed_file_object": [2, 9, 12], "guppi": 7, "ha": [0, 11], "handl": [3, 10], "hardcod": 0, "has_vers": 3, "hash": [3, 11], "hash_typ": 3, "have": [5, 11], "header": 11, "healthi": [3, 4, 5], "help": 11, "helper": 2, "hit": 11, "host": 10, "hostnam": [2, 9, 10], "how": [8, 11], "howto": 10, "http": [0, 7, 11, 12], "i": [0, 1, 2, 3, 4, 5, 8, 10, 11, 12], "id": [0, 1, 3, 5, 10, 11], "idea": 3, "identifi": [3, 5, 9, 11], "idp": 0, "illustr": 11, "immut": 3, "implement": 0, "implic": 11, "import": 11, "includ": [0, 3], "indent": 10, "index": [0, 2, 5, 9], "index_manifest": 11, "index_object_manifest": [2, 9, 11], "indexd": [1, 3, 6, 10, 11, 12], "indexd_field": [11, 12], "indexd_record_page_s": [2, 9, 11], "indexed_file_object_guid": 12, "indic": [0, 11], "infil": 10, "info": [3, 11], "inform": [2, 3, 10], "ingest": [2, 9], "ingest_manifest": 12, "initi": [0, 10], "input": [4, 10, 11], "input_manifest": 11, "instal": [0, 2, 11], "instanc": [1, 3, 6, 7, 8, 9, 10], "instead": [1, 7, 11], "int": [1, 3, 5, 7, 8, 10, 11, 12], "integ": [1, 3, 8], "intend": 0, "interact": [1, 3, 4, 5, 6, 8, 13], "interest": 10, "interpret": 0, "introspect": 8, "involv": 9, "is_healthi": [2, 3, 4, 5], "is_indexed_file_object": 12, "isn": 1, "issu": 0, "its": [1, 3], "job": 2, "job_id": 4, "job_input": 4, "job_nam": 4, "json": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "just": [5, 11, 12], "jwt": 0, "kei": [0, 3, 5, 13], "know": 11, "known": 10, "kwarg": [3, 4, 5], "l": [2, 13], "larg": 9, "last": 10, "latest": 3, "least": 3, "level": 6, "librari": 11, "like": [3, 5, 9, 11, 12], "limit": [1, 3, 5, 12], "linear": 4, "linux": 10, "list": [0, 1, 3, 4, 5, 7, 8, 10, 11, 13], "list_access_in_drs_manifest": [2, 9, 10], "list_drs_object": [2, 9, 10], "list_files_in_drs_manifest": [2, 9, 10], "list_job": [2, 4], "live": [11, 12], "load": [2, 9, 10], "load_manifest": [2, 9, 10], "local": [0, 13], "locat": [1, 6], "lock": 12, "log": [8, 10, 11, 12], "logic": [5, 12], "loop": 11, "ls_path": [2, 13], "maco": 11, "made": 3, "mai": [0, 9, 11], "main": 10, "make": [9, 11], "manag": [1, 5, 10], "mani": [8, 11], "manifest": [2, 8, 9, 10, 11, 12], "manifest_1": 10, "manifest_fil": [11, 12], "manifest_file_delimit": [11, 12], "manifest_row_pars": [11, 12], "map": [0, 11], "mark": 8, "master": 7, "match": [3, 5, 12], "max": 5, "max_concurrent_request": [2, 9, 11, 12], "max_presigned_url_ttl": 1, "max_tri": 8, "maximum": [11, 12], "md": [5, 7, 10, 12], "md5": [2, 3, 9, 11], "md5_hash": 11, "md5sum": [2, 9, 10], "mean": 8, "mechan": 3, "merg": 5, "metadata": [2, 3, 6, 9, 11], "metadata_list": 5, "metadata_sourc": 12, "metadata_typ": 12, "metdata": 12, "method": [1, 7, 10], "minimum": 10, "minut": 0, "mode": 7, "modul": [2, 10, 11], "more": [2, 5, 7, 9, 10], "most": 9, "mostli": 2, "multipl": [8, 11], "must": [1, 5], "my_common": 10, "my_credenti": 10, "my_field": 7, "my_index": 7, "my_program": 7, "my_project": 7, "name": [3, 4, 8, 10, 11, 12, 13], "namespac": [0, 12], "necessari": [3, 5], "need": [3, 7, 10, 11], "nest": 5, "net": 11, "never": 0, "new": [0, 3], "node": 8, "node_nam": 8, "node_typ": 8, "none": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "note": [0, 3, 11, 12], "noth": [3, 6], "now": [1, 8], "num": 5, "num_process": 11, "num_total_fil": 11, "number": [3, 7, 8, 11, 12], "o": 0, "object": [1, 2, 3, 4, 5, 7, 8, 9, 10, 11, 13], "object_id": [1, 2, 9, 10], "object_list": 10, "object_typ": [2, 9, 10], "objectid": 10, "obtain": [0, 10], "occur": 10, "off": 5, "offset": [5, 7], "oidc": 0, "old": 3, "one": [3, 5, 10, 11], "onli": [3, 5, 7, 8, 10, 11], "open": [8, 10, 11], "open_project": [2, 8], "openid": 0, "opt": 0, "option": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11], "order": [0, 8], "ordered_node_list": 8, "org": 10, "otherwis": 10, "output": [4, 5, 11, 12], "output_dir": 10, "output_filenam": [11, 12], "overrid": [0, 11, 12], "overwrit": 5, "own": 0, "packag": 10, "page": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 13], "pagin": 3, "parallel": 11, "param": [3, 5, 8, 10], "paramet": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "pars": [10, 11, 12, 13], "parser": [11, 12], "particular": 0, "pass": [0, 7, 8, 10], "password": [11, 12], "path": [0, 1, 5, 10, 11, 13], "path_to_manifest": 11, "pattern": [3, 12], "pdcdatastor": 11, "pend": 10, "per": [11, 12], "peregrin": 8, "permiss": 10, "persist": 9, "phs0001": 11, "phs0002": 11, "pick": 1, "pla": 11, "place": 11, "planx": 11, "point": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "popul": [10, 12], "posit": [1, 7], "possibl": 10, "post": [0, 11], "pprint": [2, 9, 10], "prefix": 3, "presign": 1, "pretti": 10, "prev_guid": [2, 9, 11], "previou": [3, 11], "previous": 4, "print": [8, 10], "process": 11, "processed_fil": 11, "profil": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "program": [8, 11], "progress": [8, 10], "project": [8, 11], "project_id": [7, 8], "protocol": 1, "provid": [0, 1, 3, 5, 7, 8, 12], "public": [3, 5], "put": 0, "py": 11, "python": [2, 9, 11], "python3": 11, "python_subprocess_command": 11, "queri": [1, 2, 3, 5, 8, 11, 12], "query_str": 7, "query_txt": [7, 8], "query_url": [2, 3], "quickstart": 2, "rather": 0, "raw": [7, 11], "raw_data_download": [2, 7], "rbac": 3, "read": [3, 5, 11], "readm": 2, "reason": 10, "record": [1, 3, 5, 7, 8, 11, 12], "refresh": [0, 10], "refresh_access_token": [0, 2], "refresh_fil": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "refresh_token": 0, "regist": 8, "regular": 7, "relat": 9, "remov": [1, 6, 11, 13], "replac": 11, "replace_url": 11, "repo": 2, "repres": [3, 5, 10], "represent": [1, 3], "request": [0, 1, 3, 5, 8, 11, 12], "requir": 10, "resolv": 10, "resolve_object": [2, 9, 10], "respect": 7, "respons": [0, 1, 3, 4, 5], "result": [1, 8, 10, 11], "retri": 8, "retriev": [1, 8, 10, 12], "return": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11], "return_full_metadata": 5, "rev": 3, "revers": 8, "revis": 3, "right": 1, "rm": [2, 13], "rm_path": [2, 13], "root": [11, 12], "row": [7, 8, 11, 12], "row_offset": 8, "rtype": 3, "run": [8, 11], "s3": [1, 10, 11], "safe": 11, "same": [5, 11, 13], "sampl": [8, 10], "sandbox": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "save": 10, "save_directori": 10, "schema": 8, "scope": [0, 1], "screen": 8, "script": 2, "search": [0, 2, 3], "second": [1, 4], "secret": 0, "see": [7, 10, 11], "self": 10, "semaphon": 12, "semaphor": 12, "separ": [0, 11], "server": 10, "servic": [1, 3, 4, 5, 6, 8, 11, 12, 13], "service_loc": [3, 4, 5], "session": 11, "set": [0, 1, 5, 10], "setup": 2, "sheepdog": 8, "should": [0, 8, 11], "show": 10, "show_progress": 10, "shown": 11, "sign": 1, "signpost": 3, "similar": 10, "simpl": 3, "simpli": 11, "sinc": 3, "singl": [1, 5, 8], "size": [2, 3, 9, 10, 11], "skip": 8, "sleep": 4, "so": 11, "some": [0, 2], "someth": 11, "sort": 7, "sort_field": 7, "sort_object": 7, "sourc": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "space": [0, 11], "specif": [5, 8, 11, 12], "specifi": [0, 1, 3, 11, 13], "spreadsheet": 8, "src_path": 13, "src_urlstr": 13, "src_w": 13, "src_wskei": 13, "ssl": [3, 4, 5], "start": [3, 4, 7, 8, 10], "start_tim": [2, 9, 10], "static": 10, "statu": [2, 4, 9, 10], "storag": [1, 2, 6], "store": [1, 3, 10], "str": [0, 1, 3, 4, 5, 7, 8, 10, 11, 12], "string": [0, 3, 5, 11, 13], "strip": 11, "sub": 8, "subject": [7, 8], "submiss": 2, "submit": [8, 11], "submit_additional_metadata_column": 11, "submit_fil": [2, 8], "submit_record": [2, 8], "submitter_id": 7, "success": 10, "successfulli": 10, "suffici": 3, "suppli": 3, "support": [0, 1, 5, 8, 11], "sure": 1, "synchron": 11, "syntax": 7, "system": [6, 7, 8, 9], "t": [1, 5, 11], "tab": 11, "task": 9, "temporari": 11, "test": 11, "test1": 11, "test2": 11, "test3": 11, "test4": 11, "test5": 11, "text": [1, 7, 8], "than": [0, 5], "thei": [0, 10], "them": [10, 11], "thi": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "those": 11, "thread": 11, "thread_num": 11, "threadcontrol": [2, 9, 11], "through": [8, 11], "tier": 7, "time": [1, 3, 8, 10, 11], "timestamp": 10, "tmp_folder": [2, 9, 11], "token": [0, 10], "tool": 2, "total": 11, "treat": [1, 5], "tree": 10, "true": [3, 4, 5, 6, 7, 8, 10, 11, 12], "try": 0, "tsv": [8, 11, 12], "tupl": [0, 3, 11, 12], "type": [1, 3, 4, 5, 7, 8, 10, 11, 12], "typic": 10, "uc": 7, "unaccess": 7, "under": [0, 8, 13], "uniqu": [1, 5], "unknown": 10, "unpack": 10, "unpack_packag": 10, "until": [4, 10], "up": [5, 9], "updat": [2, 3, 5, 10, 11], "update_alias": [2, 5], "update_blank": [2, 3], "update_record": [2, 3], "updated_tim": [2, 9, 10], "upload": [1, 2, 3, 8, 13], "upload_fil": [1, 2], "upload_file_to_guid": [1, 2], "upload_url": [2, 13], "url": [1, 2, 3, 9, 10, 11, 12, 13], "urls_metadata": 3, "us": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "usag": 11, "use_agg_md": 5, "user": [0, 10, 12], "user_access": [2, 9, 10], "usual": 12, "utcnow": 1, "util": 9, "uuid": [1, 3, 8], "uuid1": 8, "uuid2": 8, "valid": [3, 7], "valu": [0, 1, 3, 5, 7, 10, 11], "value_from_indexd": 11, "value_from_manifest": 11, "variabl": [0, 7, 8], "variou": 2, "verbos": [7, 8], "verif": 11, "verifi": [2, 9], "verify_manifest": 11, "verify_object_manifest": 11, "version": [3, 4, 5], "vital_statu": 7, "w": 13, "wa": 0, "wai": 10, "wait": 4, "want": [0, 3, 8], "warn": 11, "we": [3, 11], "web": 0, "what": 5, "when": [0, 3, 7, 10, 12], "where": [0, 3, 5, 11, 12], "whether": [3, 4, 5, 8, 11, 12], "which": [8, 10], "while": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "whose": 5, "within": [0, 2, 9], "without": [3, 5], "won": 5, "work": [0, 10], "workaround": 11, "worksheet": 8, "workspac": [0, 2], "wrapper": 10, "write": 11, "ws_urlstr": 13, "wskei": 13, "wss": 13, "wt": [0, 10], "x": 11, "xlsx": 8, "you": [0, 3, 8, 11], "your": 0}, "titles": ["Gen3 Auth Helper", "Gen3 File Class", "Welcome to Gen3 SDK\u2019s documentation!", "Gen3 Index Class", "Gen3 Jobs Class", "Gen3 Metadata Class", "Gen3 Object Class", "Gen3 Query Class", "Gen3 Submission Class", "Gen3 Tools", "DRS Download Tools", "Indexing Tools", "Metadata Tools", "Gen3 Workspace Storage"], "titleterms": {"": 2, "auth": 0, "class": [1, 3, 4, 5, 6, 7, 8], "document": 2, "download": [10, 11], "dr": 10, "file": 1, "gen3": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 13], "helper": 0, "index": [3, 11], "indic": 2, "ingest": 12, "job": 4, "metadata": [5, 12], "object": 6, "queri": 7, "sdk": 2, "storag": 13, "submiss": 8, "tabl": 2, "tool": [9, 10, 11, 12], "verifi": 11, "welcom": 2, "workspac": 13}}) \ No newline at end of file diff --git a/docs/_build/html/tools/indexing.html b/docs/_build/html/tools/indexing.html index 3f02d52f1..aba82aae0 100644 --- a/docs/_build/html/tools/indexing.html +++ b/docs/_build/html/tools/indexing.html @@ -381,7 +381,7 @@

Indexing Tools
-async gen3.tools.indexing.verify_manifest.async_verify_object_manifest(commons_url, manifest_file, max_concurrent_requests=24, manifest_row_parsers={'acl': <function _get_acl_from_row>, 'authz': <function _get_authz_from_row>, 'file_name': <function _get_file_name_from_row>, 'file_size': <function _get_file_size_from_row>, 'guid': <function _get_guid_from_row>, 'md5': <function _get_md5_from_row>, 'urls': <function _get_urls_from_row>}, manifest_file_delimiter=None, output_filename='verify-manifest-errors-1717175781.9236414.log')[source]
+async gen3.tools.indexing.verify_manifest.async_verify_object_manifest(commons_url, manifest_file, max_concurrent_requests=24, manifest_row_parsers={'acl': <function _get_acl_from_row>, 'authz': <function _get_authz_from_row>, 'file_name': <function _get_file_name_from_row>, 'file_size': <function _get_file_size_from_row>, 'guid': <function _get_guid_from_row>, 'md5': <function _get_md5_from_row>, 'urls': <function _get_urls_from_row>}, manifest_file_delimiter=None, output_filename='verify-manifest-errors-1717176836.1187842.log')[source]

Verify all file object records into a manifest csv

Parameters:
diff --git a/docs/_build/html/tools/metadata.html b/docs/_build/html/tools/metadata.html index 1b966ae34..23bbd79c1 100644 --- a/docs/_build/html/tools/metadata.html +++ b/docs/_build/html/tools/metadata.html @@ -102,7 +102,7 @@

Metadata Tools
-async gen3.tools.metadata.ingest_manifest.async_ingest_metadata_manifest(commons_url, manifest_file, metadata_source, auth=None, max_concurrent_requests=24, manifest_row_parsers={'guid_for_row': <function _get_guid_for_row>, 'indexed_file_object_guid': <function _query_for_associated_indexd_record_guid>}, manifest_file_delimiter=None, output_filename='ingest-metadata-manifest-errors-1717175782.1922355.log', get_guid_from_file=True, metadata_type=None)[source]
+async gen3.tools.metadata.ingest_manifest.async_ingest_metadata_manifest(commons_url, manifest_file, metadata_source, auth=None, max_concurrent_requests=24, manifest_row_parsers={'guid_for_row': <function _get_guid_for_row>, 'indexed_file_object_guid': <function _query_for_associated_indexd_record_guid>}, manifest_file_delimiter=None, output_filename='ingest-metadata-manifest-errors-1717176836.427549.log', get_guid_from_file=True, metadata_type=None)[source]

Ingest all metadata records into a manifest csv

Parameters:
From 706ac88d43aefa5a61812bb33690620cc904352e Mon Sep 17 00:00:00 2001 From: Alex Date: Fri, 31 May 2024 12:42:58 -0500 Subject: [PATCH 55/62] fix(test): fix dir for testing binary --- .github/workflows/build.yaml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index 2d8f5fa30..c71907fe3 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -64,7 +64,8 @@ jobs: - name: Test build run: | cp -r ./dist/pyinstaller/*/gen3/gen3 ./gen3 - ./gen3 --help + cd ./gen3 + gen3 --help - name: Archive artifacts uses: actions/upload-artifact@v4 with: From 619755fab48ade771ec1f17166b02a4fbe7e2a06 Mon Sep 17 00:00:00 2001 From: Avantol13 Date: Fri, 31 May 2024 17:44:21 +0000 Subject: [PATCH 56/62] Apply automatic documentation changes --- docs/_build/doctrees/environment.pickle | Bin 1579888 -> 1579888 bytes docs/_build/doctrees/tools/indexing.doctree | Bin 100291 -> 100286 bytes docs/_build/doctrees/tools/metadata.doctree | Bin 35929 -> 35934 bytes docs/_build/html/searchindex.js | 2 +- docs/_build/html/tools/indexing.html | 2 +- docs/_build/html/tools/metadata.html | 2 +- 6 files changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/_build/doctrees/environment.pickle b/docs/_build/doctrees/environment.pickle index 013e1fb99f7e6eac6acde1e3d40bd3e0b55fb76c..f906f7022eeec9f281e009717f09c94b432b4fec 100644 GIT binary patch delta 10662 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 delta 10706 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 diff --git a/docs/_build/doctrees/tools/indexing.doctree b/docs/_build/doctrees/tools/indexing.doctree index cfb5b9530db2b9d2d078dac8c6f509c22074e354..2a1a5c8f84d52ce000cedad1879a37b4fa593b27 100644 GIT binary patch delta 163 zcmX@y&$h3htzinI2;-uyqKrkBEN>VY7^WLoGRjQu+AX_X&Yp1*BbT{}shOUcxuu2K z_CjmM9%jZ1+yB`y9zu~g?ZCK=o6&B%tS_UU078S2UQT|x`t(LmMq#L=B)a634EES5 R8Dc#Uy~vh@`7-8O0RZ;pEV=*y delta 168 zcmdnj&vv+YZ7^Vl>G0IHt+AX_X)}C<@Be$7_v6-Hsp@q4H z$@T(k#vW$Ii`)O&F&;vdIqAT-jhoSa`a}mtJwYTbMtV8<>FU!R-5G_UvQikbQ!?0N Sr(}rrKy;&680gEGYXtxTJ1(jK diff --git a/docs/_build/doctrees/tools/metadata.doctree b/docs/_build/doctrees/tools/metadata.doctree index dd916af64e2ce901740c6dd1a5293558524e752c..e7b73f1c787810c0f87ff8252d8497f5841ad5f5 100644 GIT binary patch delta 154 zcmcaPgX!K3CYA=)slgjrmT0idWn^HOJTY8u^C=AnMjmq$Q*%87V*?XYQ;W&z`Zk*b zwT?40)^C>7b4HcioUY%>!RRsht+_d>CVdMDh_Dp0S$aA7>FQH5*kh+;i1lFV+I-8R GJ{SOgdn`f# delta 154 zcmcaNgX!iBCYA=)seT(-mT0idVPs&KT&pX$`ILqOBe$7_v6-HUk-4df<>X9#o6SL5 z$C(-HHcRO_qsVQ})Nkcrbf5g*+*|-ji(XECy87gUIl>SrNpz_x8SJrBGQ@ho8jIndexing Tools
-async gen3.tools.indexing.verify_manifest.async_verify_object_manifest(commons_url, manifest_file, max_concurrent_requests=24, manifest_row_parsers={'acl': <function _get_acl_from_row>, 'authz': <function _get_authz_from_row>, 'file_name': <function _get_file_name_from_row>, 'file_size': <function _get_file_size_from_row>, 'guid': <function _get_guid_from_row>, 'md5': <function _get_md5_from_row>, 'urls': <function _get_urls_from_row>}, manifest_file_delimiter=None, output_filename='verify-manifest-errors-1717176836.1187842.log')[source]
+async gen3.tools.indexing.verify_manifest.async_verify_object_manifest(commons_url, manifest_file, max_concurrent_requests=24, manifest_row_parsers={'acl': <function _get_acl_from_row>, 'authz': <function _get_authz_from_row>, 'file_name': <function _get_file_name_from_row>, 'file_size': <function _get_file_size_from_row>, 'guid': <function _get_guid_from_row>, 'md5': <function _get_md5_from_row>, 'urls': <function _get_urls_from_row>}, manifest_file_delimiter=None, output_filename='verify-manifest-errors-1717177456.679862.log')[source]

Verify all file object records into a manifest csv

Parameters:
diff --git a/docs/_build/html/tools/metadata.html b/docs/_build/html/tools/metadata.html index 23bbd79c1..2fb680db4 100644 --- a/docs/_build/html/tools/metadata.html +++ b/docs/_build/html/tools/metadata.html @@ -102,7 +102,7 @@

Metadata Tools
-async gen3.tools.metadata.ingest_manifest.async_ingest_metadata_manifest(commons_url, manifest_file, metadata_source, auth=None, max_concurrent_requests=24, manifest_row_parsers={'guid_for_row': <function _get_guid_for_row>, 'indexed_file_object_guid': <function _query_for_associated_indexd_record_guid>}, manifest_file_delimiter=None, output_filename='ingest-metadata-manifest-errors-1717176836.427549.log', get_guid_from_file=True, metadata_type=None)[source]
+async gen3.tools.metadata.ingest_manifest.async_ingest_metadata_manifest(commons_url, manifest_file, metadata_source, auth=None, max_concurrent_requests=24, manifest_row_parsers={'guid_for_row': <function _get_guid_for_row>, 'indexed_file_object_guid': <function _query_for_associated_indexd_record_guid>}, manifest_file_delimiter=None, output_filename='ingest-metadata-manifest-errors-1717177457.0304558.log', get_guid_from_file=True, metadata_type=None)[source]

Ingest all metadata records into a manifest csv

Parameters:
From ff64254ea6b292a30192c3ae12c652d738acb3d3 Mon Sep 17 00:00:00 2001 From: Alex Date: Fri, 31 May 2024 14:38:57 -0500 Subject: [PATCH 57/62] chore(debug): list files --- .github/workflows/build.yaml | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index c71907fe3..0980c6202 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -63,9 +63,10 @@ jobs: # pyinstaller --log-level=DEBUG --debug=imports --clean --name gen3 --hidden-import gen3users --onefile ./gen3/cli/__main__.py - name: Test build run: | - cp -r ./dist/pyinstaller/*/gen3/gen3 ./gen3 - cd ./gen3 - gen3 --help + ls ./dist/pyinstaller/*/gen3 + cp ./dist/pyinstaller/*/gen3/gen3 ./gen3 + ls + ./gen3 --help - name: Archive artifacts uses: actions/upload-artifact@v4 with: From 800fc5559b9b8bc083211f2646469b2efbe704f3 Mon Sep 17 00:00:00 2001 From: Avantol13 Date: Fri, 31 May 2024 19:40:14 +0000 Subject: [PATCH 58/62] Apply automatic documentation changes --- docs/_build/doctrees/environment.pickle | Bin 1579888 -> 1579893 bytes docs/_build/doctrees/tools/indexing.doctree | Bin 100286 -> 100291 bytes docs/_build/doctrees/tools/metadata.doctree | Bin 35934 -> 35934 bytes docs/_build/html/searchindex.js | 2 +- docs/_build/html/tools/indexing.html | 2 +- docs/_build/html/tools/metadata.html | 2 +- 6 files changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/_build/doctrees/environment.pickle b/docs/_build/doctrees/environment.pickle index f906f7022eeec9f281e009717f09c94b432b4fec..545640010aefb25791b668123a57a535e4620fa2 100644 GIT binary patch delta 9033 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 delta 9352 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 I3qBe8e=p(0^Z)<= diff --git a/docs/_build/doctrees/tools/indexing.doctree b/docs/_build/doctrees/tools/indexing.doctree index 2a1a5c8f84d52ce000cedad1879a37b4fa593b27..58bd2112fd9bd91c1b540e61ac7969372f56b9ea 100644 GIT binary patch delta 176 zcmdnj&vv+YZ7^Vl>G0IHt+AX_X)}C=8Bd>*tiJ^g>sfCfD zk+H@0LTkouX2y%#|JpGgM3+0|z_^v0(SG_w2S!~X6m5Dr`RVG@9o-p)q0-Wr(o-_n TW2a<@^+5EaSsUcbm}3P1M-?y& delta 171 zcmX@y&$h3htzinI2;-uyqKrkBEN>VY7^WLoGRjQu+AX_X&Yp20BagYciK&^MnYpEf znbGzlYsPM7#tYm3*)bkOlRD$TxRsmHZn~^5qpl#bCcT{eboJ?to{Yj!St$(JDH-gs SQ!>PQAi7bl4EJTsu>t@_FfL{Q diff --git a/docs/_build/doctrees/tools/metadata.doctree b/docs/_build/doctrees/tools/metadata.doctree index e7b73f1c787810c0f87ff8252d8497f5841ad5f5..18f4ddf954150e17c84a6dfa3bdba376d18b05f8 100644 GIT binary patch delta 115 zcmcaNgX!K3rVX50ycQ-Vh6Z{T=EmkGW+sy}^=&o>X>qZl3UAKT-@_qKV5zD Z!5rbqUKZx4swekZxS)z`zHd<<3;+i|9{T_Q delta 115 zcmcaNgX!K3rVX50yyoU6rsjGE#s(&)rWTVk^=&o>X>qZl3UAKT-@_qKV5zD Z!5rbqUKZx4swekZxS)z`zHd<<3;+hm9`*nL diff --git a/docs/_build/html/searchindex.js b/docs/_build/html/searchindex.js index 9112aa11f..721e8b6f9 100644 --- a/docs/_build/html/searchindex.js +++ b/docs/_build/html/searchindex.js @@ -1 +1 @@ -Search.setIndex({"alltitles": {"DRS Download Tools": [[10, "module-gen3.tools.download.drs_download"]], "Download": [[11, "module-gen3.tools.indexing.download_manifest"]], "Gen3 Auth Helper": [[0, "gen3-auth-helper"]], "Gen3 File Class": [[1, "gen3-file-class"]], "Gen3 Index Class": [[3, "gen3-index-class"]], "Gen3 Jobs Class": [[4, "gen3-jobs-class"]], "Gen3 Metadata Class": [[5, "gen3-metadata-class"]], "Gen3 Object Class": [[6, "gen3-object-class"]], "Gen3 Query Class": [[7, "gen3-query-class"]], "Gen3 Submission Class": [[8, "gen3-submission-class"]], "Gen3 Tools": [[9, "gen3-tools"]], "Gen3 Workspace Storage": [[13, "gen3-workspace-storage"]], "Index": [[11, "module-gen3.tools.indexing.index_manifest"]], "Indexing Tools": [[11, "indexing-tools"]], "Indices and tables": [[2, "indices-and-tables"]], "Ingest": [[12, "module-gen3.tools.metadata.ingest_manifest"]], "Metadata Tools": [[12, "metadata-tools"]], "Verify": [[11, "module-gen3.tools.indexing.verify_manifest"]], "Welcome to Gen3 SDK\u2019s documentation!": [[2, "welcome-to-gen3-sdk-s-documentation"]]}, "docnames": ["auth", "file", "index", "indexing", "jobs", "metadata", "object", "query", "submission", "tools", "tools/drs_pull", "tools/indexing", "tools/metadata", "wss"], "envversion": {"sphinx": 61, "sphinx.domains.c": 3, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 9, "sphinx.domains.index": 1, "sphinx.domains.javascript": 3, "sphinx.domains.math": 2, "sphinx.domains.python": 4, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx.ext.viewcode": 1}, "filenames": ["auth.rst", "file.rst", "index.rst", "indexing.rst", "jobs.rst", "metadata.rst", "object.rst", "query.rst", "submission.rst", "tools.rst", "tools/drs_pull.rst", "tools/indexing.rst", "tools/metadata.rst", "wss.rst"], "indexentries": {"_manager (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable._manager", false]], "access_methods (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.access_methods", false]], "acls (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.ACLS", false]], "async_create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_create", false]], "async_create_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_create_aliases", false]], "async_create_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_create_record", false]], "async_delete_alias() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_delete_alias", false]], "async_delete_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_delete_aliases", false]], "async_download_object_manifest() (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.async_download_object_manifest", false]], "async_get() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_get", false]], "async_get_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_get_aliases", false]], "async_get_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_record", false]], "async_get_records_from_checksum() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_records_from_checksum", false]], "async_get_records_on_page() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_records_on_page", false]], "async_get_with_params() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_with_params", false]], "async_ingest_metadata_manifest() (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.async_ingest_metadata_manifest", false]], "async_query_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_query_urls", false]], "async_query_urls_from_indexd() (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.async_query_urls_from_indexd", false]], "async_run_job_and_wait() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.async_run_job_and_wait", false]], "async_update() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_update", false]], "async_update_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_update_aliases", false]], "async_update_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_update_record", false]], "async_verify_object_manifest() (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.async_verify_object_manifest", false]], "auth_provider (gen3.metadata.gen3metadata attribute)": [[5, "gen3.metadata.Gen3Metadata.auth_provider", false]], "authz (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.AUTHZ", false]], "batch_create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.batch_create", false]], "cache_hosts_wts_tokens() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.cache_hosts_wts_tokens", false]], "children (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.children", false]], "column_to_use_as_guid (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.COLUMN_TO_USE_AS_GUID", false]], "commons_url (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.commons_url", false]], "copy() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.copy", false]], "create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create", false]], "create_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create_aliases", false]], "create_blank() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_blank", false]], "create_index_key_path() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create_index_key_path", false]], "create_job() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.create_job", false]], "create_new_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_new_version", false]], "create_object_list() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.create_object_list", false]], "create_program() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.create_program", false]], "create_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.create_project", false]], "create_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_record", false]], "created_time (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.created_time", false]], "curl() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.curl", false]], "current_dir (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.CURRENT_DIR", false]], "current_dir (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.CURRENT_DIR", false]], "current_dir (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.CURRENT_DIR", false]], "delete() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete", false]], "delete_alias() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_alias", false]], "delete_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_aliases", false]], "delete_all_guids() (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.delete_all_guids", false]], "delete_file() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.delete_file", false]], "delete_file_locations() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.delete_file_locations", false]], "delete_index_key_path() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_index_key_path", false]], "delete_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_node", false]], "delete_nodes() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_nodes", false]], "delete_object() (gen3.object.gen3object method)": [[6, "gen3.object.Gen3Object.delete_object", false]], "delete_program() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_program", false]], "delete_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_project", false]], "delete_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.delete_record", false]], "delete_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_record", false]], "delete_records() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_records", false]], "download() (gen3.tools.download.drs_download.downloadable method)": [[10, "gen3.tools.download.drs_download.Downloadable.download", false]], "download() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.download", false]], "download() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.download", false]], "download_files_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.download_files_in_drs_manifest", false]], "download_single() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.download_single", false]], "download_url() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.download_url", false]], "downloadable (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.Downloadable", false]], "downloadmanager (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.DownloadManager", false]], "downloadstatus (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.DownloadStatus", false]], "end_time (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.end_time", false]], "endpoint (gen3.metadata.gen3metadata attribute)": [[5, "gen3.metadata.Gen3Metadata.endpoint", false]], "export_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.export_node", false]], "export_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.export_record", false]], "file_name (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.file_name", false]], "file_name (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.file_name", false]], "file_size (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.file_size", false]], "file_size (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.file_size", false]], "gen3.tools": [[9, "module-gen3.tools", false]], "gen3.tools.download.drs_download": [[10, "module-gen3.tools.download.drs_download", false]], "gen3.tools.indexing.download_manifest": [[11, "module-gen3.tools.indexing.download_manifest", false]], "gen3.tools.indexing.index_manifest": [[11, "module-gen3.tools.indexing.index_manifest", false]], "gen3.tools.indexing.verify_manifest": [[11, "module-gen3.tools.indexing.verify_manifest", false]], "gen3.tools.metadata.ingest_manifest": [[12, "module-gen3.tools.metadata.ingest_manifest", false]], "gen3auth (class in gen3.auth)": [[0, "gen3.auth.Gen3Auth", false]], "gen3file (class in gen3.file)": [[1, "gen3.file.Gen3File", false]], "gen3index (class in gen3.index)": [[3, "gen3.index.Gen3Index", false]], "gen3jobs (class in gen3.jobs)": [[4, "gen3.jobs.Gen3Jobs", false]], "gen3metadata (class in gen3.metadata)": [[5, "gen3.metadata.Gen3Metadata", false]], "gen3object (class in gen3.object)": [[6, "gen3.object.Gen3Object", false]], "gen3query (class in gen3.query)": [[7, "gen3.query.Gen3Query", false]], "gen3submission (class in gen3.submission)": [[8, "gen3.submission.Gen3Submission", false]], "gen3wsstorage (class in gen3.wss)": [[13, "gen3.wss.Gen3WsStorage", false]], "get() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get", false]], "get() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get", false]], "get_access_token() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.get_access_token", false]], "get_access_token_from_wts() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.get_access_token_from_wts", false]], "get_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_aliases", false]], "get_all_records() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_all_records", false]], "get_dictionary_all() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_dictionary_all", false]], "get_dictionary_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_dictionary_node", false]], "get_fresh_token() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.get_fresh_token", false]], "get_graphql_schema() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_graphql_schema", false]], "get_guids_prefix() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_guids_prefix", false]], "get_index_key_paths() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_index_key_paths", false]], "get_latest_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_latest_version", false]], "get_output() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_output", false]], "get_presigned_url() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.get_presigned_url", false]], "get_programs() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_programs", false]], "get_project_dictionary() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_project_dictionary", false]], "get_project_manifest() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_project_manifest", false]], "get_projects() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_projects", false]], "get_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_record", false]], "get_record_doc() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_record_doc", false]], "get_records() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_records", false]], "get_records_on_page() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_records_on_page", false]], "get_stats() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_stats", false]], "get_status() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_status", false]], "get_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_urls", false]], "get_valid_guids() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_valid_guids", false]], "get_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_version", false]], "get_version() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_version", false]], "get_version() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_version", false]], "get_versions() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_versions", false]], "get_with_params() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_with_params", false]], "graphql_query() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.graphql_query", false]], "guid (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.GUID", false]], "guid_type_for_indexed_file_object (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.GUID_TYPE_FOR_INDEXED_FILE_OBJECT", false]], "guid_type_for_non_indexed_file_object (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.GUID_TYPE_FOR_NON_INDEXED_FILE_OBJECT", false]], "hostname (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.hostname", false]], "index_object_manifest() (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.index_object_manifest", false]], "indexd_record_page_size (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.INDEXD_RECORD_PAGE_SIZE", false]], "is_healthy() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.is_healthy", false]], "is_healthy() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.is_healthy", false]], "is_healthy() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.is_healthy", false]], "list_access_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_access_in_drs_manifest", false]], "list_drs_object() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_drs_object", false]], "list_files_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_files_in_drs_manifest", false]], "list_jobs() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.list_jobs", false]], "load() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.load", false]], "load_manifest() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.load_manifest", false]], "ls() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.ls", false]], "ls_path() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.ls_path", false]], "manifest (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.Manifest", false]], "max_concurrent_requests (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.MAX_CONCURRENT_REQUESTS", false]], "max_concurrent_requests (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.MAX_CONCURRENT_REQUESTS", false]], "max_concurrent_requests (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.MAX_CONCURRENT_REQUESTS", false]], "md5 (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.MD5", false]], "md5sum (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.md5sum", false]], "module": [[9, "module-gen3.tools", false], [10, "module-gen3.tools.download.drs_download", false], [11, "module-gen3.tools.indexing.download_manifest", false], [11, "module-gen3.tools.indexing.index_manifest", false], [11, "module-gen3.tools.indexing.verify_manifest", false], [12, "module-gen3.tools.metadata.ingest_manifest", false]], "object_id (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.object_id", false]], "object_id (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.object_id", false]], "object_type (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.object_type", false]], "open_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.open_project", false]], "pprint() (gen3.tools.download.drs_download.downloadable method)": [[10, "gen3.tools.download.drs_download.Downloadable.pprint", false]], "prev_guid (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.PREV_GUID", false]], "query() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.query", false]], "query() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.query", false]], "query() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.query", false]], "query_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.query_urls", false]], "raw_data_download() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.raw_data_download", false]], "refresh_access_token() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.refresh_access_token", false]], "resolve_objects() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.resolve_objects", false]], "rm() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.rm", false]], "rm_path() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.rm_path", false]], "size (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.SIZE", false]], "start_time (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.start_time", false]], "status (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.status", false]], "submit_file() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.submit_file", false]], "submit_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.submit_record", false]], "threadcontrol (class in gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.ThreadControl", false]], "tmp_folder (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.TMP_FOLDER", false]], "update() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.update", false]], "update_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.update_aliases", false]], "update_blank() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.update_blank", false]], "update_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.update_record", false]], "updated_time (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.updated_time", false]], "upload() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.upload", false]], "upload_file() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.upload_file", false]], "upload_file_to_guid() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.upload_file_to_guid", false]], "upload_url() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.upload_url", false]], "urls (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.URLS", false]], "user_access() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.user_access", false]]}, "objects": {"gen3": [[9, 3, 0, "-", "tools"]], "gen3.auth": [[0, 0, 1, "", "Gen3Auth"]], "gen3.auth.Gen3Auth": [[0, 1, 1, "", "curl"], [0, 1, 1, "", "get_access_token"], [0, 1, 1, "", "get_access_token_from_wts"], [0, 1, 1, "", "refresh_access_token"]], "gen3.file": [[1, 0, 1, "", "Gen3File"]], "gen3.file.Gen3File": [[1, 1, 1, "", "delete_file"], [1, 1, 1, "", "delete_file_locations"], [1, 1, 1, "", "download_single"], [1, 1, 1, "", "get_presigned_url"], [1, 1, 1, "", "upload_file"], [1, 1, 1, "", "upload_file_to_guid"]], "gen3.index": [[3, 0, 1, "", "Gen3Index"]], "gen3.index.Gen3Index": [[3, 1, 1, "", "async_create_record"], [3, 1, 1, "", "async_get_record"], [3, 1, 1, "", "async_get_records_from_checksum"], [3, 1, 1, "", "async_get_records_on_page"], [3, 1, 1, "", "async_get_with_params"], [3, 1, 1, "", "async_query_urls"], [3, 1, 1, "", "async_update_record"], [3, 1, 1, "", "create_blank"], [3, 1, 1, "", "create_new_version"], [3, 1, 1, "", "create_record"], [3, 1, 1, "", "delete_record"], [3, 1, 1, "", "get"], [3, 1, 1, "", "get_all_records"], [3, 1, 1, "", "get_guids_prefix"], [3, 1, 1, "", "get_latest_version"], [3, 1, 1, "", "get_record"], [3, 1, 1, "", "get_record_doc"], [3, 1, 1, "", "get_records"], [3, 1, 1, "", "get_records_on_page"], [3, 1, 1, "", "get_stats"], [3, 1, 1, "", "get_urls"], [3, 1, 1, "", "get_valid_guids"], [3, 1, 1, "", "get_version"], [3, 1, 1, "", "get_versions"], [3, 1, 1, "", "get_with_params"], [3, 1, 1, "", "is_healthy"], [3, 1, 1, "", "query_urls"], [3, 1, 1, "", "update_blank"], [3, 1, 1, "", "update_record"]], "gen3.jobs": [[4, 0, 1, "", "Gen3Jobs"]], "gen3.jobs.Gen3Jobs": [[4, 1, 1, "", "async_run_job_and_wait"], [4, 1, 1, "", "create_job"], [4, 1, 1, "", "get_output"], [4, 1, 1, "", "get_status"], [4, 1, 1, "", "get_version"], [4, 1, 1, "", "is_healthy"], [4, 1, 1, "", "list_jobs"]], "gen3.metadata": [[5, 0, 1, "", "Gen3Metadata"]], "gen3.metadata.Gen3Metadata": [[5, 1, 1, "", "async_create"], [5, 1, 1, "", "async_create_aliases"], [5, 1, 1, "", "async_delete_alias"], [5, 1, 1, "", "async_delete_aliases"], [5, 1, 1, "", "async_get"], [5, 1, 1, "", "async_get_aliases"], [5, 1, 1, "", "async_update"], [5, 1, 1, "", "async_update_aliases"], [5, 2, 1, "", "auth_provider"], [5, 1, 1, "", "batch_create"], [5, 1, 1, "", "create"], [5, 1, 1, "", "create_aliases"], [5, 1, 1, "", "create_index_key_path"], [5, 1, 1, "", "delete"], [5, 1, 1, "", "delete_alias"], [5, 1, 1, "", "delete_aliases"], [5, 1, 1, "", "delete_index_key_path"], [5, 2, 1, "", "endpoint"], [5, 1, 1, "", "get"], [5, 1, 1, "", "get_aliases"], [5, 1, 1, "", "get_index_key_paths"], [5, 1, 1, "", "get_version"], [5, 1, 1, "", "is_healthy"], [5, 1, 1, "", "query"], [5, 1, 1, "", "update"], [5, 1, 1, "", "update_aliases"]], "gen3.object": [[6, 0, 1, "", "Gen3Object"]], "gen3.object.Gen3Object": [[6, 1, 1, "", "delete_object"]], "gen3.query": [[7, 0, 1, "", "Gen3Query"]], "gen3.query.Gen3Query": [[7, 1, 1, "", "graphql_query"], [7, 1, 1, "", "query"], [7, 1, 1, "", "raw_data_download"]], "gen3.submission": [[8, 0, 1, "", "Gen3Submission"]], "gen3.submission.Gen3Submission": [[8, 1, 1, "", "create_program"], [8, 1, 1, "", "create_project"], [8, 1, 1, "", "delete_node"], [8, 1, 1, "", "delete_nodes"], [8, 1, 1, "", "delete_program"], [8, 1, 1, "", "delete_project"], [8, 1, 1, "", "delete_record"], [8, 1, 1, "", "delete_records"], [8, 1, 1, "", "export_node"], [8, 1, 1, "", "export_record"], [8, 1, 1, "", "get_dictionary_all"], [8, 1, 1, "", "get_dictionary_node"], [8, 1, 1, "", "get_graphql_schema"], [8, 1, 1, "", "get_programs"], [8, 1, 1, "", "get_project_dictionary"], [8, 1, 1, "", "get_project_manifest"], [8, 1, 1, "", "get_projects"], [8, 1, 1, "", "open_project"], [8, 1, 1, "", "query"], [8, 1, 1, "", "submit_file"], [8, 1, 1, "", "submit_record"]], "gen3.tools.download": [[10, 3, 0, "-", "drs_download"]], "gen3.tools.download.drs_download": [[10, 0, 1, "", "DownloadManager"], [10, 0, 1, "", "DownloadStatus"], [10, 0, 1, "", "Downloadable"], [10, 0, 1, "", "Manifest"], [10, 4, 1, "", "download_files_in_drs_manifest"], [10, 4, 1, "", "list_access_in_drs_manifest"], [10, 4, 1, "", "list_drs_object"], [10, 4, 1, "", "list_files_in_drs_manifest"]], "gen3.tools.download.drs_download.DownloadManager": [[10, 1, 1, "", "cache_hosts_wts_tokens"], [10, 1, 1, "", "download"], [10, 1, 1, "", "get_fresh_token"], [10, 1, 1, "", "resolve_objects"], [10, 1, 1, "", "user_access"]], "gen3.tools.download.drs_download.DownloadStatus": [[10, 2, 1, "", "end_time"], [10, 2, 1, "", "start_time"], [10, 2, 1, "", "status"]], "gen3.tools.download.drs_download.Downloadable": [[10, 2, 1, "", "_manager"], [10, 2, 1, "", "access_methods"], [10, 2, 1, "", "children"], [10, 2, 1, "", "created_time"], [10, 1, 1, "", "download"], [10, 2, 1, "", "file_name"], [10, 2, 1, "", "file_size"], [10, 2, 1, "", "hostname"], [10, 2, 1, "", "object_id"], [10, 2, 1, "", "object_type"], [10, 1, 1, "", "pprint"], [10, 2, 1, "", "updated_time"]], "gen3.tools.download.drs_download.Manifest": [[10, 2, 1, "", "commons_url"], [10, 1, 1, "", "create_object_list"], [10, 2, 1, "", "file_name"], [10, 2, 1, "", "file_size"], [10, 1, 1, "", "load"], [10, 1, 1, "", "load_manifest"], [10, 2, 1, "", "md5sum"], [10, 2, 1, "", "object_id"]], "gen3.tools.indexing": [[11, 3, 0, "-", "download_manifest"], [11, 3, 0, "-", "index_manifest"], [11, 3, 0, "-", "verify_manifest"]], "gen3.tools.indexing.download_manifest": [[11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "INDEXD_RECORD_PAGE_SIZE"], [11, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [11, 2, 1, "", "TMP_FOLDER"], [11, 4, 1, "", "async_download_object_manifest"]], "gen3.tools.indexing.index_manifest": [[11, 2, 1, "", "ACLS"], [11, 2, 1, "", "AUTHZ"], [11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "GUID"], [11, 2, 1, "", "MD5"], [11, 2, 1, "", "PREV_GUID"], [11, 2, 1, "", "SIZE"], [11, 0, 1, "", "ThreadControl"], [11, 2, 1, "", "URLS"], [11, 4, 1, "", "delete_all_guids"], [11, 4, 1, "", "index_object_manifest"]], "gen3.tools.indexing.verify_manifest": [[11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [11, 4, 1, "", "async_verify_object_manifest"]], "gen3.tools.metadata": [[12, 3, 0, "-", "ingest_manifest"]], "gen3.tools.metadata.ingest_manifest": [[12, 2, 1, "", "COLUMN_TO_USE_AS_GUID"], [12, 2, 1, "", "GUID_TYPE_FOR_INDEXED_FILE_OBJECT"], [12, 2, 1, "", "GUID_TYPE_FOR_NON_INDEXED_FILE_OBJECT"], [12, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [12, 4, 1, "", "async_ingest_metadata_manifest"], [12, 4, 1, "", "async_query_urls_from_indexd"]], "gen3.wss": [[13, 0, 1, "", "Gen3WsStorage"]], "gen3.wss.Gen3WsStorage": [[13, 1, 1, "", "copy"], [13, 1, 1, "", "download"], [13, 1, 1, "", "download_url"], [13, 1, 1, "", "ls"], [13, 1, 1, "", "ls_path"], [13, 1, 1, "", "rm"], [13, 1, 1, "", "rm_path"], [13, 1, 1, "", "upload"], [13, 1, 1, "", "upload_url"]]}, "objnames": {"0": ["py", "class", "Python class"], "1": ["py", "method", "Python method"], "2": ["py", "attribute", "Python attribute"], "3": ["py", "module", "Python module"], "4": ["py", "function", "Python function"]}, "objtypes": {"0": "py:class", "1": "py:method", "2": "py:attribute", "3": "py:module", "4": "py:function"}, "terms": {"": [1, 4, 8, 10, 11], "0": [5, 7, 8, 11], "0046513": [], "0185335": [], "0304558": 12, "052073": [], "0576868": [], "058966": [], "064572": [], "07464": [], "0790412": [], "0a80fada010c": 11, "0a80fada096c": 11, "0a80fada097c": 11, "0a80fada098c": 11, "0a80fada099c": 11, "1": [4, 5, 8, 10, 11], "10": [5, 7, 11], "100": [8, 11], "1069167": [], "1187842": [], "11e9": 11, "1344793": [], "1676264": [], "1713542306": [], "1713542765": [], "1713543033": [], "1713543225": [], "1713543506": [], "1713543956": [], "1713544131": [], "1713544132": [], "1713544397": [], "1713544598": [], "1713545857": [], "1713545858": [], "1713549370": [], "1713549689": [], "1713550571": [], "1713557245": [], "1713559376": [], "1713560080": [], "1713560402": [], "1713560403": [], "1713561061": [], "1713562690": [], "1717169008": [], "1717170449": [], "1717171842": [], "1717171843": [], "1717172360": [], "1717172577": [], "1717172773": [], "1717175781": [], "1717175782": [], "1717176836": [], "1717177456": 11, "1717177457": 12, "1731803": [], "1771936": [], "1913438": [], "1922355": [], "2": [5, 11], "2184267": [], "24": [11, 12], "255e396f": 11, "2877355": [], "2930224": [], "2995": [], "3": [5, 11], "30": 8, "3041446": [], "3102272": [], "33": 5, "333": 5, "343434344": 11, "363455714": 11, "3935378": [], "4": [5, 11], "4017086": [], "4052968": [], "4090197": [], "427549": [], "4463434": [], "450c": 11, "4632835": [], "4649727": [], "4714": 8, "473d83400bc1bc9dc635e334fadd433c": 11, "473d83400bc1bc9dc635e334faddd33c": 11, "473d83400bc1bc9dc635e334fadde33c": 11, "473d83400bc1bc9dc635e334faddf33c": 11, "4752307": [], "4756553": [], "5": [0, 5], "50": 7, "517729": [], "5202463": [], "543434443": 11, "5669184": [], "568308": [], "573305": [], "5899982": [], "639124": [], "6692646": [], "6739478": [], "674552": [], "679862": 11, "6f90": 8, "700799": [], "7232893": [], "756255": [], "760149": [], "7841465": [], "7d3d8d2083b4": 11, "8044841": [], "8375325": [], "8420": 8, "8630717": [], "8874054": [], "8882551": [], "9236414": [], "9306026": [], "93d9af72": 11, "9a07": 11, "A": [1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "AND": 5, "Be": 1, "But": 5, "By": 11, "For": [1, 5, 6, 7, 8, 9, 11], "IF": 11, "If": [0, 1, 7, 11, 12], "In": 10, "It": 10, "NOT": 12, "OR": 5, "One": 7, "Such": 9, "THE": 11, "That": 3, "The": [0, 1, 2, 3, 5, 8, 10, 11], "There": 11, "These": 9, "To": 11, "Will": [4, 7, 10], "_get_acl_from_row": 11, "_get_authz_from_row": 11, "_get_file_name_from_row": 11, "_get_file_size_from_row": 11, "_get_guid_for_row": 12, "_get_guid_from_row": 11, "_get_md5_from_row": 11, "_get_urls_from_row": 11, "_guid_typ": 12, "_manag": [2, 9, 10], "_query_for_associated_indexd_record_guid": 12, "_ssl": [3, 4, 5], "a5c6": 11, "ab167e49d25b488939b1ede42752458b": 3, "about": [2, 3], "abov": 11, "access": [0, 1, 3, 7, 10], "access_method": [2, 9, 10], "access_token": 0, "accesstoken": 0, "acl": [2, 3, 9, 11], "across": 11, "act": 0, "action": [9, 11], "actual": 11, "ad": 3, "add": [3, 5], "addit": [3, 5, 10, 11], "admin": [5, 11], "admin_endpoint_suffix": 5, "after": 10, "against": [3, 7, 8, 11, 12], "algorithm": 3, "alia": [3, 5], "alias": 5, "aliv": 7, "all": [1, 3, 4, 5, 6, 7, 8, 10, 11, 12], "allow": [0, 6, 8, 10, 11, 12], "allowed_data_upload_bucket": 1, "along": 2, "alreadi": 9, "also": 1, "altern": [5, 11], "alwai": 5, "ammount": 12, "amount": [1, 9], "an": [0, 3, 6, 8, 10, 11], "ani": [0, 5, 10, 11], "anoth": 5, "api": [0, 5, 8, 11], "api_kei": 11, "appli": 7, "appropri": 13, "ar": [5, 7, 8, 9, 10, 11], "arbitrari": 0, "argument": [0, 13], "arrai": 8, "asc": 7, "assign": 9, "assist": 10, "associ": [3, 5], "assum": 11, "async": [3, 4, 5, 9, 11, 12], "async_cr": [2, 5], "async_create_alias": [2, 5], "async_create_record": [2, 3], "async_delete_alia": [2, 5], "async_delete_alias": [2, 5], "async_download_object_manifest": [2, 9, 11], "async_get": [2, 5], "async_get_alias": [2, 5], "async_get_record": [2, 3], "async_get_records_from_checksum": [2, 3], "async_get_records_on_pag": [2, 3], "async_get_with_param": [2, 3], "async_ingest_metadata_manifest": [2, 9, 12], "async_query_url": [2, 3], "async_query_urls_from_indexd": [2, 9, 12], "async_run_job_and_wait": [2, 4], "async_upd": [2, 5], "async_update_alias": [2, 5], "async_update_record": [2, 3], "async_verify_object_manifest": [2, 9, 11], "asynchron": [3, 4, 5], "asyncio": [11, 12], "asyncron": 5, "attach": [3, 5], "attempt": 11, "attribut": [10, 11], "auth": [1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "auth_provid": [1, 2, 3, 4, 5, 6, 7, 8, 13], "authbas": 0, "authent": 0, "author": 1, "authz": [0, 1, 2, 3, 9, 10, 11], "auto": [0, 2], "automat": 0, "avail": [1, 2, 10, 11], "az": 1, "b": [5, 11], "b0f1": 11, "bar": 10, "base": [0, 1, 3, 4, 5, 6, 7, 8, 9, 11, 13], "baseid": 3, "basic": [3, 11, 12], "batch_creat": [2, 5], "batch_siz": 8, "behalf": 0, "behavior": 11, "being": 3, "belong": 8, "below": 11, "blank": 3, "blob": [5, 7], "bodi": 3, "bool": [4, 5, 8, 10, 11, 12], "boolean": 3, "bownload": 10, "broad": 9, "broken": 9, "bucket": [1, 6], "bundl": 10, "byte": 10, "c": [5, 11], "cach": 10, "cache_hosts_wts_token": [2, 9, 10], "call": [10, 13], "can": [0, 3, 4, 8, 11, 12], "capabl": 9, "case": [0, 10], "categori": 9, "ccle": 8, "ccle_one_record": 8, "ccle_sample_nod": 8, "cdi": 7, "chang": [3, 11], "checksum": [3, 10], "checksum_typ": 3, "child": 10, "children": [2, 9, 10], "chunk_siz": 8, "class": [0, 2, 10, 11, 13], "cli": 10, "client": [0, 3], "client_credenti": 0, "client_id": 0, "client_scop": 0, "client_secret": 0, "code": [2, 8], "column": [11, 12], "column_to_use_as_guid": [2, 9, 12], "columna": 11, "columnb": 11, "columnc": 11, "com": 7, "comma": 11, "command": [10, 11], "common": [0, 1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13], "commons_url": [2, 9, 10, 11, 12], "complet": [4, 11], "complex": 7, "concat": 11, "concurr": [11, 12], "configur": 1, "connect": 12, "consist": 3, "constructor": 0, "contain": [0, 2, 5, 8, 9, 10, 11, 12], "content": [3, 13], "content_created_d": 3, "content_updated_d": 3, "continu": 10, "control": 3, "conveni": 10, "copi": [2, 13], "coroutin": 11, "correspond": 3, "count": 3, "crdc": 0, "creat": [2, 3, 4, 5, 6, 8, 10, 11], "create_alias": [2, 5], "create_blank": [2, 3], "create_index_key_path": [2, 5], "create_job": [2, 4], "create_new_vers": [2, 3], "create_object_list": [2, 9, 10], "create_program": [2, 8], "create_project": [2, 8], "create_record": [2, 3], "created_tim": [2, 9, 10], "creation": [3, 11], "cred": 3, "credenti": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "csv": [8, 11, 12], "curl": [0, 2], "current": [6, 8, 10], "current_dir": [2, 9, 11], "custom": 11, "d": 5, "d70b41b9": 8, "data": [0, 1, 3, 5, 7, 8, 10, 11], "data_spreadsheet": 8, "data_typ": 7, "data_upload_bucket": 1, "dataa": 11, "datab": 11, "databas": 5, "datacommon": 0, "datafil": 10, "datamanag": 10, "date": 3, "datetim": [1, 3, 10], "dbgap": 12, "dcf": 8, "def": 11, "default": [0, 1, 3, 7, 8, 11, 12], "defin": [5, 8, 10], "delai": 4, "delet": [0, 1, 2, 3, 5, 6, 8, 10, 11], "delete_alia": [2, 5], "delete_alias": [2, 5], "delete_all_guid": [2, 9, 11], "delete_fil": [1, 2], "delete_file_loc": [1, 2, 6], "delete_index_key_path": [2, 5], "delete_nod": [2, 8], "delete_object": [2, 6], "delete_program": [2, 8], "delete_project": [2, 8], "delete_record": [2, 3, 8], "delete_unpacked_packag": 10, "delimet": [11, 12], "delimit": 11, "demograph": 8, "deprec": 1, "descript": [3, 5], "desir": 11, "dest_path": 13, "dest_urlstr": 13, "dest_w": 13, "dest_wskei": 13, "detail": [2, 7, 10], "determin": [10, 11, 12], "dev": 11, "dict": [3, 4, 5, 10, 11, 12], "dictionari": [3, 4, 5, 7, 8], "did": 3, "differ": 5, "direct": 0, "directori": [10, 11], "disabl": 10, "discoveri": 10, "disk": 13, "dispatch": 4, "dist_resolut": 3, "distribut": 3, "doc": [7, 10], "docstr": 2, "document": [1, 3], "doe": [0, 12], "domain": [11, 12], "done": 4, "download": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 13], "download_files_in_drs_manifest": [2, 9, 10], "download_list": 10, "download_manifest": 11, "download_singl": [1, 2], "download_url": [2, 13], "downloadmanag": [2, 9, 10], "downloadstatu": [2, 9, 10], "dr": [2, 9], "drs_download": 10, "drs_hostnam": 10, "drsdownload": 10, "drsobjecttyp": 10, "e": [5, 10], "e043ab8b77b9": 8, "each": [3, 8, 10, 11], "effici": 9, "eg": 3, "either": 8, "elasticsearch": 7, "els": [0, 12], "elsewher": 12, "empti": [8, 11], "enabl": 11, "end": [5, 10], "end_tim": [2, 9, 10], "endpoint": [0, 1, 2, 3, 4, 5, 7, 8, 13], "entir": 8, "entri": [3, 11], "env": 0, "environ": 0, "equal": 7, "error": [10, 11, 12], "error_nam": 11, "etc": 8, "even": 11, "everi": [9, 11], "everyth": 11, "ex": [0, 11, 12], "exampl": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "exclud": 3, "execut": [7, 8, 11], "exist": [1, 3, 5, 6, 9, 12], "expect": [5, 9, 11], "experi": 8, "expir": [0, 1], "expires_in": 1, "export": [8, 10], "export_nod": [2, 8], "export_record": [2, 8], "f1f8": 11, "factori": 10, "fail": [8, 10], "fals": [3, 5, 6, 10, 11], "featur": [1, 6], "fenc": [0, 1], "fetch": 0, "field": [3, 5, 7, 11, 12], "fieldnam": 11, "file": [0, 2, 3, 4, 8, 9, 10, 11, 12, 13], "file_nam": [1, 2, 3, 9, 10, 11], "file_s": [2, 9, 10, 11], "file_st": 3, "fileformat": 8, "filenam": [0, 8, 10, 11, 12], "files": 10, "fill": 12, "filter": [5, 7], "filter_object": 7, "first": [7, 8], "flag": 11, "folder": 11, "follow": [0, 11], "forc": 11, "force_metadata_columns_even_if_empti": 11, "form": 13, "format": [3, 5, 8, 11], "from": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13], "func_to_parse_row": [11, 12], "function": [2, 3, 4, 5, 9, 10, 11, 12], "g": 10, "gen3": [10, 11, 12], "gen3_api_kei": 0, "gen3_oidc_client_creds_secret": 0, "gen3auth": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "gen3fil": [1, 2], "gen3index": [2, 3], "gen3job": [2, 4, 10], "gen3metadata": [2, 5], "gen3object": [2, 6], "gen3queri": [2, 7], "gen3submiss": [2, 8], "gen3wsstorag": [2, 13], "gener": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 13], "get": [0, 1, 2, 3, 4, 5, 8, 10, 11, 12, 13], "get_access_token": [0, 2], "get_access_token_from_wt": [0, 2], "get_alias": [2, 5], "get_all_record": [2, 3], "get_dictionary_al": [2, 8], "get_dictionary_nod": [2, 8], "get_fresh_token": [2, 9, 10], "get_graphql_schema": [2, 8], "get_guid_from_fil": 12, "get_guids_prefix": [2, 3], "get_index_key_path": [2, 5], "get_latest_vers": [2, 3], "get_output": [2, 4], "get_presigned_url": [1, 2], "get_program": [2, 8], "get_project": [2, 8], "get_project_dictionari": [2, 8], "get_project_manifest": [2, 8], "get_record": [2, 3], "get_record_doc": [2, 3], "get_records_on_pag": [2, 3], "get_stat": [2, 3], "get_statu": [2, 4], "get_url": [2, 3], "get_valid_guid": [2, 3], "get_vers": [2, 3, 4, 5], "get_with_param": [2, 3], "giangb": 11, "github": [2, 7], "give": 1, "given": [0, 3, 4, 5, 8, 10, 12, 13], "global": [4, 5], "good": 3, "grant": 0, "graph": 8, "graphql": [7, 8], "graphql_queri": [2, 7], "group": 3, "guid": [1, 2, 3, 5, 6, 9, 11, 12], "guid_exampl": 11, "guid_for_row": 12, "guid_from_fil": 12, "guid_type_for_indexed_file_object": [2, 9, 12], "guid_type_for_non_indexed_file_object": [2, 9, 12], "guppi": 7, "ha": [0, 11], "handl": [3, 10], "hardcod": 0, "has_vers": 3, "hash": [3, 11], "hash_typ": 3, "have": [5, 11], "header": 11, "healthi": [3, 4, 5], "help": 11, "helper": 2, "hit": 11, "host": 10, "hostnam": [2, 9, 10], "how": [8, 11], "howto": 10, "http": [0, 7, 11, 12], "i": [0, 1, 2, 3, 4, 5, 8, 10, 11, 12], "id": [0, 1, 3, 5, 10, 11], "idea": 3, "identifi": [3, 5, 9, 11], "idp": 0, "illustr": 11, "immut": 3, "implement": 0, "implic": 11, "import": 11, "includ": [0, 3], "indent": 10, "index": [0, 2, 5, 9], "index_manifest": 11, "index_object_manifest": [2, 9, 11], "indexd": [1, 3, 6, 10, 11, 12], "indexd_field": [11, 12], "indexd_record_page_s": [2, 9, 11], "indexed_file_object_guid": 12, "indic": [0, 11], "infil": 10, "info": [3, 11], "inform": [2, 3, 10], "ingest": [2, 9], "ingest_manifest": 12, "initi": [0, 10], "input": [4, 10, 11], "input_manifest": 11, "instal": [0, 2, 11], "instanc": [1, 3, 6, 7, 8, 9, 10], "instead": [1, 7, 11], "int": [1, 3, 5, 7, 8, 10, 11, 12], "integ": [1, 3, 8], "intend": 0, "interact": [1, 3, 4, 5, 6, 8, 13], "interest": 10, "interpret": 0, "introspect": 8, "involv": 9, "is_healthi": [2, 3, 4, 5], "is_indexed_file_object": 12, "isn": 1, "issu": 0, "its": [1, 3], "job": 2, "job_id": 4, "job_input": 4, "job_nam": 4, "json": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "just": [5, 11, 12], "jwt": 0, "kei": [0, 3, 5, 13], "know": 11, "known": 10, "kwarg": [3, 4, 5], "l": [2, 13], "larg": 9, "last": 10, "latest": 3, "least": 3, "level": 6, "librari": 11, "like": [3, 5, 9, 11, 12], "limit": [1, 3, 5, 12], "linear": 4, "linux": 10, "list": [0, 1, 3, 4, 5, 7, 8, 10, 11, 13], "list_access_in_drs_manifest": [2, 9, 10], "list_drs_object": [2, 9, 10], "list_files_in_drs_manifest": [2, 9, 10], "list_job": [2, 4], "live": [11, 12], "load": [2, 9, 10], "load_manifest": [2, 9, 10], "local": [0, 13], "locat": [1, 6], "lock": 12, "log": [8, 10, 11, 12], "logic": [5, 12], "loop": 11, "ls_path": [2, 13], "maco": 11, "made": 3, "mai": [0, 9, 11], "main": 10, "make": [9, 11], "manag": [1, 5, 10], "mani": [8, 11], "manifest": [2, 8, 9, 10, 11, 12], "manifest_1": 10, "manifest_fil": [11, 12], "manifest_file_delimit": [11, 12], "manifest_row_pars": [11, 12], "map": [0, 11], "mark": 8, "master": 7, "match": [3, 5, 12], "max": 5, "max_concurrent_request": [2, 9, 11, 12], "max_presigned_url_ttl": 1, "max_tri": 8, "maximum": [11, 12], "md": [5, 7, 10, 12], "md5": [2, 3, 9, 11], "md5_hash": 11, "md5sum": [2, 9, 10], "mean": 8, "mechan": 3, "merg": 5, "metadata": [2, 3, 6, 9, 11], "metadata_list": 5, "metadata_sourc": 12, "metadata_typ": 12, "metdata": 12, "method": [1, 7, 10], "minimum": 10, "minut": 0, "mode": 7, "modul": [2, 10, 11], "more": [2, 5, 7, 9, 10], "most": 9, "mostli": 2, "multipl": [8, 11], "must": [1, 5], "my_common": 10, "my_credenti": 10, "my_field": 7, "my_index": 7, "my_program": 7, "my_project": 7, "name": [3, 4, 8, 10, 11, 12, 13], "namespac": [0, 12], "necessari": [3, 5], "need": [3, 7, 10, 11], "nest": 5, "net": 11, "never": 0, "new": [0, 3], "node": 8, "node_nam": 8, "node_typ": 8, "none": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "note": [0, 3, 11, 12], "noth": [3, 6], "now": [1, 8], "num": 5, "num_process": 11, "num_total_fil": 11, "number": [3, 7, 8, 11, 12], "o": 0, "object": [1, 2, 3, 4, 5, 7, 8, 9, 10, 11, 13], "object_id": [1, 2, 9, 10], "object_list": 10, "object_typ": [2, 9, 10], "objectid": 10, "obtain": [0, 10], "occur": 10, "off": 5, "offset": [5, 7], "oidc": 0, "old": 3, "one": [3, 5, 10, 11], "onli": [3, 5, 7, 8, 10, 11], "open": [8, 10, 11], "open_project": [2, 8], "openid": 0, "opt": 0, "option": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11], "order": [0, 8], "ordered_node_list": 8, "org": 10, "otherwis": 10, "output": [4, 5, 11, 12], "output_dir": 10, "output_filenam": [11, 12], "overrid": [0, 11, 12], "overwrit": 5, "own": 0, "packag": 10, "page": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 13], "pagin": 3, "parallel": 11, "param": [3, 5, 8, 10], "paramet": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "pars": [10, 11, 12, 13], "parser": [11, 12], "particular": 0, "pass": [0, 7, 8, 10], "password": [11, 12], "path": [0, 1, 5, 10, 11, 13], "path_to_manifest": 11, "pattern": [3, 12], "pdcdatastor": 11, "pend": 10, "per": [11, 12], "peregrin": 8, "permiss": 10, "persist": 9, "phs0001": 11, "phs0002": 11, "pick": 1, "pla": 11, "place": 11, "planx": 11, "point": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "popul": [10, 12], "posit": [1, 7], "possibl": 10, "post": [0, 11], "pprint": [2, 9, 10], "prefix": 3, "presign": 1, "pretti": 10, "prev_guid": [2, 9, 11], "previou": [3, 11], "previous": 4, "print": [8, 10], "process": 11, "processed_fil": 11, "profil": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "program": [8, 11], "progress": [8, 10], "project": [8, 11], "project_id": [7, 8], "protocol": 1, "provid": [0, 1, 3, 5, 7, 8, 12], "public": [3, 5], "put": 0, "py": 11, "python": [2, 9, 11], "python3": 11, "python_subprocess_command": 11, "queri": [1, 2, 3, 5, 8, 11, 12], "query_str": 7, "query_txt": [7, 8], "query_url": [2, 3], "quickstart": 2, "rather": 0, "raw": [7, 11], "raw_data_download": [2, 7], "rbac": 3, "read": [3, 5, 11], "readm": 2, "reason": 10, "record": [1, 3, 5, 7, 8, 11, 12], "refresh": [0, 10], "refresh_access_token": [0, 2], "refresh_fil": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "refresh_token": 0, "regist": 8, "regular": 7, "relat": 9, "remov": [1, 6, 11, 13], "replac": 11, "replace_url": 11, "repo": 2, "repres": [3, 5, 10], "represent": [1, 3], "request": [0, 1, 3, 5, 8, 11, 12], "requir": 10, "resolv": 10, "resolve_object": [2, 9, 10], "respect": 7, "respons": [0, 1, 3, 4, 5], "result": [1, 8, 10, 11], "retri": 8, "retriev": [1, 8, 10, 12], "return": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11], "return_full_metadata": 5, "rev": 3, "revers": 8, "revis": 3, "right": 1, "rm": [2, 13], "rm_path": [2, 13], "root": [11, 12], "row": [7, 8, 11, 12], "row_offset": 8, "rtype": 3, "run": [8, 11], "s3": [1, 10, 11], "safe": 11, "same": [5, 11, 13], "sampl": [8, 10], "sandbox": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "save": 10, "save_directori": 10, "schema": 8, "scope": [0, 1], "screen": 8, "script": 2, "search": [0, 2, 3], "second": [1, 4], "secret": 0, "see": [7, 10, 11], "self": 10, "semaphon": 12, "semaphor": 12, "separ": [0, 11], "server": 10, "servic": [1, 3, 4, 5, 6, 8, 11, 12, 13], "service_loc": [3, 4, 5], "session": 11, "set": [0, 1, 5, 10], "setup": 2, "sheepdog": 8, "should": [0, 8, 11], "show": 10, "show_progress": 10, "shown": 11, "sign": 1, "signpost": 3, "similar": 10, "simpl": 3, "simpli": 11, "sinc": 3, "singl": [1, 5, 8], "size": [2, 3, 9, 10, 11], "skip": 8, "sleep": 4, "so": 11, "some": [0, 2], "someth": 11, "sort": 7, "sort_field": 7, "sort_object": 7, "sourc": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "space": [0, 11], "specif": [5, 8, 11, 12], "specifi": [0, 1, 3, 11, 13], "spreadsheet": 8, "src_path": 13, "src_urlstr": 13, "src_w": 13, "src_wskei": 13, "ssl": [3, 4, 5], "start": [3, 4, 7, 8, 10], "start_tim": [2, 9, 10], "static": 10, "statu": [2, 4, 9, 10], "storag": [1, 2, 6], "store": [1, 3, 10], "str": [0, 1, 3, 4, 5, 7, 8, 10, 11, 12], "string": [0, 3, 5, 11, 13], "strip": 11, "sub": 8, "subject": [7, 8], "submiss": 2, "submit": [8, 11], "submit_additional_metadata_column": 11, "submit_fil": [2, 8], "submit_record": [2, 8], "submitter_id": 7, "success": 10, "successfulli": 10, "suffici": 3, "suppli": 3, "support": [0, 1, 5, 8, 11], "sure": 1, "synchron": 11, "syntax": 7, "system": [6, 7, 8, 9], "t": [1, 5, 11], "tab": 11, "task": 9, "temporari": 11, "test": 11, "test1": 11, "test2": 11, "test3": 11, "test4": 11, "test5": 11, "text": [1, 7, 8], "than": [0, 5], "thei": [0, 10], "them": [10, 11], "thi": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "those": 11, "thread": 11, "thread_num": 11, "threadcontrol": [2, 9, 11], "through": [8, 11], "tier": 7, "time": [1, 3, 8, 10, 11], "timestamp": 10, "tmp_folder": [2, 9, 11], "token": [0, 10], "tool": 2, "total": 11, "treat": [1, 5], "tree": 10, "true": [3, 4, 5, 6, 7, 8, 10, 11, 12], "try": 0, "tsv": [8, 11, 12], "tupl": [0, 3, 11, 12], "type": [1, 3, 4, 5, 7, 8, 10, 11, 12], "typic": 10, "uc": 7, "unaccess": 7, "under": [0, 8, 13], "uniqu": [1, 5], "unknown": 10, "unpack": 10, "unpack_packag": 10, "until": [4, 10], "up": [5, 9], "updat": [2, 3, 5, 10, 11], "update_alias": [2, 5], "update_blank": [2, 3], "update_record": [2, 3], "updated_tim": [2, 9, 10], "upload": [1, 2, 3, 8, 13], "upload_fil": [1, 2], "upload_file_to_guid": [1, 2], "upload_url": [2, 13], "url": [1, 2, 3, 9, 10, 11, 12, 13], "urls_metadata": 3, "us": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "usag": 11, "use_agg_md": 5, "user": [0, 10, 12], "user_access": [2, 9, 10], "usual": 12, "utcnow": 1, "util": 9, "uuid": [1, 3, 8], "uuid1": 8, "uuid2": 8, "valid": [3, 7], "valu": [0, 1, 3, 5, 7, 10, 11], "value_from_indexd": 11, "value_from_manifest": 11, "variabl": [0, 7, 8], "variou": 2, "verbos": [7, 8], "verif": 11, "verifi": [2, 9], "verify_manifest": 11, "verify_object_manifest": 11, "version": [3, 4, 5], "vital_statu": 7, "w": 13, "wa": 0, "wai": 10, "wait": 4, "want": [0, 3, 8], "warn": 11, "we": [3, 11], "web": 0, "what": 5, "when": [0, 3, 7, 10, 12], "where": [0, 3, 5, 11, 12], "whether": [3, 4, 5, 8, 11, 12], "which": [8, 10], "while": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "whose": 5, "within": [0, 2, 9], "without": [3, 5], "won": 5, "work": [0, 10], "workaround": 11, "worksheet": 8, "workspac": [0, 2], "wrapper": 10, "write": 11, "ws_urlstr": 13, "wskei": 13, "wss": 13, "wt": [0, 10], "x": 11, "xlsx": 8, "you": [0, 3, 8, 11], "your": 0}, "titles": ["Gen3 Auth Helper", "Gen3 File Class", "Welcome to Gen3 SDK\u2019s documentation!", "Gen3 Index Class", "Gen3 Jobs Class", "Gen3 Metadata Class", "Gen3 Object Class", "Gen3 Query Class", "Gen3 Submission Class", "Gen3 Tools", "DRS Download Tools", "Indexing Tools", "Metadata Tools", "Gen3 Workspace Storage"], "titleterms": {"": 2, "auth": 0, "class": [1, 3, 4, 5, 6, 7, 8], "document": 2, "download": [10, 11], "dr": 10, "file": 1, "gen3": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 13], "helper": 0, "index": [3, 11], "indic": 2, "ingest": 12, "job": 4, "metadata": [5, 12], "object": 6, "queri": 7, "sdk": 2, "storag": 13, "submiss": 8, "tabl": 2, "tool": [9, 10, 11, 12], "verifi": 11, "welcom": 2, "workspac": 13}}) \ No newline at end of file +Search.setIndex({"alltitles": {"DRS Download Tools": [[10, "module-gen3.tools.download.drs_download"]], "Download": [[11, "module-gen3.tools.indexing.download_manifest"]], "Gen3 Auth Helper": [[0, "gen3-auth-helper"]], "Gen3 File Class": [[1, "gen3-file-class"]], "Gen3 Index Class": [[3, "gen3-index-class"]], "Gen3 Jobs Class": [[4, "gen3-jobs-class"]], "Gen3 Metadata Class": [[5, "gen3-metadata-class"]], "Gen3 Object Class": [[6, "gen3-object-class"]], "Gen3 Query Class": [[7, "gen3-query-class"]], "Gen3 Submission Class": [[8, "gen3-submission-class"]], "Gen3 Tools": [[9, "gen3-tools"]], "Gen3 Workspace Storage": [[13, "gen3-workspace-storage"]], "Index": [[11, "module-gen3.tools.indexing.index_manifest"]], "Indexing Tools": [[11, "indexing-tools"]], "Indices and tables": [[2, "indices-and-tables"]], "Ingest": [[12, "module-gen3.tools.metadata.ingest_manifest"]], "Metadata Tools": [[12, "metadata-tools"]], "Verify": [[11, "module-gen3.tools.indexing.verify_manifest"]], "Welcome to Gen3 SDK\u2019s documentation!": [[2, "welcome-to-gen3-sdk-s-documentation"]]}, "docnames": ["auth", "file", "index", "indexing", "jobs", "metadata", "object", "query", "submission", "tools", "tools/drs_pull", "tools/indexing", "tools/metadata", "wss"], "envversion": {"sphinx": 61, "sphinx.domains.c": 3, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 9, "sphinx.domains.index": 1, "sphinx.domains.javascript": 3, "sphinx.domains.math": 2, "sphinx.domains.python": 4, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx.ext.viewcode": 1}, "filenames": ["auth.rst", "file.rst", "index.rst", "indexing.rst", "jobs.rst", "metadata.rst", "object.rst", "query.rst", "submission.rst", "tools.rst", "tools/drs_pull.rst", "tools/indexing.rst", "tools/metadata.rst", "wss.rst"], "indexentries": {"_manager (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable._manager", false]], "access_methods (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.access_methods", false]], "acls (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.ACLS", false]], "async_create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_create", false]], "async_create_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_create_aliases", false]], "async_create_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_create_record", false]], "async_delete_alias() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_delete_alias", false]], "async_delete_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_delete_aliases", false]], "async_download_object_manifest() (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.async_download_object_manifest", false]], "async_get() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_get", false]], "async_get_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_get_aliases", false]], "async_get_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_record", false]], "async_get_records_from_checksum() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_records_from_checksum", false]], "async_get_records_on_page() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_records_on_page", false]], "async_get_with_params() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_with_params", false]], "async_ingest_metadata_manifest() (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.async_ingest_metadata_manifest", false]], "async_query_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_query_urls", false]], "async_query_urls_from_indexd() (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.async_query_urls_from_indexd", false]], "async_run_job_and_wait() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.async_run_job_and_wait", false]], "async_update() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_update", false]], "async_update_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_update_aliases", false]], "async_update_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_update_record", false]], "async_verify_object_manifest() (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.async_verify_object_manifest", false]], "auth_provider (gen3.metadata.gen3metadata attribute)": [[5, "gen3.metadata.Gen3Metadata.auth_provider", false]], "authz (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.AUTHZ", false]], "batch_create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.batch_create", false]], "cache_hosts_wts_tokens() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.cache_hosts_wts_tokens", false]], "children (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.children", false]], "column_to_use_as_guid (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.COLUMN_TO_USE_AS_GUID", false]], "commons_url (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.commons_url", false]], "copy() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.copy", false]], "create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create", false]], "create_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create_aliases", false]], "create_blank() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_blank", false]], "create_index_key_path() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create_index_key_path", false]], "create_job() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.create_job", false]], "create_new_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_new_version", false]], "create_object_list() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.create_object_list", false]], "create_program() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.create_program", false]], "create_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.create_project", false]], "create_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_record", false]], "created_time (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.created_time", false]], "curl() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.curl", false]], "current_dir (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.CURRENT_DIR", false]], "current_dir (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.CURRENT_DIR", false]], "current_dir (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.CURRENT_DIR", false]], "delete() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete", false]], "delete_alias() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_alias", false]], "delete_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_aliases", false]], "delete_all_guids() (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.delete_all_guids", false]], "delete_file() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.delete_file", false]], "delete_file_locations() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.delete_file_locations", false]], "delete_index_key_path() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_index_key_path", false]], "delete_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_node", false]], "delete_nodes() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_nodes", false]], "delete_object() (gen3.object.gen3object method)": [[6, "gen3.object.Gen3Object.delete_object", false]], "delete_program() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_program", false]], "delete_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_project", false]], "delete_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.delete_record", false]], "delete_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_record", false]], "delete_records() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_records", false]], "download() (gen3.tools.download.drs_download.downloadable method)": [[10, "gen3.tools.download.drs_download.Downloadable.download", false]], "download() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.download", false]], "download() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.download", false]], "download_files_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.download_files_in_drs_manifest", false]], "download_single() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.download_single", false]], "download_url() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.download_url", false]], "downloadable (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.Downloadable", false]], "downloadmanager (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.DownloadManager", false]], "downloadstatus (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.DownloadStatus", false]], "end_time (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.end_time", false]], "endpoint (gen3.metadata.gen3metadata attribute)": [[5, "gen3.metadata.Gen3Metadata.endpoint", false]], "export_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.export_node", false]], "export_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.export_record", false]], "file_name (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.file_name", false]], "file_name (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.file_name", false]], "file_size (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.file_size", false]], "file_size (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.file_size", false]], "gen3.tools": [[9, "module-gen3.tools", false]], "gen3.tools.download.drs_download": [[10, "module-gen3.tools.download.drs_download", false]], "gen3.tools.indexing.download_manifest": [[11, "module-gen3.tools.indexing.download_manifest", false]], "gen3.tools.indexing.index_manifest": [[11, "module-gen3.tools.indexing.index_manifest", false]], "gen3.tools.indexing.verify_manifest": [[11, "module-gen3.tools.indexing.verify_manifest", false]], "gen3.tools.metadata.ingest_manifest": [[12, "module-gen3.tools.metadata.ingest_manifest", false]], "gen3auth (class in gen3.auth)": [[0, "gen3.auth.Gen3Auth", false]], "gen3file (class in gen3.file)": [[1, "gen3.file.Gen3File", false]], "gen3index (class in gen3.index)": [[3, "gen3.index.Gen3Index", false]], "gen3jobs (class in gen3.jobs)": [[4, "gen3.jobs.Gen3Jobs", false]], "gen3metadata (class in gen3.metadata)": [[5, "gen3.metadata.Gen3Metadata", false]], "gen3object (class in gen3.object)": [[6, "gen3.object.Gen3Object", false]], "gen3query (class in gen3.query)": [[7, "gen3.query.Gen3Query", false]], "gen3submission (class in gen3.submission)": [[8, "gen3.submission.Gen3Submission", false]], "gen3wsstorage (class in gen3.wss)": [[13, "gen3.wss.Gen3WsStorage", false]], "get() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get", false]], "get() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get", false]], "get_access_token() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.get_access_token", false]], "get_access_token_from_wts() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.get_access_token_from_wts", false]], "get_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_aliases", false]], "get_all_records() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_all_records", false]], "get_dictionary_all() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_dictionary_all", false]], "get_dictionary_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_dictionary_node", false]], "get_fresh_token() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.get_fresh_token", false]], "get_graphql_schema() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_graphql_schema", false]], "get_guids_prefix() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_guids_prefix", false]], "get_index_key_paths() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_index_key_paths", false]], "get_latest_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_latest_version", false]], "get_output() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_output", false]], "get_presigned_url() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.get_presigned_url", false]], "get_programs() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_programs", false]], "get_project_dictionary() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_project_dictionary", false]], "get_project_manifest() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_project_manifest", false]], "get_projects() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_projects", false]], "get_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_record", false]], "get_record_doc() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_record_doc", false]], "get_records() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_records", false]], "get_records_on_page() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_records_on_page", false]], "get_stats() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_stats", false]], "get_status() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_status", false]], "get_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_urls", false]], "get_valid_guids() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_valid_guids", false]], "get_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_version", false]], "get_version() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_version", false]], "get_version() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_version", false]], "get_versions() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_versions", false]], "get_with_params() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_with_params", false]], "graphql_query() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.graphql_query", false]], "guid (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.GUID", false]], "guid_type_for_indexed_file_object (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.GUID_TYPE_FOR_INDEXED_FILE_OBJECT", false]], "guid_type_for_non_indexed_file_object (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.GUID_TYPE_FOR_NON_INDEXED_FILE_OBJECT", false]], "hostname (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.hostname", false]], "index_object_manifest() (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.index_object_manifest", false]], "indexd_record_page_size (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.INDEXD_RECORD_PAGE_SIZE", false]], "is_healthy() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.is_healthy", false]], "is_healthy() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.is_healthy", false]], "is_healthy() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.is_healthy", false]], "list_access_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_access_in_drs_manifest", false]], "list_drs_object() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_drs_object", false]], "list_files_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_files_in_drs_manifest", false]], "list_jobs() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.list_jobs", false]], "load() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.load", false]], "load_manifest() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.load_manifest", false]], "ls() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.ls", false]], "ls_path() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.ls_path", false]], "manifest (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.Manifest", false]], "max_concurrent_requests (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.MAX_CONCURRENT_REQUESTS", false]], "max_concurrent_requests (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.MAX_CONCURRENT_REQUESTS", false]], "max_concurrent_requests (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.MAX_CONCURRENT_REQUESTS", false]], "md5 (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.MD5", false]], "md5sum (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.md5sum", false]], "module": [[9, "module-gen3.tools", false], [10, "module-gen3.tools.download.drs_download", false], [11, "module-gen3.tools.indexing.download_manifest", false], [11, "module-gen3.tools.indexing.index_manifest", false], [11, "module-gen3.tools.indexing.verify_manifest", false], [12, "module-gen3.tools.metadata.ingest_manifest", false]], "object_id (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.object_id", false]], "object_id (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.object_id", false]], "object_type (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.object_type", false]], "open_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.open_project", false]], "pprint() (gen3.tools.download.drs_download.downloadable method)": [[10, "gen3.tools.download.drs_download.Downloadable.pprint", false]], "prev_guid (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.PREV_GUID", false]], "query() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.query", false]], "query() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.query", false]], "query() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.query", false]], "query_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.query_urls", false]], "raw_data_download() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.raw_data_download", false]], "refresh_access_token() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.refresh_access_token", false]], "resolve_objects() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.resolve_objects", false]], "rm() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.rm", false]], "rm_path() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.rm_path", false]], "size (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.SIZE", false]], "start_time (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.start_time", false]], "status (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.status", false]], "submit_file() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.submit_file", false]], "submit_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.submit_record", false]], "threadcontrol (class in gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.ThreadControl", false]], "tmp_folder (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.TMP_FOLDER", false]], "update() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.update", false]], "update_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.update_aliases", false]], "update_blank() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.update_blank", false]], "update_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.update_record", false]], "updated_time (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.updated_time", false]], "upload() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.upload", false]], "upload_file() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.upload_file", false]], "upload_file_to_guid() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.upload_file_to_guid", false]], "upload_url() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.upload_url", false]], "urls (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.URLS", false]], "user_access() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.user_access", false]]}, "objects": {"gen3": [[9, 3, 0, "-", "tools"]], "gen3.auth": [[0, 0, 1, "", "Gen3Auth"]], "gen3.auth.Gen3Auth": [[0, 1, 1, "", "curl"], [0, 1, 1, "", "get_access_token"], [0, 1, 1, "", "get_access_token_from_wts"], [0, 1, 1, "", "refresh_access_token"]], "gen3.file": [[1, 0, 1, "", "Gen3File"]], "gen3.file.Gen3File": [[1, 1, 1, "", "delete_file"], [1, 1, 1, "", "delete_file_locations"], [1, 1, 1, "", "download_single"], [1, 1, 1, "", "get_presigned_url"], [1, 1, 1, "", "upload_file"], [1, 1, 1, "", "upload_file_to_guid"]], "gen3.index": [[3, 0, 1, "", "Gen3Index"]], "gen3.index.Gen3Index": [[3, 1, 1, "", "async_create_record"], [3, 1, 1, "", "async_get_record"], [3, 1, 1, "", "async_get_records_from_checksum"], [3, 1, 1, "", "async_get_records_on_page"], [3, 1, 1, "", "async_get_with_params"], [3, 1, 1, "", "async_query_urls"], [3, 1, 1, "", "async_update_record"], [3, 1, 1, "", "create_blank"], [3, 1, 1, "", "create_new_version"], [3, 1, 1, "", "create_record"], [3, 1, 1, "", "delete_record"], [3, 1, 1, "", "get"], [3, 1, 1, "", "get_all_records"], [3, 1, 1, "", "get_guids_prefix"], [3, 1, 1, "", "get_latest_version"], [3, 1, 1, "", "get_record"], [3, 1, 1, "", "get_record_doc"], [3, 1, 1, "", "get_records"], [3, 1, 1, "", "get_records_on_page"], [3, 1, 1, "", "get_stats"], [3, 1, 1, "", "get_urls"], [3, 1, 1, "", "get_valid_guids"], [3, 1, 1, "", "get_version"], [3, 1, 1, "", "get_versions"], [3, 1, 1, "", "get_with_params"], [3, 1, 1, "", "is_healthy"], [3, 1, 1, "", "query_urls"], [3, 1, 1, "", "update_blank"], [3, 1, 1, "", "update_record"]], "gen3.jobs": [[4, 0, 1, "", "Gen3Jobs"]], "gen3.jobs.Gen3Jobs": [[4, 1, 1, "", "async_run_job_and_wait"], [4, 1, 1, "", "create_job"], [4, 1, 1, "", "get_output"], [4, 1, 1, "", "get_status"], [4, 1, 1, "", "get_version"], [4, 1, 1, "", "is_healthy"], [4, 1, 1, "", "list_jobs"]], "gen3.metadata": [[5, 0, 1, "", "Gen3Metadata"]], "gen3.metadata.Gen3Metadata": [[5, 1, 1, "", "async_create"], [5, 1, 1, "", "async_create_aliases"], [5, 1, 1, "", "async_delete_alias"], [5, 1, 1, "", "async_delete_aliases"], [5, 1, 1, "", "async_get"], [5, 1, 1, "", "async_get_aliases"], [5, 1, 1, "", "async_update"], [5, 1, 1, "", "async_update_aliases"], [5, 2, 1, "", "auth_provider"], [5, 1, 1, "", "batch_create"], [5, 1, 1, "", "create"], [5, 1, 1, "", "create_aliases"], [5, 1, 1, "", "create_index_key_path"], [5, 1, 1, "", "delete"], [5, 1, 1, "", "delete_alias"], [5, 1, 1, "", "delete_aliases"], [5, 1, 1, "", "delete_index_key_path"], [5, 2, 1, "", "endpoint"], [5, 1, 1, "", "get"], [5, 1, 1, "", "get_aliases"], [5, 1, 1, "", "get_index_key_paths"], [5, 1, 1, "", "get_version"], [5, 1, 1, "", "is_healthy"], [5, 1, 1, "", "query"], [5, 1, 1, "", "update"], [5, 1, 1, "", "update_aliases"]], "gen3.object": [[6, 0, 1, "", "Gen3Object"]], "gen3.object.Gen3Object": [[6, 1, 1, "", "delete_object"]], "gen3.query": [[7, 0, 1, "", "Gen3Query"]], "gen3.query.Gen3Query": [[7, 1, 1, "", "graphql_query"], [7, 1, 1, "", "query"], [7, 1, 1, "", "raw_data_download"]], "gen3.submission": [[8, 0, 1, "", "Gen3Submission"]], "gen3.submission.Gen3Submission": [[8, 1, 1, "", "create_program"], [8, 1, 1, "", "create_project"], [8, 1, 1, "", "delete_node"], [8, 1, 1, "", "delete_nodes"], [8, 1, 1, "", "delete_program"], [8, 1, 1, "", "delete_project"], [8, 1, 1, "", "delete_record"], [8, 1, 1, "", "delete_records"], [8, 1, 1, "", "export_node"], [8, 1, 1, "", "export_record"], [8, 1, 1, "", "get_dictionary_all"], [8, 1, 1, "", "get_dictionary_node"], [8, 1, 1, "", "get_graphql_schema"], [8, 1, 1, "", "get_programs"], [8, 1, 1, "", "get_project_dictionary"], [8, 1, 1, "", "get_project_manifest"], [8, 1, 1, "", "get_projects"], [8, 1, 1, "", "open_project"], [8, 1, 1, "", "query"], [8, 1, 1, "", "submit_file"], [8, 1, 1, "", "submit_record"]], "gen3.tools.download": [[10, 3, 0, "-", "drs_download"]], "gen3.tools.download.drs_download": [[10, 0, 1, "", "DownloadManager"], [10, 0, 1, "", "DownloadStatus"], [10, 0, 1, "", "Downloadable"], [10, 0, 1, "", "Manifest"], [10, 4, 1, "", "download_files_in_drs_manifest"], [10, 4, 1, "", "list_access_in_drs_manifest"], [10, 4, 1, "", "list_drs_object"], [10, 4, 1, "", "list_files_in_drs_manifest"]], "gen3.tools.download.drs_download.DownloadManager": [[10, 1, 1, "", "cache_hosts_wts_tokens"], [10, 1, 1, "", "download"], [10, 1, 1, "", "get_fresh_token"], [10, 1, 1, "", "resolve_objects"], [10, 1, 1, "", "user_access"]], "gen3.tools.download.drs_download.DownloadStatus": [[10, 2, 1, "", "end_time"], [10, 2, 1, "", "start_time"], [10, 2, 1, "", "status"]], "gen3.tools.download.drs_download.Downloadable": [[10, 2, 1, "", "_manager"], [10, 2, 1, "", "access_methods"], [10, 2, 1, "", "children"], [10, 2, 1, "", "created_time"], [10, 1, 1, "", "download"], [10, 2, 1, "", "file_name"], [10, 2, 1, "", "file_size"], [10, 2, 1, "", "hostname"], [10, 2, 1, "", "object_id"], [10, 2, 1, "", "object_type"], [10, 1, 1, "", "pprint"], [10, 2, 1, "", "updated_time"]], "gen3.tools.download.drs_download.Manifest": [[10, 2, 1, "", "commons_url"], [10, 1, 1, "", "create_object_list"], [10, 2, 1, "", "file_name"], [10, 2, 1, "", "file_size"], [10, 1, 1, "", "load"], [10, 1, 1, "", "load_manifest"], [10, 2, 1, "", "md5sum"], [10, 2, 1, "", "object_id"]], "gen3.tools.indexing": [[11, 3, 0, "-", "download_manifest"], [11, 3, 0, "-", "index_manifest"], [11, 3, 0, "-", "verify_manifest"]], "gen3.tools.indexing.download_manifest": [[11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "INDEXD_RECORD_PAGE_SIZE"], [11, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [11, 2, 1, "", "TMP_FOLDER"], [11, 4, 1, "", "async_download_object_manifest"]], "gen3.tools.indexing.index_manifest": [[11, 2, 1, "", "ACLS"], [11, 2, 1, "", "AUTHZ"], [11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "GUID"], [11, 2, 1, "", "MD5"], [11, 2, 1, "", "PREV_GUID"], [11, 2, 1, "", "SIZE"], [11, 0, 1, "", "ThreadControl"], [11, 2, 1, "", "URLS"], [11, 4, 1, "", "delete_all_guids"], [11, 4, 1, "", "index_object_manifest"]], "gen3.tools.indexing.verify_manifest": [[11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [11, 4, 1, "", "async_verify_object_manifest"]], "gen3.tools.metadata": [[12, 3, 0, "-", "ingest_manifest"]], "gen3.tools.metadata.ingest_manifest": [[12, 2, 1, "", "COLUMN_TO_USE_AS_GUID"], [12, 2, 1, "", "GUID_TYPE_FOR_INDEXED_FILE_OBJECT"], [12, 2, 1, "", "GUID_TYPE_FOR_NON_INDEXED_FILE_OBJECT"], [12, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [12, 4, 1, "", "async_ingest_metadata_manifest"], [12, 4, 1, "", "async_query_urls_from_indexd"]], "gen3.wss": [[13, 0, 1, "", "Gen3WsStorage"]], "gen3.wss.Gen3WsStorage": [[13, 1, 1, "", "copy"], [13, 1, 1, "", "download"], [13, 1, 1, "", "download_url"], [13, 1, 1, "", "ls"], [13, 1, 1, "", "ls_path"], [13, 1, 1, "", "rm"], [13, 1, 1, "", "rm_path"], [13, 1, 1, "", "upload"], [13, 1, 1, "", "upload_url"]]}, "objnames": {"0": ["py", "class", "Python class"], "1": ["py", "method", "Python method"], "2": ["py", "attribute", "Python attribute"], "3": ["py", "module", "Python module"], "4": ["py", "function", "Python function"]}, "objtypes": {"0": "py:class", "1": "py:method", "2": "py:attribute", "3": "py:module", "4": "py:function"}, "terms": {"": [1, 4, 8, 10, 11], "0": [5, 7, 8, 11], "0046513": [], "0185335": [], "0304558": [], "052073": [], "0576868": [], "058966": [], "064572": [], "07464": [], "0790412": [], "0a80fada010c": 11, "0a80fada096c": 11, "0a80fada097c": 11, "0a80fada098c": 11, "0a80fada099c": 11, "1": [4, 5, 8, 10, 11], "10": [5, 7, 11], "100": [8, 11], "1069167": [], "1187842": [], "11e9": 11, "1344793": [], "1676264": [], "1713542306": [], "1713542765": [], "1713543033": [], "1713543225": [], "1713543506": [], "1713543956": [], "1713544131": [], "1713544132": [], "1713544397": [], "1713544598": [], "1713545857": [], "1713545858": [], "1713549370": [], "1713549689": [], "1713550571": [], "1713557245": [], "1713559376": [], "1713560080": [], "1713560402": [], "1713560403": [], "1713561061": [], "1713562690": [], "1717169008": [], "1717170449": [], "1717171842": [], "1717171843": [], "1717172360": [], "1717172577": [], "1717172773": [], "1717175781": [], "1717175782": [], "1717176836": [], "1717177456": [], "1717177457": [], "1717184410": [11, 12], "1731803": [], "1771936": [], "1913438": [], "1922355": [], "2": [5, 11], "2184267": [], "24": [11, 12], "255e396f": 11, "2877355": [], "2930224": [], "2995": [], "3": [5, 11], "30": 8, "3041446": [], "3102272": [], "33": 5, "333": 5, "343434344": 11, "363455714": 11, "3935378": [], "4": [5, 11], "4017086": [], "4052968": [], "4090197": [], "427549": [], "4463434": [], "450c": 11, "4632835": [], "4649727": [], "4714": 8, "473d83400bc1bc9dc635e334fadd433c": 11, "473d83400bc1bc9dc635e334faddd33c": 11, "473d83400bc1bc9dc635e334fadde33c": 11, "473d83400bc1bc9dc635e334faddf33c": 11, "4752307": [], "4756553": [], "5": [0, 5], "50": 7, "517729": [], "5202463": [], "543434443": 11, "5669184": [], "568308": [], "573305": [], "5821238": 11, "5899982": [], "639124": [], "6692646": [], "6739478": [], "674552": [], "679862": [], "6f90": 8, "700799": [], "7232893": [], "756255": [], "760149": [], "7841465": [], "7d3d8d2083b4": 11, "8044841": [], "8375325": [], "8420": 8, "8630717": [], "8737464": 12, "8874054": [], "8882551": [], "9236414": [], "9306026": [], "93d9af72": 11, "9a07": 11, "A": [1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "AND": 5, "Be": 1, "But": 5, "By": 11, "For": [1, 5, 6, 7, 8, 9, 11], "IF": 11, "If": [0, 1, 7, 11, 12], "In": 10, "It": 10, "NOT": 12, "OR": 5, "One": 7, "Such": 9, "THE": 11, "That": 3, "The": [0, 1, 2, 3, 5, 8, 10, 11], "There": 11, "These": 9, "To": 11, "Will": [4, 7, 10], "_get_acl_from_row": 11, "_get_authz_from_row": 11, "_get_file_name_from_row": 11, "_get_file_size_from_row": 11, "_get_guid_for_row": 12, "_get_guid_from_row": 11, "_get_md5_from_row": 11, "_get_urls_from_row": 11, "_guid_typ": 12, "_manag": [2, 9, 10], "_query_for_associated_indexd_record_guid": 12, "_ssl": [3, 4, 5], "a5c6": 11, "ab167e49d25b488939b1ede42752458b": 3, "about": [2, 3], "abov": 11, "access": [0, 1, 3, 7, 10], "access_method": [2, 9, 10], "access_token": 0, "accesstoken": 0, "acl": [2, 3, 9, 11], "across": 11, "act": 0, "action": [9, 11], "actual": 11, "ad": 3, "add": [3, 5], "addit": [3, 5, 10, 11], "admin": [5, 11], "admin_endpoint_suffix": 5, "after": 10, "against": [3, 7, 8, 11, 12], "algorithm": 3, "alia": [3, 5], "alias": 5, "aliv": 7, "all": [1, 3, 4, 5, 6, 7, 8, 10, 11, 12], "allow": [0, 6, 8, 10, 11, 12], "allowed_data_upload_bucket": 1, "along": 2, "alreadi": 9, "also": 1, "altern": [5, 11], "alwai": 5, "ammount": 12, "amount": [1, 9], "an": [0, 3, 6, 8, 10, 11], "ani": [0, 5, 10, 11], "anoth": 5, "api": [0, 5, 8, 11], "api_kei": 11, "appli": 7, "appropri": 13, "ar": [5, 7, 8, 9, 10, 11], "arbitrari": 0, "argument": [0, 13], "arrai": 8, "asc": 7, "assign": 9, "assist": 10, "associ": [3, 5], "assum": 11, "async": [3, 4, 5, 9, 11, 12], "async_cr": [2, 5], "async_create_alias": [2, 5], "async_create_record": [2, 3], "async_delete_alia": [2, 5], "async_delete_alias": [2, 5], "async_download_object_manifest": [2, 9, 11], "async_get": [2, 5], "async_get_alias": [2, 5], "async_get_record": [2, 3], "async_get_records_from_checksum": [2, 3], "async_get_records_on_pag": [2, 3], "async_get_with_param": [2, 3], "async_ingest_metadata_manifest": [2, 9, 12], "async_query_url": [2, 3], "async_query_urls_from_indexd": [2, 9, 12], "async_run_job_and_wait": [2, 4], "async_upd": [2, 5], "async_update_alias": [2, 5], "async_update_record": [2, 3], "async_verify_object_manifest": [2, 9, 11], "asynchron": [3, 4, 5], "asyncio": [11, 12], "asyncron": 5, "attach": [3, 5], "attempt": 11, "attribut": [10, 11], "auth": [1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "auth_provid": [1, 2, 3, 4, 5, 6, 7, 8, 13], "authbas": 0, "authent": 0, "author": 1, "authz": [0, 1, 2, 3, 9, 10, 11], "auto": [0, 2], "automat": 0, "avail": [1, 2, 10, 11], "az": 1, "b": [5, 11], "b0f1": 11, "bar": 10, "base": [0, 1, 3, 4, 5, 6, 7, 8, 9, 11, 13], "baseid": 3, "basic": [3, 11, 12], "batch_creat": [2, 5], "batch_siz": 8, "behalf": 0, "behavior": 11, "being": 3, "belong": 8, "below": 11, "blank": 3, "blob": [5, 7], "bodi": 3, "bool": [4, 5, 8, 10, 11, 12], "boolean": 3, "bownload": 10, "broad": 9, "broken": 9, "bucket": [1, 6], "bundl": 10, "byte": 10, "c": [5, 11], "cach": 10, "cache_hosts_wts_token": [2, 9, 10], "call": [10, 13], "can": [0, 3, 4, 8, 11, 12], "capabl": 9, "case": [0, 10], "categori": 9, "ccle": 8, "ccle_one_record": 8, "ccle_sample_nod": 8, "cdi": 7, "chang": [3, 11], "checksum": [3, 10], "checksum_typ": 3, "child": 10, "children": [2, 9, 10], "chunk_siz": 8, "class": [0, 2, 10, 11, 13], "cli": 10, "client": [0, 3], "client_credenti": 0, "client_id": 0, "client_scop": 0, "client_secret": 0, "code": [2, 8], "column": [11, 12], "column_to_use_as_guid": [2, 9, 12], "columna": 11, "columnb": 11, "columnc": 11, "com": 7, "comma": 11, "command": [10, 11], "common": [0, 1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13], "commons_url": [2, 9, 10, 11, 12], "complet": [4, 11], "complex": 7, "concat": 11, "concurr": [11, 12], "configur": 1, "connect": 12, "consist": 3, "constructor": 0, "contain": [0, 2, 5, 8, 9, 10, 11, 12], "content": [3, 13], "content_created_d": 3, "content_updated_d": 3, "continu": 10, "control": 3, "conveni": 10, "copi": [2, 13], "coroutin": 11, "correspond": 3, "count": 3, "crdc": 0, "creat": [2, 3, 4, 5, 6, 8, 10, 11], "create_alias": [2, 5], "create_blank": [2, 3], "create_index_key_path": [2, 5], "create_job": [2, 4], "create_new_vers": [2, 3], "create_object_list": [2, 9, 10], "create_program": [2, 8], "create_project": [2, 8], "create_record": [2, 3], "created_tim": [2, 9, 10], "creation": [3, 11], "cred": 3, "credenti": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "csv": [8, 11, 12], "curl": [0, 2], "current": [6, 8, 10], "current_dir": [2, 9, 11], "custom": 11, "d": 5, "d70b41b9": 8, "data": [0, 1, 3, 5, 7, 8, 10, 11], "data_spreadsheet": 8, "data_typ": 7, "data_upload_bucket": 1, "dataa": 11, "datab": 11, "databas": 5, "datacommon": 0, "datafil": 10, "datamanag": 10, "date": 3, "datetim": [1, 3, 10], "dbgap": 12, "dcf": 8, "def": 11, "default": [0, 1, 3, 7, 8, 11, 12], "defin": [5, 8, 10], "delai": 4, "delet": [0, 1, 2, 3, 5, 6, 8, 10, 11], "delete_alia": [2, 5], "delete_alias": [2, 5], "delete_all_guid": [2, 9, 11], "delete_fil": [1, 2], "delete_file_loc": [1, 2, 6], "delete_index_key_path": [2, 5], "delete_nod": [2, 8], "delete_object": [2, 6], "delete_program": [2, 8], "delete_project": [2, 8], "delete_record": [2, 3, 8], "delete_unpacked_packag": 10, "delimet": [11, 12], "delimit": 11, "demograph": 8, "deprec": 1, "descript": [3, 5], "desir": 11, "dest_path": 13, "dest_urlstr": 13, "dest_w": 13, "dest_wskei": 13, "detail": [2, 7, 10], "determin": [10, 11, 12], "dev": 11, "dict": [3, 4, 5, 10, 11, 12], "dictionari": [3, 4, 5, 7, 8], "did": 3, "differ": 5, "direct": 0, "directori": [10, 11], "disabl": 10, "discoveri": 10, "disk": 13, "dispatch": 4, "dist_resolut": 3, "distribut": 3, "doc": [7, 10], "docstr": 2, "document": [1, 3], "doe": [0, 12], "domain": [11, 12], "done": 4, "download": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 13], "download_files_in_drs_manifest": [2, 9, 10], "download_list": 10, "download_manifest": 11, "download_singl": [1, 2], "download_url": [2, 13], "downloadmanag": [2, 9, 10], "downloadstatu": [2, 9, 10], "dr": [2, 9], "drs_download": 10, "drs_hostnam": 10, "drsdownload": 10, "drsobjecttyp": 10, "e": [5, 10], "e043ab8b77b9": 8, "each": [3, 8, 10, 11], "effici": 9, "eg": 3, "either": 8, "elasticsearch": 7, "els": [0, 12], "elsewher": 12, "empti": [8, 11], "enabl": 11, "end": [5, 10], "end_tim": [2, 9, 10], "endpoint": [0, 1, 2, 3, 4, 5, 7, 8, 13], "entir": 8, "entri": [3, 11], "env": 0, "environ": 0, "equal": 7, "error": [10, 11, 12], "error_nam": 11, "etc": 8, "even": 11, "everi": [9, 11], "everyth": 11, "ex": [0, 11, 12], "exampl": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "exclud": 3, "execut": [7, 8, 11], "exist": [1, 3, 5, 6, 9, 12], "expect": [5, 9, 11], "experi": 8, "expir": [0, 1], "expires_in": 1, "export": [8, 10], "export_nod": [2, 8], "export_record": [2, 8], "f1f8": 11, "factori": 10, "fail": [8, 10], "fals": [3, 5, 6, 10, 11], "featur": [1, 6], "fenc": [0, 1], "fetch": 0, "field": [3, 5, 7, 11, 12], "fieldnam": 11, "file": [0, 2, 3, 4, 8, 9, 10, 11, 12, 13], "file_nam": [1, 2, 3, 9, 10, 11], "file_s": [2, 9, 10, 11], "file_st": 3, "fileformat": 8, "filenam": [0, 8, 10, 11, 12], "files": 10, "fill": 12, "filter": [5, 7], "filter_object": 7, "first": [7, 8], "flag": 11, "folder": 11, "follow": [0, 11], "forc": 11, "force_metadata_columns_even_if_empti": 11, "form": 13, "format": [3, 5, 8, 11], "from": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13], "func_to_parse_row": [11, 12], "function": [2, 3, 4, 5, 9, 10, 11, 12], "g": 10, "gen3": [10, 11, 12], "gen3_api_kei": 0, "gen3_oidc_client_creds_secret": 0, "gen3auth": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "gen3fil": [1, 2], "gen3index": [2, 3], "gen3job": [2, 4, 10], "gen3metadata": [2, 5], "gen3object": [2, 6], "gen3queri": [2, 7], "gen3submiss": [2, 8], "gen3wsstorag": [2, 13], "gener": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 13], "get": [0, 1, 2, 3, 4, 5, 8, 10, 11, 12, 13], "get_access_token": [0, 2], "get_access_token_from_wt": [0, 2], "get_alias": [2, 5], "get_all_record": [2, 3], "get_dictionary_al": [2, 8], "get_dictionary_nod": [2, 8], "get_fresh_token": [2, 9, 10], "get_graphql_schema": [2, 8], "get_guid_from_fil": 12, "get_guids_prefix": [2, 3], "get_index_key_path": [2, 5], "get_latest_vers": [2, 3], "get_output": [2, 4], "get_presigned_url": [1, 2], "get_program": [2, 8], "get_project": [2, 8], "get_project_dictionari": [2, 8], "get_project_manifest": [2, 8], "get_record": [2, 3], "get_record_doc": [2, 3], "get_records_on_pag": [2, 3], "get_stat": [2, 3], "get_statu": [2, 4], "get_url": [2, 3], "get_valid_guid": [2, 3], "get_vers": [2, 3, 4, 5], "get_with_param": [2, 3], "giangb": 11, "github": [2, 7], "give": 1, "given": [0, 3, 4, 5, 8, 10, 12, 13], "global": [4, 5], "good": 3, "grant": 0, "graph": 8, "graphql": [7, 8], "graphql_queri": [2, 7], "group": 3, "guid": [1, 2, 3, 5, 6, 9, 11, 12], "guid_exampl": 11, "guid_for_row": 12, "guid_from_fil": 12, "guid_type_for_indexed_file_object": [2, 9, 12], "guid_type_for_non_indexed_file_object": [2, 9, 12], "guppi": 7, "ha": [0, 11], "handl": [3, 10], "hardcod": 0, "has_vers": 3, "hash": [3, 11], "hash_typ": 3, "have": [5, 11], "header": 11, "healthi": [3, 4, 5], "help": 11, "helper": 2, "hit": 11, "host": 10, "hostnam": [2, 9, 10], "how": [8, 11], "howto": 10, "http": [0, 7, 11, 12], "i": [0, 1, 2, 3, 4, 5, 8, 10, 11, 12], "id": [0, 1, 3, 5, 10, 11], "idea": 3, "identifi": [3, 5, 9, 11], "idp": 0, "illustr": 11, "immut": 3, "implement": 0, "implic": 11, "import": 11, "includ": [0, 3], "indent": 10, "index": [0, 2, 5, 9], "index_manifest": 11, "index_object_manifest": [2, 9, 11], "indexd": [1, 3, 6, 10, 11, 12], "indexd_field": [11, 12], "indexd_record_page_s": [2, 9, 11], "indexed_file_object_guid": 12, "indic": [0, 11], "infil": 10, "info": [3, 11], "inform": [2, 3, 10], "ingest": [2, 9], "ingest_manifest": 12, "initi": [0, 10], "input": [4, 10, 11], "input_manifest": 11, "instal": [0, 2, 11], "instanc": [1, 3, 6, 7, 8, 9, 10], "instead": [1, 7, 11], "int": [1, 3, 5, 7, 8, 10, 11, 12], "integ": [1, 3, 8], "intend": 0, "interact": [1, 3, 4, 5, 6, 8, 13], "interest": 10, "interpret": 0, "introspect": 8, "involv": 9, "is_healthi": [2, 3, 4, 5], "is_indexed_file_object": 12, "isn": 1, "issu": 0, "its": [1, 3], "job": 2, "job_id": 4, "job_input": 4, "job_nam": 4, "json": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "just": [5, 11, 12], "jwt": 0, "kei": [0, 3, 5, 13], "know": 11, "known": 10, "kwarg": [3, 4, 5], "l": [2, 13], "larg": 9, "last": 10, "latest": 3, "least": 3, "level": 6, "librari": 11, "like": [3, 5, 9, 11, 12], "limit": [1, 3, 5, 12], "linear": 4, "linux": 10, "list": [0, 1, 3, 4, 5, 7, 8, 10, 11, 13], "list_access_in_drs_manifest": [2, 9, 10], "list_drs_object": [2, 9, 10], "list_files_in_drs_manifest": [2, 9, 10], "list_job": [2, 4], "live": [11, 12], "load": [2, 9, 10], "load_manifest": [2, 9, 10], "local": [0, 13], "locat": [1, 6], "lock": 12, "log": [8, 10, 11, 12], "logic": [5, 12], "loop": 11, "ls_path": [2, 13], "maco": 11, "made": 3, "mai": [0, 9, 11], "main": 10, "make": [9, 11], "manag": [1, 5, 10], "mani": [8, 11], "manifest": [2, 8, 9, 10, 11, 12], "manifest_1": 10, "manifest_fil": [11, 12], "manifest_file_delimit": [11, 12], "manifest_row_pars": [11, 12], "map": [0, 11], "mark": 8, "master": 7, "match": [3, 5, 12], "max": 5, "max_concurrent_request": [2, 9, 11, 12], "max_presigned_url_ttl": 1, "max_tri": 8, "maximum": [11, 12], "md": [5, 7, 10, 12], "md5": [2, 3, 9, 11], "md5_hash": 11, "md5sum": [2, 9, 10], "mean": 8, "mechan": 3, "merg": 5, "metadata": [2, 3, 6, 9, 11], "metadata_list": 5, "metadata_sourc": 12, "metadata_typ": 12, "metdata": 12, "method": [1, 7, 10], "minimum": 10, "minut": 0, "mode": 7, "modul": [2, 10, 11], "more": [2, 5, 7, 9, 10], "most": 9, "mostli": 2, "multipl": [8, 11], "must": [1, 5], "my_common": 10, "my_credenti": 10, "my_field": 7, "my_index": 7, "my_program": 7, "my_project": 7, "name": [3, 4, 8, 10, 11, 12, 13], "namespac": [0, 12], "necessari": [3, 5], "need": [3, 7, 10, 11], "nest": 5, "net": 11, "never": 0, "new": [0, 3], "node": 8, "node_nam": 8, "node_typ": 8, "none": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "note": [0, 3, 11, 12], "noth": [3, 6], "now": [1, 8], "num": 5, "num_process": 11, "num_total_fil": 11, "number": [3, 7, 8, 11, 12], "o": 0, "object": [1, 2, 3, 4, 5, 7, 8, 9, 10, 11, 13], "object_id": [1, 2, 9, 10], "object_list": 10, "object_typ": [2, 9, 10], "objectid": 10, "obtain": [0, 10], "occur": 10, "off": 5, "offset": [5, 7], "oidc": 0, "old": 3, "one": [3, 5, 10, 11], "onli": [3, 5, 7, 8, 10, 11], "open": [8, 10, 11], "open_project": [2, 8], "openid": 0, "opt": 0, "option": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11], "order": [0, 8], "ordered_node_list": 8, "org": 10, "otherwis": 10, "output": [4, 5, 11, 12], "output_dir": 10, "output_filenam": [11, 12], "overrid": [0, 11, 12], "overwrit": 5, "own": 0, "packag": 10, "page": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 13], "pagin": 3, "parallel": 11, "param": [3, 5, 8, 10], "paramet": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "pars": [10, 11, 12, 13], "parser": [11, 12], "particular": 0, "pass": [0, 7, 8, 10], "password": [11, 12], "path": [0, 1, 5, 10, 11, 13], "path_to_manifest": 11, "pattern": [3, 12], "pdcdatastor": 11, "pend": 10, "per": [11, 12], "peregrin": 8, "permiss": 10, "persist": 9, "phs0001": 11, "phs0002": 11, "pick": 1, "pla": 11, "place": 11, "planx": 11, "point": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "popul": [10, 12], "posit": [1, 7], "possibl": 10, "post": [0, 11], "pprint": [2, 9, 10], "prefix": 3, "presign": 1, "pretti": 10, "prev_guid": [2, 9, 11], "previou": [3, 11], "previous": 4, "print": [8, 10], "process": 11, "processed_fil": 11, "profil": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "program": [8, 11], "progress": [8, 10], "project": [8, 11], "project_id": [7, 8], "protocol": 1, "provid": [0, 1, 3, 5, 7, 8, 12], "public": [3, 5], "put": 0, "py": 11, "python": [2, 9, 11], "python3": 11, "python_subprocess_command": 11, "queri": [1, 2, 3, 5, 8, 11, 12], "query_str": 7, "query_txt": [7, 8], "query_url": [2, 3], "quickstart": 2, "rather": 0, "raw": [7, 11], "raw_data_download": [2, 7], "rbac": 3, "read": [3, 5, 11], "readm": 2, "reason": 10, "record": [1, 3, 5, 7, 8, 11, 12], "refresh": [0, 10], "refresh_access_token": [0, 2], "refresh_fil": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "refresh_token": 0, "regist": 8, "regular": 7, "relat": 9, "remov": [1, 6, 11, 13], "replac": 11, "replace_url": 11, "repo": 2, "repres": [3, 5, 10], "represent": [1, 3], "request": [0, 1, 3, 5, 8, 11, 12], "requir": 10, "resolv": 10, "resolve_object": [2, 9, 10], "respect": 7, "respons": [0, 1, 3, 4, 5], "result": [1, 8, 10, 11], "retri": 8, "retriev": [1, 8, 10, 12], "return": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11], "return_full_metadata": 5, "rev": 3, "revers": 8, "revis": 3, "right": 1, "rm": [2, 13], "rm_path": [2, 13], "root": [11, 12], "row": [7, 8, 11, 12], "row_offset": 8, "rtype": 3, "run": [8, 11], "s3": [1, 10, 11], "safe": 11, "same": [5, 11, 13], "sampl": [8, 10], "sandbox": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "save": 10, "save_directori": 10, "schema": 8, "scope": [0, 1], "screen": 8, "script": 2, "search": [0, 2, 3], "second": [1, 4], "secret": 0, "see": [7, 10, 11], "self": 10, "semaphon": 12, "semaphor": 12, "separ": [0, 11], "server": 10, "servic": [1, 3, 4, 5, 6, 8, 11, 12, 13], "service_loc": [3, 4, 5], "session": 11, "set": [0, 1, 5, 10], "setup": 2, "sheepdog": 8, "should": [0, 8, 11], "show": 10, "show_progress": 10, "shown": 11, "sign": 1, "signpost": 3, "similar": 10, "simpl": 3, "simpli": 11, "sinc": 3, "singl": [1, 5, 8], "size": [2, 3, 9, 10, 11], "skip": 8, "sleep": 4, "so": 11, "some": [0, 2], "someth": 11, "sort": 7, "sort_field": 7, "sort_object": 7, "sourc": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "space": [0, 11], "specif": [5, 8, 11, 12], "specifi": [0, 1, 3, 11, 13], "spreadsheet": 8, "src_path": 13, "src_urlstr": 13, "src_w": 13, "src_wskei": 13, "ssl": [3, 4, 5], "start": [3, 4, 7, 8, 10], "start_tim": [2, 9, 10], "static": 10, "statu": [2, 4, 9, 10], "storag": [1, 2, 6], "store": [1, 3, 10], "str": [0, 1, 3, 4, 5, 7, 8, 10, 11, 12], "string": [0, 3, 5, 11, 13], "strip": 11, "sub": 8, "subject": [7, 8], "submiss": 2, "submit": [8, 11], "submit_additional_metadata_column": 11, "submit_fil": [2, 8], "submit_record": [2, 8], "submitter_id": 7, "success": 10, "successfulli": 10, "suffici": 3, "suppli": 3, "support": [0, 1, 5, 8, 11], "sure": 1, "synchron": 11, "syntax": 7, "system": [6, 7, 8, 9], "t": [1, 5, 11], "tab": 11, "task": 9, "temporari": 11, "test": 11, "test1": 11, "test2": 11, "test3": 11, "test4": 11, "test5": 11, "text": [1, 7, 8], "than": [0, 5], "thei": [0, 10], "them": [10, 11], "thi": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "those": 11, "thread": 11, "thread_num": 11, "threadcontrol": [2, 9, 11], "through": [8, 11], "tier": 7, "time": [1, 3, 8, 10, 11], "timestamp": 10, "tmp_folder": [2, 9, 11], "token": [0, 10], "tool": 2, "total": 11, "treat": [1, 5], "tree": 10, "true": [3, 4, 5, 6, 7, 8, 10, 11, 12], "try": 0, "tsv": [8, 11, 12], "tupl": [0, 3, 11, 12], "type": [1, 3, 4, 5, 7, 8, 10, 11, 12], "typic": 10, "uc": 7, "unaccess": 7, "under": [0, 8, 13], "uniqu": [1, 5], "unknown": 10, "unpack": 10, "unpack_packag": 10, "until": [4, 10], "up": [5, 9], "updat": [2, 3, 5, 10, 11], "update_alias": [2, 5], "update_blank": [2, 3], "update_record": [2, 3], "updated_tim": [2, 9, 10], "upload": [1, 2, 3, 8, 13], "upload_fil": [1, 2], "upload_file_to_guid": [1, 2], "upload_url": [2, 13], "url": [1, 2, 3, 9, 10, 11, 12, 13], "urls_metadata": 3, "us": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "usag": 11, "use_agg_md": 5, "user": [0, 10, 12], "user_access": [2, 9, 10], "usual": 12, "utcnow": 1, "util": 9, "uuid": [1, 3, 8], "uuid1": 8, "uuid2": 8, "valid": [3, 7], "valu": [0, 1, 3, 5, 7, 10, 11], "value_from_indexd": 11, "value_from_manifest": 11, "variabl": [0, 7, 8], "variou": 2, "verbos": [7, 8], "verif": 11, "verifi": [2, 9], "verify_manifest": 11, "verify_object_manifest": 11, "version": [3, 4, 5], "vital_statu": 7, "w": 13, "wa": 0, "wai": 10, "wait": 4, "want": [0, 3, 8], "warn": 11, "we": [3, 11], "web": 0, "what": 5, "when": [0, 3, 7, 10, 12], "where": [0, 3, 5, 11, 12], "whether": [3, 4, 5, 8, 11, 12], "which": [8, 10], "while": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "whose": 5, "within": [0, 2, 9], "without": [3, 5], "won": 5, "work": [0, 10], "workaround": 11, "worksheet": 8, "workspac": [0, 2], "wrapper": 10, "write": 11, "ws_urlstr": 13, "wskei": 13, "wss": 13, "wt": [0, 10], "x": 11, "xlsx": 8, "you": [0, 3, 8, 11], "your": 0}, "titles": ["Gen3 Auth Helper", "Gen3 File Class", "Welcome to Gen3 SDK\u2019s documentation!", "Gen3 Index Class", "Gen3 Jobs Class", "Gen3 Metadata Class", "Gen3 Object Class", "Gen3 Query Class", "Gen3 Submission Class", "Gen3 Tools", "DRS Download Tools", "Indexing Tools", "Metadata Tools", "Gen3 Workspace Storage"], "titleterms": {"": 2, "auth": 0, "class": [1, 3, 4, 5, 6, 7, 8], "document": 2, "download": [10, 11], "dr": 10, "file": 1, "gen3": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 13], "helper": 0, "index": [3, 11], "indic": 2, "ingest": 12, "job": 4, "metadata": [5, 12], "object": 6, "queri": 7, "sdk": 2, "storag": 13, "submiss": 8, "tabl": 2, "tool": [9, 10, 11, 12], "verifi": 11, "welcom": 2, "workspac": 13}}) \ No newline at end of file diff --git a/docs/_build/html/tools/indexing.html b/docs/_build/html/tools/indexing.html index 0d44e2712..aa27b9bf9 100644 --- a/docs/_build/html/tools/indexing.html +++ b/docs/_build/html/tools/indexing.html @@ -381,7 +381,7 @@

Indexing Tools
-async gen3.tools.indexing.verify_manifest.async_verify_object_manifest(commons_url, manifest_file, max_concurrent_requests=24, manifest_row_parsers={'acl': <function _get_acl_from_row>, 'authz': <function _get_authz_from_row>, 'file_name': <function _get_file_name_from_row>, 'file_size': <function _get_file_size_from_row>, 'guid': <function _get_guid_from_row>, 'md5': <function _get_md5_from_row>, 'urls': <function _get_urls_from_row>}, manifest_file_delimiter=None, output_filename='verify-manifest-errors-1717177456.679862.log')[source]
+async gen3.tools.indexing.verify_manifest.async_verify_object_manifest(commons_url, manifest_file, max_concurrent_requests=24, manifest_row_parsers={'acl': <function _get_acl_from_row>, 'authz': <function _get_authz_from_row>, 'file_name': <function _get_file_name_from_row>, 'file_size': <function _get_file_size_from_row>, 'guid': <function _get_guid_from_row>, 'md5': <function _get_md5_from_row>, 'urls': <function _get_urls_from_row>}, manifest_file_delimiter=None, output_filename='verify-manifest-errors-1717184410.5821238.log')[source]

Verify all file object records into a manifest csv

Parameters:
diff --git a/docs/_build/html/tools/metadata.html b/docs/_build/html/tools/metadata.html index 2fb680db4..305ab05ce 100644 --- a/docs/_build/html/tools/metadata.html +++ b/docs/_build/html/tools/metadata.html @@ -102,7 +102,7 @@

Metadata Tools
-async gen3.tools.metadata.ingest_manifest.async_ingest_metadata_manifest(commons_url, manifest_file, metadata_source, auth=None, max_concurrent_requests=24, manifest_row_parsers={'guid_for_row': <function _get_guid_for_row>, 'indexed_file_object_guid': <function _query_for_associated_indexd_record_guid>}, manifest_file_delimiter=None, output_filename='ingest-metadata-manifest-errors-1717177457.0304558.log', get_guid_from_file=True, metadata_type=None)[source]
+async gen3.tools.metadata.ingest_manifest.async_ingest_metadata_manifest(commons_url, manifest_file, metadata_source, auth=None, max_concurrent_requests=24, manifest_row_parsers={'guid_for_row': <function _get_guid_for_row>, 'indexed_file_object_guid': <function _query_for_associated_indexd_record_guid>}, manifest_file_delimiter=None, output_filename='ingest-metadata-manifest-errors-1717184410.8737464.log', get_guid_from_file=True, metadata_type=None)[source]

Ingest all metadata records into a manifest csv

Parameters:
From a81ad9aa37c067083ae2b0857625fa1ee964b012 Mon Sep 17 00:00:00 2001 From: Alex Date: Fri, 31 May 2024 14:45:05 -0500 Subject: [PATCH 59/62] chore(debug): more debug lines --- .github/workflows/build.yaml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index 0980c6202..a1f3b6268 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -64,6 +64,8 @@ jobs: - name: Test build run: | ls ./dist/pyinstaller/*/gen3 + ls ./dist/pyinstaller/*/gen3/gen3 + ls ./dist/pyinstaller/*/gen3/gen3/gen3 cp ./dist/pyinstaller/*/gen3/gen3 ./gen3 ls ./gen3 --help From c1cffcd4b455696cef53fbd6c3d0f4d15e27ac45 Mon Sep 17 00:00:00 2001 From: Avantol13 Date: Fri, 31 May 2024 19:46:18 +0000 Subject: [PATCH 60/62] Apply automatic documentation changes --- docs/_build/doctrees/environment.pickle | Bin 1579893 -> 1579888 bytes docs/_build/doctrees/tools/indexing.doctree | Bin 100291 -> 100286 bytes docs/_build/doctrees/tools/metadata.doctree | Bin 35934 -> 35934 bytes docs/_build/html/searchindex.js | 2 +- docs/_build/html/tools/indexing.html | 2 +- docs/_build/html/tools/metadata.html | 2 +- 6 files changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/_build/doctrees/environment.pickle b/docs/_build/doctrees/environment.pickle index 545640010aefb25791b668123a57a535e4620fa2..ed9cd7634d0476830ef3ead215369eee9406d6f6 100644 GIT binary patch delta 9527 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 delta 9453 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 delta 166 zcmdnj&vv+YZ7^Vl>G0IHt+AX_X)}C=OBe#j6fu5;_k)e^X z#r8sL#%^ZDi`)O&F&;*hIpx5(m7CFi`a}mteE}pbdO7*&>eC(F8HJ&elIW6CGT39M RWQg@Z^rBc7gHV0|(up$d?&eY$>A%LVxFDE};ee%H^ X;mKYWmdGk6_gT0h^EcnOs1F7J25KD< delta 105 zcmcaNgX!K3rVZR$+$M$wdKTu!<|bw)lQZ>gHV0|(up$d?&eY$>A%LVxFDE};ee%H^ X;mKYWmdGk6_gT0h^EcnOs1F7J`|TXx diff --git a/docs/_build/html/searchindex.js b/docs/_build/html/searchindex.js index 721e8b6f9..d93a5b453 100644 --- a/docs/_build/html/searchindex.js +++ b/docs/_build/html/searchindex.js @@ -1 +1 @@ -Search.setIndex({"alltitles": {"DRS Download Tools": [[10, "module-gen3.tools.download.drs_download"]], "Download": [[11, "module-gen3.tools.indexing.download_manifest"]], "Gen3 Auth Helper": [[0, "gen3-auth-helper"]], "Gen3 File Class": [[1, "gen3-file-class"]], "Gen3 Index Class": [[3, "gen3-index-class"]], "Gen3 Jobs Class": [[4, "gen3-jobs-class"]], "Gen3 Metadata Class": [[5, "gen3-metadata-class"]], "Gen3 Object Class": [[6, "gen3-object-class"]], "Gen3 Query Class": [[7, "gen3-query-class"]], "Gen3 Submission Class": [[8, "gen3-submission-class"]], "Gen3 Tools": [[9, "gen3-tools"]], "Gen3 Workspace Storage": [[13, "gen3-workspace-storage"]], "Index": [[11, "module-gen3.tools.indexing.index_manifest"]], "Indexing Tools": [[11, "indexing-tools"]], "Indices and tables": [[2, "indices-and-tables"]], "Ingest": [[12, "module-gen3.tools.metadata.ingest_manifest"]], "Metadata Tools": [[12, "metadata-tools"]], "Verify": [[11, "module-gen3.tools.indexing.verify_manifest"]], "Welcome to Gen3 SDK\u2019s documentation!": [[2, "welcome-to-gen3-sdk-s-documentation"]]}, "docnames": ["auth", "file", "index", "indexing", "jobs", "metadata", "object", "query", "submission", "tools", "tools/drs_pull", "tools/indexing", "tools/metadata", "wss"], "envversion": {"sphinx": 61, "sphinx.domains.c": 3, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 9, "sphinx.domains.index": 1, "sphinx.domains.javascript": 3, "sphinx.domains.math": 2, "sphinx.domains.python": 4, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx.ext.viewcode": 1}, "filenames": ["auth.rst", "file.rst", "index.rst", "indexing.rst", "jobs.rst", "metadata.rst", "object.rst", "query.rst", "submission.rst", "tools.rst", "tools/drs_pull.rst", "tools/indexing.rst", "tools/metadata.rst", "wss.rst"], "indexentries": {"_manager (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable._manager", false]], "access_methods (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.access_methods", false]], "acls (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.ACLS", false]], "async_create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_create", false]], "async_create_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_create_aliases", false]], "async_create_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_create_record", false]], "async_delete_alias() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_delete_alias", false]], "async_delete_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_delete_aliases", false]], "async_download_object_manifest() (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.async_download_object_manifest", false]], "async_get() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_get", false]], "async_get_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_get_aliases", false]], "async_get_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_record", false]], "async_get_records_from_checksum() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_records_from_checksum", false]], "async_get_records_on_page() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_records_on_page", false]], "async_get_with_params() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_with_params", false]], "async_ingest_metadata_manifest() (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.async_ingest_metadata_manifest", false]], "async_query_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_query_urls", false]], "async_query_urls_from_indexd() (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.async_query_urls_from_indexd", false]], "async_run_job_and_wait() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.async_run_job_and_wait", false]], "async_update() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_update", false]], "async_update_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_update_aliases", false]], "async_update_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_update_record", false]], "async_verify_object_manifest() (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.async_verify_object_manifest", false]], "auth_provider (gen3.metadata.gen3metadata attribute)": [[5, "gen3.metadata.Gen3Metadata.auth_provider", false]], "authz (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.AUTHZ", false]], "batch_create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.batch_create", false]], "cache_hosts_wts_tokens() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.cache_hosts_wts_tokens", false]], "children (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.children", false]], "column_to_use_as_guid (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.COLUMN_TO_USE_AS_GUID", false]], "commons_url (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.commons_url", false]], "copy() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.copy", false]], "create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create", false]], "create_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create_aliases", false]], "create_blank() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_blank", false]], "create_index_key_path() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create_index_key_path", false]], "create_job() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.create_job", false]], "create_new_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_new_version", false]], "create_object_list() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.create_object_list", false]], "create_program() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.create_program", false]], "create_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.create_project", false]], "create_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_record", false]], "created_time (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.created_time", false]], "curl() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.curl", false]], "current_dir (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.CURRENT_DIR", false]], "current_dir (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.CURRENT_DIR", false]], "current_dir (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.CURRENT_DIR", false]], "delete() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete", false]], "delete_alias() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_alias", false]], "delete_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_aliases", false]], "delete_all_guids() (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.delete_all_guids", false]], "delete_file() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.delete_file", false]], "delete_file_locations() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.delete_file_locations", false]], "delete_index_key_path() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_index_key_path", false]], "delete_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_node", false]], "delete_nodes() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_nodes", false]], "delete_object() (gen3.object.gen3object method)": [[6, "gen3.object.Gen3Object.delete_object", false]], "delete_program() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_program", false]], "delete_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_project", false]], "delete_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.delete_record", false]], "delete_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_record", false]], "delete_records() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_records", false]], "download() (gen3.tools.download.drs_download.downloadable method)": [[10, "gen3.tools.download.drs_download.Downloadable.download", false]], "download() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.download", false]], "download() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.download", false]], "download_files_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.download_files_in_drs_manifest", false]], "download_single() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.download_single", false]], "download_url() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.download_url", false]], "downloadable (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.Downloadable", false]], "downloadmanager (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.DownloadManager", false]], "downloadstatus (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.DownloadStatus", false]], "end_time (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.end_time", false]], "endpoint (gen3.metadata.gen3metadata attribute)": [[5, "gen3.metadata.Gen3Metadata.endpoint", false]], "export_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.export_node", false]], "export_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.export_record", false]], "file_name (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.file_name", false]], "file_name (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.file_name", false]], "file_size (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.file_size", false]], "file_size (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.file_size", false]], "gen3.tools": [[9, "module-gen3.tools", false]], "gen3.tools.download.drs_download": [[10, "module-gen3.tools.download.drs_download", false]], "gen3.tools.indexing.download_manifest": [[11, "module-gen3.tools.indexing.download_manifest", false]], "gen3.tools.indexing.index_manifest": [[11, "module-gen3.tools.indexing.index_manifest", false]], "gen3.tools.indexing.verify_manifest": [[11, "module-gen3.tools.indexing.verify_manifest", false]], "gen3.tools.metadata.ingest_manifest": [[12, "module-gen3.tools.metadata.ingest_manifest", false]], "gen3auth (class in gen3.auth)": [[0, "gen3.auth.Gen3Auth", false]], "gen3file (class in gen3.file)": [[1, "gen3.file.Gen3File", false]], "gen3index (class in gen3.index)": [[3, "gen3.index.Gen3Index", false]], "gen3jobs (class in gen3.jobs)": [[4, "gen3.jobs.Gen3Jobs", false]], "gen3metadata (class in gen3.metadata)": [[5, "gen3.metadata.Gen3Metadata", false]], "gen3object (class in gen3.object)": [[6, "gen3.object.Gen3Object", false]], "gen3query (class in gen3.query)": [[7, "gen3.query.Gen3Query", false]], "gen3submission (class in gen3.submission)": [[8, "gen3.submission.Gen3Submission", false]], "gen3wsstorage (class in gen3.wss)": [[13, "gen3.wss.Gen3WsStorage", false]], "get() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get", false]], "get() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get", false]], "get_access_token() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.get_access_token", false]], "get_access_token_from_wts() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.get_access_token_from_wts", false]], "get_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_aliases", false]], "get_all_records() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_all_records", false]], "get_dictionary_all() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_dictionary_all", false]], "get_dictionary_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_dictionary_node", false]], "get_fresh_token() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.get_fresh_token", false]], "get_graphql_schema() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_graphql_schema", false]], "get_guids_prefix() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_guids_prefix", false]], "get_index_key_paths() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_index_key_paths", false]], "get_latest_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_latest_version", false]], "get_output() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_output", false]], "get_presigned_url() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.get_presigned_url", false]], "get_programs() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_programs", false]], "get_project_dictionary() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_project_dictionary", false]], "get_project_manifest() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_project_manifest", false]], "get_projects() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_projects", false]], "get_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_record", false]], "get_record_doc() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_record_doc", false]], "get_records() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_records", false]], "get_records_on_page() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_records_on_page", false]], "get_stats() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_stats", false]], "get_status() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_status", false]], "get_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_urls", false]], "get_valid_guids() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_valid_guids", false]], "get_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_version", false]], "get_version() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_version", false]], "get_version() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_version", false]], "get_versions() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_versions", false]], "get_with_params() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_with_params", false]], "graphql_query() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.graphql_query", false]], "guid (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.GUID", false]], "guid_type_for_indexed_file_object (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.GUID_TYPE_FOR_INDEXED_FILE_OBJECT", false]], "guid_type_for_non_indexed_file_object (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.GUID_TYPE_FOR_NON_INDEXED_FILE_OBJECT", false]], "hostname (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.hostname", false]], "index_object_manifest() (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.index_object_manifest", false]], "indexd_record_page_size (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.INDEXD_RECORD_PAGE_SIZE", false]], "is_healthy() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.is_healthy", false]], "is_healthy() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.is_healthy", false]], "is_healthy() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.is_healthy", false]], "list_access_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_access_in_drs_manifest", false]], "list_drs_object() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_drs_object", false]], "list_files_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_files_in_drs_manifest", false]], "list_jobs() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.list_jobs", false]], "load() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.load", false]], "load_manifest() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.load_manifest", false]], "ls() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.ls", false]], "ls_path() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.ls_path", false]], "manifest (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.Manifest", false]], "max_concurrent_requests (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.MAX_CONCURRENT_REQUESTS", false]], "max_concurrent_requests (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.MAX_CONCURRENT_REQUESTS", false]], "max_concurrent_requests (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.MAX_CONCURRENT_REQUESTS", false]], "md5 (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.MD5", false]], "md5sum (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.md5sum", false]], "module": [[9, "module-gen3.tools", false], [10, "module-gen3.tools.download.drs_download", false], [11, "module-gen3.tools.indexing.download_manifest", false], [11, "module-gen3.tools.indexing.index_manifest", false], [11, "module-gen3.tools.indexing.verify_manifest", false], [12, "module-gen3.tools.metadata.ingest_manifest", false]], "object_id (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.object_id", false]], "object_id (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.object_id", false]], "object_type (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.object_type", false]], "open_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.open_project", false]], "pprint() (gen3.tools.download.drs_download.downloadable method)": [[10, "gen3.tools.download.drs_download.Downloadable.pprint", false]], "prev_guid (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.PREV_GUID", false]], "query() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.query", false]], "query() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.query", false]], "query() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.query", false]], "query_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.query_urls", false]], "raw_data_download() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.raw_data_download", false]], "refresh_access_token() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.refresh_access_token", false]], "resolve_objects() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.resolve_objects", false]], "rm() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.rm", false]], "rm_path() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.rm_path", false]], "size (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.SIZE", false]], "start_time (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.start_time", false]], "status (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.status", false]], "submit_file() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.submit_file", false]], "submit_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.submit_record", false]], "threadcontrol (class in gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.ThreadControl", false]], "tmp_folder (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.TMP_FOLDER", false]], "update() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.update", false]], "update_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.update_aliases", false]], "update_blank() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.update_blank", false]], "update_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.update_record", false]], "updated_time (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.updated_time", false]], "upload() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.upload", false]], "upload_file() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.upload_file", false]], "upload_file_to_guid() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.upload_file_to_guid", false]], "upload_url() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.upload_url", false]], "urls (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.URLS", false]], "user_access() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.user_access", false]]}, "objects": {"gen3": [[9, 3, 0, "-", "tools"]], "gen3.auth": [[0, 0, 1, "", "Gen3Auth"]], "gen3.auth.Gen3Auth": [[0, 1, 1, "", "curl"], [0, 1, 1, "", "get_access_token"], [0, 1, 1, "", "get_access_token_from_wts"], [0, 1, 1, "", "refresh_access_token"]], "gen3.file": [[1, 0, 1, "", "Gen3File"]], "gen3.file.Gen3File": [[1, 1, 1, "", "delete_file"], [1, 1, 1, "", "delete_file_locations"], [1, 1, 1, "", "download_single"], [1, 1, 1, "", "get_presigned_url"], [1, 1, 1, "", "upload_file"], [1, 1, 1, "", "upload_file_to_guid"]], "gen3.index": [[3, 0, 1, "", "Gen3Index"]], "gen3.index.Gen3Index": [[3, 1, 1, "", "async_create_record"], [3, 1, 1, "", "async_get_record"], [3, 1, 1, "", "async_get_records_from_checksum"], [3, 1, 1, "", "async_get_records_on_page"], [3, 1, 1, "", "async_get_with_params"], [3, 1, 1, "", "async_query_urls"], [3, 1, 1, "", "async_update_record"], [3, 1, 1, "", "create_blank"], [3, 1, 1, "", "create_new_version"], [3, 1, 1, "", "create_record"], [3, 1, 1, "", "delete_record"], [3, 1, 1, "", "get"], [3, 1, 1, "", "get_all_records"], [3, 1, 1, "", "get_guids_prefix"], [3, 1, 1, "", "get_latest_version"], [3, 1, 1, "", "get_record"], [3, 1, 1, "", "get_record_doc"], [3, 1, 1, "", "get_records"], [3, 1, 1, "", "get_records_on_page"], [3, 1, 1, "", "get_stats"], [3, 1, 1, "", "get_urls"], [3, 1, 1, "", "get_valid_guids"], [3, 1, 1, "", "get_version"], [3, 1, 1, "", "get_versions"], [3, 1, 1, "", "get_with_params"], [3, 1, 1, "", "is_healthy"], [3, 1, 1, "", "query_urls"], [3, 1, 1, "", "update_blank"], [3, 1, 1, "", "update_record"]], "gen3.jobs": [[4, 0, 1, "", "Gen3Jobs"]], "gen3.jobs.Gen3Jobs": [[4, 1, 1, "", "async_run_job_and_wait"], [4, 1, 1, "", "create_job"], [4, 1, 1, "", "get_output"], [4, 1, 1, "", "get_status"], [4, 1, 1, "", "get_version"], [4, 1, 1, "", "is_healthy"], [4, 1, 1, "", "list_jobs"]], "gen3.metadata": [[5, 0, 1, "", "Gen3Metadata"]], "gen3.metadata.Gen3Metadata": [[5, 1, 1, "", "async_create"], [5, 1, 1, "", "async_create_aliases"], [5, 1, 1, "", "async_delete_alias"], [5, 1, 1, "", "async_delete_aliases"], [5, 1, 1, "", "async_get"], [5, 1, 1, "", "async_get_aliases"], [5, 1, 1, "", "async_update"], [5, 1, 1, "", "async_update_aliases"], [5, 2, 1, "", "auth_provider"], [5, 1, 1, "", "batch_create"], [5, 1, 1, "", "create"], [5, 1, 1, "", "create_aliases"], [5, 1, 1, "", "create_index_key_path"], [5, 1, 1, "", "delete"], [5, 1, 1, "", "delete_alias"], [5, 1, 1, "", "delete_aliases"], [5, 1, 1, "", "delete_index_key_path"], [5, 2, 1, "", "endpoint"], [5, 1, 1, "", "get"], [5, 1, 1, "", "get_aliases"], [5, 1, 1, "", "get_index_key_paths"], [5, 1, 1, "", "get_version"], [5, 1, 1, "", "is_healthy"], [5, 1, 1, "", "query"], [5, 1, 1, "", "update"], [5, 1, 1, "", "update_aliases"]], "gen3.object": [[6, 0, 1, "", "Gen3Object"]], "gen3.object.Gen3Object": [[6, 1, 1, "", "delete_object"]], "gen3.query": [[7, 0, 1, "", "Gen3Query"]], "gen3.query.Gen3Query": [[7, 1, 1, "", "graphql_query"], [7, 1, 1, "", "query"], [7, 1, 1, "", "raw_data_download"]], "gen3.submission": [[8, 0, 1, "", "Gen3Submission"]], "gen3.submission.Gen3Submission": [[8, 1, 1, "", "create_program"], [8, 1, 1, "", "create_project"], [8, 1, 1, "", "delete_node"], [8, 1, 1, "", "delete_nodes"], [8, 1, 1, "", "delete_program"], [8, 1, 1, "", "delete_project"], [8, 1, 1, "", "delete_record"], [8, 1, 1, "", "delete_records"], [8, 1, 1, "", "export_node"], [8, 1, 1, "", "export_record"], [8, 1, 1, "", "get_dictionary_all"], [8, 1, 1, "", "get_dictionary_node"], [8, 1, 1, "", "get_graphql_schema"], [8, 1, 1, "", "get_programs"], [8, 1, 1, "", "get_project_dictionary"], [8, 1, 1, "", "get_project_manifest"], [8, 1, 1, "", "get_projects"], [8, 1, 1, "", "open_project"], [8, 1, 1, "", "query"], [8, 1, 1, "", "submit_file"], [8, 1, 1, "", "submit_record"]], "gen3.tools.download": [[10, 3, 0, "-", "drs_download"]], "gen3.tools.download.drs_download": [[10, 0, 1, "", "DownloadManager"], [10, 0, 1, "", "DownloadStatus"], [10, 0, 1, "", "Downloadable"], [10, 0, 1, "", "Manifest"], [10, 4, 1, "", "download_files_in_drs_manifest"], [10, 4, 1, "", "list_access_in_drs_manifest"], [10, 4, 1, "", "list_drs_object"], [10, 4, 1, "", "list_files_in_drs_manifest"]], "gen3.tools.download.drs_download.DownloadManager": [[10, 1, 1, "", "cache_hosts_wts_tokens"], [10, 1, 1, "", "download"], [10, 1, 1, "", "get_fresh_token"], [10, 1, 1, "", "resolve_objects"], [10, 1, 1, "", "user_access"]], "gen3.tools.download.drs_download.DownloadStatus": [[10, 2, 1, "", "end_time"], [10, 2, 1, "", "start_time"], [10, 2, 1, "", "status"]], "gen3.tools.download.drs_download.Downloadable": [[10, 2, 1, "", "_manager"], [10, 2, 1, "", "access_methods"], [10, 2, 1, "", "children"], [10, 2, 1, "", "created_time"], [10, 1, 1, "", "download"], [10, 2, 1, "", "file_name"], [10, 2, 1, "", "file_size"], [10, 2, 1, "", "hostname"], [10, 2, 1, "", "object_id"], [10, 2, 1, "", "object_type"], [10, 1, 1, "", "pprint"], [10, 2, 1, "", "updated_time"]], "gen3.tools.download.drs_download.Manifest": [[10, 2, 1, "", "commons_url"], [10, 1, 1, "", "create_object_list"], [10, 2, 1, "", "file_name"], [10, 2, 1, "", "file_size"], [10, 1, 1, "", "load"], [10, 1, 1, "", "load_manifest"], [10, 2, 1, "", "md5sum"], [10, 2, 1, "", "object_id"]], "gen3.tools.indexing": [[11, 3, 0, "-", "download_manifest"], [11, 3, 0, "-", "index_manifest"], [11, 3, 0, "-", "verify_manifest"]], "gen3.tools.indexing.download_manifest": [[11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "INDEXD_RECORD_PAGE_SIZE"], [11, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [11, 2, 1, "", "TMP_FOLDER"], [11, 4, 1, "", "async_download_object_manifest"]], "gen3.tools.indexing.index_manifest": [[11, 2, 1, "", "ACLS"], [11, 2, 1, "", "AUTHZ"], [11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "GUID"], [11, 2, 1, "", "MD5"], [11, 2, 1, "", "PREV_GUID"], [11, 2, 1, "", "SIZE"], [11, 0, 1, "", "ThreadControl"], [11, 2, 1, "", "URLS"], [11, 4, 1, "", "delete_all_guids"], [11, 4, 1, "", "index_object_manifest"]], "gen3.tools.indexing.verify_manifest": [[11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [11, 4, 1, "", "async_verify_object_manifest"]], "gen3.tools.metadata": [[12, 3, 0, "-", "ingest_manifest"]], "gen3.tools.metadata.ingest_manifest": [[12, 2, 1, "", "COLUMN_TO_USE_AS_GUID"], [12, 2, 1, "", "GUID_TYPE_FOR_INDEXED_FILE_OBJECT"], [12, 2, 1, "", "GUID_TYPE_FOR_NON_INDEXED_FILE_OBJECT"], [12, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [12, 4, 1, "", "async_ingest_metadata_manifest"], [12, 4, 1, "", "async_query_urls_from_indexd"]], "gen3.wss": [[13, 0, 1, "", "Gen3WsStorage"]], "gen3.wss.Gen3WsStorage": [[13, 1, 1, "", "copy"], [13, 1, 1, "", "download"], [13, 1, 1, "", "download_url"], [13, 1, 1, "", "ls"], [13, 1, 1, "", "ls_path"], [13, 1, 1, "", "rm"], [13, 1, 1, "", "rm_path"], [13, 1, 1, "", "upload"], [13, 1, 1, "", "upload_url"]]}, "objnames": {"0": ["py", "class", "Python class"], "1": ["py", "method", "Python method"], "2": ["py", "attribute", "Python attribute"], "3": ["py", "module", "Python module"], "4": ["py", "function", "Python function"]}, "objtypes": {"0": "py:class", "1": "py:method", "2": "py:attribute", "3": "py:module", "4": "py:function"}, "terms": {"": [1, 4, 8, 10, 11], "0": [5, 7, 8, 11], "0046513": [], "0185335": [], "0304558": [], "052073": [], "0576868": [], "058966": [], "064572": [], "07464": [], "0790412": [], "0a80fada010c": 11, "0a80fada096c": 11, "0a80fada097c": 11, "0a80fada098c": 11, "0a80fada099c": 11, "1": [4, 5, 8, 10, 11], "10": [5, 7, 11], "100": [8, 11], "1069167": [], "1187842": [], "11e9": 11, "1344793": [], "1676264": [], "1713542306": [], "1713542765": [], "1713543033": [], "1713543225": [], "1713543506": [], "1713543956": [], "1713544131": [], "1713544132": [], "1713544397": [], "1713544598": [], "1713545857": [], "1713545858": [], "1713549370": [], "1713549689": [], "1713550571": [], "1713557245": [], "1713559376": [], "1713560080": [], "1713560402": [], "1713560403": [], "1713561061": [], "1713562690": [], "1717169008": [], "1717170449": [], "1717171842": [], "1717171843": [], "1717172360": [], "1717172577": [], "1717172773": [], "1717175781": [], "1717175782": [], "1717176836": [], "1717177456": [], "1717177457": [], "1717184410": [11, 12], "1731803": [], "1771936": [], "1913438": [], "1922355": [], "2": [5, 11], "2184267": [], "24": [11, 12], "255e396f": 11, "2877355": [], "2930224": [], "2995": [], "3": [5, 11], "30": 8, "3041446": [], "3102272": [], "33": 5, "333": 5, "343434344": 11, "363455714": 11, "3935378": [], "4": [5, 11], "4017086": [], "4052968": [], "4090197": [], "427549": [], "4463434": [], "450c": 11, "4632835": [], "4649727": [], "4714": 8, "473d83400bc1bc9dc635e334fadd433c": 11, "473d83400bc1bc9dc635e334faddd33c": 11, "473d83400bc1bc9dc635e334fadde33c": 11, "473d83400bc1bc9dc635e334faddf33c": 11, "4752307": [], "4756553": [], "5": [0, 5], "50": 7, "517729": [], "5202463": [], "543434443": 11, "5669184": [], "568308": [], "573305": [], "5821238": 11, "5899982": [], "639124": [], "6692646": [], "6739478": [], "674552": [], "679862": [], "6f90": 8, "700799": [], "7232893": [], "756255": [], "760149": [], "7841465": [], "7d3d8d2083b4": 11, "8044841": [], "8375325": [], "8420": 8, "8630717": [], "8737464": 12, "8874054": [], "8882551": [], "9236414": [], "9306026": [], "93d9af72": 11, "9a07": 11, "A": [1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "AND": 5, "Be": 1, "But": 5, "By": 11, "For": [1, 5, 6, 7, 8, 9, 11], "IF": 11, "If": [0, 1, 7, 11, 12], "In": 10, "It": 10, "NOT": 12, "OR": 5, "One": 7, "Such": 9, "THE": 11, "That": 3, "The": [0, 1, 2, 3, 5, 8, 10, 11], "There": 11, "These": 9, "To": 11, "Will": [4, 7, 10], "_get_acl_from_row": 11, "_get_authz_from_row": 11, "_get_file_name_from_row": 11, "_get_file_size_from_row": 11, "_get_guid_for_row": 12, "_get_guid_from_row": 11, "_get_md5_from_row": 11, "_get_urls_from_row": 11, "_guid_typ": 12, "_manag": [2, 9, 10], "_query_for_associated_indexd_record_guid": 12, "_ssl": [3, 4, 5], "a5c6": 11, "ab167e49d25b488939b1ede42752458b": 3, "about": [2, 3], "abov": 11, "access": [0, 1, 3, 7, 10], "access_method": [2, 9, 10], "access_token": 0, "accesstoken": 0, "acl": [2, 3, 9, 11], "across": 11, "act": 0, "action": [9, 11], "actual": 11, "ad": 3, "add": [3, 5], "addit": [3, 5, 10, 11], "admin": [5, 11], "admin_endpoint_suffix": 5, "after": 10, "against": [3, 7, 8, 11, 12], "algorithm": 3, "alia": [3, 5], "alias": 5, "aliv": 7, "all": [1, 3, 4, 5, 6, 7, 8, 10, 11, 12], "allow": [0, 6, 8, 10, 11, 12], "allowed_data_upload_bucket": 1, "along": 2, "alreadi": 9, "also": 1, "altern": [5, 11], "alwai": 5, "ammount": 12, "amount": [1, 9], "an": [0, 3, 6, 8, 10, 11], "ani": [0, 5, 10, 11], "anoth": 5, "api": [0, 5, 8, 11], "api_kei": 11, "appli": 7, "appropri": 13, "ar": [5, 7, 8, 9, 10, 11], "arbitrari": 0, "argument": [0, 13], "arrai": 8, "asc": 7, "assign": 9, "assist": 10, "associ": [3, 5], "assum": 11, "async": [3, 4, 5, 9, 11, 12], "async_cr": [2, 5], "async_create_alias": [2, 5], "async_create_record": [2, 3], "async_delete_alia": [2, 5], "async_delete_alias": [2, 5], "async_download_object_manifest": [2, 9, 11], "async_get": [2, 5], "async_get_alias": [2, 5], "async_get_record": [2, 3], "async_get_records_from_checksum": [2, 3], "async_get_records_on_pag": [2, 3], "async_get_with_param": [2, 3], "async_ingest_metadata_manifest": [2, 9, 12], "async_query_url": [2, 3], "async_query_urls_from_indexd": [2, 9, 12], "async_run_job_and_wait": [2, 4], "async_upd": [2, 5], "async_update_alias": [2, 5], "async_update_record": [2, 3], "async_verify_object_manifest": [2, 9, 11], "asynchron": [3, 4, 5], "asyncio": [11, 12], "asyncron": 5, "attach": [3, 5], "attempt": 11, "attribut": [10, 11], "auth": [1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "auth_provid": [1, 2, 3, 4, 5, 6, 7, 8, 13], "authbas": 0, "authent": 0, "author": 1, "authz": [0, 1, 2, 3, 9, 10, 11], "auto": [0, 2], "automat": 0, "avail": [1, 2, 10, 11], "az": 1, "b": [5, 11], "b0f1": 11, "bar": 10, "base": [0, 1, 3, 4, 5, 6, 7, 8, 9, 11, 13], "baseid": 3, "basic": [3, 11, 12], "batch_creat": [2, 5], "batch_siz": 8, "behalf": 0, "behavior": 11, "being": 3, "belong": 8, "below": 11, "blank": 3, "blob": [5, 7], "bodi": 3, "bool": [4, 5, 8, 10, 11, 12], "boolean": 3, "bownload": 10, "broad": 9, "broken": 9, "bucket": [1, 6], "bundl": 10, "byte": 10, "c": [5, 11], "cach": 10, "cache_hosts_wts_token": [2, 9, 10], "call": [10, 13], "can": [0, 3, 4, 8, 11, 12], "capabl": 9, "case": [0, 10], "categori": 9, "ccle": 8, "ccle_one_record": 8, "ccle_sample_nod": 8, "cdi": 7, "chang": [3, 11], "checksum": [3, 10], "checksum_typ": 3, "child": 10, "children": [2, 9, 10], "chunk_siz": 8, "class": [0, 2, 10, 11, 13], "cli": 10, "client": [0, 3], "client_credenti": 0, "client_id": 0, "client_scop": 0, "client_secret": 0, "code": [2, 8], "column": [11, 12], "column_to_use_as_guid": [2, 9, 12], "columna": 11, "columnb": 11, "columnc": 11, "com": 7, "comma": 11, "command": [10, 11], "common": [0, 1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13], "commons_url": [2, 9, 10, 11, 12], "complet": [4, 11], "complex": 7, "concat": 11, "concurr": [11, 12], "configur": 1, "connect": 12, "consist": 3, "constructor": 0, "contain": [0, 2, 5, 8, 9, 10, 11, 12], "content": [3, 13], "content_created_d": 3, "content_updated_d": 3, "continu": 10, "control": 3, "conveni": 10, "copi": [2, 13], "coroutin": 11, "correspond": 3, "count": 3, "crdc": 0, "creat": [2, 3, 4, 5, 6, 8, 10, 11], "create_alias": [2, 5], "create_blank": [2, 3], "create_index_key_path": [2, 5], "create_job": [2, 4], "create_new_vers": [2, 3], "create_object_list": [2, 9, 10], "create_program": [2, 8], "create_project": [2, 8], "create_record": [2, 3], "created_tim": [2, 9, 10], "creation": [3, 11], "cred": 3, "credenti": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "csv": [8, 11, 12], "curl": [0, 2], "current": [6, 8, 10], "current_dir": [2, 9, 11], "custom": 11, "d": 5, "d70b41b9": 8, "data": [0, 1, 3, 5, 7, 8, 10, 11], "data_spreadsheet": 8, "data_typ": 7, "data_upload_bucket": 1, "dataa": 11, "datab": 11, "databas": 5, "datacommon": 0, "datafil": 10, "datamanag": 10, "date": 3, "datetim": [1, 3, 10], "dbgap": 12, "dcf": 8, "def": 11, "default": [0, 1, 3, 7, 8, 11, 12], "defin": [5, 8, 10], "delai": 4, "delet": [0, 1, 2, 3, 5, 6, 8, 10, 11], "delete_alia": [2, 5], "delete_alias": [2, 5], "delete_all_guid": [2, 9, 11], "delete_fil": [1, 2], "delete_file_loc": [1, 2, 6], "delete_index_key_path": [2, 5], "delete_nod": [2, 8], "delete_object": [2, 6], "delete_program": [2, 8], "delete_project": [2, 8], "delete_record": [2, 3, 8], "delete_unpacked_packag": 10, "delimet": [11, 12], "delimit": 11, "demograph": 8, "deprec": 1, "descript": [3, 5], "desir": 11, "dest_path": 13, "dest_urlstr": 13, "dest_w": 13, "dest_wskei": 13, "detail": [2, 7, 10], "determin": [10, 11, 12], "dev": 11, "dict": [3, 4, 5, 10, 11, 12], "dictionari": [3, 4, 5, 7, 8], "did": 3, "differ": 5, "direct": 0, "directori": [10, 11], "disabl": 10, "discoveri": 10, "disk": 13, "dispatch": 4, "dist_resolut": 3, "distribut": 3, "doc": [7, 10], "docstr": 2, "document": [1, 3], "doe": [0, 12], "domain": [11, 12], "done": 4, "download": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 13], "download_files_in_drs_manifest": [2, 9, 10], "download_list": 10, "download_manifest": 11, "download_singl": [1, 2], "download_url": [2, 13], "downloadmanag": [2, 9, 10], "downloadstatu": [2, 9, 10], "dr": [2, 9], "drs_download": 10, "drs_hostnam": 10, "drsdownload": 10, "drsobjecttyp": 10, "e": [5, 10], "e043ab8b77b9": 8, "each": [3, 8, 10, 11], "effici": 9, "eg": 3, "either": 8, "elasticsearch": 7, "els": [0, 12], "elsewher": 12, "empti": [8, 11], "enabl": 11, "end": [5, 10], "end_tim": [2, 9, 10], "endpoint": [0, 1, 2, 3, 4, 5, 7, 8, 13], "entir": 8, "entri": [3, 11], "env": 0, "environ": 0, "equal": 7, "error": [10, 11, 12], "error_nam": 11, "etc": 8, "even": 11, "everi": [9, 11], "everyth": 11, "ex": [0, 11, 12], "exampl": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "exclud": 3, "execut": [7, 8, 11], "exist": [1, 3, 5, 6, 9, 12], "expect": [5, 9, 11], "experi": 8, "expir": [0, 1], "expires_in": 1, "export": [8, 10], "export_nod": [2, 8], "export_record": [2, 8], "f1f8": 11, "factori": 10, "fail": [8, 10], "fals": [3, 5, 6, 10, 11], "featur": [1, 6], "fenc": [0, 1], "fetch": 0, "field": [3, 5, 7, 11, 12], "fieldnam": 11, "file": [0, 2, 3, 4, 8, 9, 10, 11, 12, 13], "file_nam": [1, 2, 3, 9, 10, 11], "file_s": [2, 9, 10, 11], "file_st": 3, "fileformat": 8, "filenam": [0, 8, 10, 11, 12], "files": 10, "fill": 12, "filter": [5, 7], "filter_object": 7, "first": [7, 8], "flag": 11, "folder": 11, "follow": [0, 11], "forc": 11, "force_metadata_columns_even_if_empti": 11, "form": 13, "format": [3, 5, 8, 11], "from": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13], "func_to_parse_row": [11, 12], "function": [2, 3, 4, 5, 9, 10, 11, 12], "g": 10, "gen3": [10, 11, 12], "gen3_api_kei": 0, "gen3_oidc_client_creds_secret": 0, "gen3auth": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "gen3fil": [1, 2], "gen3index": [2, 3], "gen3job": [2, 4, 10], "gen3metadata": [2, 5], "gen3object": [2, 6], "gen3queri": [2, 7], "gen3submiss": [2, 8], "gen3wsstorag": [2, 13], "gener": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 13], "get": [0, 1, 2, 3, 4, 5, 8, 10, 11, 12, 13], "get_access_token": [0, 2], "get_access_token_from_wt": [0, 2], "get_alias": [2, 5], "get_all_record": [2, 3], "get_dictionary_al": [2, 8], "get_dictionary_nod": [2, 8], "get_fresh_token": [2, 9, 10], "get_graphql_schema": [2, 8], "get_guid_from_fil": 12, "get_guids_prefix": [2, 3], "get_index_key_path": [2, 5], "get_latest_vers": [2, 3], "get_output": [2, 4], "get_presigned_url": [1, 2], "get_program": [2, 8], "get_project": [2, 8], "get_project_dictionari": [2, 8], "get_project_manifest": [2, 8], "get_record": [2, 3], "get_record_doc": [2, 3], "get_records_on_pag": [2, 3], "get_stat": [2, 3], "get_statu": [2, 4], "get_url": [2, 3], "get_valid_guid": [2, 3], "get_vers": [2, 3, 4, 5], "get_with_param": [2, 3], "giangb": 11, "github": [2, 7], "give": 1, "given": [0, 3, 4, 5, 8, 10, 12, 13], "global": [4, 5], "good": 3, "grant": 0, "graph": 8, "graphql": [7, 8], "graphql_queri": [2, 7], "group": 3, "guid": [1, 2, 3, 5, 6, 9, 11, 12], "guid_exampl": 11, "guid_for_row": 12, "guid_from_fil": 12, "guid_type_for_indexed_file_object": [2, 9, 12], "guid_type_for_non_indexed_file_object": [2, 9, 12], "guppi": 7, "ha": [0, 11], "handl": [3, 10], "hardcod": 0, "has_vers": 3, "hash": [3, 11], "hash_typ": 3, "have": [5, 11], "header": 11, "healthi": [3, 4, 5], "help": 11, "helper": 2, "hit": 11, "host": 10, "hostnam": [2, 9, 10], "how": [8, 11], "howto": 10, "http": [0, 7, 11, 12], "i": [0, 1, 2, 3, 4, 5, 8, 10, 11, 12], "id": [0, 1, 3, 5, 10, 11], "idea": 3, "identifi": [3, 5, 9, 11], "idp": 0, "illustr": 11, "immut": 3, "implement": 0, "implic": 11, "import": 11, "includ": [0, 3], "indent": 10, "index": [0, 2, 5, 9], "index_manifest": 11, "index_object_manifest": [2, 9, 11], "indexd": [1, 3, 6, 10, 11, 12], "indexd_field": [11, 12], "indexd_record_page_s": [2, 9, 11], "indexed_file_object_guid": 12, "indic": [0, 11], "infil": 10, "info": [3, 11], "inform": [2, 3, 10], "ingest": [2, 9], "ingest_manifest": 12, "initi": [0, 10], "input": [4, 10, 11], "input_manifest": 11, "instal": [0, 2, 11], "instanc": [1, 3, 6, 7, 8, 9, 10], "instead": [1, 7, 11], "int": [1, 3, 5, 7, 8, 10, 11, 12], "integ": [1, 3, 8], "intend": 0, "interact": [1, 3, 4, 5, 6, 8, 13], "interest": 10, "interpret": 0, "introspect": 8, "involv": 9, "is_healthi": [2, 3, 4, 5], "is_indexed_file_object": 12, "isn": 1, "issu": 0, "its": [1, 3], "job": 2, "job_id": 4, "job_input": 4, "job_nam": 4, "json": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "just": [5, 11, 12], "jwt": 0, "kei": [0, 3, 5, 13], "know": 11, "known": 10, "kwarg": [3, 4, 5], "l": [2, 13], "larg": 9, "last": 10, "latest": 3, "least": 3, "level": 6, "librari": 11, "like": [3, 5, 9, 11, 12], "limit": [1, 3, 5, 12], "linear": 4, "linux": 10, "list": [0, 1, 3, 4, 5, 7, 8, 10, 11, 13], "list_access_in_drs_manifest": [2, 9, 10], "list_drs_object": [2, 9, 10], "list_files_in_drs_manifest": [2, 9, 10], "list_job": [2, 4], "live": [11, 12], "load": [2, 9, 10], "load_manifest": [2, 9, 10], "local": [0, 13], "locat": [1, 6], "lock": 12, "log": [8, 10, 11, 12], "logic": [5, 12], "loop": 11, "ls_path": [2, 13], "maco": 11, "made": 3, "mai": [0, 9, 11], "main": 10, "make": [9, 11], "manag": [1, 5, 10], "mani": [8, 11], "manifest": [2, 8, 9, 10, 11, 12], "manifest_1": 10, "manifest_fil": [11, 12], "manifest_file_delimit": [11, 12], "manifest_row_pars": [11, 12], "map": [0, 11], "mark": 8, "master": 7, "match": [3, 5, 12], "max": 5, "max_concurrent_request": [2, 9, 11, 12], "max_presigned_url_ttl": 1, "max_tri": 8, "maximum": [11, 12], "md": [5, 7, 10, 12], "md5": [2, 3, 9, 11], "md5_hash": 11, "md5sum": [2, 9, 10], "mean": 8, "mechan": 3, "merg": 5, "metadata": [2, 3, 6, 9, 11], "metadata_list": 5, "metadata_sourc": 12, "metadata_typ": 12, "metdata": 12, "method": [1, 7, 10], "minimum": 10, "minut": 0, "mode": 7, "modul": [2, 10, 11], "more": [2, 5, 7, 9, 10], "most": 9, "mostli": 2, "multipl": [8, 11], "must": [1, 5], "my_common": 10, "my_credenti": 10, "my_field": 7, "my_index": 7, "my_program": 7, "my_project": 7, "name": [3, 4, 8, 10, 11, 12, 13], "namespac": [0, 12], "necessari": [3, 5], "need": [3, 7, 10, 11], "nest": 5, "net": 11, "never": 0, "new": [0, 3], "node": 8, "node_nam": 8, "node_typ": 8, "none": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "note": [0, 3, 11, 12], "noth": [3, 6], "now": [1, 8], "num": 5, "num_process": 11, "num_total_fil": 11, "number": [3, 7, 8, 11, 12], "o": 0, "object": [1, 2, 3, 4, 5, 7, 8, 9, 10, 11, 13], "object_id": [1, 2, 9, 10], "object_list": 10, "object_typ": [2, 9, 10], "objectid": 10, "obtain": [0, 10], "occur": 10, "off": 5, "offset": [5, 7], "oidc": 0, "old": 3, "one": [3, 5, 10, 11], "onli": [3, 5, 7, 8, 10, 11], "open": [8, 10, 11], "open_project": [2, 8], "openid": 0, "opt": 0, "option": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11], "order": [0, 8], "ordered_node_list": 8, "org": 10, "otherwis": 10, "output": [4, 5, 11, 12], "output_dir": 10, "output_filenam": [11, 12], "overrid": [0, 11, 12], "overwrit": 5, "own": 0, "packag": 10, "page": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 13], "pagin": 3, "parallel": 11, "param": [3, 5, 8, 10], "paramet": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "pars": [10, 11, 12, 13], "parser": [11, 12], "particular": 0, "pass": [0, 7, 8, 10], "password": [11, 12], "path": [0, 1, 5, 10, 11, 13], "path_to_manifest": 11, "pattern": [3, 12], "pdcdatastor": 11, "pend": 10, "per": [11, 12], "peregrin": 8, "permiss": 10, "persist": 9, "phs0001": 11, "phs0002": 11, "pick": 1, "pla": 11, "place": 11, "planx": 11, "point": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "popul": [10, 12], "posit": [1, 7], "possibl": 10, "post": [0, 11], "pprint": [2, 9, 10], "prefix": 3, "presign": 1, "pretti": 10, "prev_guid": [2, 9, 11], "previou": [3, 11], "previous": 4, "print": [8, 10], "process": 11, "processed_fil": 11, "profil": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "program": [8, 11], "progress": [8, 10], "project": [8, 11], "project_id": [7, 8], "protocol": 1, "provid": [0, 1, 3, 5, 7, 8, 12], "public": [3, 5], "put": 0, "py": 11, "python": [2, 9, 11], "python3": 11, "python_subprocess_command": 11, "queri": [1, 2, 3, 5, 8, 11, 12], "query_str": 7, "query_txt": [7, 8], "query_url": [2, 3], "quickstart": 2, "rather": 0, "raw": [7, 11], "raw_data_download": [2, 7], "rbac": 3, "read": [3, 5, 11], "readm": 2, "reason": 10, "record": [1, 3, 5, 7, 8, 11, 12], "refresh": [0, 10], "refresh_access_token": [0, 2], "refresh_fil": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "refresh_token": 0, "regist": 8, "regular": 7, "relat": 9, "remov": [1, 6, 11, 13], "replac": 11, "replace_url": 11, "repo": 2, "repres": [3, 5, 10], "represent": [1, 3], "request": [0, 1, 3, 5, 8, 11, 12], "requir": 10, "resolv": 10, "resolve_object": [2, 9, 10], "respect": 7, "respons": [0, 1, 3, 4, 5], "result": [1, 8, 10, 11], "retri": 8, "retriev": [1, 8, 10, 12], "return": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11], "return_full_metadata": 5, "rev": 3, "revers": 8, "revis": 3, "right": 1, "rm": [2, 13], "rm_path": [2, 13], "root": [11, 12], "row": [7, 8, 11, 12], "row_offset": 8, "rtype": 3, "run": [8, 11], "s3": [1, 10, 11], "safe": 11, "same": [5, 11, 13], "sampl": [8, 10], "sandbox": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "save": 10, "save_directori": 10, "schema": 8, "scope": [0, 1], "screen": 8, "script": 2, "search": [0, 2, 3], "second": [1, 4], "secret": 0, "see": [7, 10, 11], "self": 10, "semaphon": 12, "semaphor": 12, "separ": [0, 11], "server": 10, "servic": [1, 3, 4, 5, 6, 8, 11, 12, 13], "service_loc": [3, 4, 5], "session": 11, "set": [0, 1, 5, 10], "setup": 2, "sheepdog": 8, "should": [0, 8, 11], "show": 10, "show_progress": 10, "shown": 11, "sign": 1, "signpost": 3, "similar": 10, "simpl": 3, "simpli": 11, "sinc": 3, "singl": [1, 5, 8], "size": [2, 3, 9, 10, 11], "skip": 8, "sleep": 4, "so": 11, "some": [0, 2], "someth": 11, "sort": 7, "sort_field": 7, "sort_object": 7, "sourc": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "space": [0, 11], "specif": [5, 8, 11, 12], "specifi": [0, 1, 3, 11, 13], "spreadsheet": 8, "src_path": 13, "src_urlstr": 13, "src_w": 13, "src_wskei": 13, "ssl": [3, 4, 5], "start": [3, 4, 7, 8, 10], "start_tim": [2, 9, 10], "static": 10, "statu": [2, 4, 9, 10], "storag": [1, 2, 6], "store": [1, 3, 10], "str": [0, 1, 3, 4, 5, 7, 8, 10, 11, 12], "string": [0, 3, 5, 11, 13], "strip": 11, "sub": 8, "subject": [7, 8], "submiss": 2, "submit": [8, 11], "submit_additional_metadata_column": 11, "submit_fil": [2, 8], "submit_record": [2, 8], "submitter_id": 7, "success": 10, "successfulli": 10, "suffici": 3, "suppli": 3, "support": [0, 1, 5, 8, 11], "sure": 1, "synchron": 11, "syntax": 7, "system": [6, 7, 8, 9], "t": [1, 5, 11], "tab": 11, "task": 9, "temporari": 11, "test": 11, "test1": 11, "test2": 11, "test3": 11, "test4": 11, "test5": 11, "text": [1, 7, 8], "than": [0, 5], "thei": [0, 10], "them": [10, 11], "thi": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "those": 11, "thread": 11, "thread_num": 11, "threadcontrol": [2, 9, 11], "through": [8, 11], "tier": 7, "time": [1, 3, 8, 10, 11], "timestamp": 10, "tmp_folder": [2, 9, 11], "token": [0, 10], "tool": 2, "total": 11, "treat": [1, 5], "tree": 10, "true": [3, 4, 5, 6, 7, 8, 10, 11, 12], "try": 0, "tsv": [8, 11, 12], "tupl": [0, 3, 11, 12], "type": [1, 3, 4, 5, 7, 8, 10, 11, 12], "typic": 10, "uc": 7, "unaccess": 7, "under": [0, 8, 13], "uniqu": [1, 5], "unknown": 10, "unpack": 10, "unpack_packag": 10, "until": [4, 10], "up": [5, 9], "updat": [2, 3, 5, 10, 11], "update_alias": [2, 5], "update_blank": [2, 3], "update_record": [2, 3], "updated_tim": [2, 9, 10], "upload": [1, 2, 3, 8, 13], "upload_fil": [1, 2], "upload_file_to_guid": [1, 2], "upload_url": [2, 13], "url": [1, 2, 3, 9, 10, 11, 12, 13], "urls_metadata": 3, "us": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "usag": 11, "use_agg_md": 5, "user": [0, 10, 12], "user_access": [2, 9, 10], "usual": 12, "utcnow": 1, "util": 9, "uuid": [1, 3, 8], "uuid1": 8, "uuid2": 8, "valid": [3, 7], "valu": [0, 1, 3, 5, 7, 10, 11], "value_from_indexd": 11, "value_from_manifest": 11, "variabl": [0, 7, 8], "variou": 2, "verbos": [7, 8], "verif": 11, "verifi": [2, 9], "verify_manifest": 11, "verify_object_manifest": 11, "version": [3, 4, 5], "vital_statu": 7, "w": 13, "wa": 0, "wai": 10, "wait": 4, "want": [0, 3, 8], "warn": 11, "we": [3, 11], "web": 0, "what": 5, "when": [0, 3, 7, 10, 12], "where": [0, 3, 5, 11, 12], "whether": [3, 4, 5, 8, 11, 12], "which": [8, 10], "while": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "whose": 5, "within": [0, 2, 9], "without": [3, 5], "won": 5, "work": [0, 10], "workaround": 11, "worksheet": 8, "workspac": [0, 2], "wrapper": 10, "write": 11, "ws_urlstr": 13, "wskei": 13, "wss": 13, "wt": [0, 10], "x": 11, "xlsx": 8, "you": [0, 3, 8, 11], "your": 0}, "titles": ["Gen3 Auth Helper", "Gen3 File Class", "Welcome to Gen3 SDK\u2019s documentation!", "Gen3 Index Class", "Gen3 Jobs Class", "Gen3 Metadata Class", "Gen3 Object Class", "Gen3 Query Class", "Gen3 Submission Class", "Gen3 Tools", "DRS Download Tools", "Indexing Tools", "Metadata Tools", "Gen3 Workspace Storage"], "titleterms": {"": 2, "auth": 0, "class": [1, 3, 4, 5, 6, 7, 8], "document": 2, "download": [10, 11], "dr": 10, "file": 1, "gen3": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 13], "helper": 0, "index": [3, 11], "indic": 2, "ingest": 12, "job": 4, "metadata": [5, 12], "object": 6, "queri": 7, "sdk": 2, "storag": 13, "submiss": 8, "tabl": 2, "tool": [9, 10, 11, 12], "verifi": 11, "welcom": 2, "workspac": 13}}) \ No newline at end of file +Search.setIndex({"alltitles": {"DRS Download Tools": [[10, "module-gen3.tools.download.drs_download"]], "Download": [[11, "module-gen3.tools.indexing.download_manifest"]], "Gen3 Auth Helper": [[0, "gen3-auth-helper"]], "Gen3 File Class": [[1, "gen3-file-class"]], "Gen3 Index Class": [[3, "gen3-index-class"]], "Gen3 Jobs Class": [[4, "gen3-jobs-class"]], "Gen3 Metadata Class": [[5, "gen3-metadata-class"]], "Gen3 Object Class": [[6, "gen3-object-class"]], "Gen3 Query Class": [[7, "gen3-query-class"]], "Gen3 Submission Class": [[8, "gen3-submission-class"]], "Gen3 Tools": [[9, "gen3-tools"]], "Gen3 Workspace Storage": [[13, "gen3-workspace-storage"]], "Index": [[11, "module-gen3.tools.indexing.index_manifest"]], "Indexing Tools": [[11, "indexing-tools"]], "Indices and tables": [[2, "indices-and-tables"]], "Ingest": [[12, "module-gen3.tools.metadata.ingest_manifest"]], "Metadata Tools": [[12, "metadata-tools"]], "Verify": [[11, "module-gen3.tools.indexing.verify_manifest"]], "Welcome to Gen3 SDK\u2019s documentation!": [[2, "welcome-to-gen3-sdk-s-documentation"]]}, "docnames": ["auth", "file", "index", "indexing", "jobs", "metadata", "object", "query", "submission", "tools", "tools/drs_pull", "tools/indexing", "tools/metadata", "wss"], "envversion": {"sphinx": 61, "sphinx.domains.c": 3, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 9, "sphinx.domains.index": 1, "sphinx.domains.javascript": 3, "sphinx.domains.math": 2, "sphinx.domains.python": 4, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx.ext.viewcode": 1}, "filenames": ["auth.rst", "file.rst", "index.rst", "indexing.rst", "jobs.rst", "metadata.rst", "object.rst", "query.rst", "submission.rst", "tools.rst", "tools/drs_pull.rst", "tools/indexing.rst", "tools/metadata.rst", "wss.rst"], "indexentries": {"_manager (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable._manager", false]], "access_methods (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.access_methods", false]], "acls (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.ACLS", false]], "async_create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_create", false]], "async_create_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_create_aliases", false]], "async_create_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_create_record", false]], "async_delete_alias() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_delete_alias", false]], "async_delete_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_delete_aliases", false]], "async_download_object_manifest() (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.async_download_object_manifest", false]], "async_get() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_get", false]], "async_get_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_get_aliases", false]], "async_get_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_record", false]], "async_get_records_from_checksum() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_records_from_checksum", false]], "async_get_records_on_page() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_records_on_page", false]], "async_get_with_params() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_with_params", false]], "async_ingest_metadata_manifest() (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.async_ingest_metadata_manifest", false]], "async_query_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_query_urls", false]], "async_query_urls_from_indexd() (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.async_query_urls_from_indexd", false]], "async_run_job_and_wait() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.async_run_job_and_wait", false]], "async_update() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_update", false]], "async_update_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_update_aliases", false]], "async_update_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_update_record", false]], "async_verify_object_manifest() (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.async_verify_object_manifest", false]], "auth_provider (gen3.metadata.gen3metadata attribute)": [[5, "gen3.metadata.Gen3Metadata.auth_provider", false]], "authz (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.AUTHZ", false]], "batch_create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.batch_create", false]], "cache_hosts_wts_tokens() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.cache_hosts_wts_tokens", false]], "children (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.children", false]], "column_to_use_as_guid (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.COLUMN_TO_USE_AS_GUID", false]], "commons_url (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.commons_url", false]], "copy() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.copy", false]], "create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create", false]], "create_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create_aliases", false]], "create_blank() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_blank", false]], "create_index_key_path() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create_index_key_path", false]], "create_job() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.create_job", false]], "create_new_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_new_version", false]], "create_object_list() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.create_object_list", false]], "create_program() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.create_program", false]], "create_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.create_project", false]], "create_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_record", false]], "created_time (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.created_time", false]], "curl() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.curl", false]], "current_dir (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.CURRENT_DIR", false]], "current_dir (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.CURRENT_DIR", false]], "current_dir (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.CURRENT_DIR", false]], "delete() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete", false]], "delete_alias() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_alias", false]], "delete_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_aliases", false]], "delete_all_guids() (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.delete_all_guids", false]], "delete_file() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.delete_file", false]], "delete_file_locations() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.delete_file_locations", false]], "delete_index_key_path() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_index_key_path", false]], "delete_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_node", false]], "delete_nodes() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_nodes", false]], "delete_object() (gen3.object.gen3object method)": [[6, "gen3.object.Gen3Object.delete_object", false]], "delete_program() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_program", false]], "delete_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_project", false]], "delete_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.delete_record", false]], "delete_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_record", false]], "delete_records() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_records", false]], "download() (gen3.tools.download.drs_download.downloadable method)": [[10, "gen3.tools.download.drs_download.Downloadable.download", false]], "download() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.download", false]], "download() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.download", false]], "download_files_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.download_files_in_drs_manifest", false]], "download_single() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.download_single", false]], "download_url() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.download_url", false]], "downloadable (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.Downloadable", false]], "downloadmanager (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.DownloadManager", false]], "downloadstatus (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.DownloadStatus", false]], "end_time (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.end_time", false]], "endpoint (gen3.metadata.gen3metadata attribute)": [[5, "gen3.metadata.Gen3Metadata.endpoint", false]], "export_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.export_node", false]], "export_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.export_record", false]], "file_name (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.file_name", false]], "file_name (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.file_name", false]], "file_size (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.file_size", false]], "file_size (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.file_size", false]], "gen3.tools": [[9, "module-gen3.tools", false]], "gen3.tools.download.drs_download": [[10, "module-gen3.tools.download.drs_download", false]], "gen3.tools.indexing.download_manifest": [[11, "module-gen3.tools.indexing.download_manifest", false]], "gen3.tools.indexing.index_manifest": [[11, "module-gen3.tools.indexing.index_manifest", false]], "gen3.tools.indexing.verify_manifest": [[11, "module-gen3.tools.indexing.verify_manifest", false]], "gen3.tools.metadata.ingest_manifest": [[12, "module-gen3.tools.metadata.ingest_manifest", false]], "gen3auth (class in gen3.auth)": [[0, "gen3.auth.Gen3Auth", false]], "gen3file (class in gen3.file)": [[1, "gen3.file.Gen3File", false]], "gen3index (class in gen3.index)": [[3, "gen3.index.Gen3Index", false]], "gen3jobs (class in gen3.jobs)": [[4, "gen3.jobs.Gen3Jobs", false]], "gen3metadata (class in gen3.metadata)": [[5, "gen3.metadata.Gen3Metadata", false]], "gen3object (class in gen3.object)": [[6, "gen3.object.Gen3Object", false]], "gen3query (class in gen3.query)": [[7, "gen3.query.Gen3Query", false]], "gen3submission (class in gen3.submission)": [[8, "gen3.submission.Gen3Submission", false]], "gen3wsstorage (class in gen3.wss)": [[13, "gen3.wss.Gen3WsStorage", false]], "get() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get", false]], "get() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get", false]], "get_access_token() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.get_access_token", false]], "get_access_token_from_wts() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.get_access_token_from_wts", false]], "get_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_aliases", false]], "get_all_records() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_all_records", false]], "get_dictionary_all() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_dictionary_all", false]], "get_dictionary_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_dictionary_node", false]], "get_fresh_token() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.get_fresh_token", false]], "get_graphql_schema() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_graphql_schema", false]], "get_guids_prefix() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_guids_prefix", false]], "get_index_key_paths() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_index_key_paths", false]], "get_latest_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_latest_version", false]], "get_output() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_output", false]], "get_presigned_url() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.get_presigned_url", false]], "get_programs() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_programs", false]], "get_project_dictionary() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_project_dictionary", false]], "get_project_manifest() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_project_manifest", false]], "get_projects() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_projects", false]], "get_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_record", false]], "get_record_doc() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_record_doc", false]], "get_records() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_records", false]], "get_records_on_page() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_records_on_page", false]], "get_stats() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_stats", false]], "get_status() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_status", false]], "get_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_urls", false]], "get_valid_guids() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_valid_guids", false]], "get_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_version", false]], "get_version() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_version", false]], "get_version() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_version", false]], "get_versions() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_versions", false]], "get_with_params() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_with_params", false]], "graphql_query() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.graphql_query", false]], "guid (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.GUID", false]], "guid_type_for_indexed_file_object (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.GUID_TYPE_FOR_INDEXED_FILE_OBJECT", false]], "guid_type_for_non_indexed_file_object (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.GUID_TYPE_FOR_NON_INDEXED_FILE_OBJECT", false]], "hostname (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.hostname", false]], "index_object_manifest() (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.index_object_manifest", false]], "indexd_record_page_size (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.INDEXD_RECORD_PAGE_SIZE", false]], "is_healthy() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.is_healthy", false]], "is_healthy() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.is_healthy", false]], "is_healthy() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.is_healthy", false]], "list_access_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_access_in_drs_manifest", false]], "list_drs_object() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_drs_object", false]], "list_files_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_files_in_drs_manifest", false]], "list_jobs() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.list_jobs", false]], "load() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.load", false]], "load_manifest() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.load_manifest", false]], "ls() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.ls", false]], "ls_path() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.ls_path", false]], "manifest (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.Manifest", false]], "max_concurrent_requests (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.MAX_CONCURRENT_REQUESTS", false]], "max_concurrent_requests (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.MAX_CONCURRENT_REQUESTS", false]], "max_concurrent_requests (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.MAX_CONCURRENT_REQUESTS", false]], "md5 (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.MD5", false]], "md5sum (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.md5sum", false]], "module": [[9, "module-gen3.tools", false], [10, "module-gen3.tools.download.drs_download", false], [11, "module-gen3.tools.indexing.download_manifest", false], [11, "module-gen3.tools.indexing.index_manifest", false], [11, "module-gen3.tools.indexing.verify_manifest", false], [12, "module-gen3.tools.metadata.ingest_manifest", false]], "object_id (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.object_id", false]], "object_id (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.object_id", false]], "object_type (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.object_type", false]], "open_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.open_project", false]], "pprint() (gen3.tools.download.drs_download.downloadable method)": [[10, "gen3.tools.download.drs_download.Downloadable.pprint", false]], "prev_guid (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.PREV_GUID", false]], "query() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.query", false]], "query() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.query", false]], "query() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.query", false]], "query_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.query_urls", false]], "raw_data_download() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.raw_data_download", false]], "refresh_access_token() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.refresh_access_token", false]], "resolve_objects() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.resolve_objects", false]], "rm() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.rm", false]], "rm_path() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.rm_path", false]], "size (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.SIZE", false]], "start_time (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.start_time", false]], "status (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.status", false]], "submit_file() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.submit_file", false]], "submit_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.submit_record", false]], "threadcontrol (class in gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.ThreadControl", false]], "tmp_folder (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.TMP_FOLDER", false]], "update() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.update", false]], "update_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.update_aliases", false]], "update_blank() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.update_blank", false]], "update_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.update_record", false]], "updated_time (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.updated_time", false]], "upload() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.upload", false]], "upload_file() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.upload_file", false]], "upload_file_to_guid() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.upload_file_to_guid", false]], "upload_url() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.upload_url", false]], "urls (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.URLS", false]], "user_access() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.user_access", false]]}, "objects": {"gen3": [[9, 3, 0, "-", "tools"]], "gen3.auth": [[0, 0, 1, "", "Gen3Auth"]], "gen3.auth.Gen3Auth": [[0, 1, 1, "", "curl"], [0, 1, 1, "", "get_access_token"], [0, 1, 1, "", "get_access_token_from_wts"], [0, 1, 1, "", "refresh_access_token"]], "gen3.file": [[1, 0, 1, "", "Gen3File"]], "gen3.file.Gen3File": [[1, 1, 1, "", "delete_file"], [1, 1, 1, "", "delete_file_locations"], [1, 1, 1, "", "download_single"], [1, 1, 1, "", "get_presigned_url"], [1, 1, 1, "", "upload_file"], [1, 1, 1, "", "upload_file_to_guid"]], "gen3.index": [[3, 0, 1, "", "Gen3Index"]], "gen3.index.Gen3Index": [[3, 1, 1, "", "async_create_record"], [3, 1, 1, "", "async_get_record"], [3, 1, 1, "", "async_get_records_from_checksum"], [3, 1, 1, "", "async_get_records_on_page"], [3, 1, 1, "", "async_get_with_params"], [3, 1, 1, "", "async_query_urls"], [3, 1, 1, "", "async_update_record"], [3, 1, 1, "", "create_blank"], [3, 1, 1, "", "create_new_version"], [3, 1, 1, "", "create_record"], [3, 1, 1, "", "delete_record"], [3, 1, 1, "", "get"], [3, 1, 1, "", "get_all_records"], [3, 1, 1, "", "get_guids_prefix"], [3, 1, 1, "", "get_latest_version"], [3, 1, 1, "", "get_record"], [3, 1, 1, "", "get_record_doc"], [3, 1, 1, "", "get_records"], [3, 1, 1, "", "get_records_on_page"], [3, 1, 1, "", "get_stats"], [3, 1, 1, "", "get_urls"], [3, 1, 1, "", "get_valid_guids"], [3, 1, 1, "", "get_version"], [3, 1, 1, "", "get_versions"], [3, 1, 1, "", "get_with_params"], [3, 1, 1, "", "is_healthy"], [3, 1, 1, "", "query_urls"], [3, 1, 1, "", "update_blank"], [3, 1, 1, "", "update_record"]], "gen3.jobs": [[4, 0, 1, "", "Gen3Jobs"]], "gen3.jobs.Gen3Jobs": [[4, 1, 1, "", "async_run_job_and_wait"], [4, 1, 1, "", "create_job"], [4, 1, 1, "", "get_output"], [4, 1, 1, "", "get_status"], [4, 1, 1, "", "get_version"], [4, 1, 1, "", "is_healthy"], [4, 1, 1, "", "list_jobs"]], "gen3.metadata": [[5, 0, 1, "", "Gen3Metadata"]], "gen3.metadata.Gen3Metadata": [[5, 1, 1, "", "async_create"], [5, 1, 1, "", "async_create_aliases"], [5, 1, 1, "", "async_delete_alias"], [5, 1, 1, "", "async_delete_aliases"], [5, 1, 1, "", "async_get"], [5, 1, 1, "", "async_get_aliases"], [5, 1, 1, "", "async_update"], [5, 1, 1, "", "async_update_aliases"], [5, 2, 1, "", "auth_provider"], [5, 1, 1, "", "batch_create"], [5, 1, 1, "", "create"], [5, 1, 1, "", "create_aliases"], [5, 1, 1, "", "create_index_key_path"], [5, 1, 1, "", "delete"], [5, 1, 1, "", "delete_alias"], [5, 1, 1, "", "delete_aliases"], [5, 1, 1, "", "delete_index_key_path"], [5, 2, 1, "", "endpoint"], [5, 1, 1, "", "get"], [5, 1, 1, "", "get_aliases"], [5, 1, 1, "", "get_index_key_paths"], [5, 1, 1, "", "get_version"], [5, 1, 1, "", "is_healthy"], [5, 1, 1, "", "query"], [5, 1, 1, "", "update"], [5, 1, 1, "", "update_aliases"]], "gen3.object": [[6, 0, 1, "", "Gen3Object"]], "gen3.object.Gen3Object": [[6, 1, 1, "", "delete_object"]], "gen3.query": [[7, 0, 1, "", "Gen3Query"]], "gen3.query.Gen3Query": [[7, 1, 1, "", "graphql_query"], [7, 1, 1, "", "query"], [7, 1, 1, "", "raw_data_download"]], "gen3.submission": [[8, 0, 1, "", "Gen3Submission"]], "gen3.submission.Gen3Submission": [[8, 1, 1, "", "create_program"], [8, 1, 1, "", "create_project"], [8, 1, 1, "", "delete_node"], [8, 1, 1, "", "delete_nodes"], [8, 1, 1, "", "delete_program"], [8, 1, 1, "", "delete_project"], [8, 1, 1, "", "delete_record"], [8, 1, 1, "", "delete_records"], [8, 1, 1, "", "export_node"], [8, 1, 1, "", "export_record"], [8, 1, 1, "", "get_dictionary_all"], [8, 1, 1, "", "get_dictionary_node"], [8, 1, 1, "", "get_graphql_schema"], [8, 1, 1, "", "get_programs"], [8, 1, 1, "", "get_project_dictionary"], [8, 1, 1, "", "get_project_manifest"], [8, 1, 1, "", "get_projects"], [8, 1, 1, "", "open_project"], [8, 1, 1, "", "query"], [8, 1, 1, "", "submit_file"], [8, 1, 1, "", "submit_record"]], "gen3.tools.download": [[10, 3, 0, "-", "drs_download"]], "gen3.tools.download.drs_download": [[10, 0, 1, "", "DownloadManager"], [10, 0, 1, "", "DownloadStatus"], [10, 0, 1, "", "Downloadable"], [10, 0, 1, "", "Manifest"], [10, 4, 1, "", "download_files_in_drs_manifest"], [10, 4, 1, "", "list_access_in_drs_manifest"], [10, 4, 1, "", "list_drs_object"], [10, 4, 1, "", "list_files_in_drs_manifest"]], "gen3.tools.download.drs_download.DownloadManager": [[10, 1, 1, "", "cache_hosts_wts_tokens"], [10, 1, 1, "", "download"], [10, 1, 1, "", "get_fresh_token"], [10, 1, 1, "", "resolve_objects"], [10, 1, 1, "", "user_access"]], "gen3.tools.download.drs_download.DownloadStatus": [[10, 2, 1, "", "end_time"], [10, 2, 1, "", "start_time"], [10, 2, 1, "", "status"]], "gen3.tools.download.drs_download.Downloadable": [[10, 2, 1, "", "_manager"], [10, 2, 1, "", "access_methods"], [10, 2, 1, "", "children"], [10, 2, 1, "", "created_time"], [10, 1, 1, "", "download"], [10, 2, 1, "", "file_name"], [10, 2, 1, "", "file_size"], [10, 2, 1, "", "hostname"], [10, 2, 1, "", "object_id"], [10, 2, 1, "", "object_type"], [10, 1, 1, "", "pprint"], [10, 2, 1, "", "updated_time"]], "gen3.tools.download.drs_download.Manifest": [[10, 2, 1, "", "commons_url"], [10, 1, 1, "", "create_object_list"], [10, 2, 1, "", "file_name"], [10, 2, 1, "", "file_size"], [10, 1, 1, "", "load"], [10, 1, 1, "", "load_manifest"], [10, 2, 1, "", "md5sum"], [10, 2, 1, "", "object_id"]], "gen3.tools.indexing": [[11, 3, 0, "-", "download_manifest"], [11, 3, 0, "-", "index_manifest"], [11, 3, 0, "-", "verify_manifest"]], "gen3.tools.indexing.download_manifest": [[11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "INDEXD_RECORD_PAGE_SIZE"], [11, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [11, 2, 1, "", "TMP_FOLDER"], [11, 4, 1, "", "async_download_object_manifest"]], "gen3.tools.indexing.index_manifest": [[11, 2, 1, "", "ACLS"], [11, 2, 1, "", "AUTHZ"], [11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "GUID"], [11, 2, 1, "", "MD5"], [11, 2, 1, "", "PREV_GUID"], [11, 2, 1, "", "SIZE"], [11, 0, 1, "", "ThreadControl"], [11, 2, 1, "", "URLS"], [11, 4, 1, "", "delete_all_guids"], [11, 4, 1, "", "index_object_manifest"]], "gen3.tools.indexing.verify_manifest": [[11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [11, 4, 1, "", "async_verify_object_manifest"]], "gen3.tools.metadata": [[12, 3, 0, "-", "ingest_manifest"]], "gen3.tools.metadata.ingest_manifest": [[12, 2, 1, "", "COLUMN_TO_USE_AS_GUID"], [12, 2, 1, "", "GUID_TYPE_FOR_INDEXED_FILE_OBJECT"], [12, 2, 1, "", "GUID_TYPE_FOR_NON_INDEXED_FILE_OBJECT"], [12, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [12, 4, 1, "", "async_ingest_metadata_manifest"], [12, 4, 1, "", "async_query_urls_from_indexd"]], "gen3.wss": [[13, 0, 1, "", "Gen3WsStorage"]], "gen3.wss.Gen3WsStorage": [[13, 1, 1, "", "copy"], [13, 1, 1, "", "download"], [13, 1, 1, "", "download_url"], [13, 1, 1, "", "ls"], [13, 1, 1, "", "ls_path"], [13, 1, 1, "", "rm"], [13, 1, 1, "", "rm_path"], [13, 1, 1, "", "upload"], [13, 1, 1, "", "upload_url"]]}, "objnames": {"0": ["py", "class", "Python class"], "1": ["py", "method", "Python method"], "2": ["py", "attribute", "Python attribute"], "3": ["py", "module", "Python module"], "4": ["py", "function", "Python function"]}, "objtypes": {"0": "py:class", "1": "py:method", "2": "py:attribute", "3": "py:module", "4": "py:function"}, "terms": {"": [1, 4, 8, 10, 11], "0": [5, 7, 8, 11], "0046513": [], "0185335": [], "0304558": [], "052073": [], "0576868": [], "058966": [], "064572": [], "07464": [], "0790412": [], "0a80fada010c": 11, "0a80fada096c": 11, "0a80fada097c": 11, "0a80fada098c": 11, "0a80fada099c": 11, "1": [4, 5, 8, 10, 11], "10": [5, 7, 11], "100": [8, 11], "1069167": [], "1187842": [], "11e9": 11, "1344793": [], "1676264": [], "1713542306": [], "1713542765": [], "1713543033": [], "1713543225": [], "1713543506": [], "1713543956": [], "1713544131": [], "1713544132": [], "1713544397": [], "1713544598": [], "1713545857": [], "1713545858": [], "1713549370": [], "1713549689": [], "1713550571": [], "1713557245": [], "1713559376": [], "1713560080": [], "1713560402": [], "1713560403": [], "1713561061": [], "1713562690": [], "1717169008": [], "1717170449": [], "1717171842": [], "1717171843": [], "1717172360": [], "1717172577": [], "1717172773": [], "1717175781": [], "1717175782": [], "1717176836": [], "1717177456": [], "1717177457": [], "1717184410": [], "1717184774": [11, 12], "1731803": [], "1771936": [], "1913438": [], "1922355": [], "2": [5, 11], "2184267": [], "24": [11, 12], "255e396f": 11, "2877355": [], "2930224": [], "2995": [], "3": [5, 11], "30": 8, "3041446": [], "3102272": [], "33": 5, "333": 5, "334353": 11, "343434344": 11, "363455714": 11, "3935378": [], "4": [5, 11], "4017086": [], "4052968": [], "4090197": [], "427549": [], "4463434": [], "450c": 11, "4632835": [], "4649727": [], "4714": 8, "473d83400bc1bc9dc635e334fadd433c": 11, "473d83400bc1bc9dc635e334faddd33c": 11, "473d83400bc1bc9dc635e334fadde33c": 11, "473d83400bc1bc9dc635e334faddf33c": 11, "4752307": [], "4756553": [], "5": [0, 5], "50": 7, "517729": [], "5202463": [], "543434443": 11, "5669184": [], "568308": [], "573305": [], "5821238": [], "5899982": [], "639124": [], "6631596": 12, "6692646": [], "6739478": [], "674552": [], "679862": [], "6f90": 8, "700799": [], "7232893": [], "756255": [], "760149": [], "7841465": [], "7d3d8d2083b4": 11, "8044841": [], "8375325": [], "8420": 8, "8630717": [], "8737464": [], "8874054": [], "8882551": [], "9236414": [], "9306026": [], "93d9af72": 11, "9a07": 11, "A": [1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "AND": 5, "Be": 1, "But": 5, "By": 11, "For": [1, 5, 6, 7, 8, 9, 11], "IF": 11, "If": [0, 1, 7, 11, 12], "In": 10, "It": 10, "NOT": 12, "OR": 5, "One": 7, "Such": 9, "THE": 11, "That": 3, "The": [0, 1, 2, 3, 5, 8, 10, 11], "There": 11, "These": 9, "To": 11, "Will": [4, 7, 10], "_get_acl_from_row": 11, "_get_authz_from_row": 11, "_get_file_name_from_row": 11, "_get_file_size_from_row": 11, "_get_guid_for_row": 12, "_get_guid_from_row": 11, "_get_md5_from_row": 11, "_get_urls_from_row": 11, "_guid_typ": 12, "_manag": [2, 9, 10], "_query_for_associated_indexd_record_guid": 12, "_ssl": [3, 4, 5], "a5c6": 11, "ab167e49d25b488939b1ede42752458b": 3, "about": [2, 3], "abov": 11, "access": [0, 1, 3, 7, 10], "access_method": [2, 9, 10], "access_token": 0, "accesstoken": 0, "acl": [2, 3, 9, 11], "across": 11, "act": 0, "action": [9, 11], "actual": 11, "ad": 3, "add": [3, 5], "addit": [3, 5, 10, 11], "admin": [5, 11], "admin_endpoint_suffix": 5, "after": 10, "against": [3, 7, 8, 11, 12], "algorithm": 3, "alia": [3, 5], "alias": 5, "aliv": 7, "all": [1, 3, 4, 5, 6, 7, 8, 10, 11, 12], "allow": [0, 6, 8, 10, 11, 12], "allowed_data_upload_bucket": 1, "along": 2, "alreadi": 9, "also": 1, "altern": [5, 11], "alwai": 5, "ammount": 12, "amount": [1, 9], "an": [0, 3, 6, 8, 10, 11], "ani": [0, 5, 10, 11], "anoth": 5, "api": [0, 5, 8, 11], "api_kei": 11, "appli": 7, "appropri": 13, "ar": [5, 7, 8, 9, 10, 11], "arbitrari": 0, "argument": [0, 13], "arrai": 8, "asc": 7, "assign": 9, "assist": 10, "associ": [3, 5], "assum": 11, "async": [3, 4, 5, 9, 11, 12], "async_cr": [2, 5], "async_create_alias": [2, 5], "async_create_record": [2, 3], "async_delete_alia": [2, 5], "async_delete_alias": [2, 5], "async_download_object_manifest": [2, 9, 11], "async_get": [2, 5], "async_get_alias": [2, 5], "async_get_record": [2, 3], "async_get_records_from_checksum": [2, 3], "async_get_records_on_pag": [2, 3], "async_get_with_param": [2, 3], "async_ingest_metadata_manifest": [2, 9, 12], "async_query_url": [2, 3], "async_query_urls_from_indexd": [2, 9, 12], "async_run_job_and_wait": [2, 4], "async_upd": [2, 5], "async_update_alias": [2, 5], "async_update_record": [2, 3], "async_verify_object_manifest": [2, 9, 11], "asynchron": [3, 4, 5], "asyncio": [11, 12], "asyncron": 5, "attach": [3, 5], "attempt": 11, "attribut": [10, 11], "auth": [1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "auth_provid": [1, 2, 3, 4, 5, 6, 7, 8, 13], "authbas": 0, "authent": 0, "author": 1, "authz": [0, 1, 2, 3, 9, 10, 11], "auto": [0, 2], "automat": 0, "avail": [1, 2, 10, 11], "az": 1, "b": [5, 11], "b0f1": 11, "bar": 10, "base": [0, 1, 3, 4, 5, 6, 7, 8, 9, 11, 13], "baseid": 3, "basic": [3, 11, 12], "batch_creat": [2, 5], "batch_siz": 8, "behalf": 0, "behavior": 11, "being": 3, "belong": 8, "below": 11, "blank": 3, "blob": [5, 7], "bodi": 3, "bool": [4, 5, 8, 10, 11, 12], "boolean": 3, "bownload": 10, "broad": 9, "broken": 9, "bucket": [1, 6], "bundl": 10, "byte": 10, "c": [5, 11], "cach": 10, "cache_hosts_wts_token": [2, 9, 10], "call": [10, 13], "can": [0, 3, 4, 8, 11, 12], "capabl": 9, "case": [0, 10], "categori": 9, "ccle": 8, "ccle_one_record": 8, "ccle_sample_nod": 8, "cdi": 7, "chang": [3, 11], "checksum": [3, 10], "checksum_typ": 3, "child": 10, "children": [2, 9, 10], "chunk_siz": 8, "class": [0, 2, 10, 11, 13], "cli": 10, "client": [0, 3], "client_credenti": 0, "client_id": 0, "client_scop": 0, "client_secret": 0, "code": [2, 8], "column": [11, 12], "column_to_use_as_guid": [2, 9, 12], "columna": 11, "columnb": 11, "columnc": 11, "com": 7, "comma": 11, "command": [10, 11], "common": [0, 1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13], "commons_url": [2, 9, 10, 11, 12], "complet": [4, 11], "complex": 7, "concat": 11, "concurr": [11, 12], "configur": 1, "connect": 12, "consist": 3, "constructor": 0, "contain": [0, 2, 5, 8, 9, 10, 11, 12], "content": [3, 13], "content_created_d": 3, "content_updated_d": 3, "continu": 10, "control": 3, "conveni": 10, "copi": [2, 13], "coroutin": 11, "correspond": 3, "count": 3, "crdc": 0, "creat": [2, 3, 4, 5, 6, 8, 10, 11], "create_alias": [2, 5], "create_blank": [2, 3], "create_index_key_path": [2, 5], "create_job": [2, 4], "create_new_vers": [2, 3], "create_object_list": [2, 9, 10], "create_program": [2, 8], "create_project": [2, 8], "create_record": [2, 3], "created_tim": [2, 9, 10], "creation": [3, 11], "cred": 3, "credenti": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "csv": [8, 11, 12], "curl": [0, 2], "current": [6, 8, 10], "current_dir": [2, 9, 11], "custom": 11, "d": 5, "d70b41b9": 8, "data": [0, 1, 3, 5, 7, 8, 10, 11], "data_spreadsheet": 8, "data_typ": 7, "data_upload_bucket": 1, "dataa": 11, "datab": 11, "databas": 5, "datacommon": 0, "datafil": 10, "datamanag": 10, "date": 3, "datetim": [1, 3, 10], "dbgap": 12, "dcf": 8, "def": 11, "default": [0, 1, 3, 7, 8, 11, 12], "defin": [5, 8, 10], "delai": 4, "delet": [0, 1, 2, 3, 5, 6, 8, 10, 11], "delete_alia": [2, 5], "delete_alias": [2, 5], "delete_all_guid": [2, 9, 11], "delete_fil": [1, 2], "delete_file_loc": [1, 2, 6], "delete_index_key_path": [2, 5], "delete_nod": [2, 8], "delete_object": [2, 6], "delete_program": [2, 8], "delete_project": [2, 8], "delete_record": [2, 3, 8], "delete_unpacked_packag": 10, "delimet": [11, 12], "delimit": 11, "demograph": 8, "deprec": 1, "descript": [3, 5], "desir": 11, "dest_path": 13, "dest_urlstr": 13, "dest_w": 13, "dest_wskei": 13, "detail": [2, 7, 10], "determin": [10, 11, 12], "dev": 11, "dict": [3, 4, 5, 10, 11, 12], "dictionari": [3, 4, 5, 7, 8], "did": 3, "differ": 5, "direct": 0, "directori": [10, 11], "disabl": 10, "discoveri": 10, "disk": 13, "dispatch": 4, "dist_resolut": 3, "distribut": 3, "doc": [7, 10], "docstr": 2, "document": [1, 3], "doe": [0, 12], "domain": [11, 12], "done": 4, "download": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 13], "download_files_in_drs_manifest": [2, 9, 10], "download_list": 10, "download_manifest": 11, "download_singl": [1, 2], "download_url": [2, 13], "downloadmanag": [2, 9, 10], "downloadstatu": [2, 9, 10], "dr": [2, 9], "drs_download": 10, "drs_hostnam": 10, "drsdownload": 10, "drsobjecttyp": 10, "e": [5, 10], "e043ab8b77b9": 8, "each": [3, 8, 10, 11], "effici": 9, "eg": 3, "either": 8, "elasticsearch": 7, "els": [0, 12], "elsewher": 12, "empti": [8, 11], "enabl": 11, "end": [5, 10], "end_tim": [2, 9, 10], "endpoint": [0, 1, 2, 3, 4, 5, 7, 8, 13], "entir": 8, "entri": [3, 11], "env": 0, "environ": 0, "equal": 7, "error": [10, 11, 12], "error_nam": 11, "etc": 8, "even": 11, "everi": [9, 11], "everyth": 11, "ex": [0, 11, 12], "exampl": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "exclud": 3, "execut": [7, 8, 11], "exist": [1, 3, 5, 6, 9, 12], "expect": [5, 9, 11], "experi": 8, "expir": [0, 1], "expires_in": 1, "export": [8, 10], "export_nod": [2, 8], "export_record": [2, 8], "f1f8": 11, "factori": 10, "fail": [8, 10], "fals": [3, 5, 6, 10, 11], "featur": [1, 6], "fenc": [0, 1], "fetch": 0, "field": [3, 5, 7, 11, 12], "fieldnam": 11, "file": [0, 2, 3, 4, 8, 9, 10, 11, 12, 13], "file_nam": [1, 2, 3, 9, 10, 11], "file_s": [2, 9, 10, 11], "file_st": 3, "fileformat": 8, "filenam": [0, 8, 10, 11, 12], "files": 10, "fill": 12, "filter": [5, 7], "filter_object": 7, "first": [7, 8], "flag": 11, "folder": 11, "follow": [0, 11], "forc": 11, "force_metadata_columns_even_if_empti": 11, "form": 13, "format": [3, 5, 8, 11], "from": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13], "func_to_parse_row": [11, 12], "function": [2, 3, 4, 5, 9, 10, 11, 12], "g": 10, "gen3": [10, 11, 12], "gen3_api_kei": 0, "gen3_oidc_client_creds_secret": 0, "gen3auth": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "gen3fil": [1, 2], "gen3index": [2, 3], "gen3job": [2, 4, 10], "gen3metadata": [2, 5], "gen3object": [2, 6], "gen3queri": [2, 7], "gen3submiss": [2, 8], "gen3wsstorag": [2, 13], "gener": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 13], "get": [0, 1, 2, 3, 4, 5, 8, 10, 11, 12, 13], "get_access_token": [0, 2], "get_access_token_from_wt": [0, 2], "get_alias": [2, 5], "get_all_record": [2, 3], "get_dictionary_al": [2, 8], "get_dictionary_nod": [2, 8], "get_fresh_token": [2, 9, 10], "get_graphql_schema": [2, 8], "get_guid_from_fil": 12, "get_guids_prefix": [2, 3], "get_index_key_path": [2, 5], "get_latest_vers": [2, 3], "get_output": [2, 4], "get_presigned_url": [1, 2], "get_program": [2, 8], "get_project": [2, 8], "get_project_dictionari": [2, 8], "get_project_manifest": [2, 8], "get_record": [2, 3], "get_record_doc": [2, 3], "get_records_on_pag": [2, 3], "get_stat": [2, 3], "get_statu": [2, 4], "get_url": [2, 3], "get_valid_guid": [2, 3], "get_vers": [2, 3, 4, 5], "get_with_param": [2, 3], "giangb": 11, "github": [2, 7], "give": 1, "given": [0, 3, 4, 5, 8, 10, 12, 13], "global": [4, 5], "good": 3, "grant": 0, "graph": 8, "graphql": [7, 8], "graphql_queri": [2, 7], "group": 3, "guid": [1, 2, 3, 5, 6, 9, 11, 12], "guid_exampl": 11, "guid_for_row": 12, "guid_from_fil": 12, "guid_type_for_indexed_file_object": [2, 9, 12], "guid_type_for_non_indexed_file_object": [2, 9, 12], "guppi": 7, "ha": [0, 11], "handl": [3, 10], "hardcod": 0, "has_vers": 3, "hash": [3, 11], "hash_typ": 3, "have": [5, 11], "header": 11, "healthi": [3, 4, 5], "help": 11, "helper": 2, "hit": 11, "host": 10, "hostnam": [2, 9, 10], "how": [8, 11], "howto": 10, "http": [0, 7, 11, 12], "i": [0, 1, 2, 3, 4, 5, 8, 10, 11, 12], "id": [0, 1, 3, 5, 10, 11], "idea": 3, "identifi": [3, 5, 9, 11], "idp": 0, "illustr": 11, "immut": 3, "implement": 0, "implic": 11, "import": 11, "includ": [0, 3], "indent": 10, "index": [0, 2, 5, 9], "index_manifest": 11, "index_object_manifest": [2, 9, 11], "indexd": [1, 3, 6, 10, 11, 12], "indexd_field": [11, 12], "indexd_record_page_s": [2, 9, 11], "indexed_file_object_guid": 12, "indic": [0, 11], "infil": 10, "info": [3, 11], "inform": [2, 3, 10], "ingest": [2, 9], "ingest_manifest": 12, "initi": [0, 10], "input": [4, 10, 11], "input_manifest": 11, "instal": [0, 2, 11], "instanc": [1, 3, 6, 7, 8, 9, 10], "instead": [1, 7, 11], "int": [1, 3, 5, 7, 8, 10, 11, 12], "integ": [1, 3, 8], "intend": 0, "interact": [1, 3, 4, 5, 6, 8, 13], "interest": 10, "interpret": 0, "introspect": 8, "involv": 9, "is_healthi": [2, 3, 4, 5], "is_indexed_file_object": 12, "isn": 1, "issu": 0, "its": [1, 3], "job": 2, "job_id": 4, "job_input": 4, "job_nam": 4, "json": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "just": [5, 11, 12], "jwt": 0, "kei": [0, 3, 5, 13], "know": 11, "known": 10, "kwarg": [3, 4, 5], "l": [2, 13], "larg": 9, "last": 10, "latest": 3, "least": 3, "level": 6, "librari": 11, "like": [3, 5, 9, 11, 12], "limit": [1, 3, 5, 12], "linear": 4, "linux": 10, "list": [0, 1, 3, 4, 5, 7, 8, 10, 11, 13], "list_access_in_drs_manifest": [2, 9, 10], "list_drs_object": [2, 9, 10], "list_files_in_drs_manifest": [2, 9, 10], "list_job": [2, 4], "live": [11, 12], "load": [2, 9, 10], "load_manifest": [2, 9, 10], "local": [0, 13], "locat": [1, 6], "lock": 12, "log": [8, 10, 11, 12], "logic": [5, 12], "loop": 11, "ls_path": [2, 13], "maco": 11, "made": 3, "mai": [0, 9, 11], "main": 10, "make": [9, 11], "manag": [1, 5, 10], "mani": [8, 11], "manifest": [2, 8, 9, 10, 11, 12], "manifest_1": 10, "manifest_fil": [11, 12], "manifest_file_delimit": [11, 12], "manifest_row_pars": [11, 12], "map": [0, 11], "mark": 8, "master": 7, "match": [3, 5, 12], "max": 5, "max_concurrent_request": [2, 9, 11, 12], "max_presigned_url_ttl": 1, "max_tri": 8, "maximum": [11, 12], "md": [5, 7, 10, 12], "md5": [2, 3, 9, 11], "md5_hash": 11, "md5sum": [2, 9, 10], "mean": 8, "mechan": 3, "merg": 5, "metadata": [2, 3, 6, 9, 11], "metadata_list": 5, "metadata_sourc": 12, "metadata_typ": 12, "metdata": 12, "method": [1, 7, 10], "minimum": 10, "minut": 0, "mode": 7, "modul": [2, 10, 11], "more": [2, 5, 7, 9, 10], "most": 9, "mostli": 2, "multipl": [8, 11], "must": [1, 5], "my_common": 10, "my_credenti": 10, "my_field": 7, "my_index": 7, "my_program": 7, "my_project": 7, "name": [3, 4, 8, 10, 11, 12, 13], "namespac": [0, 12], "necessari": [3, 5], "need": [3, 7, 10, 11], "nest": 5, "net": 11, "never": 0, "new": [0, 3], "node": 8, "node_nam": 8, "node_typ": 8, "none": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "note": [0, 3, 11, 12], "noth": [3, 6], "now": [1, 8], "num": 5, "num_process": 11, "num_total_fil": 11, "number": [3, 7, 8, 11, 12], "o": 0, "object": [1, 2, 3, 4, 5, 7, 8, 9, 10, 11, 13], "object_id": [1, 2, 9, 10], "object_list": 10, "object_typ": [2, 9, 10], "objectid": 10, "obtain": [0, 10], "occur": 10, "off": 5, "offset": [5, 7], "oidc": 0, "old": 3, "one": [3, 5, 10, 11], "onli": [3, 5, 7, 8, 10, 11], "open": [8, 10, 11], "open_project": [2, 8], "openid": 0, "opt": 0, "option": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11], "order": [0, 8], "ordered_node_list": 8, "org": 10, "otherwis": 10, "output": [4, 5, 11, 12], "output_dir": 10, "output_filenam": [11, 12], "overrid": [0, 11, 12], "overwrit": 5, "own": 0, "packag": 10, "page": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 13], "pagin": 3, "parallel": 11, "param": [3, 5, 8, 10], "paramet": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "pars": [10, 11, 12, 13], "parser": [11, 12], "particular": 0, "pass": [0, 7, 8, 10], "password": [11, 12], "path": [0, 1, 5, 10, 11, 13], "path_to_manifest": 11, "pattern": [3, 12], "pdcdatastor": 11, "pend": 10, "per": [11, 12], "peregrin": 8, "permiss": 10, "persist": 9, "phs0001": 11, "phs0002": 11, "pick": 1, "pla": 11, "place": 11, "planx": 11, "point": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "popul": [10, 12], "posit": [1, 7], "possibl": 10, "post": [0, 11], "pprint": [2, 9, 10], "prefix": 3, "presign": 1, "pretti": 10, "prev_guid": [2, 9, 11], "previou": [3, 11], "previous": 4, "print": [8, 10], "process": 11, "processed_fil": 11, "profil": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "program": [8, 11], "progress": [8, 10], "project": [8, 11], "project_id": [7, 8], "protocol": 1, "provid": [0, 1, 3, 5, 7, 8, 12], "public": [3, 5], "put": 0, "py": 11, "python": [2, 9, 11], "python3": 11, "python_subprocess_command": 11, "queri": [1, 2, 3, 5, 8, 11, 12], "query_str": 7, "query_txt": [7, 8], "query_url": [2, 3], "quickstart": 2, "rather": 0, "raw": [7, 11], "raw_data_download": [2, 7], "rbac": 3, "read": [3, 5, 11], "readm": 2, "reason": 10, "record": [1, 3, 5, 7, 8, 11, 12], "refresh": [0, 10], "refresh_access_token": [0, 2], "refresh_fil": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "refresh_token": 0, "regist": 8, "regular": 7, "relat": 9, "remov": [1, 6, 11, 13], "replac": 11, "replace_url": 11, "repo": 2, "repres": [3, 5, 10], "represent": [1, 3], "request": [0, 1, 3, 5, 8, 11, 12], "requir": 10, "resolv": 10, "resolve_object": [2, 9, 10], "respect": 7, "respons": [0, 1, 3, 4, 5], "result": [1, 8, 10, 11], "retri": 8, "retriev": [1, 8, 10, 12], "return": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11], "return_full_metadata": 5, "rev": 3, "revers": 8, "revis": 3, "right": 1, "rm": [2, 13], "rm_path": [2, 13], "root": [11, 12], "row": [7, 8, 11, 12], "row_offset": 8, "rtype": 3, "run": [8, 11], "s3": [1, 10, 11], "safe": 11, "same": [5, 11, 13], "sampl": [8, 10], "sandbox": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "save": 10, "save_directori": 10, "schema": 8, "scope": [0, 1], "screen": 8, "script": 2, "search": [0, 2, 3], "second": [1, 4], "secret": 0, "see": [7, 10, 11], "self": 10, "semaphon": 12, "semaphor": 12, "separ": [0, 11], "server": 10, "servic": [1, 3, 4, 5, 6, 8, 11, 12, 13], "service_loc": [3, 4, 5], "session": 11, "set": [0, 1, 5, 10], "setup": 2, "sheepdog": 8, "should": [0, 8, 11], "show": 10, "show_progress": 10, "shown": 11, "sign": 1, "signpost": 3, "similar": 10, "simpl": 3, "simpli": 11, "sinc": 3, "singl": [1, 5, 8], "size": [2, 3, 9, 10, 11], "skip": 8, "sleep": 4, "so": 11, "some": [0, 2], "someth": 11, "sort": 7, "sort_field": 7, "sort_object": 7, "sourc": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "space": [0, 11], "specif": [5, 8, 11, 12], "specifi": [0, 1, 3, 11, 13], "spreadsheet": 8, "src_path": 13, "src_urlstr": 13, "src_w": 13, "src_wskei": 13, "ssl": [3, 4, 5], "start": [3, 4, 7, 8, 10], "start_tim": [2, 9, 10], "static": 10, "statu": [2, 4, 9, 10], "storag": [1, 2, 6], "store": [1, 3, 10], "str": [0, 1, 3, 4, 5, 7, 8, 10, 11, 12], "string": [0, 3, 5, 11, 13], "strip": 11, "sub": 8, "subject": [7, 8], "submiss": 2, "submit": [8, 11], "submit_additional_metadata_column": 11, "submit_fil": [2, 8], "submit_record": [2, 8], "submitter_id": 7, "success": 10, "successfulli": 10, "suffici": 3, "suppli": 3, "support": [0, 1, 5, 8, 11], "sure": 1, "synchron": 11, "syntax": 7, "system": [6, 7, 8, 9], "t": [1, 5, 11], "tab": 11, "task": 9, "temporari": 11, "test": 11, "test1": 11, "test2": 11, "test3": 11, "test4": 11, "test5": 11, "text": [1, 7, 8], "than": [0, 5], "thei": [0, 10], "them": [10, 11], "thi": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "those": 11, "thread": 11, "thread_num": 11, "threadcontrol": [2, 9, 11], "through": [8, 11], "tier": 7, "time": [1, 3, 8, 10, 11], "timestamp": 10, "tmp_folder": [2, 9, 11], "token": [0, 10], "tool": 2, "total": 11, "treat": [1, 5], "tree": 10, "true": [3, 4, 5, 6, 7, 8, 10, 11, 12], "try": 0, "tsv": [8, 11, 12], "tupl": [0, 3, 11, 12], "type": [1, 3, 4, 5, 7, 8, 10, 11, 12], "typic": 10, "uc": 7, "unaccess": 7, "under": [0, 8, 13], "uniqu": [1, 5], "unknown": 10, "unpack": 10, "unpack_packag": 10, "until": [4, 10], "up": [5, 9], "updat": [2, 3, 5, 10, 11], "update_alias": [2, 5], "update_blank": [2, 3], "update_record": [2, 3], "updated_tim": [2, 9, 10], "upload": [1, 2, 3, 8, 13], "upload_fil": [1, 2], "upload_file_to_guid": [1, 2], "upload_url": [2, 13], "url": [1, 2, 3, 9, 10, 11, 12, 13], "urls_metadata": 3, "us": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "usag": 11, "use_agg_md": 5, "user": [0, 10, 12], "user_access": [2, 9, 10], "usual": 12, "utcnow": 1, "util": 9, "uuid": [1, 3, 8], "uuid1": 8, "uuid2": 8, "valid": [3, 7], "valu": [0, 1, 3, 5, 7, 10, 11], "value_from_indexd": 11, "value_from_manifest": 11, "variabl": [0, 7, 8], "variou": 2, "verbos": [7, 8], "verif": 11, "verifi": [2, 9], "verify_manifest": 11, "verify_object_manifest": 11, "version": [3, 4, 5], "vital_statu": 7, "w": 13, "wa": 0, "wai": 10, "wait": 4, "want": [0, 3, 8], "warn": 11, "we": [3, 11], "web": 0, "what": 5, "when": [0, 3, 7, 10, 12], "where": [0, 3, 5, 11, 12], "whether": [3, 4, 5, 8, 11, 12], "which": [8, 10], "while": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "whose": 5, "within": [0, 2, 9], "without": [3, 5], "won": 5, "work": [0, 10], "workaround": 11, "worksheet": 8, "workspac": [0, 2], "wrapper": 10, "write": 11, "ws_urlstr": 13, "wskei": 13, "wss": 13, "wt": [0, 10], "x": 11, "xlsx": 8, "you": [0, 3, 8, 11], "your": 0}, "titles": ["Gen3 Auth Helper", "Gen3 File Class", "Welcome to Gen3 SDK\u2019s documentation!", "Gen3 Index Class", "Gen3 Jobs Class", "Gen3 Metadata Class", "Gen3 Object Class", "Gen3 Query Class", "Gen3 Submission Class", "Gen3 Tools", "DRS Download Tools", "Indexing Tools", "Metadata Tools", "Gen3 Workspace Storage"], "titleterms": {"": 2, "auth": 0, "class": [1, 3, 4, 5, 6, 7, 8], "document": 2, "download": [10, 11], "dr": 10, "file": 1, "gen3": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 13], "helper": 0, "index": [3, 11], "indic": 2, "ingest": 12, "job": 4, "metadata": [5, 12], "object": 6, "queri": 7, "sdk": 2, "storag": 13, "submiss": 8, "tabl": 2, "tool": [9, 10, 11, 12], "verifi": 11, "welcom": 2, "workspac": 13}}) \ No newline at end of file diff --git a/docs/_build/html/tools/indexing.html b/docs/_build/html/tools/indexing.html index aa27b9bf9..c31442457 100644 --- a/docs/_build/html/tools/indexing.html +++ b/docs/_build/html/tools/indexing.html @@ -381,7 +381,7 @@

Indexing Tools
-async gen3.tools.indexing.verify_manifest.async_verify_object_manifest(commons_url, manifest_file, max_concurrent_requests=24, manifest_row_parsers={'acl': <function _get_acl_from_row>, 'authz': <function _get_authz_from_row>, 'file_name': <function _get_file_name_from_row>, 'file_size': <function _get_file_size_from_row>, 'guid': <function _get_guid_from_row>, 'md5': <function _get_md5_from_row>, 'urls': <function _get_urls_from_row>}, manifest_file_delimiter=None, output_filename='verify-manifest-errors-1717184410.5821238.log')[source]
+async gen3.tools.indexing.verify_manifest.async_verify_object_manifest(commons_url, manifest_file, max_concurrent_requests=24, manifest_row_parsers={'acl': <function _get_acl_from_row>, 'authz': <function _get_authz_from_row>, 'file_name': <function _get_file_name_from_row>, 'file_size': <function _get_file_size_from_row>, 'guid': <function _get_guid_from_row>, 'md5': <function _get_md5_from_row>, 'urls': <function _get_urls_from_row>}, manifest_file_delimiter=None, output_filename='verify-manifest-errors-1717184774.334353.log')[source]

Verify all file object records into a manifest csv

Parameters:
diff --git a/docs/_build/html/tools/metadata.html b/docs/_build/html/tools/metadata.html index 305ab05ce..3ac8b8a72 100644 --- a/docs/_build/html/tools/metadata.html +++ b/docs/_build/html/tools/metadata.html @@ -102,7 +102,7 @@

Metadata Tools
-async gen3.tools.metadata.ingest_manifest.async_ingest_metadata_manifest(commons_url, manifest_file, metadata_source, auth=None, max_concurrent_requests=24, manifest_row_parsers={'guid_for_row': <function _get_guid_for_row>, 'indexed_file_object_guid': <function _query_for_associated_indexd_record_guid>}, manifest_file_delimiter=None, output_filename='ingest-metadata-manifest-errors-1717184410.8737464.log', get_guid_from_file=True, metadata_type=None)[source]
+async gen3.tools.metadata.ingest_manifest.async_ingest_metadata_manifest(commons_url, manifest_file, metadata_source, auth=None, max_concurrent_requests=24, manifest_row_parsers={'guid_for_row': <function _get_guid_for_row>, 'indexed_file_object_guid': <function _query_for_associated_indexd_record_guid>}, manifest_file_delimiter=None, output_filename='ingest-metadata-manifest-errors-1717184774.6631596.log', get_guid_from_file=True, metadata_type=None)[source]

Ingest all metadata records into a manifest csv

Parameters:
From ca6da539cc6320e9c9837169720eefcbe37f0e2c Mon Sep 17 00:00:00 2001 From: Alex Date: Fri, 31 May 2024 14:51:54 -0500 Subject: [PATCH 61/62] chore(debug): more debug lines --- .github/workflows/build.yaml | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index a1f3b6268..5c6080e5b 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -65,7 +65,6 @@ jobs: run: | ls ./dist/pyinstaller/*/gen3 ls ./dist/pyinstaller/*/gen3/gen3 - ls ./dist/pyinstaller/*/gen3/gen3/gen3 cp ./dist/pyinstaller/*/gen3/gen3 ./gen3 ls ./gen3 --help From 53e7ba376c78664c8b3abba755f091c43a4e4d36 Mon Sep 17 00:00:00 2001 From: Avantol13 Date: Fri, 31 May 2024 19:53:06 +0000 Subject: [PATCH 62/62] Apply automatic documentation changes --- docs/_build/doctrees/environment.pickle | Bin 1579888 -> 1579893 bytes docs/_build/doctrees/tools/indexing.doctree | Bin 100286 -> 100291 bytes docs/_build/doctrees/tools/metadata.doctree | Bin 35934 -> 35934 bytes docs/_build/html/searchindex.js | 2 +- docs/_build/html/tools/indexing.html | 2 +- docs/_build/html/tools/metadata.html | 2 +- 6 files changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/_build/doctrees/environment.pickle b/docs/_build/doctrees/environment.pickle index ed9cd7634d0476830ef3ead215369eee9406d6f6..5e7923098c2b4959c761758399b58e10624d0ba7 100644 GIT binary patch delta 8004 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 REu0@P0k=K9RvEC){U3=+-<$vd delta 7735 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 diff --git a/docs/_build/doctrees/tools/indexing.doctree b/docs/_build/doctrees/tools/indexing.doctree index 35c1344813e7405a6020ea8a8d8e1c0e863312d9..02d02e858f74e5afe77245017550bd743a8a5b1c 100644 GIT binary patch delta 171 zcmdnj&vv+YZ7^Vl>G0IHt+AX_X)}C<@Baf+}g`u9gp|PR4 zq0#n2YsPM7#*5qk+A$tNlRD+VxRsmHe)>cQMm<4fO?o-`>FU!R-5G_UvQikbQ!?0N Sr(}rrKy;&88RW~DV+8VY7^WLoGRjQu+AX_X&Yp1*Be#jUxrv^!v5B#% z@%AEX#%^ZD3)}zMF&;vdIpe^%m7CFSx~wmwo&b^-y`21X_34eCjKWY!Np#668SJrB RGQ@fydQq$k_hrnn0svXSEdBrh diff --git a/docs/_build/doctrees/tools/metadata.doctree b/docs/_build/doctrees/tools/metadata.doctree index c1ba2539bcc2c3b730fbeb8fa26e36936fc4df3f..2282ecf82d772f77f8ecee90a7c07bd4cfef1291 100644 GIT binary patch delta 110 zcmcaNgX!K3rVU(LJf?;gMtTMY7M2!f=94q^Z8isKakHX`ZqC%-%OQxYPA?}vU48Pw Y9O21c78WRKC-+&nq6lohZ&4o%0D@m00RR91 delta 110 zcmcaNgX!K3rVU(LJSOJmCVFOO#)hVrW|K4ZZ8isKakHX`ZqC%-%OQxYPA?}vU48Pw Y9O21c78WRKC-+&nq6lohZ&4o%0Ed1a6#xJL diff --git a/docs/_build/html/searchindex.js b/docs/_build/html/searchindex.js index d93a5b453..6ff6152ee 100644 --- a/docs/_build/html/searchindex.js +++ b/docs/_build/html/searchindex.js @@ -1 +1 @@ -Search.setIndex({"alltitles": {"DRS Download Tools": [[10, "module-gen3.tools.download.drs_download"]], "Download": [[11, "module-gen3.tools.indexing.download_manifest"]], "Gen3 Auth Helper": [[0, "gen3-auth-helper"]], "Gen3 File Class": [[1, "gen3-file-class"]], "Gen3 Index Class": [[3, "gen3-index-class"]], "Gen3 Jobs Class": [[4, "gen3-jobs-class"]], "Gen3 Metadata Class": [[5, "gen3-metadata-class"]], "Gen3 Object Class": [[6, "gen3-object-class"]], "Gen3 Query Class": [[7, "gen3-query-class"]], "Gen3 Submission Class": [[8, "gen3-submission-class"]], "Gen3 Tools": [[9, "gen3-tools"]], "Gen3 Workspace Storage": [[13, "gen3-workspace-storage"]], "Index": [[11, "module-gen3.tools.indexing.index_manifest"]], "Indexing Tools": [[11, "indexing-tools"]], "Indices and tables": [[2, "indices-and-tables"]], "Ingest": [[12, "module-gen3.tools.metadata.ingest_manifest"]], "Metadata Tools": [[12, "metadata-tools"]], "Verify": [[11, "module-gen3.tools.indexing.verify_manifest"]], "Welcome to Gen3 SDK\u2019s documentation!": [[2, "welcome-to-gen3-sdk-s-documentation"]]}, "docnames": ["auth", "file", "index", "indexing", "jobs", "metadata", "object", "query", "submission", "tools", "tools/drs_pull", "tools/indexing", "tools/metadata", "wss"], "envversion": {"sphinx": 61, "sphinx.domains.c": 3, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 9, "sphinx.domains.index": 1, "sphinx.domains.javascript": 3, "sphinx.domains.math": 2, "sphinx.domains.python": 4, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx.ext.viewcode": 1}, "filenames": ["auth.rst", "file.rst", "index.rst", "indexing.rst", "jobs.rst", "metadata.rst", "object.rst", "query.rst", "submission.rst", "tools.rst", "tools/drs_pull.rst", "tools/indexing.rst", "tools/metadata.rst", "wss.rst"], "indexentries": {"_manager (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable._manager", false]], "access_methods (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.access_methods", false]], "acls (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.ACLS", false]], "async_create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_create", false]], "async_create_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_create_aliases", false]], "async_create_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_create_record", false]], "async_delete_alias() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_delete_alias", false]], "async_delete_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_delete_aliases", false]], "async_download_object_manifest() (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.async_download_object_manifest", false]], "async_get() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_get", false]], "async_get_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_get_aliases", false]], "async_get_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_record", false]], "async_get_records_from_checksum() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_records_from_checksum", false]], "async_get_records_on_page() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_records_on_page", false]], "async_get_with_params() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_with_params", false]], "async_ingest_metadata_manifest() (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.async_ingest_metadata_manifest", false]], "async_query_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_query_urls", false]], "async_query_urls_from_indexd() (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.async_query_urls_from_indexd", false]], "async_run_job_and_wait() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.async_run_job_and_wait", false]], "async_update() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_update", false]], "async_update_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_update_aliases", false]], "async_update_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_update_record", false]], "async_verify_object_manifest() (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.async_verify_object_manifest", false]], "auth_provider (gen3.metadata.gen3metadata attribute)": [[5, "gen3.metadata.Gen3Metadata.auth_provider", false]], "authz (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.AUTHZ", false]], "batch_create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.batch_create", false]], "cache_hosts_wts_tokens() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.cache_hosts_wts_tokens", false]], "children (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.children", false]], "column_to_use_as_guid (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.COLUMN_TO_USE_AS_GUID", false]], "commons_url (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.commons_url", false]], "copy() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.copy", false]], "create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create", false]], "create_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create_aliases", false]], "create_blank() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_blank", false]], "create_index_key_path() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create_index_key_path", false]], "create_job() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.create_job", false]], "create_new_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_new_version", false]], "create_object_list() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.create_object_list", false]], "create_program() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.create_program", false]], "create_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.create_project", false]], "create_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_record", false]], "created_time (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.created_time", false]], "curl() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.curl", false]], "current_dir (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.CURRENT_DIR", false]], "current_dir (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.CURRENT_DIR", false]], "current_dir (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.CURRENT_DIR", false]], "delete() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete", false]], "delete_alias() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_alias", false]], "delete_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_aliases", false]], "delete_all_guids() (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.delete_all_guids", false]], "delete_file() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.delete_file", false]], "delete_file_locations() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.delete_file_locations", false]], "delete_index_key_path() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_index_key_path", false]], "delete_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_node", false]], "delete_nodes() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_nodes", false]], "delete_object() (gen3.object.gen3object method)": [[6, "gen3.object.Gen3Object.delete_object", false]], "delete_program() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_program", false]], "delete_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_project", false]], "delete_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.delete_record", false]], "delete_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_record", false]], "delete_records() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_records", false]], "download() (gen3.tools.download.drs_download.downloadable method)": [[10, "gen3.tools.download.drs_download.Downloadable.download", false]], "download() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.download", false]], "download() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.download", false]], "download_files_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.download_files_in_drs_manifest", false]], "download_single() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.download_single", false]], "download_url() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.download_url", false]], "downloadable (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.Downloadable", false]], "downloadmanager (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.DownloadManager", false]], "downloadstatus (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.DownloadStatus", false]], "end_time (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.end_time", false]], "endpoint (gen3.metadata.gen3metadata attribute)": [[5, "gen3.metadata.Gen3Metadata.endpoint", false]], "export_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.export_node", false]], "export_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.export_record", false]], "file_name (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.file_name", false]], "file_name (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.file_name", false]], "file_size (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.file_size", false]], "file_size (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.file_size", false]], "gen3.tools": [[9, "module-gen3.tools", false]], "gen3.tools.download.drs_download": [[10, "module-gen3.tools.download.drs_download", false]], "gen3.tools.indexing.download_manifest": [[11, "module-gen3.tools.indexing.download_manifest", false]], "gen3.tools.indexing.index_manifest": [[11, "module-gen3.tools.indexing.index_manifest", false]], "gen3.tools.indexing.verify_manifest": [[11, "module-gen3.tools.indexing.verify_manifest", false]], "gen3.tools.metadata.ingest_manifest": [[12, "module-gen3.tools.metadata.ingest_manifest", false]], "gen3auth (class in gen3.auth)": [[0, "gen3.auth.Gen3Auth", false]], "gen3file (class in gen3.file)": [[1, "gen3.file.Gen3File", false]], "gen3index (class in gen3.index)": [[3, "gen3.index.Gen3Index", false]], "gen3jobs (class in gen3.jobs)": [[4, "gen3.jobs.Gen3Jobs", false]], "gen3metadata (class in gen3.metadata)": [[5, "gen3.metadata.Gen3Metadata", false]], "gen3object (class in gen3.object)": [[6, "gen3.object.Gen3Object", false]], "gen3query (class in gen3.query)": [[7, "gen3.query.Gen3Query", false]], "gen3submission (class in gen3.submission)": [[8, "gen3.submission.Gen3Submission", false]], "gen3wsstorage (class in gen3.wss)": [[13, "gen3.wss.Gen3WsStorage", false]], "get() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get", false]], "get() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get", false]], "get_access_token() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.get_access_token", false]], "get_access_token_from_wts() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.get_access_token_from_wts", false]], "get_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_aliases", false]], "get_all_records() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_all_records", false]], "get_dictionary_all() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_dictionary_all", false]], "get_dictionary_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_dictionary_node", false]], "get_fresh_token() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.get_fresh_token", false]], "get_graphql_schema() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_graphql_schema", false]], "get_guids_prefix() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_guids_prefix", false]], "get_index_key_paths() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_index_key_paths", false]], "get_latest_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_latest_version", false]], "get_output() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_output", false]], "get_presigned_url() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.get_presigned_url", false]], "get_programs() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_programs", false]], "get_project_dictionary() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_project_dictionary", false]], "get_project_manifest() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_project_manifest", false]], "get_projects() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_projects", false]], "get_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_record", false]], "get_record_doc() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_record_doc", false]], "get_records() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_records", false]], "get_records_on_page() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_records_on_page", false]], "get_stats() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_stats", false]], "get_status() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_status", false]], "get_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_urls", false]], "get_valid_guids() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_valid_guids", false]], "get_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_version", false]], "get_version() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_version", false]], "get_version() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_version", false]], "get_versions() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_versions", false]], "get_with_params() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_with_params", false]], "graphql_query() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.graphql_query", false]], "guid (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.GUID", false]], "guid_type_for_indexed_file_object (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.GUID_TYPE_FOR_INDEXED_FILE_OBJECT", false]], "guid_type_for_non_indexed_file_object (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.GUID_TYPE_FOR_NON_INDEXED_FILE_OBJECT", false]], "hostname (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.hostname", false]], "index_object_manifest() (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.index_object_manifest", false]], "indexd_record_page_size (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.INDEXD_RECORD_PAGE_SIZE", false]], "is_healthy() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.is_healthy", false]], "is_healthy() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.is_healthy", false]], "is_healthy() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.is_healthy", false]], "list_access_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_access_in_drs_manifest", false]], "list_drs_object() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_drs_object", false]], "list_files_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_files_in_drs_manifest", false]], "list_jobs() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.list_jobs", false]], "load() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.load", false]], "load_manifest() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.load_manifest", false]], "ls() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.ls", false]], "ls_path() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.ls_path", false]], "manifest (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.Manifest", false]], "max_concurrent_requests (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.MAX_CONCURRENT_REQUESTS", false]], "max_concurrent_requests (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.MAX_CONCURRENT_REQUESTS", false]], "max_concurrent_requests (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.MAX_CONCURRENT_REQUESTS", false]], "md5 (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.MD5", false]], "md5sum (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.md5sum", false]], "module": [[9, "module-gen3.tools", false], [10, "module-gen3.tools.download.drs_download", false], [11, "module-gen3.tools.indexing.download_manifest", false], [11, "module-gen3.tools.indexing.index_manifest", false], [11, "module-gen3.tools.indexing.verify_manifest", false], [12, "module-gen3.tools.metadata.ingest_manifest", false]], "object_id (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.object_id", false]], "object_id (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.object_id", false]], "object_type (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.object_type", false]], "open_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.open_project", false]], "pprint() (gen3.tools.download.drs_download.downloadable method)": [[10, "gen3.tools.download.drs_download.Downloadable.pprint", false]], "prev_guid (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.PREV_GUID", false]], "query() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.query", false]], "query() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.query", false]], "query() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.query", false]], "query_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.query_urls", false]], "raw_data_download() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.raw_data_download", false]], "refresh_access_token() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.refresh_access_token", false]], "resolve_objects() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.resolve_objects", false]], "rm() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.rm", false]], "rm_path() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.rm_path", false]], "size (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.SIZE", false]], "start_time (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.start_time", false]], "status (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.status", false]], "submit_file() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.submit_file", false]], "submit_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.submit_record", false]], "threadcontrol (class in gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.ThreadControl", false]], "tmp_folder (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.TMP_FOLDER", false]], "update() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.update", false]], "update_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.update_aliases", false]], "update_blank() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.update_blank", false]], "update_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.update_record", false]], "updated_time (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.updated_time", false]], "upload() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.upload", false]], "upload_file() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.upload_file", false]], "upload_file_to_guid() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.upload_file_to_guid", false]], "upload_url() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.upload_url", false]], "urls (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.URLS", false]], "user_access() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.user_access", false]]}, "objects": {"gen3": [[9, 3, 0, "-", "tools"]], "gen3.auth": [[0, 0, 1, "", "Gen3Auth"]], "gen3.auth.Gen3Auth": [[0, 1, 1, "", "curl"], [0, 1, 1, "", "get_access_token"], [0, 1, 1, "", "get_access_token_from_wts"], [0, 1, 1, "", "refresh_access_token"]], "gen3.file": [[1, 0, 1, "", "Gen3File"]], "gen3.file.Gen3File": [[1, 1, 1, "", "delete_file"], [1, 1, 1, "", "delete_file_locations"], [1, 1, 1, "", "download_single"], [1, 1, 1, "", "get_presigned_url"], [1, 1, 1, "", "upload_file"], [1, 1, 1, "", "upload_file_to_guid"]], "gen3.index": [[3, 0, 1, "", "Gen3Index"]], "gen3.index.Gen3Index": [[3, 1, 1, "", "async_create_record"], [3, 1, 1, "", "async_get_record"], [3, 1, 1, "", "async_get_records_from_checksum"], [3, 1, 1, "", "async_get_records_on_page"], [3, 1, 1, "", "async_get_with_params"], [3, 1, 1, "", "async_query_urls"], [3, 1, 1, "", "async_update_record"], [3, 1, 1, "", "create_blank"], [3, 1, 1, "", "create_new_version"], [3, 1, 1, "", "create_record"], [3, 1, 1, "", "delete_record"], [3, 1, 1, "", "get"], [3, 1, 1, "", "get_all_records"], [3, 1, 1, "", "get_guids_prefix"], [3, 1, 1, "", "get_latest_version"], [3, 1, 1, "", "get_record"], [3, 1, 1, "", "get_record_doc"], [3, 1, 1, "", "get_records"], [3, 1, 1, "", "get_records_on_page"], [3, 1, 1, "", "get_stats"], [3, 1, 1, "", "get_urls"], [3, 1, 1, "", "get_valid_guids"], [3, 1, 1, "", "get_version"], [3, 1, 1, "", "get_versions"], [3, 1, 1, "", "get_with_params"], [3, 1, 1, "", "is_healthy"], [3, 1, 1, "", "query_urls"], [3, 1, 1, "", "update_blank"], [3, 1, 1, "", "update_record"]], "gen3.jobs": [[4, 0, 1, "", "Gen3Jobs"]], "gen3.jobs.Gen3Jobs": [[4, 1, 1, "", "async_run_job_and_wait"], [4, 1, 1, "", "create_job"], [4, 1, 1, "", "get_output"], [4, 1, 1, "", "get_status"], [4, 1, 1, "", "get_version"], [4, 1, 1, "", "is_healthy"], [4, 1, 1, "", "list_jobs"]], "gen3.metadata": [[5, 0, 1, "", "Gen3Metadata"]], "gen3.metadata.Gen3Metadata": [[5, 1, 1, "", "async_create"], [5, 1, 1, "", "async_create_aliases"], [5, 1, 1, "", "async_delete_alias"], [5, 1, 1, "", "async_delete_aliases"], [5, 1, 1, "", "async_get"], [5, 1, 1, "", "async_get_aliases"], [5, 1, 1, "", "async_update"], [5, 1, 1, "", "async_update_aliases"], [5, 2, 1, "", "auth_provider"], [5, 1, 1, "", "batch_create"], [5, 1, 1, "", "create"], [5, 1, 1, "", "create_aliases"], [5, 1, 1, "", "create_index_key_path"], [5, 1, 1, "", "delete"], [5, 1, 1, "", "delete_alias"], [5, 1, 1, "", "delete_aliases"], [5, 1, 1, "", "delete_index_key_path"], [5, 2, 1, "", "endpoint"], [5, 1, 1, "", "get"], [5, 1, 1, "", "get_aliases"], [5, 1, 1, "", "get_index_key_paths"], [5, 1, 1, "", "get_version"], [5, 1, 1, "", "is_healthy"], [5, 1, 1, "", "query"], [5, 1, 1, "", "update"], [5, 1, 1, "", "update_aliases"]], "gen3.object": [[6, 0, 1, "", "Gen3Object"]], "gen3.object.Gen3Object": [[6, 1, 1, "", "delete_object"]], "gen3.query": [[7, 0, 1, "", "Gen3Query"]], "gen3.query.Gen3Query": [[7, 1, 1, "", "graphql_query"], [7, 1, 1, "", "query"], [7, 1, 1, "", "raw_data_download"]], "gen3.submission": [[8, 0, 1, "", "Gen3Submission"]], "gen3.submission.Gen3Submission": [[8, 1, 1, "", "create_program"], [8, 1, 1, "", "create_project"], [8, 1, 1, "", "delete_node"], [8, 1, 1, "", "delete_nodes"], [8, 1, 1, "", "delete_program"], [8, 1, 1, "", "delete_project"], [8, 1, 1, "", "delete_record"], [8, 1, 1, "", "delete_records"], [8, 1, 1, "", "export_node"], [8, 1, 1, "", "export_record"], [8, 1, 1, "", "get_dictionary_all"], [8, 1, 1, "", "get_dictionary_node"], [8, 1, 1, "", "get_graphql_schema"], [8, 1, 1, "", "get_programs"], [8, 1, 1, "", "get_project_dictionary"], [8, 1, 1, "", "get_project_manifest"], [8, 1, 1, "", "get_projects"], [8, 1, 1, "", "open_project"], [8, 1, 1, "", "query"], [8, 1, 1, "", "submit_file"], [8, 1, 1, "", "submit_record"]], "gen3.tools.download": [[10, 3, 0, "-", "drs_download"]], "gen3.tools.download.drs_download": [[10, 0, 1, "", "DownloadManager"], [10, 0, 1, "", "DownloadStatus"], [10, 0, 1, "", "Downloadable"], [10, 0, 1, "", "Manifest"], [10, 4, 1, "", "download_files_in_drs_manifest"], [10, 4, 1, "", "list_access_in_drs_manifest"], [10, 4, 1, "", "list_drs_object"], [10, 4, 1, "", "list_files_in_drs_manifest"]], "gen3.tools.download.drs_download.DownloadManager": [[10, 1, 1, "", "cache_hosts_wts_tokens"], [10, 1, 1, "", "download"], [10, 1, 1, "", "get_fresh_token"], [10, 1, 1, "", "resolve_objects"], [10, 1, 1, "", "user_access"]], "gen3.tools.download.drs_download.DownloadStatus": [[10, 2, 1, "", "end_time"], [10, 2, 1, "", "start_time"], [10, 2, 1, "", "status"]], "gen3.tools.download.drs_download.Downloadable": [[10, 2, 1, "", "_manager"], [10, 2, 1, "", "access_methods"], [10, 2, 1, "", "children"], [10, 2, 1, "", "created_time"], [10, 1, 1, "", "download"], [10, 2, 1, "", "file_name"], [10, 2, 1, "", "file_size"], [10, 2, 1, "", "hostname"], [10, 2, 1, "", "object_id"], [10, 2, 1, "", "object_type"], [10, 1, 1, "", "pprint"], [10, 2, 1, "", "updated_time"]], "gen3.tools.download.drs_download.Manifest": [[10, 2, 1, "", "commons_url"], [10, 1, 1, "", "create_object_list"], [10, 2, 1, "", "file_name"], [10, 2, 1, "", "file_size"], [10, 1, 1, "", "load"], [10, 1, 1, "", "load_manifest"], [10, 2, 1, "", "md5sum"], [10, 2, 1, "", "object_id"]], "gen3.tools.indexing": [[11, 3, 0, "-", "download_manifest"], [11, 3, 0, "-", "index_manifest"], [11, 3, 0, "-", "verify_manifest"]], "gen3.tools.indexing.download_manifest": [[11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "INDEXD_RECORD_PAGE_SIZE"], [11, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [11, 2, 1, "", "TMP_FOLDER"], [11, 4, 1, "", "async_download_object_manifest"]], "gen3.tools.indexing.index_manifest": [[11, 2, 1, "", "ACLS"], [11, 2, 1, "", "AUTHZ"], [11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "GUID"], [11, 2, 1, "", "MD5"], [11, 2, 1, "", "PREV_GUID"], [11, 2, 1, "", "SIZE"], [11, 0, 1, "", "ThreadControl"], [11, 2, 1, "", "URLS"], [11, 4, 1, "", "delete_all_guids"], [11, 4, 1, "", "index_object_manifest"]], "gen3.tools.indexing.verify_manifest": [[11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [11, 4, 1, "", "async_verify_object_manifest"]], "gen3.tools.metadata": [[12, 3, 0, "-", "ingest_manifest"]], "gen3.tools.metadata.ingest_manifest": [[12, 2, 1, "", "COLUMN_TO_USE_AS_GUID"], [12, 2, 1, "", "GUID_TYPE_FOR_INDEXED_FILE_OBJECT"], [12, 2, 1, "", "GUID_TYPE_FOR_NON_INDEXED_FILE_OBJECT"], [12, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [12, 4, 1, "", "async_ingest_metadata_manifest"], [12, 4, 1, "", "async_query_urls_from_indexd"]], "gen3.wss": [[13, 0, 1, "", "Gen3WsStorage"]], "gen3.wss.Gen3WsStorage": [[13, 1, 1, "", "copy"], [13, 1, 1, "", "download"], [13, 1, 1, "", "download_url"], [13, 1, 1, "", "ls"], [13, 1, 1, "", "ls_path"], [13, 1, 1, "", "rm"], [13, 1, 1, "", "rm_path"], [13, 1, 1, "", "upload"], [13, 1, 1, "", "upload_url"]]}, "objnames": {"0": ["py", "class", "Python class"], "1": ["py", "method", "Python method"], "2": ["py", "attribute", "Python attribute"], "3": ["py", "module", "Python module"], "4": ["py", "function", "Python function"]}, "objtypes": {"0": "py:class", "1": "py:method", "2": "py:attribute", "3": "py:module", "4": "py:function"}, "terms": {"": [1, 4, 8, 10, 11], "0": [5, 7, 8, 11], "0046513": [], "0185335": [], "0304558": [], "052073": [], "0576868": [], "058966": [], "064572": [], "07464": [], "0790412": [], "0a80fada010c": 11, "0a80fada096c": 11, "0a80fada097c": 11, "0a80fada098c": 11, "0a80fada099c": 11, "1": [4, 5, 8, 10, 11], "10": [5, 7, 11], "100": [8, 11], "1069167": [], "1187842": [], "11e9": 11, "1344793": [], "1676264": [], "1713542306": [], "1713542765": [], "1713543033": [], "1713543225": [], "1713543506": [], "1713543956": [], "1713544131": [], "1713544132": [], "1713544397": [], "1713544598": [], "1713545857": [], "1713545858": [], "1713549370": [], "1713549689": [], "1713550571": [], "1713557245": [], "1713559376": [], "1713560080": [], "1713560402": [], "1713560403": [], "1713561061": [], "1713562690": [], "1717169008": [], "1717170449": [], "1717171842": [], "1717171843": [], "1717172360": [], "1717172577": [], "1717172773": [], "1717175781": [], "1717175782": [], "1717176836": [], "1717177456": [], "1717177457": [], "1717184410": [], "1717184774": [11, 12], "1731803": [], "1771936": [], "1913438": [], "1922355": [], "2": [5, 11], "2184267": [], "24": [11, 12], "255e396f": 11, "2877355": [], "2930224": [], "2995": [], "3": [5, 11], "30": 8, "3041446": [], "3102272": [], "33": 5, "333": 5, "334353": 11, "343434344": 11, "363455714": 11, "3935378": [], "4": [5, 11], "4017086": [], "4052968": [], "4090197": [], "427549": [], "4463434": [], "450c": 11, "4632835": [], "4649727": [], "4714": 8, "473d83400bc1bc9dc635e334fadd433c": 11, "473d83400bc1bc9dc635e334faddd33c": 11, "473d83400bc1bc9dc635e334fadde33c": 11, "473d83400bc1bc9dc635e334faddf33c": 11, "4752307": [], "4756553": [], "5": [0, 5], "50": 7, "517729": [], "5202463": [], "543434443": 11, "5669184": [], "568308": [], "573305": [], "5821238": [], "5899982": [], "639124": [], "6631596": 12, "6692646": [], "6739478": [], "674552": [], "679862": [], "6f90": 8, "700799": [], "7232893": [], "756255": [], "760149": [], "7841465": [], "7d3d8d2083b4": 11, "8044841": [], "8375325": [], "8420": 8, "8630717": [], "8737464": [], "8874054": [], "8882551": [], "9236414": [], "9306026": [], "93d9af72": 11, "9a07": 11, "A": [1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "AND": 5, "Be": 1, "But": 5, "By": 11, "For": [1, 5, 6, 7, 8, 9, 11], "IF": 11, "If": [0, 1, 7, 11, 12], "In": 10, "It": 10, "NOT": 12, "OR": 5, "One": 7, "Such": 9, "THE": 11, "That": 3, "The": [0, 1, 2, 3, 5, 8, 10, 11], "There": 11, "These": 9, "To": 11, "Will": [4, 7, 10], "_get_acl_from_row": 11, "_get_authz_from_row": 11, "_get_file_name_from_row": 11, "_get_file_size_from_row": 11, "_get_guid_for_row": 12, "_get_guid_from_row": 11, "_get_md5_from_row": 11, "_get_urls_from_row": 11, "_guid_typ": 12, "_manag": [2, 9, 10], "_query_for_associated_indexd_record_guid": 12, "_ssl": [3, 4, 5], "a5c6": 11, "ab167e49d25b488939b1ede42752458b": 3, "about": [2, 3], "abov": 11, "access": [0, 1, 3, 7, 10], "access_method": [2, 9, 10], "access_token": 0, "accesstoken": 0, "acl": [2, 3, 9, 11], "across": 11, "act": 0, "action": [9, 11], "actual": 11, "ad": 3, "add": [3, 5], "addit": [3, 5, 10, 11], "admin": [5, 11], "admin_endpoint_suffix": 5, "after": 10, "against": [3, 7, 8, 11, 12], "algorithm": 3, "alia": [3, 5], "alias": 5, "aliv": 7, "all": [1, 3, 4, 5, 6, 7, 8, 10, 11, 12], "allow": [0, 6, 8, 10, 11, 12], "allowed_data_upload_bucket": 1, "along": 2, "alreadi": 9, "also": 1, "altern": [5, 11], "alwai": 5, "ammount": 12, "amount": [1, 9], "an": [0, 3, 6, 8, 10, 11], "ani": [0, 5, 10, 11], "anoth": 5, "api": [0, 5, 8, 11], "api_kei": 11, "appli": 7, "appropri": 13, "ar": [5, 7, 8, 9, 10, 11], "arbitrari": 0, "argument": [0, 13], "arrai": 8, "asc": 7, "assign": 9, "assist": 10, "associ": [3, 5], "assum": 11, "async": [3, 4, 5, 9, 11, 12], "async_cr": [2, 5], "async_create_alias": [2, 5], "async_create_record": [2, 3], "async_delete_alia": [2, 5], "async_delete_alias": [2, 5], "async_download_object_manifest": [2, 9, 11], "async_get": [2, 5], "async_get_alias": [2, 5], "async_get_record": [2, 3], "async_get_records_from_checksum": [2, 3], "async_get_records_on_pag": [2, 3], "async_get_with_param": [2, 3], "async_ingest_metadata_manifest": [2, 9, 12], "async_query_url": [2, 3], "async_query_urls_from_indexd": [2, 9, 12], "async_run_job_and_wait": [2, 4], "async_upd": [2, 5], "async_update_alias": [2, 5], "async_update_record": [2, 3], "async_verify_object_manifest": [2, 9, 11], "asynchron": [3, 4, 5], "asyncio": [11, 12], "asyncron": 5, "attach": [3, 5], "attempt": 11, "attribut": [10, 11], "auth": [1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "auth_provid": [1, 2, 3, 4, 5, 6, 7, 8, 13], "authbas": 0, "authent": 0, "author": 1, "authz": [0, 1, 2, 3, 9, 10, 11], "auto": [0, 2], "automat": 0, "avail": [1, 2, 10, 11], "az": 1, "b": [5, 11], "b0f1": 11, "bar": 10, "base": [0, 1, 3, 4, 5, 6, 7, 8, 9, 11, 13], "baseid": 3, "basic": [3, 11, 12], "batch_creat": [2, 5], "batch_siz": 8, "behalf": 0, "behavior": 11, "being": 3, "belong": 8, "below": 11, "blank": 3, "blob": [5, 7], "bodi": 3, "bool": [4, 5, 8, 10, 11, 12], "boolean": 3, "bownload": 10, "broad": 9, "broken": 9, "bucket": [1, 6], "bundl": 10, "byte": 10, "c": [5, 11], "cach": 10, "cache_hosts_wts_token": [2, 9, 10], "call": [10, 13], "can": [0, 3, 4, 8, 11, 12], "capabl": 9, "case": [0, 10], "categori": 9, "ccle": 8, "ccle_one_record": 8, "ccle_sample_nod": 8, "cdi": 7, "chang": [3, 11], "checksum": [3, 10], "checksum_typ": 3, "child": 10, "children": [2, 9, 10], "chunk_siz": 8, "class": [0, 2, 10, 11, 13], "cli": 10, "client": [0, 3], "client_credenti": 0, "client_id": 0, "client_scop": 0, "client_secret": 0, "code": [2, 8], "column": [11, 12], "column_to_use_as_guid": [2, 9, 12], "columna": 11, "columnb": 11, "columnc": 11, "com": 7, "comma": 11, "command": [10, 11], "common": [0, 1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13], "commons_url": [2, 9, 10, 11, 12], "complet": [4, 11], "complex": 7, "concat": 11, "concurr": [11, 12], "configur": 1, "connect": 12, "consist": 3, "constructor": 0, "contain": [0, 2, 5, 8, 9, 10, 11, 12], "content": [3, 13], "content_created_d": 3, "content_updated_d": 3, "continu": 10, "control": 3, "conveni": 10, "copi": [2, 13], "coroutin": 11, "correspond": 3, "count": 3, "crdc": 0, "creat": [2, 3, 4, 5, 6, 8, 10, 11], "create_alias": [2, 5], "create_blank": [2, 3], "create_index_key_path": [2, 5], "create_job": [2, 4], "create_new_vers": [2, 3], "create_object_list": [2, 9, 10], "create_program": [2, 8], "create_project": [2, 8], "create_record": [2, 3], "created_tim": [2, 9, 10], "creation": [3, 11], "cred": 3, "credenti": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "csv": [8, 11, 12], "curl": [0, 2], "current": [6, 8, 10], "current_dir": [2, 9, 11], "custom": 11, "d": 5, "d70b41b9": 8, "data": [0, 1, 3, 5, 7, 8, 10, 11], "data_spreadsheet": 8, "data_typ": 7, "data_upload_bucket": 1, "dataa": 11, "datab": 11, "databas": 5, "datacommon": 0, "datafil": 10, "datamanag": 10, "date": 3, "datetim": [1, 3, 10], "dbgap": 12, "dcf": 8, "def": 11, "default": [0, 1, 3, 7, 8, 11, 12], "defin": [5, 8, 10], "delai": 4, "delet": [0, 1, 2, 3, 5, 6, 8, 10, 11], "delete_alia": [2, 5], "delete_alias": [2, 5], "delete_all_guid": [2, 9, 11], "delete_fil": [1, 2], "delete_file_loc": [1, 2, 6], "delete_index_key_path": [2, 5], "delete_nod": [2, 8], "delete_object": [2, 6], "delete_program": [2, 8], "delete_project": [2, 8], "delete_record": [2, 3, 8], "delete_unpacked_packag": 10, "delimet": [11, 12], "delimit": 11, "demograph": 8, "deprec": 1, "descript": [3, 5], "desir": 11, "dest_path": 13, "dest_urlstr": 13, "dest_w": 13, "dest_wskei": 13, "detail": [2, 7, 10], "determin": [10, 11, 12], "dev": 11, "dict": [3, 4, 5, 10, 11, 12], "dictionari": [3, 4, 5, 7, 8], "did": 3, "differ": 5, "direct": 0, "directori": [10, 11], "disabl": 10, "discoveri": 10, "disk": 13, "dispatch": 4, "dist_resolut": 3, "distribut": 3, "doc": [7, 10], "docstr": 2, "document": [1, 3], "doe": [0, 12], "domain": [11, 12], "done": 4, "download": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 13], "download_files_in_drs_manifest": [2, 9, 10], "download_list": 10, "download_manifest": 11, "download_singl": [1, 2], "download_url": [2, 13], "downloadmanag": [2, 9, 10], "downloadstatu": [2, 9, 10], "dr": [2, 9], "drs_download": 10, "drs_hostnam": 10, "drsdownload": 10, "drsobjecttyp": 10, "e": [5, 10], "e043ab8b77b9": 8, "each": [3, 8, 10, 11], "effici": 9, "eg": 3, "either": 8, "elasticsearch": 7, "els": [0, 12], "elsewher": 12, "empti": [8, 11], "enabl": 11, "end": [5, 10], "end_tim": [2, 9, 10], "endpoint": [0, 1, 2, 3, 4, 5, 7, 8, 13], "entir": 8, "entri": [3, 11], "env": 0, "environ": 0, "equal": 7, "error": [10, 11, 12], "error_nam": 11, "etc": 8, "even": 11, "everi": [9, 11], "everyth": 11, "ex": [0, 11, 12], "exampl": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "exclud": 3, "execut": [7, 8, 11], "exist": [1, 3, 5, 6, 9, 12], "expect": [5, 9, 11], "experi": 8, "expir": [0, 1], "expires_in": 1, "export": [8, 10], "export_nod": [2, 8], "export_record": [2, 8], "f1f8": 11, "factori": 10, "fail": [8, 10], "fals": [3, 5, 6, 10, 11], "featur": [1, 6], "fenc": [0, 1], "fetch": 0, "field": [3, 5, 7, 11, 12], "fieldnam": 11, "file": [0, 2, 3, 4, 8, 9, 10, 11, 12, 13], "file_nam": [1, 2, 3, 9, 10, 11], "file_s": [2, 9, 10, 11], "file_st": 3, "fileformat": 8, "filenam": [0, 8, 10, 11, 12], "files": 10, "fill": 12, "filter": [5, 7], "filter_object": 7, "first": [7, 8], "flag": 11, "folder": 11, "follow": [0, 11], "forc": 11, "force_metadata_columns_even_if_empti": 11, "form": 13, "format": [3, 5, 8, 11], "from": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13], "func_to_parse_row": [11, 12], "function": [2, 3, 4, 5, 9, 10, 11, 12], "g": 10, "gen3": [10, 11, 12], "gen3_api_kei": 0, "gen3_oidc_client_creds_secret": 0, "gen3auth": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "gen3fil": [1, 2], "gen3index": [2, 3], "gen3job": [2, 4, 10], "gen3metadata": [2, 5], "gen3object": [2, 6], "gen3queri": [2, 7], "gen3submiss": [2, 8], "gen3wsstorag": [2, 13], "gener": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 13], "get": [0, 1, 2, 3, 4, 5, 8, 10, 11, 12, 13], "get_access_token": [0, 2], "get_access_token_from_wt": [0, 2], "get_alias": [2, 5], "get_all_record": [2, 3], "get_dictionary_al": [2, 8], "get_dictionary_nod": [2, 8], "get_fresh_token": [2, 9, 10], "get_graphql_schema": [2, 8], "get_guid_from_fil": 12, "get_guids_prefix": [2, 3], "get_index_key_path": [2, 5], "get_latest_vers": [2, 3], "get_output": [2, 4], "get_presigned_url": [1, 2], "get_program": [2, 8], "get_project": [2, 8], "get_project_dictionari": [2, 8], "get_project_manifest": [2, 8], "get_record": [2, 3], "get_record_doc": [2, 3], "get_records_on_pag": [2, 3], "get_stat": [2, 3], "get_statu": [2, 4], "get_url": [2, 3], "get_valid_guid": [2, 3], "get_vers": [2, 3, 4, 5], "get_with_param": [2, 3], "giangb": 11, "github": [2, 7], "give": 1, "given": [0, 3, 4, 5, 8, 10, 12, 13], "global": [4, 5], "good": 3, "grant": 0, "graph": 8, "graphql": [7, 8], "graphql_queri": [2, 7], "group": 3, "guid": [1, 2, 3, 5, 6, 9, 11, 12], "guid_exampl": 11, "guid_for_row": 12, "guid_from_fil": 12, "guid_type_for_indexed_file_object": [2, 9, 12], "guid_type_for_non_indexed_file_object": [2, 9, 12], "guppi": 7, "ha": [0, 11], "handl": [3, 10], "hardcod": 0, "has_vers": 3, "hash": [3, 11], "hash_typ": 3, "have": [5, 11], "header": 11, "healthi": [3, 4, 5], "help": 11, "helper": 2, "hit": 11, "host": 10, "hostnam": [2, 9, 10], "how": [8, 11], "howto": 10, "http": [0, 7, 11, 12], "i": [0, 1, 2, 3, 4, 5, 8, 10, 11, 12], "id": [0, 1, 3, 5, 10, 11], "idea": 3, "identifi": [3, 5, 9, 11], "idp": 0, "illustr": 11, "immut": 3, "implement": 0, "implic": 11, "import": 11, "includ": [0, 3], "indent": 10, "index": [0, 2, 5, 9], "index_manifest": 11, "index_object_manifest": [2, 9, 11], "indexd": [1, 3, 6, 10, 11, 12], "indexd_field": [11, 12], "indexd_record_page_s": [2, 9, 11], "indexed_file_object_guid": 12, "indic": [0, 11], "infil": 10, "info": [3, 11], "inform": [2, 3, 10], "ingest": [2, 9], "ingest_manifest": 12, "initi": [0, 10], "input": [4, 10, 11], "input_manifest": 11, "instal": [0, 2, 11], "instanc": [1, 3, 6, 7, 8, 9, 10], "instead": [1, 7, 11], "int": [1, 3, 5, 7, 8, 10, 11, 12], "integ": [1, 3, 8], "intend": 0, "interact": [1, 3, 4, 5, 6, 8, 13], "interest": 10, "interpret": 0, "introspect": 8, "involv": 9, "is_healthi": [2, 3, 4, 5], "is_indexed_file_object": 12, "isn": 1, "issu": 0, "its": [1, 3], "job": 2, "job_id": 4, "job_input": 4, "job_nam": 4, "json": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "just": [5, 11, 12], "jwt": 0, "kei": [0, 3, 5, 13], "know": 11, "known": 10, "kwarg": [3, 4, 5], "l": [2, 13], "larg": 9, "last": 10, "latest": 3, "least": 3, "level": 6, "librari": 11, "like": [3, 5, 9, 11, 12], "limit": [1, 3, 5, 12], "linear": 4, "linux": 10, "list": [0, 1, 3, 4, 5, 7, 8, 10, 11, 13], "list_access_in_drs_manifest": [2, 9, 10], "list_drs_object": [2, 9, 10], "list_files_in_drs_manifest": [2, 9, 10], "list_job": [2, 4], "live": [11, 12], "load": [2, 9, 10], "load_manifest": [2, 9, 10], "local": [0, 13], "locat": [1, 6], "lock": 12, "log": [8, 10, 11, 12], "logic": [5, 12], "loop": 11, "ls_path": [2, 13], "maco": 11, "made": 3, "mai": [0, 9, 11], "main": 10, "make": [9, 11], "manag": [1, 5, 10], "mani": [8, 11], "manifest": [2, 8, 9, 10, 11, 12], "manifest_1": 10, "manifest_fil": [11, 12], "manifest_file_delimit": [11, 12], "manifest_row_pars": [11, 12], "map": [0, 11], "mark": 8, "master": 7, "match": [3, 5, 12], "max": 5, "max_concurrent_request": [2, 9, 11, 12], "max_presigned_url_ttl": 1, "max_tri": 8, "maximum": [11, 12], "md": [5, 7, 10, 12], "md5": [2, 3, 9, 11], "md5_hash": 11, "md5sum": [2, 9, 10], "mean": 8, "mechan": 3, "merg": 5, "metadata": [2, 3, 6, 9, 11], "metadata_list": 5, "metadata_sourc": 12, "metadata_typ": 12, "metdata": 12, "method": [1, 7, 10], "minimum": 10, "minut": 0, "mode": 7, "modul": [2, 10, 11], "more": [2, 5, 7, 9, 10], "most": 9, "mostli": 2, "multipl": [8, 11], "must": [1, 5], "my_common": 10, "my_credenti": 10, "my_field": 7, "my_index": 7, "my_program": 7, "my_project": 7, "name": [3, 4, 8, 10, 11, 12, 13], "namespac": [0, 12], "necessari": [3, 5], "need": [3, 7, 10, 11], "nest": 5, "net": 11, "never": 0, "new": [0, 3], "node": 8, "node_nam": 8, "node_typ": 8, "none": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "note": [0, 3, 11, 12], "noth": [3, 6], "now": [1, 8], "num": 5, "num_process": 11, "num_total_fil": 11, "number": [3, 7, 8, 11, 12], "o": 0, "object": [1, 2, 3, 4, 5, 7, 8, 9, 10, 11, 13], "object_id": [1, 2, 9, 10], "object_list": 10, "object_typ": [2, 9, 10], "objectid": 10, "obtain": [0, 10], "occur": 10, "off": 5, "offset": [5, 7], "oidc": 0, "old": 3, "one": [3, 5, 10, 11], "onli": [3, 5, 7, 8, 10, 11], "open": [8, 10, 11], "open_project": [2, 8], "openid": 0, "opt": 0, "option": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11], "order": [0, 8], "ordered_node_list": 8, "org": 10, "otherwis": 10, "output": [4, 5, 11, 12], "output_dir": 10, "output_filenam": [11, 12], "overrid": [0, 11, 12], "overwrit": 5, "own": 0, "packag": 10, "page": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 13], "pagin": 3, "parallel": 11, "param": [3, 5, 8, 10], "paramet": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "pars": [10, 11, 12, 13], "parser": [11, 12], "particular": 0, "pass": [0, 7, 8, 10], "password": [11, 12], "path": [0, 1, 5, 10, 11, 13], "path_to_manifest": 11, "pattern": [3, 12], "pdcdatastor": 11, "pend": 10, "per": [11, 12], "peregrin": 8, "permiss": 10, "persist": 9, "phs0001": 11, "phs0002": 11, "pick": 1, "pla": 11, "place": 11, "planx": 11, "point": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "popul": [10, 12], "posit": [1, 7], "possibl": 10, "post": [0, 11], "pprint": [2, 9, 10], "prefix": 3, "presign": 1, "pretti": 10, "prev_guid": [2, 9, 11], "previou": [3, 11], "previous": 4, "print": [8, 10], "process": 11, "processed_fil": 11, "profil": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "program": [8, 11], "progress": [8, 10], "project": [8, 11], "project_id": [7, 8], "protocol": 1, "provid": [0, 1, 3, 5, 7, 8, 12], "public": [3, 5], "put": 0, "py": 11, "python": [2, 9, 11], "python3": 11, "python_subprocess_command": 11, "queri": [1, 2, 3, 5, 8, 11, 12], "query_str": 7, "query_txt": [7, 8], "query_url": [2, 3], "quickstart": 2, "rather": 0, "raw": [7, 11], "raw_data_download": [2, 7], "rbac": 3, "read": [3, 5, 11], "readm": 2, "reason": 10, "record": [1, 3, 5, 7, 8, 11, 12], "refresh": [0, 10], "refresh_access_token": [0, 2], "refresh_fil": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "refresh_token": 0, "regist": 8, "regular": 7, "relat": 9, "remov": [1, 6, 11, 13], "replac": 11, "replace_url": 11, "repo": 2, "repres": [3, 5, 10], "represent": [1, 3], "request": [0, 1, 3, 5, 8, 11, 12], "requir": 10, "resolv": 10, "resolve_object": [2, 9, 10], "respect": 7, "respons": [0, 1, 3, 4, 5], "result": [1, 8, 10, 11], "retri": 8, "retriev": [1, 8, 10, 12], "return": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11], "return_full_metadata": 5, "rev": 3, "revers": 8, "revis": 3, "right": 1, "rm": [2, 13], "rm_path": [2, 13], "root": [11, 12], "row": [7, 8, 11, 12], "row_offset": 8, "rtype": 3, "run": [8, 11], "s3": [1, 10, 11], "safe": 11, "same": [5, 11, 13], "sampl": [8, 10], "sandbox": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "save": 10, "save_directori": 10, "schema": 8, "scope": [0, 1], "screen": 8, "script": 2, "search": [0, 2, 3], "second": [1, 4], "secret": 0, "see": [7, 10, 11], "self": 10, "semaphon": 12, "semaphor": 12, "separ": [0, 11], "server": 10, "servic": [1, 3, 4, 5, 6, 8, 11, 12, 13], "service_loc": [3, 4, 5], "session": 11, "set": [0, 1, 5, 10], "setup": 2, "sheepdog": 8, "should": [0, 8, 11], "show": 10, "show_progress": 10, "shown": 11, "sign": 1, "signpost": 3, "similar": 10, "simpl": 3, "simpli": 11, "sinc": 3, "singl": [1, 5, 8], "size": [2, 3, 9, 10, 11], "skip": 8, "sleep": 4, "so": 11, "some": [0, 2], "someth": 11, "sort": 7, "sort_field": 7, "sort_object": 7, "sourc": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "space": [0, 11], "specif": [5, 8, 11, 12], "specifi": [0, 1, 3, 11, 13], "spreadsheet": 8, "src_path": 13, "src_urlstr": 13, "src_w": 13, "src_wskei": 13, "ssl": [3, 4, 5], "start": [3, 4, 7, 8, 10], "start_tim": [2, 9, 10], "static": 10, "statu": [2, 4, 9, 10], "storag": [1, 2, 6], "store": [1, 3, 10], "str": [0, 1, 3, 4, 5, 7, 8, 10, 11, 12], "string": [0, 3, 5, 11, 13], "strip": 11, "sub": 8, "subject": [7, 8], "submiss": 2, "submit": [8, 11], "submit_additional_metadata_column": 11, "submit_fil": [2, 8], "submit_record": [2, 8], "submitter_id": 7, "success": 10, "successfulli": 10, "suffici": 3, "suppli": 3, "support": [0, 1, 5, 8, 11], "sure": 1, "synchron": 11, "syntax": 7, "system": [6, 7, 8, 9], "t": [1, 5, 11], "tab": 11, "task": 9, "temporari": 11, "test": 11, "test1": 11, "test2": 11, "test3": 11, "test4": 11, "test5": 11, "text": [1, 7, 8], "than": [0, 5], "thei": [0, 10], "them": [10, 11], "thi": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "those": 11, "thread": 11, "thread_num": 11, "threadcontrol": [2, 9, 11], "through": [8, 11], "tier": 7, "time": [1, 3, 8, 10, 11], "timestamp": 10, "tmp_folder": [2, 9, 11], "token": [0, 10], "tool": 2, "total": 11, "treat": [1, 5], "tree": 10, "true": [3, 4, 5, 6, 7, 8, 10, 11, 12], "try": 0, "tsv": [8, 11, 12], "tupl": [0, 3, 11, 12], "type": [1, 3, 4, 5, 7, 8, 10, 11, 12], "typic": 10, "uc": 7, "unaccess": 7, "under": [0, 8, 13], "uniqu": [1, 5], "unknown": 10, "unpack": 10, "unpack_packag": 10, "until": [4, 10], "up": [5, 9], "updat": [2, 3, 5, 10, 11], "update_alias": [2, 5], "update_blank": [2, 3], "update_record": [2, 3], "updated_tim": [2, 9, 10], "upload": [1, 2, 3, 8, 13], "upload_fil": [1, 2], "upload_file_to_guid": [1, 2], "upload_url": [2, 13], "url": [1, 2, 3, 9, 10, 11, 12, 13], "urls_metadata": 3, "us": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "usag": 11, "use_agg_md": 5, "user": [0, 10, 12], "user_access": [2, 9, 10], "usual": 12, "utcnow": 1, "util": 9, "uuid": [1, 3, 8], "uuid1": 8, "uuid2": 8, "valid": [3, 7], "valu": [0, 1, 3, 5, 7, 10, 11], "value_from_indexd": 11, "value_from_manifest": 11, "variabl": [0, 7, 8], "variou": 2, "verbos": [7, 8], "verif": 11, "verifi": [2, 9], "verify_manifest": 11, "verify_object_manifest": 11, "version": [3, 4, 5], "vital_statu": 7, "w": 13, "wa": 0, "wai": 10, "wait": 4, "want": [0, 3, 8], "warn": 11, "we": [3, 11], "web": 0, "what": 5, "when": [0, 3, 7, 10, 12], "where": [0, 3, 5, 11, 12], "whether": [3, 4, 5, 8, 11, 12], "which": [8, 10], "while": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "whose": 5, "within": [0, 2, 9], "without": [3, 5], "won": 5, "work": [0, 10], "workaround": 11, "worksheet": 8, "workspac": [0, 2], "wrapper": 10, "write": 11, "ws_urlstr": 13, "wskei": 13, "wss": 13, "wt": [0, 10], "x": 11, "xlsx": 8, "you": [0, 3, 8, 11], "your": 0}, "titles": ["Gen3 Auth Helper", "Gen3 File Class", "Welcome to Gen3 SDK\u2019s documentation!", "Gen3 Index Class", "Gen3 Jobs Class", "Gen3 Metadata Class", "Gen3 Object Class", "Gen3 Query Class", "Gen3 Submission Class", "Gen3 Tools", "DRS Download Tools", "Indexing Tools", "Metadata Tools", "Gen3 Workspace Storage"], "titleterms": {"": 2, "auth": 0, "class": [1, 3, 4, 5, 6, 7, 8], "document": 2, "download": [10, 11], "dr": 10, "file": 1, "gen3": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 13], "helper": 0, "index": [3, 11], "indic": 2, "ingest": 12, "job": 4, "metadata": [5, 12], "object": 6, "queri": 7, "sdk": 2, "storag": 13, "submiss": 8, "tabl": 2, "tool": [9, 10, 11, 12], "verifi": 11, "welcom": 2, "workspac": 13}}) \ No newline at end of file +Search.setIndex({"alltitles": {"DRS Download Tools": [[10, "module-gen3.tools.download.drs_download"]], "Download": [[11, "module-gen3.tools.indexing.download_manifest"]], "Gen3 Auth Helper": [[0, "gen3-auth-helper"]], "Gen3 File Class": [[1, "gen3-file-class"]], "Gen3 Index Class": [[3, "gen3-index-class"]], "Gen3 Jobs Class": [[4, "gen3-jobs-class"]], "Gen3 Metadata Class": [[5, "gen3-metadata-class"]], "Gen3 Object Class": [[6, "gen3-object-class"]], "Gen3 Query Class": [[7, "gen3-query-class"]], "Gen3 Submission Class": [[8, "gen3-submission-class"]], "Gen3 Tools": [[9, "gen3-tools"]], "Gen3 Workspace Storage": [[13, "gen3-workspace-storage"]], "Index": [[11, "module-gen3.tools.indexing.index_manifest"]], "Indexing Tools": [[11, "indexing-tools"]], "Indices and tables": [[2, "indices-and-tables"]], "Ingest": [[12, "module-gen3.tools.metadata.ingest_manifest"]], "Metadata Tools": [[12, "metadata-tools"]], "Verify": [[11, "module-gen3.tools.indexing.verify_manifest"]], "Welcome to Gen3 SDK\u2019s documentation!": [[2, "welcome-to-gen3-sdk-s-documentation"]]}, "docnames": ["auth", "file", "index", "indexing", "jobs", "metadata", "object", "query", "submission", "tools", "tools/drs_pull", "tools/indexing", "tools/metadata", "wss"], "envversion": {"sphinx": 61, "sphinx.domains.c": 3, "sphinx.domains.changeset": 1, "sphinx.domains.citation": 1, "sphinx.domains.cpp": 9, "sphinx.domains.index": 1, "sphinx.domains.javascript": 3, "sphinx.domains.math": 2, "sphinx.domains.python": 4, "sphinx.domains.rst": 2, "sphinx.domains.std": 2, "sphinx.ext.viewcode": 1}, "filenames": ["auth.rst", "file.rst", "index.rst", "indexing.rst", "jobs.rst", "metadata.rst", "object.rst", "query.rst", "submission.rst", "tools.rst", "tools/drs_pull.rst", "tools/indexing.rst", "tools/metadata.rst", "wss.rst"], "indexentries": {"_manager (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable._manager", false]], "access_methods (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.access_methods", false]], "acls (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.ACLS", false]], "async_create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_create", false]], "async_create_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_create_aliases", false]], "async_create_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_create_record", false]], "async_delete_alias() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_delete_alias", false]], "async_delete_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_delete_aliases", false]], "async_download_object_manifest() (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.async_download_object_manifest", false]], "async_get() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_get", false]], "async_get_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_get_aliases", false]], "async_get_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_record", false]], "async_get_records_from_checksum() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_records_from_checksum", false]], "async_get_records_on_page() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_records_on_page", false]], "async_get_with_params() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_get_with_params", false]], "async_ingest_metadata_manifest() (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.async_ingest_metadata_manifest", false]], "async_query_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_query_urls", false]], "async_query_urls_from_indexd() (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.async_query_urls_from_indexd", false]], "async_run_job_and_wait() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.async_run_job_and_wait", false]], "async_update() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_update", false]], "async_update_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.async_update_aliases", false]], "async_update_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.async_update_record", false]], "async_verify_object_manifest() (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.async_verify_object_manifest", false]], "auth_provider (gen3.metadata.gen3metadata attribute)": [[5, "gen3.metadata.Gen3Metadata.auth_provider", false]], "authz (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.AUTHZ", false]], "batch_create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.batch_create", false]], "cache_hosts_wts_tokens() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.cache_hosts_wts_tokens", false]], "children (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.children", false]], "column_to_use_as_guid (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.COLUMN_TO_USE_AS_GUID", false]], "commons_url (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.commons_url", false]], "copy() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.copy", false]], "create() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create", false]], "create_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create_aliases", false]], "create_blank() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_blank", false]], "create_index_key_path() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.create_index_key_path", false]], "create_job() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.create_job", false]], "create_new_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_new_version", false]], "create_object_list() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.create_object_list", false]], "create_program() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.create_program", false]], "create_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.create_project", false]], "create_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.create_record", false]], "created_time (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.created_time", false]], "curl() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.curl", false]], "current_dir (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.CURRENT_DIR", false]], "current_dir (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.CURRENT_DIR", false]], "current_dir (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.CURRENT_DIR", false]], "delete() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete", false]], "delete_alias() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_alias", false]], "delete_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_aliases", false]], "delete_all_guids() (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.delete_all_guids", false]], "delete_file() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.delete_file", false]], "delete_file_locations() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.delete_file_locations", false]], "delete_index_key_path() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.delete_index_key_path", false]], "delete_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_node", false]], "delete_nodes() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_nodes", false]], "delete_object() (gen3.object.gen3object method)": [[6, "gen3.object.Gen3Object.delete_object", false]], "delete_program() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_program", false]], "delete_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_project", false]], "delete_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.delete_record", false]], "delete_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_record", false]], "delete_records() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.delete_records", false]], "download() (gen3.tools.download.drs_download.downloadable method)": [[10, "gen3.tools.download.drs_download.Downloadable.download", false]], "download() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.download", false]], "download() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.download", false]], "download_files_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.download_files_in_drs_manifest", false]], "download_single() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.download_single", false]], "download_url() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.download_url", false]], "downloadable (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.Downloadable", false]], "downloadmanager (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.DownloadManager", false]], "downloadstatus (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.DownloadStatus", false]], "end_time (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.end_time", false]], "endpoint (gen3.metadata.gen3metadata attribute)": [[5, "gen3.metadata.Gen3Metadata.endpoint", false]], "export_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.export_node", false]], "export_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.export_record", false]], "file_name (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.file_name", false]], "file_name (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.file_name", false]], "file_size (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.file_size", false]], "file_size (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.file_size", false]], "gen3.tools": [[9, "module-gen3.tools", false]], "gen3.tools.download.drs_download": [[10, "module-gen3.tools.download.drs_download", false]], "gen3.tools.indexing.download_manifest": [[11, "module-gen3.tools.indexing.download_manifest", false]], "gen3.tools.indexing.index_manifest": [[11, "module-gen3.tools.indexing.index_manifest", false]], "gen3.tools.indexing.verify_manifest": [[11, "module-gen3.tools.indexing.verify_manifest", false]], "gen3.tools.metadata.ingest_manifest": [[12, "module-gen3.tools.metadata.ingest_manifest", false]], "gen3auth (class in gen3.auth)": [[0, "gen3.auth.Gen3Auth", false]], "gen3file (class in gen3.file)": [[1, "gen3.file.Gen3File", false]], "gen3index (class in gen3.index)": [[3, "gen3.index.Gen3Index", false]], "gen3jobs (class in gen3.jobs)": [[4, "gen3.jobs.Gen3Jobs", false]], "gen3metadata (class in gen3.metadata)": [[5, "gen3.metadata.Gen3Metadata", false]], "gen3object (class in gen3.object)": [[6, "gen3.object.Gen3Object", false]], "gen3query (class in gen3.query)": [[7, "gen3.query.Gen3Query", false]], "gen3submission (class in gen3.submission)": [[8, "gen3.submission.Gen3Submission", false]], "gen3wsstorage (class in gen3.wss)": [[13, "gen3.wss.Gen3WsStorage", false]], "get() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get", false]], "get() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get", false]], "get_access_token() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.get_access_token", false]], "get_access_token_from_wts() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.get_access_token_from_wts", false]], "get_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_aliases", false]], "get_all_records() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_all_records", false]], "get_dictionary_all() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_dictionary_all", false]], "get_dictionary_node() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_dictionary_node", false]], "get_fresh_token() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.get_fresh_token", false]], "get_graphql_schema() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_graphql_schema", false]], "get_guids_prefix() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_guids_prefix", false]], "get_index_key_paths() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_index_key_paths", false]], "get_latest_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_latest_version", false]], "get_output() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_output", false]], "get_presigned_url() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.get_presigned_url", false]], "get_programs() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_programs", false]], "get_project_dictionary() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_project_dictionary", false]], "get_project_manifest() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_project_manifest", false]], "get_projects() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.get_projects", false]], "get_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_record", false]], "get_record_doc() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_record_doc", false]], "get_records() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_records", false]], "get_records_on_page() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_records_on_page", false]], "get_stats() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_stats", false]], "get_status() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_status", false]], "get_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_urls", false]], "get_valid_guids() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_valid_guids", false]], "get_version() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_version", false]], "get_version() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.get_version", false]], "get_version() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.get_version", false]], "get_versions() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_versions", false]], "get_with_params() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.get_with_params", false]], "graphql_query() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.graphql_query", false]], "guid (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.GUID", false]], "guid_type_for_indexed_file_object (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.GUID_TYPE_FOR_INDEXED_FILE_OBJECT", false]], "guid_type_for_non_indexed_file_object (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.GUID_TYPE_FOR_NON_INDEXED_FILE_OBJECT", false]], "hostname (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.hostname", false]], "index_object_manifest() (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.index_object_manifest", false]], "indexd_record_page_size (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.INDEXD_RECORD_PAGE_SIZE", false]], "is_healthy() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.is_healthy", false]], "is_healthy() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.is_healthy", false]], "is_healthy() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.is_healthy", false]], "list_access_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_access_in_drs_manifest", false]], "list_drs_object() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_drs_object", false]], "list_files_in_drs_manifest() (in module gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.list_files_in_drs_manifest", false]], "list_jobs() (gen3.jobs.gen3jobs method)": [[4, "gen3.jobs.Gen3Jobs.list_jobs", false]], "load() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.load", false]], "load_manifest() (gen3.tools.download.drs_download.manifest static method)": [[10, "gen3.tools.download.drs_download.Manifest.load_manifest", false]], "ls() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.ls", false]], "ls_path() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.ls_path", false]], "manifest (class in gen3.tools.download.drs_download)": [[10, "gen3.tools.download.drs_download.Manifest", false]], "max_concurrent_requests (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.MAX_CONCURRENT_REQUESTS", false]], "max_concurrent_requests (in module gen3.tools.indexing.verify_manifest)": [[11, "gen3.tools.indexing.verify_manifest.MAX_CONCURRENT_REQUESTS", false]], "max_concurrent_requests (in module gen3.tools.metadata.ingest_manifest)": [[12, "gen3.tools.metadata.ingest_manifest.MAX_CONCURRENT_REQUESTS", false]], "md5 (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.MD5", false]], "md5sum (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.md5sum", false]], "module": [[9, "module-gen3.tools", false], [10, "module-gen3.tools.download.drs_download", false], [11, "module-gen3.tools.indexing.download_manifest", false], [11, "module-gen3.tools.indexing.index_manifest", false], [11, "module-gen3.tools.indexing.verify_manifest", false], [12, "module-gen3.tools.metadata.ingest_manifest", false]], "object_id (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.object_id", false]], "object_id (gen3.tools.download.drs_download.manifest attribute)": [[10, "gen3.tools.download.drs_download.Manifest.object_id", false]], "object_type (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.object_type", false]], "open_project() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.open_project", false]], "pprint() (gen3.tools.download.drs_download.downloadable method)": [[10, "gen3.tools.download.drs_download.Downloadable.pprint", false]], "prev_guid (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.PREV_GUID", false]], "query() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.query", false]], "query() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.query", false]], "query() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.query", false]], "query_urls() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.query_urls", false]], "raw_data_download() (gen3.query.gen3query method)": [[7, "gen3.query.Gen3Query.raw_data_download", false]], "refresh_access_token() (gen3.auth.gen3auth method)": [[0, "gen3.auth.Gen3Auth.refresh_access_token", false]], "resolve_objects() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.resolve_objects", false]], "rm() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.rm", false]], "rm_path() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.rm_path", false]], "size (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.SIZE", false]], "start_time (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.start_time", false]], "status (gen3.tools.download.drs_download.downloadstatus attribute)": [[10, "gen3.tools.download.drs_download.DownloadStatus.status", false]], "submit_file() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.submit_file", false]], "submit_record() (gen3.submission.gen3submission method)": [[8, "gen3.submission.Gen3Submission.submit_record", false]], "threadcontrol (class in gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.ThreadControl", false]], "tmp_folder (in module gen3.tools.indexing.download_manifest)": [[11, "gen3.tools.indexing.download_manifest.TMP_FOLDER", false]], "update() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.update", false]], "update_aliases() (gen3.metadata.gen3metadata method)": [[5, "gen3.metadata.Gen3Metadata.update_aliases", false]], "update_blank() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.update_blank", false]], "update_record() (gen3.index.gen3index method)": [[3, "gen3.index.Gen3Index.update_record", false]], "updated_time (gen3.tools.download.drs_download.downloadable attribute)": [[10, "gen3.tools.download.drs_download.Downloadable.updated_time", false]], "upload() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.upload", false]], "upload_file() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.upload_file", false]], "upload_file_to_guid() (gen3.file.gen3file method)": [[1, "gen3.file.Gen3File.upload_file_to_guid", false]], "upload_url() (gen3.wss.gen3wsstorage method)": [[13, "gen3.wss.Gen3WsStorage.upload_url", false]], "urls (in module gen3.tools.indexing.index_manifest)": [[11, "gen3.tools.indexing.index_manifest.URLS", false]], "user_access() (gen3.tools.download.drs_download.downloadmanager method)": [[10, "gen3.tools.download.drs_download.DownloadManager.user_access", false]]}, "objects": {"gen3": [[9, 3, 0, "-", "tools"]], "gen3.auth": [[0, 0, 1, "", "Gen3Auth"]], "gen3.auth.Gen3Auth": [[0, 1, 1, "", "curl"], [0, 1, 1, "", "get_access_token"], [0, 1, 1, "", "get_access_token_from_wts"], [0, 1, 1, "", "refresh_access_token"]], "gen3.file": [[1, 0, 1, "", "Gen3File"]], "gen3.file.Gen3File": [[1, 1, 1, "", "delete_file"], [1, 1, 1, "", "delete_file_locations"], [1, 1, 1, "", "download_single"], [1, 1, 1, "", "get_presigned_url"], [1, 1, 1, "", "upload_file"], [1, 1, 1, "", "upload_file_to_guid"]], "gen3.index": [[3, 0, 1, "", "Gen3Index"]], "gen3.index.Gen3Index": [[3, 1, 1, "", "async_create_record"], [3, 1, 1, "", "async_get_record"], [3, 1, 1, "", "async_get_records_from_checksum"], [3, 1, 1, "", "async_get_records_on_page"], [3, 1, 1, "", "async_get_with_params"], [3, 1, 1, "", "async_query_urls"], [3, 1, 1, "", "async_update_record"], [3, 1, 1, "", "create_blank"], [3, 1, 1, "", "create_new_version"], [3, 1, 1, "", "create_record"], [3, 1, 1, "", "delete_record"], [3, 1, 1, "", "get"], [3, 1, 1, "", "get_all_records"], [3, 1, 1, "", "get_guids_prefix"], [3, 1, 1, "", "get_latest_version"], [3, 1, 1, "", "get_record"], [3, 1, 1, "", "get_record_doc"], [3, 1, 1, "", "get_records"], [3, 1, 1, "", "get_records_on_page"], [3, 1, 1, "", "get_stats"], [3, 1, 1, "", "get_urls"], [3, 1, 1, "", "get_valid_guids"], [3, 1, 1, "", "get_version"], [3, 1, 1, "", "get_versions"], [3, 1, 1, "", "get_with_params"], [3, 1, 1, "", "is_healthy"], [3, 1, 1, "", "query_urls"], [3, 1, 1, "", "update_blank"], [3, 1, 1, "", "update_record"]], "gen3.jobs": [[4, 0, 1, "", "Gen3Jobs"]], "gen3.jobs.Gen3Jobs": [[4, 1, 1, "", "async_run_job_and_wait"], [4, 1, 1, "", "create_job"], [4, 1, 1, "", "get_output"], [4, 1, 1, "", "get_status"], [4, 1, 1, "", "get_version"], [4, 1, 1, "", "is_healthy"], [4, 1, 1, "", "list_jobs"]], "gen3.metadata": [[5, 0, 1, "", "Gen3Metadata"]], "gen3.metadata.Gen3Metadata": [[5, 1, 1, "", "async_create"], [5, 1, 1, "", "async_create_aliases"], [5, 1, 1, "", "async_delete_alias"], [5, 1, 1, "", "async_delete_aliases"], [5, 1, 1, "", "async_get"], [5, 1, 1, "", "async_get_aliases"], [5, 1, 1, "", "async_update"], [5, 1, 1, "", "async_update_aliases"], [5, 2, 1, "", "auth_provider"], [5, 1, 1, "", "batch_create"], [5, 1, 1, "", "create"], [5, 1, 1, "", "create_aliases"], [5, 1, 1, "", "create_index_key_path"], [5, 1, 1, "", "delete"], [5, 1, 1, "", "delete_alias"], [5, 1, 1, "", "delete_aliases"], [5, 1, 1, "", "delete_index_key_path"], [5, 2, 1, "", "endpoint"], [5, 1, 1, "", "get"], [5, 1, 1, "", "get_aliases"], [5, 1, 1, "", "get_index_key_paths"], [5, 1, 1, "", "get_version"], [5, 1, 1, "", "is_healthy"], [5, 1, 1, "", "query"], [5, 1, 1, "", "update"], [5, 1, 1, "", "update_aliases"]], "gen3.object": [[6, 0, 1, "", "Gen3Object"]], "gen3.object.Gen3Object": [[6, 1, 1, "", "delete_object"]], "gen3.query": [[7, 0, 1, "", "Gen3Query"]], "gen3.query.Gen3Query": [[7, 1, 1, "", "graphql_query"], [7, 1, 1, "", "query"], [7, 1, 1, "", "raw_data_download"]], "gen3.submission": [[8, 0, 1, "", "Gen3Submission"]], "gen3.submission.Gen3Submission": [[8, 1, 1, "", "create_program"], [8, 1, 1, "", "create_project"], [8, 1, 1, "", "delete_node"], [8, 1, 1, "", "delete_nodes"], [8, 1, 1, "", "delete_program"], [8, 1, 1, "", "delete_project"], [8, 1, 1, "", "delete_record"], [8, 1, 1, "", "delete_records"], [8, 1, 1, "", "export_node"], [8, 1, 1, "", "export_record"], [8, 1, 1, "", "get_dictionary_all"], [8, 1, 1, "", "get_dictionary_node"], [8, 1, 1, "", "get_graphql_schema"], [8, 1, 1, "", "get_programs"], [8, 1, 1, "", "get_project_dictionary"], [8, 1, 1, "", "get_project_manifest"], [8, 1, 1, "", "get_projects"], [8, 1, 1, "", "open_project"], [8, 1, 1, "", "query"], [8, 1, 1, "", "submit_file"], [8, 1, 1, "", "submit_record"]], "gen3.tools.download": [[10, 3, 0, "-", "drs_download"]], "gen3.tools.download.drs_download": [[10, 0, 1, "", "DownloadManager"], [10, 0, 1, "", "DownloadStatus"], [10, 0, 1, "", "Downloadable"], [10, 0, 1, "", "Manifest"], [10, 4, 1, "", "download_files_in_drs_manifest"], [10, 4, 1, "", "list_access_in_drs_manifest"], [10, 4, 1, "", "list_drs_object"], [10, 4, 1, "", "list_files_in_drs_manifest"]], "gen3.tools.download.drs_download.DownloadManager": [[10, 1, 1, "", "cache_hosts_wts_tokens"], [10, 1, 1, "", "download"], [10, 1, 1, "", "get_fresh_token"], [10, 1, 1, "", "resolve_objects"], [10, 1, 1, "", "user_access"]], "gen3.tools.download.drs_download.DownloadStatus": [[10, 2, 1, "", "end_time"], [10, 2, 1, "", "start_time"], [10, 2, 1, "", "status"]], "gen3.tools.download.drs_download.Downloadable": [[10, 2, 1, "", "_manager"], [10, 2, 1, "", "access_methods"], [10, 2, 1, "", "children"], [10, 2, 1, "", "created_time"], [10, 1, 1, "", "download"], [10, 2, 1, "", "file_name"], [10, 2, 1, "", "file_size"], [10, 2, 1, "", "hostname"], [10, 2, 1, "", "object_id"], [10, 2, 1, "", "object_type"], [10, 1, 1, "", "pprint"], [10, 2, 1, "", "updated_time"]], "gen3.tools.download.drs_download.Manifest": [[10, 2, 1, "", "commons_url"], [10, 1, 1, "", "create_object_list"], [10, 2, 1, "", "file_name"], [10, 2, 1, "", "file_size"], [10, 1, 1, "", "load"], [10, 1, 1, "", "load_manifest"], [10, 2, 1, "", "md5sum"], [10, 2, 1, "", "object_id"]], "gen3.tools.indexing": [[11, 3, 0, "-", "download_manifest"], [11, 3, 0, "-", "index_manifest"], [11, 3, 0, "-", "verify_manifest"]], "gen3.tools.indexing.download_manifest": [[11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "INDEXD_RECORD_PAGE_SIZE"], [11, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [11, 2, 1, "", "TMP_FOLDER"], [11, 4, 1, "", "async_download_object_manifest"]], "gen3.tools.indexing.index_manifest": [[11, 2, 1, "", "ACLS"], [11, 2, 1, "", "AUTHZ"], [11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "GUID"], [11, 2, 1, "", "MD5"], [11, 2, 1, "", "PREV_GUID"], [11, 2, 1, "", "SIZE"], [11, 0, 1, "", "ThreadControl"], [11, 2, 1, "", "URLS"], [11, 4, 1, "", "delete_all_guids"], [11, 4, 1, "", "index_object_manifest"]], "gen3.tools.indexing.verify_manifest": [[11, 2, 1, "", "CURRENT_DIR"], [11, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [11, 4, 1, "", "async_verify_object_manifest"]], "gen3.tools.metadata": [[12, 3, 0, "-", "ingest_manifest"]], "gen3.tools.metadata.ingest_manifest": [[12, 2, 1, "", "COLUMN_TO_USE_AS_GUID"], [12, 2, 1, "", "GUID_TYPE_FOR_INDEXED_FILE_OBJECT"], [12, 2, 1, "", "GUID_TYPE_FOR_NON_INDEXED_FILE_OBJECT"], [12, 2, 1, "", "MAX_CONCURRENT_REQUESTS"], [12, 4, 1, "", "async_ingest_metadata_manifest"], [12, 4, 1, "", "async_query_urls_from_indexd"]], "gen3.wss": [[13, 0, 1, "", "Gen3WsStorage"]], "gen3.wss.Gen3WsStorage": [[13, 1, 1, "", "copy"], [13, 1, 1, "", "download"], [13, 1, 1, "", "download_url"], [13, 1, 1, "", "ls"], [13, 1, 1, "", "ls_path"], [13, 1, 1, "", "rm"], [13, 1, 1, "", "rm_path"], [13, 1, 1, "", "upload"], [13, 1, 1, "", "upload_url"]]}, "objnames": {"0": ["py", "class", "Python class"], "1": ["py", "method", "Python method"], "2": ["py", "attribute", "Python attribute"], "3": ["py", "module", "Python module"], "4": ["py", "function", "Python function"]}, "objtypes": {"0": "py:class", "1": "py:method", "2": "py:attribute", "3": "py:module", "4": "py:function"}, "terms": {"": [1, 4, 8, 10, 11], "0": [5, 7, 8, 11], "0046513": [], "0089867": 12, "0185335": [], "0304558": [], "052073": [], "0576868": [], "058966": [], "064572": [], "07464": [], "0790412": [], "0a80fada010c": 11, "0a80fada096c": 11, "0a80fada097c": 11, "0a80fada098c": 11, "0a80fada099c": 11, "1": [4, 5, 8, 10, 11], "10": [5, 7, 11], "100": [8, 11], "1069167": [], "1187842": [], "11e9": 11, "1344793": [], "1676264": [], "1713542306": [], "1713542765": [], "1713543033": [], "1713543225": [], "1713543506": [], "1713543956": [], "1713544131": [], "1713544132": [], "1713544397": [], "1713544598": [], "1713545857": [], "1713545858": [], "1713549370": [], "1713549689": [], "1713550571": [], "1713557245": [], "1713559376": [], "1713560080": [], "1713560402": [], "1713560403": [], "1713561061": [], "1713562690": [], "1717169008": [], "1717170449": [], "1717171842": [], "1717171843": [], "1717172360": [], "1717172577": [], "1717172773": [], "1717175781": [], "1717175782": [], "1717176836": [], "1717177456": [], "1717177457": [], "1717184410": [], "1717184774": [], "1717185181": 11, "1717185182": 12, "1731803": [], "1771936": [], "1913438": [], "1922355": [], "2": [5, 11], "2184267": [], "24": [11, 12], "255e396f": 11, "2877355": [], "2930224": [], "2995": [], "3": [5, 11], "30": 8, "3041446": [], "3102272": [], "33": 5, "333": 5, "334353": [], "343434344": 11, "363455714": 11, "3935378": [], "4": [5, 11], "4017086": [], "4052968": [], "4090197": [], "427549": [], "4463434": [], "450c": 11, "4632835": [], "4649727": [], "4714": 8, "473d83400bc1bc9dc635e334fadd433c": 11, "473d83400bc1bc9dc635e334faddd33c": 11, "473d83400bc1bc9dc635e334fadde33c": 11, "473d83400bc1bc9dc635e334faddf33c": 11, "4752307": [], "4756553": [], "5": [0, 5], "50": 7, "517729": [], "5202463": [], "543434443": 11, "5669184": [], "568308": [], "573305": [], "5821238": [], "5899982": [], "639124": [], "6631596": [], "6692646": [], "6739478": [], "674552": [], "679862": [], "6f90": 8, "700799": [], "7131712": 11, "7232893": [], "756255": [], "760149": [], "7841465": [], "7d3d8d2083b4": 11, "8044841": [], "8375325": [], "8420": 8, "8630717": [], "8737464": [], "8874054": [], "8882551": [], "9236414": [], "9306026": [], "93d9af72": 11, "9a07": 11, "A": [1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "AND": 5, "Be": 1, "But": 5, "By": 11, "For": [1, 5, 6, 7, 8, 9, 11], "IF": 11, "If": [0, 1, 7, 11, 12], "In": 10, "It": 10, "NOT": 12, "OR": 5, "One": 7, "Such": 9, "THE": 11, "That": 3, "The": [0, 1, 2, 3, 5, 8, 10, 11], "There": 11, "These": 9, "To": 11, "Will": [4, 7, 10], "_get_acl_from_row": 11, "_get_authz_from_row": 11, "_get_file_name_from_row": 11, "_get_file_size_from_row": 11, "_get_guid_for_row": 12, "_get_guid_from_row": 11, "_get_md5_from_row": 11, "_get_urls_from_row": 11, "_guid_typ": 12, "_manag": [2, 9, 10], "_query_for_associated_indexd_record_guid": 12, "_ssl": [3, 4, 5], "a5c6": 11, "ab167e49d25b488939b1ede42752458b": 3, "about": [2, 3], "abov": 11, "access": [0, 1, 3, 7, 10], "access_method": [2, 9, 10], "access_token": 0, "accesstoken": 0, "acl": [2, 3, 9, 11], "across": 11, "act": 0, "action": [9, 11], "actual": 11, "ad": 3, "add": [3, 5], "addit": [3, 5, 10, 11], "admin": [5, 11], "admin_endpoint_suffix": 5, "after": 10, "against": [3, 7, 8, 11, 12], "algorithm": 3, "alia": [3, 5], "alias": 5, "aliv": 7, "all": [1, 3, 4, 5, 6, 7, 8, 10, 11, 12], "allow": [0, 6, 8, 10, 11, 12], "allowed_data_upload_bucket": 1, "along": 2, "alreadi": 9, "also": 1, "altern": [5, 11], "alwai": 5, "ammount": 12, "amount": [1, 9], "an": [0, 3, 6, 8, 10, 11], "ani": [0, 5, 10, 11], "anoth": 5, "api": [0, 5, 8, 11], "api_kei": 11, "appli": 7, "appropri": 13, "ar": [5, 7, 8, 9, 10, 11], "arbitrari": 0, "argument": [0, 13], "arrai": 8, "asc": 7, "assign": 9, "assist": 10, "associ": [3, 5], "assum": 11, "async": [3, 4, 5, 9, 11, 12], "async_cr": [2, 5], "async_create_alias": [2, 5], "async_create_record": [2, 3], "async_delete_alia": [2, 5], "async_delete_alias": [2, 5], "async_download_object_manifest": [2, 9, 11], "async_get": [2, 5], "async_get_alias": [2, 5], "async_get_record": [2, 3], "async_get_records_from_checksum": [2, 3], "async_get_records_on_pag": [2, 3], "async_get_with_param": [2, 3], "async_ingest_metadata_manifest": [2, 9, 12], "async_query_url": [2, 3], "async_query_urls_from_indexd": [2, 9, 12], "async_run_job_and_wait": [2, 4], "async_upd": [2, 5], "async_update_alias": [2, 5], "async_update_record": [2, 3], "async_verify_object_manifest": [2, 9, 11], "asynchron": [3, 4, 5], "asyncio": [11, 12], "asyncron": 5, "attach": [3, 5], "attempt": 11, "attribut": [10, 11], "auth": [1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "auth_provid": [1, 2, 3, 4, 5, 6, 7, 8, 13], "authbas": 0, "authent": 0, "author": 1, "authz": [0, 1, 2, 3, 9, 10, 11], "auto": [0, 2], "automat": 0, "avail": [1, 2, 10, 11], "az": 1, "b": [5, 11], "b0f1": 11, "bar": 10, "base": [0, 1, 3, 4, 5, 6, 7, 8, 9, 11, 13], "baseid": 3, "basic": [3, 11, 12], "batch_creat": [2, 5], "batch_siz": 8, "behalf": 0, "behavior": 11, "being": 3, "belong": 8, "below": 11, "blank": 3, "blob": [5, 7], "bodi": 3, "bool": [4, 5, 8, 10, 11, 12], "boolean": 3, "bownload": 10, "broad": 9, "broken": 9, "bucket": [1, 6], "bundl": 10, "byte": 10, "c": [5, 11], "cach": 10, "cache_hosts_wts_token": [2, 9, 10], "call": [10, 13], "can": [0, 3, 4, 8, 11, 12], "capabl": 9, "case": [0, 10], "categori": 9, "ccle": 8, "ccle_one_record": 8, "ccle_sample_nod": 8, "cdi": 7, "chang": [3, 11], "checksum": [3, 10], "checksum_typ": 3, "child": 10, "children": [2, 9, 10], "chunk_siz": 8, "class": [0, 2, 10, 11, 13], "cli": 10, "client": [0, 3], "client_credenti": 0, "client_id": 0, "client_scop": 0, "client_secret": 0, "code": [2, 8], "column": [11, 12], "column_to_use_as_guid": [2, 9, 12], "columna": 11, "columnb": 11, "columnc": 11, "com": 7, "comma": 11, "command": [10, 11], "common": [0, 1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13], "commons_url": [2, 9, 10, 11, 12], "complet": [4, 11], "complex": 7, "concat": 11, "concurr": [11, 12], "configur": 1, "connect": 12, "consist": 3, "constructor": 0, "contain": [0, 2, 5, 8, 9, 10, 11, 12], "content": [3, 13], "content_created_d": 3, "content_updated_d": 3, "continu": 10, "control": 3, "conveni": 10, "copi": [2, 13], "coroutin": 11, "correspond": 3, "count": 3, "crdc": 0, "creat": [2, 3, 4, 5, 6, 8, 10, 11], "create_alias": [2, 5], "create_blank": [2, 3], "create_index_key_path": [2, 5], "create_job": [2, 4], "create_new_vers": [2, 3], "create_object_list": [2, 9, 10], "create_program": [2, 8], "create_project": [2, 8], "create_record": [2, 3], "created_tim": [2, 9, 10], "creation": [3, 11], "cred": 3, "credenti": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "csv": [8, 11, 12], "curl": [0, 2], "current": [6, 8, 10], "current_dir": [2, 9, 11], "custom": 11, "d": 5, "d70b41b9": 8, "data": [0, 1, 3, 5, 7, 8, 10, 11], "data_spreadsheet": 8, "data_typ": 7, "data_upload_bucket": 1, "dataa": 11, "datab": 11, "databas": 5, "datacommon": 0, "datafil": 10, "datamanag": 10, "date": 3, "datetim": [1, 3, 10], "dbgap": 12, "dcf": 8, "def": 11, "default": [0, 1, 3, 7, 8, 11, 12], "defin": [5, 8, 10], "delai": 4, "delet": [0, 1, 2, 3, 5, 6, 8, 10, 11], "delete_alia": [2, 5], "delete_alias": [2, 5], "delete_all_guid": [2, 9, 11], "delete_fil": [1, 2], "delete_file_loc": [1, 2, 6], "delete_index_key_path": [2, 5], "delete_nod": [2, 8], "delete_object": [2, 6], "delete_program": [2, 8], "delete_project": [2, 8], "delete_record": [2, 3, 8], "delete_unpacked_packag": 10, "delimet": [11, 12], "delimit": 11, "demograph": 8, "deprec": 1, "descript": [3, 5], "desir": 11, "dest_path": 13, "dest_urlstr": 13, "dest_w": 13, "dest_wskei": 13, "detail": [2, 7, 10], "determin": [10, 11, 12], "dev": 11, "dict": [3, 4, 5, 10, 11, 12], "dictionari": [3, 4, 5, 7, 8], "did": 3, "differ": 5, "direct": 0, "directori": [10, 11], "disabl": 10, "discoveri": 10, "disk": 13, "dispatch": 4, "dist_resolut": 3, "distribut": 3, "doc": [7, 10], "docstr": 2, "document": [1, 3], "doe": [0, 12], "domain": [11, 12], "done": 4, "download": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 13], "download_files_in_drs_manifest": [2, 9, 10], "download_list": 10, "download_manifest": 11, "download_singl": [1, 2], "download_url": [2, 13], "downloadmanag": [2, 9, 10], "downloadstatu": [2, 9, 10], "dr": [2, 9], "drs_download": 10, "drs_hostnam": 10, "drsdownload": 10, "drsobjecttyp": 10, "e": [5, 10], "e043ab8b77b9": 8, "each": [3, 8, 10, 11], "effici": 9, "eg": 3, "either": 8, "elasticsearch": 7, "els": [0, 12], "elsewher": 12, "empti": [8, 11], "enabl": 11, "end": [5, 10], "end_tim": [2, 9, 10], "endpoint": [0, 1, 2, 3, 4, 5, 7, 8, 13], "entir": 8, "entri": [3, 11], "env": 0, "environ": 0, "equal": 7, "error": [10, 11, 12], "error_nam": 11, "etc": 8, "even": 11, "everi": [9, 11], "everyth": 11, "ex": [0, 11, 12], "exampl": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "exclud": 3, "execut": [7, 8, 11], "exist": [1, 3, 5, 6, 9, 12], "expect": [5, 9, 11], "experi": 8, "expir": [0, 1], "expires_in": 1, "export": [8, 10], "export_nod": [2, 8], "export_record": [2, 8], "f1f8": 11, "factori": 10, "fail": [8, 10], "fals": [3, 5, 6, 10, 11], "featur": [1, 6], "fenc": [0, 1], "fetch": 0, "field": [3, 5, 7, 11, 12], "fieldnam": 11, "file": [0, 2, 3, 4, 8, 9, 10, 11, 12, 13], "file_nam": [1, 2, 3, 9, 10, 11], "file_s": [2, 9, 10, 11], "file_st": 3, "fileformat": 8, "filenam": [0, 8, 10, 11, 12], "files": 10, "fill": 12, "filter": [5, 7], "filter_object": 7, "first": [7, 8], "flag": 11, "folder": 11, "follow": [0, 11], "forc": 11, "force_metadata_columns_even_if_empti": 11, "form": 13, "format": [3, 5, 8, 11], "from": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13], "func_to_parse_row": [11, 12], "function": [2, 3, 4, 5, 9, 10, 11, 12], "g": 10, "gen3": [10, 11, 12], "gen3_api_kei": 0, "gen3_oidc_client_creds_secret": 0, "gen3auth": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "gen3fil": [1, 2], "gen3index": [2, 3], "gen3job": [2, 4, 10], "gen3metadata": [2, 5], "gen3object": [2, 6], "gen3queri": [2, 7], "gen3submiss": [2, 8], "gen3wsstorag": [2, 13], "gener": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 13], "get": [0, 1, 2, 3, 4, 5, 8, 10, 11, 12, 13], "get_access_token": [0, 2], "get_access_token_from_wt": [0, 2], "get_alias": [2, 5], "get_all_record": [2, 3], "get_dictionary_al": [2, 8], "get_dictionary_nod": [2, 8], "get_fresh_token": [2, 9, 10], "get_graphql_schema": [2, 8], "get_guid_from_fil": 12, "get_guids_prefix": [2, 3], "get_index_key_path": [2, 5], "get_latest_vers": [2, 3], "get_output": [2, 4], "get_presigned_url": [1, 2], "get_program": [2, 8], "get_project": [2, 8], "get_project_dictionari": [2, 8], "get_project_manifest": [2, 8], "get_record": [2, 3], "get_record_doc": [2, 3], "get_records_on_pag": [2, 3], "get_stat": [2, 3], "get_statu": [2, 4], "get_url": [2, 3], "get_valid_guid": [2, 3], "get_vers": [2, 3, 4, 5], "get_with_param": [2, 3], "giangb": 11, "github": [2, 7], "give": 1, "given": [0, 3, 4, 5, 8, 10, 12, 13], "global": [4, 5], "good": 3, "grant": 0, "graph": 8, "graphql": [7, 8], "graphql_queri": [2, 7], "group": 3, "guid": [1, 2, 3, 5, 6, 9, 11, 12], "guid_exampl": 11, "guid_for_row": 12, "guid_from_fil": 12, "guid_type_for_indexed_file_object": [2, 9, 12], "guid_type_for_non_indexed_file_object": [2, 9, 12], "guppi": 7, "ha": [0, 11], "handl": [3, 10], "hardcod": 0, "has_vers": 3, "hash": [3, 11], "hash_typ": 3, "have": [5, 11], "header": 11, "healthi": [3, 4, 5], "help": 11, "helper": 2, "hit": 11, "host": 10, "hostnam": [2, 9, 10], "how": [8, 11], "howto": 10, "http": [0, 7, 11, 12], "i": [0, 1, 2, 3, 4, 5, 8, 10, 11, 12], "id": [0, 1, 3, 5, 10, 11], "idea": 3, "identifi": [3, 5, 9, 11], "idp": 0, "illustr": 11, "immut": 3, "implement": 0, "implic": 11, "import": 11, "includ": [0, 3], "indent": 10, "index": [0, 2, 5, 9], "index_manifest": 11, "index_object_manifest": [2, 9, 11], "indexd": [1, 3, 6, 10, 11, 12], "indexd_field": [11, 12], "indexd_record_page_s": [2, 9, 11], "indexed_file_object_guid": 12, "indic": [0, 11], "infil": 10, "info": [3, 11], "inform": [2, 3, 10], "ingest": [2, 9], "ingest_manifest": 12, "initi": [0, 10], "input": [4, 10, 11], "input_manifest": 11, "instal": [0, 2, 11], "instanc": [1, 3, 6, 7, 8, 9, 10], "instead": [1, 7, 11], "int": [1, 3, 5, 7, 8, 10, 11, 12], "integ": [1, 3, 8], "intend": 0, "interact": [1, 3, 4, 5, 6, 8, 13], "interest": 10, "interpret": 0, "introspect": 8, "involv": 9, "is_healthi": [2, 3, 4, 5], "is_indexed_file_object": 12, "isn": 1, "issu": 0, "its": [1, 3], "job": 2, "job_id": 4, "job_input": 4, "job_nam": 4, "json": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 13], "just": [5, 11, 12], "jwt": 0, "kei": [0, 3, 5, 13], "know": 11, "known": 10, "kwarg": [3, 4, 5], "l": [2, 13], "larg": 9, "last": 10, "latest": 3, "least": 3, "level": 6, "librari": 11, "like": [3, 5, 9, 11, 12], "limit": [1, 3, 5, 12], "linear": 4, "linux": 10, "list": [0, 1, 3, 4, 5, 7, 8, 10, 11, 13], "list_access_in_drs_manifest": [2, 9, 10], "list_drs_object": [2, 9, 10], "list_files_in_drs_manifest": [2, 9, 10], "list_job": [2, 4], "live": [11, 12], "load": [2, 9, 10], "load_manifest": [2, 9, 10], "local": [0, 13], "locat": [1, 6], "lock": 12, "log": [8, 10, 11, 12], "logic": [5, 12], "loop": 11, "ls_path": [2, 13], "maco": 11, "made": 3, "mai": [0, 9, 11], "main": 10, "make": [9, 11], "manag": [1, 5, 10], "mani": [8, 11], "manifest": [2, 8, 9, 10, 11, 12], "manifest_1": 10, "manifest_fil": [11, 12], "manifest_file_delimit": [11, 12], "manifest_row_pars": [11, 12], "map": [0, 11], "mark": 8, "master": 7, "match": [3, 5, 12], "max": 5, "max_concurrent_request": [2, 9, 11, 12], "max_presigned_url_ttl": 1, "max_tri": 8, "maximum": [11, 12], "md": [5, 7, 10, 12], "md5": [2, 3, 9, 11], "md5_hash": 11, "md5sum": [2, 9, 10], "mean": 8, "mechan": 3, "merg": 5, "metadata": [2, 3, 6, 9, 11], "metadata_list": 5, "metadata_sourc": 12, "metadata_typ": 12, "metdata": 12, "method": [1, 7, 10], "minimum": 10, "minut": 0, "mode": 7, "modul": [2, 10, 11], "more": [2, 5, 7, 9, 10], "most": 9, "mostli": 2, "multipl": [8, 11], "must": [1, 5], "my_common": 10, "my_credenti": 10, "my_field": 7, "my_index": 7, "my_program": 7, "my_project": 7, "name": [3, 4, 8, 10, 11, 12, 13], "namespac": [0, 12], "necessari": [3, 5], "need": [3, 7, 10, 11], "nest": 5, "net": 11, "never": 0, "new": [0, 3], "node": 8, "node_nam": 8, "node_typ": 8, "none": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "note": [0, 3, 11, 12], "noth": [3, 6], "now": [1, 8], "num": 5, "num_process": 11, "num_total_fil": 11, "number": [3, 7, 8, 11, 12], "o": 0, "object": [1, 2, 3, 4, 5, 7, 8, 9, 10, 11, 13], "object_id": [1, 2, 9, 10], "object_list": 10, "object_typ": [2, 9, 10], "objectid": 10, "obtain": [0, 10], "occur": 10, "off": 5, "offset": [5, 7], "oidc": 0, "old": 3, "one": [3, 5, 10, 11], "onli": [3, 5, 7, 8, 10, 11], "open": [8, 10, 11], "open_project": [2, 8], "openid": 0, "opt": 0, "option": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11], "order": [0, 8], "ordered_node_list": 8, "org": 10, "otherwis": 10, "output": [4, 5, 11, 12], "output_dir": 10, "output_filenam": [11, 12], "overrid": [0, 11, 12], "overwrit": 5, "own": 0, "packag": 10, "page": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 13], "pagin": 3, "parallel": 11, "param": [3, 5, 8, 10], "paramet": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "pars": [10, 11, 12, 13], "parser": [11, 12], "particular": 0, "pass": [0, 7, 8, 10], "password": [11, 12], "path": [0, 1, 5, 10, 11, 13], "path_to_manifest": 11, "pattern": [3, 12], "pdcdatastor": 11, "pend": 10, "per": [11, 12], "peregrin": 8, "permiss": 10, "persist": 9, "phs0001": 11, "phs0002": 11, "pick": 1, "pla": 11, "place": 11, "planx": 11, "point": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "popul": [10, 12], "posit": [1, 7], "possibl": 10, "post": [0, 11], "pprint": [2, 9, 10], "prefix": 3, "presign": 1, "pretti": 10, "prev_guid": [2, 9, 11], "previou": [3, 11], "previous": 4, "print": [8, 10], "process": 11, "processed_fil": 11, "profil": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "program": [8, 11], "progress": [8, 10], "project": [8, 11], "project_id": [7, 8], "protocol": 1, "provid": [0, 1, 3, 5, 7, 8, 12], "public": [3, 5], "put": 0, "py": 11, "python": [2, 9, 11], "python3": 11, "python_subprocess_command": 11, "queri": [1, 2, 3, 5, 8, 11, 12], "query_str": 7, "query_txt": [7, 8], "query_url": [2, 3], "quickstart": 2, "rather": 0, "raw": [7, 11], "raw_data_download": [2, 7], "rbac": 3, "read": [3, 5, 11], "readm": 2, "reason": 10, "record": [1, 3, 5, 7, 8, 11, 12], "refresh": [0, 10], "refresh_access_token": [0, 2], "refresh_fil": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "refresh_token": 0, "regist": 8, "regular": 7, "relat": 9, "remov": [1, 6, 11, 13], "replac": 11, "replace_url": 11, "repo": 2, "repres": [3, 5, 10], "represent": [1, 3], "request": [0, 1, 3, 5, 8, 11, 12], "requir": 10, "resolv": 10, "resolve_object": [2, 9, 10], "respect": 7, "respons": [0, 1, 3, 4, 5], "result": [1, 8, 10, 11], "retri": 8, "retriev": [1, 8, 10, 12], "return": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11], "return_full_metadata": 5, "rev": 3, "revers": 8, "revis": 3, "right": 1, "rm": [2, 13], "rm_path": [2, 13], "root": [11, 12], "row": [7, 8, 11, 12], "row_offset": 8, "rtype": 3, "run": [8, 11], "s3": [1, 10, 11], "safe": 11, "same": [5, 11, 13], "sampl": [8, 10], "sandbox": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "save": 10, "save_directori": 10, "schema": 8, "scope": [0, 1], "screen": 8, "script": 2, "search": [0, 2, 3], "second": [1, 4], "secret": 0, "see": [7, 10, 11], "self": 10, "semaphon": 12, "semaphor": 12, "separ": [0, 11], "server": 10, "servic": [1, 3, 4, 5, 6, 8, 11, 12, 13], "service_loc": [3, 4, 5], "session": 11, "set": [0, 1, 5, 10], "setup": 2, "sheepdog": 8, "should": [0, 8, 11], "show": 10, "show_progress": 10, "shown": 11, "sign": 1, "signpost": 3, "similar": 10, "simpl": 3, "simpli": 11, "sinc": 3, "singl": [1, 5, 8], "size": [2, 3, 9, 10, 11], "skip": 8, "sleep": 4, "so": 11, "some": [0, 2], "someth": 11, "sort": 7, "sort_field": 7, "sort_object": 7, "sourc": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "space": [0, 11], "specif": [5, 8, 11, 12], "specifi": [0, 1, 3, 11, 13], "spreadsheet": 8, "src_path": 13, "src_urlstr": 13, "src_w": 13, "src_wskei": 13, "ssl": [3, 4, 5], "start": [3, 4, 7, 8, 10], "start_tim": [2, 9, 10], "static": 10, "statu": [2, 4, 9, 10], "storag": [1, 2, 6], "store": [1, 3, 10], "str": [0, 1, 3, 4, 5, 7, 8, 10, 11, 12], "string": [0, 3, 5, 11, 13], "strip": 11, "sub": 8, "subject": [7, 8], "submiss": 2, "submit": [8, 11], "submit_additional_metadata_column": 11, "submit_fil": [2, 8], "submit_record": [2, 8], "submitter_id": 7, "success": 10, "successfulli": 10, "suffici": 3, "suppli": 3, "support": [0, 1, 5, 8, 11], "sure": 1, "synchron": 11, "syntax": 7, "system": [6, 7, 8, 9], "t": [1, 5, 11], "tab": 11, "task": 9, "temporari": 11, "test": 11, "test1": 11, "test2": 11, "test3": 11, "test4": 11, "test5": 11, "text": [1, 7, 8], "than": [0, 5], "thei": [0, 10], "them": [10, 11], "thi": [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "those": 11, "thread": 11, "thread_num": 11, "threadcontrol": [2, 9, 11], "through": [8, 11], "tier": 7, "time": [1, 3, 8, 10, 11], "timestamp": 10, "tmp_folder": [2, 9, 11], "token": [0, 10], "tool": 2, "total": 11, "treat": [1, 5], "tree": 10, "true": [3, 4, 5, 6, 7, 8, 10, 11, 12], "try": 0, "tsv": [8, 11, 12], "tupl": [0, 3, 11, 12], "type": [1, 3, 4, 5, 7, 8, 10, 11, 12], "typic": 10, "uc": 7, "unaccess": 7, "under": [0, 8, 13], "uniqu": [1, 5], "unknown": 10, "unpack": 10, "unpack_packag": 10, "until": [4, 10], "up": [5, 9], "updat": [2, 3, 5, 10, 11], "update_alias": [2, 5], "update_blank": [2, 3], "update_record": [2, 3], "updated_tim": [2, 9, 10], "upload": [1, 2, 3, 8, 13], "upload_fil": [1, 2], "upload_file_to_guid": [1, 2], "upload_url": [2, 13], "url": [1, 2, 3, 9, 10, 11, 12, 13], "urls_metadata": 3, "us": [0, 1, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13], "usag": 11, "use_agg_md": 5, "user": [0, 10, 12], "user_access": [2, 9, 10], "usual": 12, "utcnow": 1, "util": 9, "uuid": [1, 3, 8], "uuid1": 8, "uuid2": 8, "valid": [3, 7], "valu": [0, 1, 3, 5, 7, 10, 11], "value_from_indexd": 11, "value_from_manifest": 11, "variabl": [0, 7, 8], "variou": 2, "verbos": [7, 8], "verif": 11, "verifi": [2, 9], "verify_manifest": 11, "verify_object_manifest": 11, "version": [3, 4, 5], "vital_statu": 7, "w": 13, "wa": 0, "wai": 10, "wait": 4, "want": [0, 3, 8], "warn": 11, "we": [3, 11], "web": 0, "what": 5, "when": [0, 3, 7, 10, 12], "where": [0, 3, 5, 11, 12], "whether": [3, 4, 5, 8, 11, 12], "which": [8, 10], "while": [0, 1, 3, 4, 5, 6, 7, 8, 10, 13], "whose": 5, "within": [0, 2, 9], "without": [3, 5], "won": 5, "work": [0, 10], "workaround": 11, "worksheet": 8, "workspac": [0, 2], "wrapper": 10, "write": 11, "ws_urlstr": 13, "wskei": 13, "wss": 13, "wt": [0, 10], "x": 11, "xlsx": 8, "you": [0, 3, 8, 11], "your": 0}, "titles": ["Gen3 Auth Helper", "Gen3 File Class", "Welcome to Gen3 SDK\u2019s documentation!", "Gen3 Index Class", "Gen3 Jobs Class", "Gen3 Metadata Class", "Gen3 Object Class", "Gen3 Query Class", "Gen3 Submission Class", "Gen3 Tools", "DRS Download Tools", "Indexing Tools", "Metadata Tools", "Gen3 Workspace Storage"], "titleterms": {"": 2, "auth": 0, "class": [1, 3, 4, 5, 6, 7, 8], "document": 2, "download": [10, 11], "dr": 10, "file": 1, "gen3": [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 13], "helper": 0, "index": [3, 11], "indic": 2, "ingest": 12, "job": 4, "metadata": [5, 12], "object": 6, "queri": 7, "sdk": 2, "storag": 13, "submiss": 8, "tabl": 2, "tool": [9, 10, 11, 12], "verifi": 11, "welcom": 2, "workspac": 13}}) \ No newline at end of file diff --git a/docs/_build/html/tools/indexing.html b/docs/_build/html/tools/indexing.html index c31442457..980a2885d 100644 --- a/docs/_build/html/tools/indexing.html +++ b/docs/_build/html/tools/indexing.html @@ -381,7 +381,7 @@

Indexing Tools
-async gen3.tools.indexing.verify_manifest.async_verify_object_manifest(commons_url, manifest_file, max_concurrent_requests=24, manifest_row_parsers={'acl': <function _get_acl_from_row>, 'authz': <function _get_authz_from_row>, 'file_name': <function _get_file_name_from_row>, 'file_size': <function _get_file_size_from_row>, 'guid': <function _get_guid_from_row>, 'md5': <function _get_md5_from_row>, 'urls': <function _get_urls_from_row>}, manifest_file_delimiter=None, output_filename='verify-manifest-errors-1717184774.334353.log')[source]
+async gen3.tools.indexing.verify_manifest.async_verify_object_manifest(commons_url, manifest_file, max_concurrent_requests=24, manifest_row_parsers={'acl': <function _get_acl_from_row>, 'authz': <function _get_authz_from_row>, 'file_name': <function _get_file_name_from_row>, 'file_size': <function _get_file_size_from_row>, 'guid': <function _get_guid_from_row>, 'md5': <function _get_md5_from_row>, 'urls': <function _get_urls_from_row>}, manifest_file_delimiter=None, output_filename='verify-manifest-errors-1717185181.7131712.log')[source]

Verify all file object records into a manifest csv

Parameters:
diff --git a/docs/_build/html/tools/metadata.html b/docs/_build/html/tools/metadata.html index 3ac8b8a72..af7a0c0e5 100644 --- a/docs/_build/html/tools/metadata.html +++ b/docs/_build/html/tools/metadata.html @@ -102,7 +102,7 @@

Metadata Tools
-async gen3.tools.metadata.ingest_manifest.async_ingest_metadata_manifest(commons_url, manifest_file, metadata_source, auth=None, max_concurrent_requests=24, manifest_row_parsers={'guid_for_row': <function _get_guid_for_row>, 'indexed_file_object_guid': <function _query_for_associated_indexd_record_guid>}, manifest_file_delimiter=None, output_filename='ingest-metadata-manifest-errors-1717184774.6631596.log', get_guid_from_file=True, metadata_type=None)[source]
+async gen3.tools.metadata.ingest_manifest.async_ingest_metadata_manifest(commons_url, manifest_file, metadata_source, auth=None, max_concurrent_requests=24, manifest_row_parsers={'guid_for_row': <function _get_guid_for_row>, 'indexed_file_object_guid': <function _query_for_associated_indexd_record_guid>}, manifest_file_delimiter=None, output_filename='ingest-metadata-manifest-errors-1717185182.0089867.log', get_guid_from_file=True, metadata_type=None)[source]

Ingest all metadata records into a manifest csv

Parameters: