From 75788c6d832e79b6e20115062f77afd5cd959a3d Mon Sep 17 00:00:00 2001
From: Lars-Dominik Braun <PromyLOPh@gmail.com>
Date: Wed, 23 Jul 2008 19:30:51 +0200
Subject: piano: Human-readable error messages

---
 libpiano/src/main.c  | 36 ++++++++++++++++++++++++++++++++++++
 libpiano/src/piano.h |  1 +
 2 files changed, 37 insertions(+)

diff --git a/libpiano/src/main.c b/libpiano/src/main.c
index 7215fae..7887132 100644
--- a/libpiano/src/main.c
+++ b/libpiano/src/main.c
@@ -778,3 +778,39 @@ PianoReturn_t PianoTransformShared (PianoHandle_t *ph,
 
 	return ret;
 }
+
+/*	convert return value to human-readable string
+ *	@param enum
+ *	@return error string
+ */
+const char *PianoErrorToStr (PianoReturn_t ret) {
+	switch (ret) {
+		case PIANO_RET_OK:
+			return "Everything is fine :)";
+			break;
+
+		case PIANO_RET_ERR:
+			return "Unknown.";
+			break;
+
+		case PIANO_RET_XML_INVALID:
+			return "Invalid XML.";
+			break;
+
+		case PIANO_RET_AUTH_TOKEN_INVALID:
+			return "Invalid auth token.";
+			break;
+		
+		case PIANO_RET_AUTH_USER_PASSWORD_INVALID:
+			return "Username and/or password not correct.";
+			break;
+
+		case PIANO_RET_NET_ERROR:
+			return "Connection failed.";
+			break;
+
+		default:
+			return "No error message available.";
+			break;
+	}
+}
diff --git a/libpiano/src/piano.h b/libpiano/src/piano.h
index 0850517..ed3014a 100644
--- a/libpiano/src/piano.h
+++ b/libpiano/src/piano.h
@@ -186,5 +186,6 @@ PianoStation_t *PianoFindStationById (PianoStation_t *stations,
 PianoReturn_t PianoGetGenreStations (PianoHandle_t *ph);
 PianoReturn_t PianoTransformShared (PianoHandle_t *ph,
 		PianoStation_t *station);
+const char *PianoErrorToStr (PianoReturn_t ret);
 
 #endif /* _PIANO_H */
-- 
cgit v1.2.3