XׯdG-BddlZddlZddlZddlmZmZmZddlmZm Z m Z m Z m Z ddlZddl mZddlmZddlZddlmZddlmZddlmZdd lmZdd lmZdd lmZdd lmZdd l m!Z!m"Z"ddl#m$Z$ddl%m&Z&ddl'm(Z(ddlm)Z)ddl*m+Z+dZ,Gddej-Z.dS)N)log_info log_error log_debug)App Utilities newTabViewColorControlBackgroundColor)nc) dprint_ex)WbAdminConfigurationStartup)WbAdminConfigFileUI)WbAdminServerStatus)WbAdminConnections)WbAdminVariables)WbAdminSecurity) WbAdminLogs) WbAdminExport WbAdminImport)WbAdminDashboard)WbAdminPerformanceSchema)'WbAdminPerformanceSchemaInstrumentation)weakcb)wbaOSc "tttttt t tttttg }tj ddd}i}tjt"fD] fdtjD}n#Y(xYwt&j|D]}}tjtj|dr=t/|}t1|dr |||<|dz }jt&j|j=~~t&jt9|dkrqddl}|t?| }tC|"D]}||tj dd|z|S) NWBAz)Looking for extension modules for WBA... rcg|]V}|dtjtj|T|WS)wba_) startswithospathisdirjoin).0flocations ..\modules\wb_admin_main.py z&scan_admin_modules..MsW|||Q!,,v:N:N|SUSZS`S`acahamamnvxyazazS{S{|q|||z __init__.py wba_registerz%i extension modules found )#r rrrrrrrrrrrgrtrr r!dirname__file__listdirsysappendexistsr# __import__hasattrmodules__name__poplen collections OrderedDictsorteditemslistvalues) r5 init_count extra_modsfolders candidatemodr9odr&s @r'scan_admin_modulesrE4s*""!'6 8G"LDEEEJJW__X../ ||||"*X"6"6|||GG  H !!!  Iw~~bgll8Y NNOO  ++3//,/Jy)NJJ CL1   :!  $ $VJ,<,<,>,>%?%? @ @ $$  C NN3    L6CDDD Ns B..B2cteZdZdZdZdZdZdZdZdZ dZ d Z d Z d Z d Zd ZdZdZdZdZdS)AdministratorTabctj|dddd||_||_g|_i|_d|_d|_td|_ ||_ d|_ ||_ |j jtjkr>|t%jt(|||t3j|dt7j|jd|t7j|jd|j d||j d|| |j ddtCj"d t5|d |_#|j $|j%|&|j'd kr|j (dn%|j'd kr|j (d |j )tUddS)NF AdministratorThandle_on_closeGRNServerStateChangedGNColorsChangedserver_startedserver_stoppedg?timeoutr+server_offlinezWBA init complete )+mformsAppView__init__editorownertabs name2page config_uiclosingrtabviewctrl_beold_active_tabserver_profilehost_osrdarwinset_back_colorr getSystemColorr to_html set_managedset_release_on_addon_closewb_admin_utilsrr add_observerhandle_server_state_changed updateColorsadd_me_for_eventaddr add_timeout _timeout_tmadd_tab_changed_callback tab_changedrO isConnectedevent_from_maincontinue_eventsr)selfr\r^ main_viewrUs r'rTzAdministratorTab.__init__ms+e_ouUUU*0 *3 *, *,*.*/ *4T*:*: *1 *.*8   &%, 6 6    45K L L T T V V W W W  !!! n+D2CDDEEE 8:QSYZZZ )+<=== %%&6=== %%&6=== tT***$0fT96M6MNN --d.>???    " " L ( ()9 : : : :  2 % % L ( ()9 : : : $$&&&'(((((r)ctd|jr tj|jd|_t j|jt j|jtj d| |j stddS|j ||jdS)NzClosing admin zClosing Administator.zAdmin close cancelled FT)rrnrcancel_timeoutr remove_observerrirjrgetset_status_textshutdownrZr\releaserV handle_closerts r'rJz AdministratorTab.handle_on_closes#$$$   $  $T%5 6 6 6#D  4;<<< 4,---  !!"9::: |  / 0 0 05   !!!tr)c0||dSN) set_title)rttexts r'set_content_labelz"AdministratorTab.set_content_labels tr)c|j||jjtjkr|d|j|ddS)Nz#ffffff) rWr1r^r_rwindowsrar[add_pagertpages r'rzAdministratorTab.add_pages_    &%- 7 7    * * * dB'''''r)c||jvr6|j||j|dSdSr)rWremover[ remove_pagers r'rzAdministratorTab.remove_pagesI 49   I  T " " " L $ $T * * * * *  r)c|j|j||jdSr)r[set_active_tabrWindexrVbecome_active_tabrs r' select_pagezAdministratorTab.select_pages@ ##DIOOD$9$9::: $$&&&&&r)c6|j|Sr)rV page_with_idrtentry_ids r'rzAdministratorTab.page_with_idsz&&x000r)c.|dSr)rprs r' switch_tozAdministratorTab.switch_tos r)c|jr.t|jdr|j|j}|j|}|t|dr |ni#t$r\}ddl}td|d| dtj dd|zd d d Yd}~nd}~wwxYw||_dS) Npage_deactivatedpage_activatedrz!Unhandled exception in Admin for z:  ErrorzPAn unhandled exception occurred (%s). Please refer to the log files for details.OKr)r]r4rr[get_active_tabrWr Exception tracebackr format_excrRr show_error)rtipanelers r'rpzAdministratorTab.tab_changedsW   374+>@R#S#S 3   0 0 2 2 2 L ' ' ) ) !   0@!A!A  [$$&&&& [ [ [     PYPdPdPfPfPfPfghhh ++G6HKL6LNRTVXZ[[[[[[[[ [$s/B C*AC%%C*ctdtddd|_|jD]1}t |dr|}|durd|_2dS)Nzshutting down admin z closingTr{F)rr rZrWr4r{)rttabress r'r{zAdministratorTab.shutdownss)***!Z    9 ) )CsJ'' )llnn%<<#(DL  ) )r)c.|dSr)r{r~s r'shutdown_eventzAdministratorTab.shutdown_events r)c td|dz|ddkr|jddS|ddkr|jddS|jddS)Nz6received notification that server state changed to %s stater+rMrPrQrN)rr\rrrtnamesenderinfos r'riz,AdministratorTab.handle_server_state_changedsJTRY]Z[[[ =A   L ( ()9 : : : : : ']b L ( ()9 : : : : : L ( ()9 : : : : :r)c|tjtdSr)rar rbr rcrs r'rjzAdministratorTab.updateColorss4 E01GHHPPRRSSSSSr)ctddt|jdkrFt|jddr+|j|jdjdtdddS)Nr+zHandling start eventr print_outputzServer is runningzDone handling start eventr r8rWr4r\uitaskrr~s r'server_started_eventz%AdministratorTab.server_started_eventst!+,,, ty>>A  '$)A,"G"G  L   ! 9;N O O O!011111r)ctddt|jdkrFt|jddr+|j|jdjdtdddS)Nr+zHandling offline eventrrz!Server is running in offline modezDone handling offline eventrr~s r'server_offline_eventz%AdministratorTab.server_offline_eventst!-... ty>>A  '$)A,"G"G  L   ! 9;^ _ _ _!233333r)ctddt|jdkrFt|jddr+|j|jdjdtdddS)Nr+zHandling stop eventrrzServer is stoppedzDone handling stop eventrr~s r'server_stopped_eventz%AdministratorTab.server_stopped_event st!*+++ ty>>A  '$)A,"G"G  L   ! 9;N O O O!/00000r)cn|js|j|jrd|_|j Sr)rZr\process_ui_task_queuernr~s r'rOzAdministratorTab.timeouts=| 1 L . . 0 0 0 < $#D <r)N)r6 __module__ __qualname__rTrJrrrrrrrpr{rrirjrrrrOr)r'rGrGls*)*)*)Z&(((+++ ''' 111 $ $ $ )));;;TTT 222 444111     r)rG)/r r0r, workbench.logrrrrRrrrr r workbench.notificationsr wb_commonr rgwb_admin_configuration_startupr wb_admin_config_file_uirwb_admin_server_statusrwb_admin_connectionsrwb_admin_variablesrwb_admin_securityr wb_admin_logsrwb_admin_exportrrwb_admin_performance_dashboardrwb_admin_perfschema_reportsr#wb_admin_perfschema_instrumentationrrwb_server_managementrrErSrGrr)r'rs0 8888888888LLLLLLLLLLLLLL &&&&&&FFFFFF777777666666333333//////------%%%%%%88888888;;;;;;@@@@@@WWWWWW!!!!!!&&&&&&333pj j j j j v~j j j j j r)