javamanager/debugapi/src.s60/appinstaller.h
author Shabe Razvi <shaber@symbian.org>
Thu, 02 Sep 2010 15:46:18 +0100
branchRCL_3
changeset 68 67b21c8abcea
parent 19 04becd199f91
permissions -rw-r--r--
Merge RCL_3 fixes with reverted delivery

/*
* Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
* All rights reserved.
* This component and the accompanying materials are made available
* under the terms of "Eclipse Public License v1.0"
* which accompanies this distribution, and is available
* at the URL "http://www.eclipse.org/legal/epl-v10.html".
*
* Initial Contributors:
* Nokia Corporation - initial contribution.
*
* Contributors:
*
* Description: AppInstaller takes care of installing Java application
*
*/


#ifndef APPINSTALLER_H
#define APPINSTALLER_H

#include <string>
#include <list>

#include "installoperation.h"
#include "javaosheaders.h"
#include "javauid.h"
using java::util::Uid;

namespace java
{
namespace debug
{
OS_NONSHARABLE_CLASS(AppInstaller) : public InstallOperation
{
public:
    AppInstaller(const std::wstring& aFilename);
    virtual ~AppInstaller();

    int install();
    Uid getSuiteUid() const;
    std::list<Uid> getAppUids() const;

protected:
    virtual CommsMessage getNextOperation();
    virtual void handleOperationResult(CommsMessage& aMessage);

private:
    const std::wstring mFilename;
    Uid mSuiteUid;
    std::list<Uid> mAppUids;

    bool mInstallDone;
    int mInstallResult;
};

} // end namespace debug
} // end namespace java


#endif // APPINSTALLER_H