Author: lslezak
Date: Wed Apr 2 15:27:35 2008
New Revision: 45967
URL: http://svn.opensuse.org/viewcvs/yast?rev=45967&view=rev
Log:
- adapted callback registration implementation - use references
to functions (fate#302296)
Modified:
trunk/packager/package/yast2-packager.changes
trunk/packager/src/modules/AddOnProduct.ycp
trunk/packager/src/modules/PackageCallbacks.ycp
trunk/packager/src/modules/SignatureCheckCallbacks.ycp
trunk/packager/src/modules/SlideShow.ycp
trunk/packager/src/modules/SlideShowCallbacks.ycp
Modified: trunk/packager/package/yast2-packager.changes
URL: http://svn.opensuse.org/viewcvs/yast/trunk/packager/package/yast2-packager.changes?rev=45967&r1=45966&r2=45967&view=diff
==============================================================================
--- trunk/packager/package/yast2-packager.changes (original)
+++ trunk/packager/package/yast2-packager.changes Wed Apr 2 15:27:35 2008
@@ -1,4 +1,10 @@
-------------------------------------------------------------------
+Wed Apr 2 15:24:24 CEST 2008 - lslezak@suse.cz
+
+- adapted callback registration implementation - use references
+ to functions (fate#302296)
+
+-------------------------------------------------------------------
Fri Mar 28 08:49:19 CET 2008 - lslezak@suse.cz
- use correct "X Window" label (bnc#371552)
Modified: trunk/packager/src/modules/AddOnProduct.ycp
URL: http://svn.opensuse.org/viewcvs/yast/trunk/packager/src/modules/AddOnProduct.ycp?rev=45967&r1=45966&r2=45967&view=diff
==============================================================================
--- trunk/packager/src/modules/AddOnProduct.ycp (original)
+++ trunk/packager/src/modules/AddOnProduct.ycp Wed Apr 2 15:27:35 2008
@@ -699,7 +699,7 @@
// Should have been done before (by calling AddOnProduct::Integrate()
// foreach (map prod, AddOnProduct::add_on_products, {
// integer srcid = (integer) prod["media"]:nil;
-//
+//
// if (srcid == nil) {
// y2error ("Wrong definition of Add-on product: %1, cannot reintegrate", srcid);
// return;
@@ -798,7 +798,7 @@
});
}
});
-
+
// reread agents, redraw wizard steps, etc.
ReIntegrateFromScratch();
}
@@ -911,6 +911,69 @@
}
}
+
+boolean AcceptUnsignedFile(string file)
+{
+ y2milestone("Accepting unsigned file %1", file);
+ return true;
+}
+
+boolean RejectUnsignedFile(string file)
+{
+ y2milestone("Rejecting unsigned file %1", file);
+ return false;
+}
+
+boolean AcceptFileWithoutChecksum(string file)
+{
+ y2milestone("Accepting file without checksum: %1", file);
+ return true;
+}
+
+boolean RejectFileWithoutChecksum(string file)
+{
+ y2milestone("Rejecting file without checksum: %1", file);
+ return false;
+}
+
+boolean AcceptVerificationFailed(string file, map key)
+{
+ y2milestone("Accepting failed verification of file %1 with key %2", file, key);
+ return true;
+}
+
+boolean RejectVerificationFailed(string file, map key)
+{
+ y2milestone("Rejecting failed verification of file %1 with key %2", file, key);
+ return false;
+}
+
+
+global boolean AcceptUnknownGpgKeyCallback( string filename, string keyid )
+{
+ y2milestone("AcceptUnknownGpgKeyCallback %1: %2", filename, keyid);
+
+ return ( current_addon["signature-handling","accept_unknown_gpg_key","all"]:false ||
+ contains( current_addon["signature-handling","accept_unknown_gpg_key","keys"]:[], keyid ) );
+}
+
+global boolean ImportGpgKeyCallback(map key)
+{
+ y2milestone("ImportGpgKeyCallback: %1", key);
+
+ return ( current_addon["signature-handling","import_gpg_key","all"]:false ||
+ contains( current_addon["signature-handling","import_gpg_key","keys"]:[], key["id"]:"" ) );
+}
+
+global boolean AcceptNonTrustedGpgKeyCallback(map key)
+{
+ y2milestone("AcceptNonTrustedGpgKeyCallback %1", key);
+
+ return ( current_addon["signature-handling","accept_non_trusted_gpg_key","all"]:false ||
+ contains( current_addon["signature-handling","accept_non_trusted_gpg_key","keys"]:[], key["id"]:"" ) );
+}
+
+
/* <-- Export/Import */
/*
@@ -956,44 +1019,26 @@
current_addon = addon; // remember the current addon for the Callbacks
if( haskey( addon["signature-handling"]:$[], "accept_unsigned_file" ) )
Pkg::CallbackAcceptUnsignedFile(
- addon["signature-handling","accept_unsigned_file"]:false ? "AutoInstall::callbackTrue" : "AutoInstall::callbackFalse"
+ addon["signature-handling","accept_unsigned_file"]:false ? AcceptUnsignedFile : RejectUnsignedFile
);
if( haskey( addon["signature-handling"]:$[], "accept_file_without_checksum" ) )
Pkg::CallbackAcceptFileWithoutChecksum(
- addon["signature-handling","accept_file_without_checksum"]:false ? "AutoInstall::callbackTrue" : "AutoInstall::callbackFalse"
+ addon["signature-handling","accept_file_without_checksum"]:false ? AcceptFileWithoutChecksum : RejectFileWithoutChecksum
);
if( haskey( addon["signature-handling"]:$[], "accept_verification_failed") )
Pkg::CallbackAcceptVerificationFailed(
- addon["signature-handling","accept_verification_failed"]:false ? "AutoInstall::callbackTrue" : "AutoInstall::callbackFalse"
+ addon["signature-handling","accept_verification_failed"]:false ? AcceptVerificationFailed : RejectVerificationFailed
);
if( haskey( addon["signature-handling"]:$[], "accept_unknown_gpg_key") )
- Pkg::CallbackAcceptUnknownGpgKey("AddOnProduct::AcceptUnknownGpgKeyCallback");
+ Pkg::CallbackAcceptUnknownGpgKey(AddOnProduct::AcceptUnknownGpgKeyCallback);
if( haskey( addon["signature-handling"]:$[], "import_gpg_key") )
- Pkg::CallbackImportGpgKey("AddOnProduct::ImportGpgKeyCallback");
+ Pkg::CallbackImportGpgKey(AddOnProduct::ImportGpgKeyCallback);
if( haskey( addon["signature-handling"]:$[], "accept_non_trusted_gpg_key") )
- Pkg::CallbackAcceptNonTrustedGpgKey("AddOnProduct::AcceptNonTrustedGpgKeyCallback");
+ Pkg::CallbackAcceptNonTrustedGpgKey(AddOnProduct::AcceptNonTrustedGpgKeyCallback);
break;
});
return;
}
-global boolean AcceptUnknownGpgKeyCallback( string filename, string keyid ) {
- y2milestone("AcceptUnknownGpgKeyCallback %1 %2",filename, keyid);
- return ( current_addon["signature-handling","accept_unknown_gpg_key","all"]:false ||
- contains( current_addon["signature-handling","accept_unknown_gpg_key","keys"]:[], keyid ) );
-}
-
-global boolean ImportGpgKeyCallback( string keyid, string keyname, string keydetails ) {
- y2milestone("ImportGpgKeyCallback %1 %2 %3", keyid, keyname, keydetails );
- return ( current_addon["signature-handling","import_gpg_key","all"]:false ||
- contains( current_addon["signature-handling","import_gpg_key","keys"]:[], keyid ) );
-}
-
-global boolean AcceptNonTrustedGpgKeyCallback( string filename, string keyid, string keyname, string fingerprint ) {
- y2milestone("AcceptNonTrustedGpgKeyCallback %1 %2 %3 %4", filename, keyid, keyname, fingerprint );
- return ( current_addon["signature-handling","accept_non_trusted_gpg_key","all"]:false ||
- contains( current_addon["signature-handling","accept_non_trusted_gpg_key","keys"]:[], keyid ) );
-}
-
} // module end
Modified: trunk/packager/src/modules/PackageCallbacks.ycp
URL: http://svn.opensuse.org/viewcvs/yast/trunk/packager/src/modules/PackageCallbacks.ycp?rev=45967&r1=45966&r2=45967&view=diff
==============================================================================
--- trunk/packager/src/modules/PackageCallbacks.ycp (original)
+++ trunk/packager/src/modules/PackageCallbacks.ycp Wed Apr 2 15:27:35 2008
@@ -21,7 +21,6 @@
import "Label";
import "Mode";
import "Popup";
- import "PackageCallbacksInit";
import "URL";
import "CommandLine";
import "String";
@@ -29,8 +28,8 @@
import "Icon";
import "Wizard";
import "Progress";
- import "DontShowAgain";
import "FileUtils";
+ import "SignatureCheckCallbacks";
global boolean _provide_popup = false;
global boolean _source_popup = false;
@@ -169,7 +168,7 @@
/** at start of file providal
*
*/
- global boolean StartProvide (string name, integer archivesize, boolean remote)
+ global void StartProvide (string name, integer archivesize, boolean remote)
{
y2milestone("StartProvide: name: %1, remote: %2", name, remote);
if (remote)
@@ -198,10 +197,10 @@
}
}
}
- return true;
}
+
/** during file providal
*
*/
@@ -221,6 +220,11 @@
return true;
}
+ // redirect ProgressDeltaApply callback (a different signature is required)
+ global void ProgressDeltaApply(integer percent)
+ {
+ ProgressProvide(percent);
+ }
// creates layout for ChangeMediumPopup
@@ -438,11 +442,11 @@
/**
* At start of package install.
*/
- global boolean StartPackage (string name, string summary, integer
+ global void StartPackage (string name, string summary, integer
installsize, boolean is_delete)
{
if (!enable_asterix_package)
- return true;
+ return;
list<string> parsed_path = splitstring(name, "/");
@@ -475,7 +479,6 @@
UI::OpenDialog( `opt(`decorated), packagebox );
_package_popup = true;
}
- return true;
}
@@ -686,14 +689,6 @@
return "C";
}
- import "Mode";
-
- if (!Mode::normal ())
- {
- import "SlideShow";
- SlideShow::StopTimer();
- }
-
y2milestone ("MediaChange error: err'%1', url'%2', prd'%3', cur'%4'/'%5', wan'%6'/'%7', devs: %8, curr_dev: %9",
error_code + ":" + error, url, product, current, current_label, wanted, wanted_label, devices, current_device);
@@ -1012,12 +1007,6 @@
_provide_popup = false;
}
- if (!Mode::normal ())
- {
- import "SlideShow";
- SlideShow::StartTimer();
- }
-
if (r == `cancel)
return "C";
if (r == `ignore)
@@ -1052,12 +1041,6 @@
}
}
- if (!Mode::normal ())
- {
- import "SlideShow";
- SlideShow::SetCurrentCdNo (_current_source, wanted);
- }
-
if (r == `url)
{
y2milestone("Redirecting to: %1", url);
@@ -1547,7 +1530,7 @@
/** at start of delta providal
*
*/
- global boolean StartDeltaProvide (string name, integer archivesize)
+ global void StartDeltaProvide (string name, integer archivesize)
{
string sz = String::FormatSizeWithPrecision (archivesize, 2, false);
if (Mode::commandline())
@@ -1562,13 +1545,12 @@
UI::OpenDialog(providebox);
_provide_popup = true;
}
- return true;
}
/** at start of delta application
*
*/
- global boolean StartDeltaApply (string name)
+ global void StartDeltaApply (string name)
{
if (Mode::commandline())
{
@@ -1591,13 +1573,12 @@
UI::OpenDialog(progressbox);
_provide_popup = true;
}
- return true;
}
/** at start of patch providal
*
*/
- global boolean StartPatchProvide (string name, integer archivesize)
+ global void StartPatchProvide (string name, integer archivesize)
{
string sz = String::FormatSizeWithPrecision (archivesize, 2, false);
if (Mode::commandline())
@@ -1612,7 +1593,6 @@
UI::OpenDialog(providebox);
_provide_popup = true;
}
- return true;
}
global void FinishPatchDeltaProvide () {
@@ -1763,43 +1743,6 @@
Popup::LongMessage(patch_full_name + message);
}
- global void SetScriptCallbacks()
- {
- Pkg::CallbackScriptStart("PackageCallbacks::ScriptStart");
- Pkg::CallbackScriptProgress("PackageCallbacks::ScriptProgress");
- Pkg::CallbackScriptProblem("PackageCallbacks::ScriptProblem");
- Pkg::CallbackScriptFinish("PackageCallbacks::ScriptFinish");
-
- Pkg::CallbackMessage("PackageCallbacks::Message");
- }
-
- global void ClearScriptCallbacks()
- {
- Pkg::CallbackScriptStart("");
- Pkg::CallbackScriptProgress("");
- Pkg::CallbackScriptProblem("");
- Pkg::CallbackScriptFinish("");
-
- Pkg::CallbackMessage("");
- }
-
-//=============================================================================
-// constructor and callback init
-//=============================================================================
-
-
-
- /**
- * constructor
- *
- */
-
- global void PackageCallbacks()
- {
- y2milestone ( "PackageCallbacks constructor" );
- PackageCallbacksInit::InitPackageCallbacks ();
- }
-
global symbol AskAbortRefresh()
{
UI::OpenDialog(
@@ -2063,26 +2006,15 @@
autorefreshing_aborted = false;
}
- global void SetDownloadCallbacks ()
- {
- Pkg::CallbackInitDownload ("PackageCallbacks::InitDownload");
- Pkg::CallbackStartDownload ("PackageCallbacks::StartDownload");
- Pkg::CallbackProgressDownload ("PackageCallbacks::ProgressDownload");
- Pkg::CallbackDoneDownload ("PackageCallbacks::DoneDownload");
- Pkg::CallbackDestDownload ("PackageCallbacks::DestDownload");
- Pkg::CallbackStartRefresh("PackageCallbacks::RefreshStarted");
- Pkg::CallbackDoneRefresh("PackageCallbacks::RefreshDone");
- }
-
global void ClearDownloadCallbacks ()
{
- Pkg::CallbackInitDownload ("");
- Pkg::CallbackStartDownload ("");
- Pkg::CallbackProgressDownload ("");
- Pkg::CallbackDoneDownload ("");
- Pkg::CallbackDestDownload ("");
- Pkg::CallbackStartRefresh("");
- Pkg::CallbackDoneRefresh("");
+ Pkg::CallbackInitDownload (nil);
+ Pkg::CallbackStartDownload (nil);
+ Pkg::CallbackProgressDownload (nil);
+ Pkg::CallbackDoneDownload (nil);
+ Pkg::CallbackDestDownload (nil);
+ Pkg::CallbackStartRefresh(nil);
+ Pkg::CallbackDoneRefresh(nil);
}
@@ -2136,20 +2068,18 @@
}
- global void NotifyRebuildDB (string error_text)
+ global void NotifyRebuildDB ()
{
- // error popup
- Popup::Error (sformat (_("Error rebuilding database:
-%1"), error_text));
+ // FIXME: not used anymore
}
global void SetRebuildDBCallbacks ()
{
- Pkg::CallbackStartRebuildDb ("PackageCallbacks::StartRebuildDB");
- Pkg::CallbackProgressRebuildDb ("PackageCallbacks::ProgressRebuildDB");
- Pkg::CallbackStopRebuildDb ("PackageCallbacks::StopRebuildDB");
- Pkg::CallbackNotifyRebuildDb ("PackageCallbacks::NotifyRebuildDB");
+ Pkg::CallbackStartRebuildDb (PackageCallbacks::StartRebuildDB);
+ Pkg::CallbackProgressRebuildDb (PackageCallbacks::ProgressRebuildDB);
+ Pkg::CallbackStopRebuildDb (PackageCallbacks::StopRebuildDB);
+ Pkg::CallbackNotifyRebuildDb (PackageCallbacks::NotifyRebuildDB);
}
@@ -2182,9 +2112,7 @@
}
- global void ProgressConvertDB (integer percent, integer unused1,
- integer unused2, integer unused3,
- integer unused4)
+ global void ProgressConvertDB (integer percent, string file)
{
UI::ChangeWidget (`id(`progress), `Value, percent);
}
@@ -2203,43 +2131,18 @@
}
- global string NotifyConvertDB (string message_type, integer unused1,
- string detail)
+ global void NotifyConvertDB()
{
- if (message_type == "Nindb")
- {
- // error popup
- Popup::Error (sformat (_("Package %1 is already present in the new database."),
- detail));
- return "";
- }
-
- if (message_type == "Eread")
- {
- boolean skip = Popup::YesNoHeadline (Label::ErrorMsg (),
- // yes-no popup
- _("Error reading from old database.
-Ignore this error and continue?"));
- return skip ? "SKIP" : "CANCEL";
- }
-
- if (message_type == "Ewrite")
- {
- // error popup
- Popup::Error (_("Error writing to new database"));
- return "";
- }
-
- y2error ("unknown message_type %1", message_type);
+ // FIXME not used anymore
}
global void SetConvertDBCallbacks ()
{
- Pkg::CallbackStartConvertDb ("PackageCallbacks::StartConvertDB");
- Pkg::CallbackProgressConvertDb ("PackageCallbacks::ProgressConvertDB");
- Pkg::CallbackStopConvertDb ("PackageCallbacks::StopConvertDB");
- Pkg::CallbackNotifyConvertDb ("PackageCallbacks::NotifyConvertDB");
+ Pkg::CallbackStartConvertDb (PackageCallbacks::StartConvertDB);
+ Pkg::CallbackProgressConvertDb (PackageCallbacks::ProgressConvertDB);
+ Pkg::CallbackStopConvertDb (PackageCallbacks::StopConvertDB);
+ Pkg::CallbackNotifyConvertDb (PackageCallbacks::NotifyConvertDB);
}
@@ -2442,7 +2345,7 @@
}
-global map Authentication(string url, string msg, string username, string password)
+global map Authentication(string url, string msg, string username, string password)
{
term popup = `VBox(
`HSpacing(50), // enforce width
@@ -2728,5 +2631,212 @@
}
}
+/**
+ * Register callbacks for media change
+ */
+global define void SetMediaCallbacks () {
+ Pkg::CallbackMediaChange (PackageCallbacks::MediaChange);
+ Pkg::CallbackSourceChange (PackageCallbacks::SourceChange);
+}
+
+
+global void ClearScriptCallbacks()
+{
+ Pkg::CallbackScriptStart(nil);
+ Pkg::CallbackScriptProgress(nil);
+ Pkg::CallbackScriptProblem(nil);
+ Pkg::CallbackScriptFinish(nil);
+
+ Pkg::CallbackMessage(nil);
+}
+
+global void SetScriptCallbacks()
+{
+ Pkg::CallbackScriptStart(PackageCallbacks::ScriptStart);
+ Pkg::CallbackScriptProgress(PackageCallbacks::ScriptProgress);
+ Pkg::CallbackScriptProblem(PackageCallbacks::ScriptProblem);
+ Pkg::CallbackScriptFinish(PackageCallbacks::ScriptFinish);
+
+ Pkg::CallbackMessage(PackageCallbacks::Message);
+}
+
+global void SetScanDBCallbacks ()
+{
+ Pkg::CallbackStartScanDb (PackageCallbacks::StartScanDb);
+ Pkg::CallbackProgressScanDb (PackageCallbacks::ProgressScanDb);
+ Pkg::CallbackErrorScanDb (PackageCallbacks::ErrorScanDb);
+ Pkg::CallbackDoneScanDb (PackageCallbacks::DoneScanDb);
+}
+
+global void ResetScanDBCallbacks ()
+{
+ Pkg::CallbackStartScanDb (nil);
+ Pkg::CallbackProgressScanDb (nil);
+ Pkg::CallbackErrorScanDb (nil);
+ Pkg::CallbackDoneScanDb (nil);
+}
+
+global void SetDownloadCallbacks ()
+{
+ Pkg::CallbackInitDownload (PackageCallbacks::InitDownload);
+ Pkg::CallbackStartDownload (PackageCallbacks::StartDownload);
+ Pkg::CallbackProgressDownload (PackageCallbacks::ProgressDownload);
+ Pkg::CallbackDoneDownload (PackageCallbacks::DoneDownload);
+ Pkg::CallbackDestDownload (PackageCallbacks::DestDownload);
+ Pkg::CallbackStartRefresh(PackageCallbacks::RefreshStarted);
+ Pkg::CallbackDoneRefresh(PackageCallbacks::RefreshDone);
+}
+
+global void ResetDownloadCallbacks ()
+{
+ Pkg::CallbackInitDownload (nil);
+ Pkg::CallbackStartDownload (nil);
+ Pkg::CallbackProgressDownload (nil);
+ Pkg::CallbackDoneDownload (nil);
+ Pkg::CallbackDestDownload (nil);
+ Pkg::CallbackStartRefresh(nil);
+ Pkg::CallbackDoneRefresh(nil);
+}
+
+global void SetSourceCreateCallbacks()
+{
+ // source create callbacks
+ Pkg::CallbackSourceCreateStart(PackageCallbacks::SourceCreateStart);
+ Pkg::CallbackSourceCreateProgress(PackageCallbacks::SourceCreateProgress);
+ Pkg::CallbackSourceCreateError(PackageCallbacks::SourceCreateError);
+ Pkg::CallbackSourceCreateEnd(PackageCallbacks::SourceCreateEnd);
+ Pkg::CallbackSourceCreateInit(PackageCallbacks::SourceCreateInit);
+ Pkg::CallbackSourceCreateDestroy(PackageCallbacks::SourceCreateDestroy);
+}
+
+global void SetSourceProbeCallbacks()
+{
+ // source probing callbacks
+ Pkg::CallbackSourceProbeStart(PackageCallbacks::SourceProbeStart);
+ Pkg::CallbackSourceProbeFailed(PackageCallbacks::SourceProbeFailed);
+ Pkg::CallbackSourceProbeSucceeded(PackageCallbacks::SourceProbeSucceeded);
+ Pkg::CallbackSourceProbeProgress(PackageCallbacks::SourceProbeProgress);
+ Pkg::CallbackSourceProbeError(PackageCallbacks::SourceProbeError);
+ Pkg::CallbackSourceProbeEnd(PackageCallbacks::SourceProbeEnd);
+}
+
+global void SetProcessCallbacks()
+{
+ // register process callbacks (total progress)
+ Pkg::CallbackProcessStart(PackageCallbacks::ProcessStart);
+ Pkg::CallbackProcessProgress(PackageCallbacks::ProcessProgress);
+ Pkg::CallbackProcessNextStage(PackageCallbacks::ProcessNextStage);
+ Pkg::CallbackProcessDone(PackageCallbacks::ProcessDone);
+}
+
+global void SetProvideCallbacks()
+{
+ Pkg::CallbackStartProvide (PackageCallbacks::StartProvide);
+ Pkg::CallbackProgressProvide (PackageCallbacks::ProgressProvide);
+ Pkg::CallbackDoneProvide (PackageCallbacks::DoneProvide);
+ Pkg::CallbackStartPackage (PackageCallbacks::StartPackage);
+ Pkg::CallbackProgressPackage (PackageCallbacks::ProgressPackage);
+ Pkg::CallbackDonePackage (PackageCallbacks::DonePackage);
+}
+
+global void SetPatchCallbacks()
+{
+ Pkg::CallbackStartDeltaDownload (PackageCallbacks::StartDeltaProvide);
+ Pkg::CallbackProgressDeltaDownload (PackageCallbacks::ProgressProvide);
+ Pkg::CallbackProblemDeltaDownload (PackageCallbacks::ProblemDeltaDownload);
+ Pkg::CallbackFinishDeltaDownload (PackageCallbacks::FinishPatchDeltaProvide);
+
+ Pkg::CallbackStartDeltaApply (PackageCallbacks::StartDeltaApply);
+ Pkg::CallbackProgressDeltaApply (PackageCallbacks::ProgressDeltaApply);
+ Pkg::CallbackProblemDeltaApply (PackageCallbacks::ProblemDeltaApply);
+ Pkg::CallbackFinishDeltaApply (PackageCallbacks::FinishPatchDeltaProvide);
+
+ Pkg::CallbackStartPatchDownload (PackageCallbacks::StartPatchProvide);
+ Pkg::CallbackProgressPatchDownload (PackageCallbacks::ProgressProvide);
+ Pkg::CallbackProblemPatchDownload (PackageCallbacks::ProblemPatchDownload);
+ Pkg::CallbackFinishPatchDownload (PackageCallbacks::FinishPatchDeltaProvide);
+}
+
+global void SetSourceReportCallbacks()
+{
+ // source report callbacks
+ Pkg::CallbackSourceReportStart(PackageCallbacks::SourceReportStart);
+ Pkg::CallbackSourceReportProgress(PackageCallbacks::SourceReportProgress);
+ Pkg::CallbackSourceReportError(PackageCallbacks::SourceReportError);
+ Pkg::CallbackSourceReportEnd(PackageCallbacks::SourceReportEnd);
+ Pkg::CallbackSourceReportInit(PackageCallbacks::SourceReportInit);
+ Pkg::CallbackSourceReportDestroy(PackageCallbacks::SourceReportDestroy);
+}
+
+global void SetProgressReportCallbacks()
+{
+ Pkg::CallbackProgressReportStart(PackageCallbacks::ProgressStart);
+ Pkg::CallbackProgressReportProgress(PackageCallbacks::ProgressProgress);
+ Pkg::CallbackProgressReportEnd(PackageCallbacks::ProgressEnd);
+}
+
+/**
+ * Register package manager callbacks
+ */
+global void InitPackageCallbacks() {
+
+ SetProcessCallbacks();
+
+ SetProvideCallbacks();
+
+ SetPatchCallbacks();
+
+ SetSourceCreateCallbacks();
+
+ SetSourceProbeCallbacks();
+
+ SetSourceReportCallbacks();
+
+ SetProgressReportCallbacks();
+
+ // authentication callback
+ Pkg::CallbackAuthentication(PackageCallbacks::Authentication);
+
+ // @see bugzilla #183821
+ // Do not register these callbacks in case of AutoInstallation
+ if (Mode::autoinst() != true) {
+ // Signature-related callbacks
+ Pkg::CallbackAcceptUnsignedFile (SignatureCheckCallbacks::AcceptUnsignedFile);
+ Pkg::CallbackAcceptUnknownGpgKey (SignatureCheckCallbacks::AcceptUnknownGpgKey);
+ Pkg::CallbackImportGpgKey (SignatureCheckCallbacks::ImportGpgKey);
+ Pkg::CallbackAcceptNonTrustedGpgKey (SignatureCheckCallbacks::TrustGpgKey);
+ Pkg::CallbackAcceptVerificationFailed (SignatureCheckCallbacks::AcceptVerificationFailed);
+ Pkg::CallbackTrustedKeyAdded (SignatureCheckCallbacks::TrustedKeyAdded);
+ Pkg::CallbackTrustedKeyRemoved (SignatureCheckCallbacks::TrustedKeyRemoved);
+ Pkg::CallbackAcceptFileWithoutChecksum (SignatureCheckCallbacks::AcceptFileWithoutChecksum);
+ Pkg::CallbackAcceptWrongDigest (SignatureCheckCallbacks::AcceptWrongDigest);
+ Pkg::CallbackAcceptUnknownDigest (SignatureCheckCallbacks::AcceptUnknownDigest);
+ }
+
+ SetMediaCallbacks ();
+
+ SetScriptCallbacks();
+
+ SetScanDBCallbacks();
+
+ SetDownloadCallbacks();
+}
+
+//=============================================================================
+// constructor and callback init
+//=============================================================================
+
+
+ /**
+ * constructor
+ */
+
+ global void PackageCallbacks()
+ {
+ y2milestone ( "PackageCallbacks constructor" );
+ InitPackageCallbacks();
+ }
+
+
// EOF
}
Modified: trunk/packager/src/modules/SignatureCheckCallbacks.ycp
URL: http://svn.opensuse.org/viewcvs/yast/trunk/packager/src/modules/SignatureCheckCallbacks.ycp?rev=45967&r1=45966&r2=45967&view=diff
==============================================================================
--- trunk/packager/src/modules/SignatureCheckCallbacks.ycp (original)
+++ trunk/packager/src/modules/SignatureCheckCallbacks.ycp Wed Apr 2 15:27:35 2008
@@ -209,7 +209,7 @@
// that a trusted key has been added.
//
/* function for CallbackTrustedKeyAdded() */
- void TrustedKeyAdded (map key)
+ global void TrustedKeyAdded (map key)
{
y2milestone("Trusted key has been added: %1 / %2 (%3)", key["id"]:"", key["fingerprint"]:"", key["name"]:"");
return nil;
@@ -220,7 +220,7 @@
// that a trusted key has been removed.
//
/* function for CallbackTrustedKeyRemoved() */
- void TrustedKeyRemoved (map key)
+ global void TrustedKeyRemoved (map key)
{
y2milestone("Trusted key has been removed: %1 / %2 (%3)", key["id"]:"", key["fingerprint"]:"", key["name"]:"");
return nil;
Modified: trunk/packager/src/modules/SlideShow.ycp
URL: http://svn.opensuse.org/viewcvs/yast/trunk/packager/src/modules/SlideShow.ycp?rev=45967&r1=45966&r2=45967&view=diff
==============================================================================
--- trunk/packager/src/modules/SlideShow.ycp (original)
+++ trunk/packager/src/modules/SlideShow.ycp Wed Apr 2 15:27:35 2008
@@ -1890,96 +1890,12 @@
/**
- * Install callbacks for slideshow. Should be in SlideShowCallbacks but
- * that doesn't work at the moment.
- */
- global void InstallSlideShowCallbacks()
- {
- y2milestone( "InstallSlideShowCallbacks");
-
- Pkg::CallbackStartPackage ("SlideShowCallbacks::StartPackage");
- Pkg::CallbackProgressPackage ("SlideShowCallbacks::ProgressPackage");
- Pkg::CallbackDonePackage ("SlideShowCallbacks::DonePackage");
-
- Pkg::CallbackStartProvide ("SlideShowCallbacks::StartProvide");
- Pkg::CallbackProgressProvide ("SlideShowCallbacks::ProgressProvide");
- Pkg::CallbackDoneProvide ("SlideShowCallbacks::DoneProvide");
- Pkg::CallbackProgressDownload("SlideShowCallbacks::ProgressDownload");
-
- Pkg::CallbackSourceChange ("SlideShowCallbacks::CallbackSourceChange");
-
- Pkg::CallbackStartDeltaDownload ("SlideShowCallbacks::StartDeltaProvide");
- Pkg::CallbackProgressDeltaDownload ("SlideShowCallbacks::ProgressProvide");
- Pkg::CallbackProblemDeltaDownload ("SlideShowCallbacks::ProblemDeltaDownload");
- Pkg::CallbackFinishDeltaDownload ("SlideShowCallbacks::FinishPatchDeltaProvide");
-
- Pkg::CallbackStartDeltaApply ("SlideShowCallbacks::StartDeltaApply");
- Pkg::CallbackProgressDeltaApply ("SlideShowCallbacks::ProgressDeltaApply");
- Pkg::CallbackProblemDeltaApply ("SlideShowCallbacks::ProblemDeltaApply");
- Pkg::CallbackFinishDeltaApply ("SlideShowCallbacks::FinishPatchDeltaProvide");
-
- Pkg::CallbackStartPatchDownload ("SlideShowCallbacks::StartPatchProvide");
- Pkg::CallbackProgressPatchDownload ("SlideShowCallbacks::ProgressProvide");
- Pkg::CallbackProblemPatchDownload ("SlideShowCallbacks::ProblemPatchDownload");
- Pkg::CallbackFinishPatchDownload ("SlideShowCallbacks::FinishPatchDeltaProvide");
-
- Pkg::CallbackScriptStart("SlideShowCallbacks::ScriptStart");
- Pkg::CallbackScriptProgress("SlideShowCallbacks::ScriptProgress");
- Pkg::CallbackScriptProblem("SlideShowCallbacks::ScriptProblem");
- Pkg::CallbackScriptFinish("SlideShowCallbacks::ScriptFinish");
-
- Pkg::CallbackMessage("SlideShowCallbacks::Message");
- }
-
-
- /**
- * Remove callbacks for slideshow. Should be in SlideShowCallbacks but
- * that doesn't work at the moment.
- */
- global void RemoveSlideShowCallbacks()
- {
- y2milestone( "RemoveSlideShowCallbacks");
-
- Pkg::CallbackStartPackage ("");
- Pkg::CallbackProgressPackage ("");
- Pkg::CallbackDonePackage ("");
-
- Pkg::CallbackStartProvide ("");
- Pkg::CallbackProgressProvide ("");
- Pkg::CallbackDoneProvide ("");
-
- Pkg::CallbackSourceChange ("");
-
- Pkg::CallbackStartDeltaDownload ("");
- Pkg::CallbackProgressDeltaDownload ("");
- Pkg::CallbackProblemDeltaDownload ("");
- Pkg::CallbackFinishDeltaDownload ("");
-
- Pkg::CallbackStartDeltaApply ("");
- Pkg::CallbackProgressDeltaApply ("");
- Pkg::CallbackProblemDeltaApply ("");
- Pkg::CallbackFinishDeltaApply ("");
-
- Pkg::CallbackStartPatchDownload ("");
- Pkg::CallbackProgressPatchDownload ("");
- Pkg::CallbackProblemPatchDownload ("");
- Pkg::CallbackFinishPatchDownload ("");
-
- Pkg::CallbackScriptStart("");
- Pkg::CallbackScriptProgress("");
- Pkg::CallbackScriptProblem("");
- Pkg::CallbackScriptFinish("");
-
- Pkg::CallbackMessage("");
- }
-
-
- /**
* Open the slide show dialog.
**/
global void OpenSlideShowDialog()
{
- InstallSlideShowCallbacks();
+ // call SlideShowCallbacks::InstallSlideShowCallbacks()
+ WFM::call("wrapper_slideshow_callbacks", ["InstallSlideShowCallbacks"]);
OpenSlideShowBaseDialog();
CheckForSlides();
@@ -2001,7 +1917,8 @@
if ( opened_own_wizard )
Wizard::CloseDialog();
- RemoveSlideShowCallbacks();
+ // call SlideShowCallbacks::RemoveSlideShowCallbacks()
+ WFM::call("wrapper_slideshow_callbacks", ["RemoveSlideShowCallbacks"]);
}
}
Modified: trunk/packager/src/modules/SlideShowCallbacks.ycp
URL: http://svn.opensuse.org/viewcvs/yast/trunk/packager/src/modules/SlideShowCallbacks.ycp?rev=45967&r1=45966&r2=45967&view=diff
==============================================================================
--- trunk/packager/src/modules/SlideShowCallbacks.ycp (original)
+++ trunk/packager/src/modules/SlideShowCallbacks.ycp Wed Apr 2 15:27:35 2008
@@ -24,6 +24,7 @@
import "SlideShow";
import "Message";
import "Directory";
+ import "URL";
boolean _remote_provide = false;
@@ -75,7 +76,7 @@
/**
* at start of file providal
*/
- global boolean StartProvide( string name, integer archivesize, boolean remote )
+ global void StartProvide( string name, integer archivesize, boolean remote )
{
pkg_inprogress = name;
@@ -84,19 +85,17 @@
SlideShow::SlideProvideStart (name , archivesize, remote);
_remote_provide = true;
}
-
- return true;
}
/**
* during file providal
*/
- global boolean ProgressProvide(integer percent, integer bps_avg, integer bps_current)
+ global boolean ProgressProvide(integer percent)
{
if (_remote_provide)
{
- SlideShow::UpdateCurrentPackageRateProgress ( percent, bps_avg, bps_current );
+ SlideShow::UpdateCurrentPackageProgress( percent );
}
HandleInput();
return ! SlideShow::GetUserAbort();
@@ -104,7 +103,7 @@
global boolean ProgressDownload(integer percent, integer bps_avg, integer bps_current)
{
- return ProgressProvide(percent, bps_avg, bps_current);
+ return SlideShow::UpdateCurrentPackageRateProgress(percent, bps_avg, bps_current);
}
@@ -367,7 +366,7 @@
/**
* at start of package install
*/
- global boolean StartPackage( string name, string summary, integer install_size, boolean is_delete )
+ global void StartPackage( string name, string summary, integer install_size, boolean is_delete )
{
PackageCallbacks::_package_name = name;
PackageCallbacks::_package_size = install_size;
@@ -377,9 +376,6 @@
summary,
install_size,
is_delete);
-
- // dummy value, libzypp callback is void()
- return true;
}
@@ -501,4 +497,117 @@
SlideShow::UpdateCurrentPackageProgress(0);
SlideShow::UpdateAllCdProgress(false);
};
+
+ global string MediaChange (string error_code, string error, string url, string product,
+ integer current, string current_label,
+ integer wanted, string wanted_label,
+ boolean double_sided, list<string> devices, integer current_device)
+ {
+ if (!Mode::normal ())
+ {
+ SlideShow::StopTimer();
+ }
+
+ string ret = PackageCallbacks::MediaChange(error_code, error_code, url, product, current, current_label, wanted,
+ wanted_label, double_sided, devices, current_device);
+
+ if (!Mode::normal ())
+ {
+ SlideShow::StartTimer();
+
+ // moved from PackageCallbacks
+ if (ret == "" || URL::Check(ret))
+ {
+ SlideShow::SetCurrentCdNo (PackageCallbacks::_current_source, wanted);
+ }
+ }
+
+ return ret;
+ }
+
+ /**
+ * Install callbacks for slideshow. Should be in SlideShowCallbacks but
+ * that doesn't work at the moment.
+ */
+ global void InstallSlideShowCallbacks()
+ {
+ y2milestone( "InstallSlideShowCallbacks");
+
+ Pkg::CallbackStartPackage (SlideShowCallbacks::StartPackage);
+ Pkg::CallbackProgressPackage (SlideShowCallbacks::ProgressPackage);
+ Pkg::CallbackDonePackage (SlideShowCallbacks::DonePackage);
+
+ Pkg::CallbackStartProvide (SlideShowCallbacks::StartProvide);
+ Pkg::CallbackProgressProvide (SlideShowCallbacks::ProgressProvide);
+ Pkg::CallbackDoneProvide (SlideShowCallbacks::DoneProvide);
+ Pkg::CallbackProgressDownload(SlideShowCallbacks::ProgressDownload);
+
+ Pkg::CallbackSourceChange (SlideShowCallbacks::CallbackSourceChange);
+
+ Pkg::CallbackStartDeltaDownload (SlideShowCallbacks::StartDeltaProvide);
+ Pkg::CallbackProgressDeltaDownload (SlideShowCallbacks::ProgressProvide);
+ Pkg::CallbackProblemDeltaDownload (SlideShowCallbacks::ProblemDeltaDownload);
+ Pkg::CallbackFinishDeltaDownload (SlideShowCallbacks::FinishPatchDeltaProvide);
+
+ Pkg::CallbackStartDeltaApply (SlideShowCallbacks::StartDeltaApply);
+ Pkg::CallbackProgressDeltaApply (SlideShowCallbacks::ProgressDeltaApply);
+ Pkg::CallbackProblemDeltaApply (SlideShowCallbacks::ProblemDeltaApply);
+ Pkg::CallbackFinishDeltaApply (SlideShowCallbacks::FinishPatchDeltaProvide);
+
+ Pkg::CallbackStartPatchDownload (SlideShowCallbacks::StartPatchProvide);
+ Pkg::CallbackProgressPatchDownload (SlideShowCallbacks::ProgressProvide);
+ Pkg::CallbackProblemPatchDownload (SlideShowCallbacks::ProblemPatchDownload);
+ Pkg::CallbackFinishPatchDownload (SlideShowCallbacks::FinishPatchDeltaProvide);
+
+ Pkg::CallbackScriptStart(SlideShowCallbacks::ScriptStart);
+ Pkg::CallbackScriptProgress(SlideShowCallbacks::ScriptProgress);
+ Pkg::CallbackScriptProblem(SlideShowCallbacks::ScriptProblem);
+ Pkg::CallbackScriptFinish(SlideShowCallbacks::ScriptFinish);
+
+ Pkg::CallbackMessage(PackageCallbacks::Message);
+
+ Pkg::CallbackMediaChange(SlideShowCallbacks::MediaChange);
+ }
+
+ /**
+ * Remove callbacks for slideshow. Should be in SlideShowCallbacks but
+ * that doesn't work at the moment.
+ */
+ global void RemoveSlideShowCallbacks()
+ {
+ y2milestone( "RemoveSlideShowCallbacks");
+
+ Pkg::CallbackStartPackage (nil);
+ Pkg::CallbackProgressPackage (nil);
+ Pkg::CallbackDonePackage (nil);
+
+ Pkg::CallbackStartProvide (nil);
+ Pkg::CallbackProgressProvide (nil);
+ Pkg::CallbackDoneProvide (nil);
+
+ Pkg::CallbackSourceChange (nil);
+
+ Pkg::CallbackStartDeltaDownload (nil);
+ Pkg::CallbackProgressDeltaDownload (nil);
+ Pkg::CallbackProblemDeltaDownload (nil);
+ Pkg::CallbackFinishDeltaDownload (nil);
+
+ Pkg::CallbackStartDeltaApply (nil);
+ Pkg::CallbackProgressDeltaApply (nil);
+ Pkg::CallbackProblemDeltaApply (nil);
+ Pkg::CallbackFinishDeltaApply (nil);
+
+ Pkg::CallbackStartPatchDownload (nil);
+ Pkg::CallbackProgressPatchDownload (nil);
+ Pkg::CallbackProblemPatchDownload (nil);
+ Pkg::CallbackFinishPatchDownload (nil);
+
+ Pkg::CallbackScriptStart(nil);
+ Pkg::CallbackScriptProgress(nil);
+ Pkg::CallbackScriptProblem(nil);
+ Pkg::CallbackScriptFinish(nil);
+
+ Pkg::CallbackMessage(nil);
+ }
+
}
--
To unsubscribe, e-mail: yast-commit+unsubscribe@opensuse.org
For additional commands, e-mail: yast-commit+help@opensuse.org