2014-10-16 123 views
-1

假设我有两个不同的库:处理多种类型的错误

第一个是网络库,第二个是XML库。

这两个库都有其定义的错误:NetworkError和XMLError枚举。

现在我将两个库合并为一个。它将从网络接收XML并处理其标签。

但是,任何方法都可能遭受任何类型的错误,XMLError或NetworkError。 我的图书馆不应该处理这些错误,并且应该将它们转发给它的用户。

一旦我的语言被键入,我不能返回多种类型。

解决此问题的最佳方法是什么?创建一个新的枚举,它在逻辑上对应于两个枚举的联合?

异常不是一个选项。

谢谢。

+2

选择一种语言。用两种完全不同的语言标记单个问题很少是正确的。 – 2014-10-16 12:02:16

+0

我只想整体看待这个问题。我必须在java和C++中解决这个问题,因为错误将在C++中发生,并且将在Java中处理。我正在使用JNI。 – MasterID 2014-10-16 12:05:34

回答

-1

我觉得你的方法是解决这一问题的最佳方法,因为只有其他的方式将返回枚举的容器,这将是非常罕见的一个lib

+0

这是一个评论,而不是一个答案。提供更多信息,为什么你认为他的方法是最好的。 – Tom 2014-10-16 12:04:25

+0

编辑@汤姆,更多他应该邮编 – Etixpp 2014-10-16 12:10:25

+0

@Etixpp请不要回答似乎不完整或不准确的问题,而是你评论你的可能建议。 – Imran 2014-10-16 12:12:06