Changeset 53c388a


Ignore:
Timestamp:
04/17/14 01:00:51 (11 months ago)
Author:
yurkis <yurkis@…>
Branches:
master, releng/10.0.2, releng/10.0.3, releng/10.1, releng/10.1.1
Children:
f1743a1
Parents:
ce5c3d7
Message:

Update center: start using of system flags

Location:
src-qt4/pc-updatecenter
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • src-qt4/pc-updatecenter/syscontroller.cpp

    r2f75b29 r53c388a  
    2626#include "utils.h" 
    2727#include "pcbsd-utils.h" 
     28#include "pcbsd-sysFlags.h" 
    2829#include <QDebug> 
    2930#include <QRegExp> 
     31 
     32 
    3033 
    3134__string_constant PC_UPDATE_COMMAND = "pc-updatemanager"; 
     
    252255 
    253256        if (n) 
    254         { 
    255  
     257        {             
    256258            if (n>1) 
    257259                reportUpdatesAvail(tr("%1 system updates avilable").arg(QString::number(n))); 
  • src-qt4/pc-updatecenter/syscontroller.h

    r2f75b29 r53c388a  
    3838    Q_OBJECT 
    3939 
     40    USES_SYS_FLAG("SYSUPDATE") 
    4041 
    4142public: 
  • src-qt4/pc-updatecenter/updatecontroller.cpp

    rd49234e r53c388a  
    2525#include "updatecontroller.h" 
    2626 
     27#include "pcbsd-utils.h" 
    2728#include <QDebug> 
    2829#include <QCoreApplication> 
     
    5960 
    6061/////////////////////////////////////////////////////////////////////////////// 
     62bool CAbstractUpdateController::isHostSystem() 
     63{ 
     64    return (mJailPrefix.length() == 0); 
     65} 
     66 
     67/////////////////////////////////////////////////////////////////////////////// 
    6168CAbstractUpdateController::EUpdateControllerState CAbstractUpdateController::currentState() 
    6269{ 
     
    112119        mCurrentProgress = SProgress(); 
    113120        mLogMessages.clear(); 
     121        if (sysFlagName().length()) 
     122            setSysFlag(sysFlagName(), "UPDATING"); 
     123    } 
     124 
     125    if (sysFlagName().length()) 
     126    { 
     127        switch(new_state) 
     128        { 
     129            case eUPDATES_AVAIL: 
     130                setSysFlag(sysFlagName(), "UPDATE"); 
     131                break; 
     132            case eUPDATING_ERROR: 
     133                setSysFlag(sysFlagName(), "ERROR"); 
     134                break; 
     135        } 
     136        if ((mCurrentState == eUPDATING) && (new_state != mCurrentState) && (new_state != eUPDATING_ERROR)) 
     137        { 
     138            setSysFlag(sysFlagName(), "SUCCESS"); 
     139        } 
    114140    } 
    115141 
     
    207233 
    208234/////////////////////////////////////////////////////////////////////////////// 
     235void CAbstractUpdateController::setSysFlag(QString flag, QString val) 
     236{ 
     237    QString command="pc-systemflag"; 
     238    if (mJailPrefix.length()) 
     239    { 
     240        command= QString("chroot ")+ mJailPrefix + command ; 
     241    } 
     242    pcbsd::Utils::runShellCommand(command + QString(" ") + flag + QString(" ") + val); 
     243} 
     244 
     245/////////////////////////////////////////////////////////////////////////////// 
    209246void CAbstractUpdateController::check() 
    210247{ 
  • src-qt4/pc-updatecenter/updatecontroller.h

    rd49234e r53c388a  
    5050    private: 
    5151 
     52#define USES_SYS_FLAG(name)\ 
     53    protected:\ 
     54    virtual QString sysFlagName(){return QString(name);}; 
     55 
    5256class CAbstractUpdateController:public QObject 
    5357{ 
     
    9397    void setJailPrefix(QString prefix); 
    9498    void removeJailPrefix(); 
     99    bool isHostSystem(); 
    95100 
    96101    EUpdateControllerState currentState(); 
     
    111116    void launchUpdate(); 
    112117    void launchCheck(); 
    113     DLProcess& process() {return mUpdProc;} 
     118    DLProcess& process() {return mUpdProc;}     
    114119 
    115120    virtual void checkShellCommand(QString& cmd, QStringList& args)=0; 
    116121    virtual void updateShellCommand(QString& cmd, QStringList& args)=0; 
    117122    virtual QString dlType(){return QString("");} 
     123    virtual QString sysFlagName(){return QString("");} 
    118124 
    119125    //! May be overrided by child. Calls on update check 
     
    145151    QString                mJailPrefix; 
    146152 
     153    void setSysFlag(QString flag, QString val); 
     154 
    147155public: signals: 
    148156    void stateChanged(CAbstractUpdateController::EUpdateControllerState new_state); 
Note: See TracChangeset for help on using the changeset viewer.