Imported Upstream version 14.45.0
[platform/upstream/libzypp.git] / zypp / ZYpp.h
index 7910223..f193f97 100644 (file)
 #include "zypp/base/ReferenceCounted.h"
 #include "zypp/base/NonCopyable.h"
 #include "zypp/base/PtrTypes.h"
+#include "zypp/APIConfig.h"
+
+#include "zypp/ZConfig.h"
+#include "zypp/ManagedFile.h"
 
-#include "zypp/base/Deprecated.h"
 #include "zypp/ZYppCommit.h"
+#include "zypp/ResTraits.h"
 
 #include "zypp/Target.h"
 #include "zypp/Resolver.h"
@@ -38,9 +42,6 @@ namespace zypp
   class ZYppFactory;
   class ResPool;
   class ResPoolProxy;
-  class SourceFeed_Ref;
-  class ResStore;
-  class Locale;
   class KeyRing;
 
   ///////////////////////////////////////////////////////////////////
@@ -49,7 +50,8 @@ namespace zypp
   //
   /**
    * \todo define Exceptions
-  */
+   * ZYpp API main interface
+   */
   class ZYpp : public base::ReferenceCounted, private base::NonCopyable
   {
   public:
@@ -59,7 +61,10 @@ namespace zypp
 
   public:
 
-    /** Pool of ResStatus for individual ResObjetcs. */
+    /**
+     * Access to the global resolvable pool.
+     * Same as \ref zypp::ResPool::instance
+     */
     ResPool pool() const;
 
     /** Pool of ui::Selectable.
@@ -68,17 +73,10 @@ namespace zypp
     */
     ResPoolProxy poolProxy() const;
 
-    /**  */
-    //SourceFeed_Ref sourceFeed() const;
-
-    void addResolvables (const ResStore& store, bool installed = false);
-
-    void removeResolvables (const ResStore& store);
-
     DiskUsageCounter::MountPointSet diskUsage();
 
     void setPartitions(const DiskUsageCounter::MountPointSet &mp);
-    
+
     DiskUsageCounter::MountPointSet getPartitions() const;
 
   public:
@@ -87,18 +85,19 @@ namespace zypp
      */
     Target_Ptr target() const;
 
-    /**
-     * \throws Exception
-     * just init the target, dont populate store or pool
+    /** Same as \ref target but returns NULL if target is not
+     *  initialized, instead of throwing.
      */
-    void initializeTarget(const Pathname & root);
+    Target_Ptr getTarget() const;
 
     /**
      * \throws Exception
-     * if commit_only == true, just init the target, dont populate store or pool
+     * Just init the target, dont populate store or pool.
+     * If \c doRebuild_r is \c true, an already existing
+     * database is rebuilt (rpm --rebuilddb ).
      */
-    ZYPP_DEPRECATED void initTarget(const Pathname & root, bool commit_only = false);  
-    
+    void initializeTarget(const Pathname & root, bool doRebuild_r = false);
+
     /**
      * \throws Exception
      */
@@ -115,59 +114,31 @@ namespace zypp
     */
     ZYppCommitResult commit( const ZYppCommitPolicy & policy_r );
 
-  public:
-    /** */
-    Resolver_Ptr resolver() const;
-    KeyRing_Ptr keyRing() const;
-  public:
-    /** Set the preferd locale for translated labels, descriptions,
-     *  etc. passed to the UI.
+    /** Install a source package on the Target.
+     * \throws Exception
      */
-    void setTextLocale( const Locale & textLocale_r );
-    /** */
-    Locale getTextLocale() const;
-
-  public:
-    typedef std::set<Locale> LocaleSet;
-    /** Set the requested locales.
-     * Languages to be supported by the system, e.g. language specific
-     * packages to be installed. This function operates on the pool,
-     * so only the locales that are available as resolvables
-     * are marked as requested. The rest is ignored.
-    */
-    void setRequestedLocales( const LocaleSet & locales_r );
-    /** */
-    LocaleSet getRequestedLocales() const;
+    void installSrcPackage( const SrcPackage_constPtr & srcPackage_r );
 
-    /**
-     * Get the set of available locales.
-     * This is computed from the package data so it actually
-     * represents all locales packages claim to support.
+    /** Provides a source package on the Target.
+     * \throws Exception
      */
-    LocaleSet getAvailableLocales() const;
+    ManagedFile provideSrcPackage( const SrcPackage_constPtr & srcPackage_r );
 
-    /**
-     * internal use only
-     **/
-    void availableLocale( const Locale & locale_r );
+  public:
+    /** */
+    Resolver_Ptr resolver() const;
+    KeyRing_Ptr keyRing() const;
 
   public:
     /** Get the path where zypp related plugins store persistent data and caches   */
     Pathname homePath() const;
-    
+
     /** Get the path where zypp related plugins store temp data   */
     Pathname tmpPath() const;
-    
+
     /** set the home, if you need to change it */
     void setHomePath( const Pathname & path );
 
-    /** Get the system architecture.   */
-    Arch architecture() const;
-    /** Set the system architecture.
-       This should be used for testing/debugging only since the Target backend
-       won't be able to install incompatible packages ;-)   */
-    void setArchitecture( const Arch & arch );
-
   protected:
     /** Dtor */
     virtual ~ZYpp();