/web/lib/CoadunationGWTRDFResources/src/com/rift/coad/rdf/objmapping/ui/client/tree/type/TypeManager.java

https://github.com/brettchaldecott/dipforge · Java · 665 lines · 599 code · 19 blank · 47 comment · 281 complexity · 3af6c2b66a62e637a9dd9f738fc088eb MD5 · raw file

  1. /*
  2. * CoadunationRDFResources: The rdf resource object mappings.
  3. * Copyright (C) 2009 2015 Burntjam
  4. *
  5. * This library is free software; you can redistribute it and/or
  6. * modify it under the terms of the GNU Lesser General Public
  7. * License as published by the Free Software Foundation; either
  8. * version 2.1 of the License, or (at your option) any later version.
  9. *
  10. * This library is distributed in the hope that it will be useful,
  11. * but WITHOUT ANY WARRANTY; without even the implied warranty of
  12. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
  13. * Lesser General Public License for more details.
  14. *
  15. * You should have received a copy of the GNU Lesser General Public
  16. * License along with this library; if not, write to the Free Software
  17. * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
  18. *
  19. * TypeManager.java
  20. */
  21. // package path
  22. package com.rift.coad.rdf.objmapping.ui.client.tree.type;
  23. // smart gwt imports
  24. import com.rift.coad.rdf.objmapping.client.base.DataType;
  25. import com.smartgwt.client.widgets.tree.Tree;
  26. import com.smartgwt.client.widgets.tree.TreeNode;
  27. // the data type
  28. import com.rift.coad.rdf.objmapping.util.client.type.*;
  29. import com.rift.coad.rdf.objmapping.ui.client.tree.DataTypeTreeNode;
  30. import com.smartgwt.client.util.SC;
  31. /**
  32. * This object is responsible for creating the specified type object.
  33. *
  34. * @author brett chaldecot
  35. */
  36. public class TypeManager {
  37. /**
  38. * This method returns the type information
  39. *
  40. * @param name
  41. * @return
  42. */
  43. public static void getTree(Tree tree, String name) throws TypeException {
  44. try {
  45. DataTypeTreeNode[] nodes = null;
  46. if (name.equals("com.rift.coad.rdf.objmapping.inventory.Hardware")) {
  47. nodes = new DataTypeTreeNode[] {
  48. new DataTypeTreeNode("Hardware", "rdf/network-server.png",
  49. com.rift.coad.rdf.objmapping.util.client.type.TypeManager.getType(
  50. "com.rift.coad.rdf.objmapping.inventory.Hardware") ,false,
  51. new DataTypeTreeNode("Id", "rdf/x-office-address-book.png", false),
  52. new DataTypeTreeNode("Name", "rdf/system-users.png", false))};
  53. } else if (name.equals("com.rift.coad.rdf.objmapping.inventory.Network")) {
  54. nodes = new DataTypeTreeNode[] {
  55. new DataTypeTreeNode("Network", "rdf/network-workgroup.png",
  56. com.rift.coad.rdf.objmapping.util.client.type.TypeManager.getType(
  57. "com.rift.coad.rdf.objmapping.inventory.Network") ,false,
  58. new DataTypeTreeNode("Id","rdf/x-office-address-book.png", false),
  59. new DataTypeTreeNode("Name", "rdf/system-users.png", false))};
  60. } else if (name.equals("com.rift.coad.rdf.objmapping.inventory.Stock")) {
  61. nodes = new DataTypeTreeNode[] {
  62. new DataTypeTreeNode("Stock", "rdf/package-x-generic.png",
  63. com.rift.coad.rdf.objmapping.util.client.type.TypeManager.getType(
  64. "com.rift.coad.rdf.objmapping.inventory.Stock") ,false,
  65. new DataTypeTreeNode("Id", "rdf/x-office-address-book.png", false),
  66. new DataTypeTreeNode("Name", "rdf/system-users.png", false))};
  67. } else if (name.equals("com.rift.coad.rdf.objmapping.inventory.Software")) {
  68. nodes = new DataTypeTreeNode[] {
  69. new DataTypeTreeNode("Software", "rdf/media-optical.png",
  70. com.rift.coad.rdf.objmapping.util.client.type.TypeManager.getType(
  71. "com.rift.coad.rdf.objmapping.inventory.Software") ,false,
  72. new DataTypeTreeNode("Id", "rdf/x-office-address-book.png", false),
  73. new DataTypeTreeNode("Name", "rdf/system-users.png", false))};
  74. } else if (name.equals("com.rift.coad.rdf.objmapping.inventory.Inventory")) {
  75. nodes = new DataTypeTreeNode[] {
  76. new DataTypeTreeNode("Inventory", "rdf/edit-paste.png",
  77. com.rift.coad.rdf.objmapping.util.client.type.TypeManager.getType(
  78. "com.rift.coad.rdf.objmapping.inventory.Inventory") ,false,
  79. new DataTypeTreeNode("Id", "rdf/x-office-address-book.png", false),
  80. new DataTypeTreeNode("Name", "rdf/system-users.png", false))};
  81. } else if (name.equals("com.rift.coad.rdf.objmapping.inventory.Rack")) {
  82. nodes = new DataTypeTreeNode[] {
  83. new DataTypeTreeNode("Rack","rdf/applications-system.png",
  84. com.rift.coad.rdf.objmapping.util.client.type.TypeManager.getType(
  85. "com.rift.coad.rdf.objmapping.inventory.Rack") ,false,
  86. new DataTypeTreeNode("Id", "rdf/x-office-address-book.png", false),
  87. new DataTypeTreeNode("Name", "rdf/system-users.png",false))};
  88. } else if (name.equals("com.rift.coad.rdf.objmapping.inventory.Host")) {
  89. nodes = new DataTypeTreeNode[] {
  90. new DataTypeTreeNode("Host","rdf/network-server.png",
  91. com.rift.coad.rdf.objmapping.util.client.type.TypeManager.getType(
  92. "com.rift.coad.rdf.objmapping.inventory.Host") ,false,
  93. new DataTypeTreeNode("Hostname", "rdf/network-server.png", false))};
  94. } else if (name.equals("com.rift.coad.rdf.objmapping.base.Str")) {
  95. throw new TypeException(
  96. "The type com.rift.coad.rdf.objmapping.base.Str is abstract and cannot be instanciated");
  97. } else if (name.equals("com.rift.coad.rdf.objmapping.base.SerialNumber")) {
  98. throw new TypeException(
  99. "The type com.rift.coad.rdf.objmapping.base.SerialNumber is abstract and cannot be instanciated");
  100. } else if (name.equals("com.rift.coad.rdf.objmapping.base.Name")) {
  101. nodes = new DataTypeTreeNode[] {
  102. new DataTypeTreeNode("Name","rdf/system-users.png",
  103. com.rift.coad.rdf.objmapping.util.client.type.TypeManager.getType(
  104. "com.rift.coad.rdf.objmapping.base.Name") ,false)};
  105. } else if (name.equals("com.rift.coad.rdf.objmapping.base.AddressCode")) {
  106. throw new TypeException(
  107. "The type com.rift.coad.rdf.objmapping.base.AddressCode is abstract and cannot be instanciated");
  108. } else if (name.equals("com.rift.coad.rdf.objmapping.base.address.PostalCode")) {
  109. nodes = new DataTypeTreeNode[] {
  110. new DataTypeTreeNode("Postal Code", "rdf/internet-mail.png",
  111. com.rift.coad.rdf.objmapping.util.client.type.TypeManager.getType(
  112. "com.rift.coad.rdf.objmapping.base.address.PostalCode") ,false)};
  113. } else if (name.equals("com.rift.coad.rdf.objmapping.base.address.ZipCode")) {
  114. nodes = new DataTypeTreeNode[] {
  115. new DataTypeTreeNode("Zip Code", "rdf/internet-mail.png",
  116. com.rift.coad.rdf.objmapping.util.client.type.TypeManager.getType(
  117. "com.rift.coad.rdf.objmapping.base.address.ZipCode") ,false)};
  118. } else if (name.equals("com.rift.coad.rdf.objmapping.base.RDFBase")) {
  119. throw new TypeException(
  120. "The type com.rift.coad.rdf.objmapping.base.RDFBase is abstract and cannot be instanciated");
  121. } else if (name.equals("com.rift.coad.rdf.objmapping.base.Address")) {
  122. nodes = new DataTypeTreeNode[] {
  123. new DataTypeTreeNode("Address","rdf/internet-mail.png",
  124. com.rift.coad.rdf.objmapping.util.client.type.TypeManager.getType(
  125. "com.rift.coad.rdf.objmapping.base.Address") ,false,
  126. new DataTypeTreeNode("Id", "rdf/x-office-address-book.png", false),
  127. new DataTypeTreeNode("Value","rdf/edit-paste.png", false),
  128. new DataTypeTreeNode("Code", "rdf/internet-mail.png", false),
  129. new DataTypeTreeNode("Country", "rdf/internet-web-browser.png", false))};
  130. } else if (name.equals("com.rift.coad.rdf.objmapping.organisation.Organisation")) {
  131. nodes = new DataTypeTreeNode[] {
  132. new DataTypeTreeNode("Organisation", "rdf/system-users.png",
  133. com.rift.coad.rdf.objmapping.util.client.type.TypeManager.getType(
  134. "com.rift.coad.rdf.objmapping.organisation.Organisation") ,false,
  135. new DataTypeTreeNode("Id", "rdf/x-office-address-book.png", false),
  136. new DataTypeTreeNode("Name","rdf/system-users.png", false))};
  137. } else if (name.equals("com.rift.coad.rdf.objmapping.base.Description")) {
  138. nodes = new DataTypeTreeNode[] {
  139. new DataTypeTreeNode("Description","rdf/edit-paste.png",
  140. com.rift.coad.rdf.objmapping.util.client.type.TypeManager.getType(
  141. "com.rift.coad.rdf.objmapping.base.Description") ,false)};
  142. } else if (name.equals("com.rift.coad.rdf.objmapping.base.UniqueId")) {
  143. throw new TypeException(
  144. "The type com.rift.coad.rdf.objmapping.base.UniqueId is abstract and cannot be instanciated");
  145. } else if (name.equals("com.rift.coad.rdf.objmapping.base.URL")) {
  146. nodes = new DataTypeTreeNode[] {
  147. new DataTypeTreeNode("URL", "rdf/preferences-system-network-proxy.png",
  148. com.rift.coad.rdf.objmapping.util.client.type.TypeManager.getType(
  149. "com.rift.coad.rdf.objmapping.base.URL"),false)};
  150. } else if (name.equals("com.rift.coad.rdf.objmapping.base.id.IdNumber")) {
  151. nodes = new DataTypeTreeNode[] {
  152. new DataTypeTreeNode("ID","rdf/system-users.png",
  153. com.rift.coad.rdf.objmapping.util.client.type.TypeManager.getType(
  154. "com.rift.coad.rdf.objmapping.base.id.IdNumber") ,false)};
  155. } else if (name.equals("com.rift.coad.rdf.objmapping.base.serial.ISSN")) {
  156. nodes = new DataTypeTreeNode[] {
  157. new DataTypeTreeNode("ISSN","rdf/applications-system.png",
  158. com.rift.coad.rdf.objmapping.util.client.type.TypeManager.getType(
  159. "com.rift.coad.rdf.objmapping.base.serial.ISSN"),false)};
  160. } else if (name.equals("com.rift.coad.rdf.objmapping.base.serial.GenericSerialNumber")) {
  161. nodes = new DataTypeTreeNode[] {
  162. new DataTypeTreeNode("Generic Serial Number","rdf/applications-system.png",
  163. com.rift.coad.rdf.objmapping.util.client.type.TypeManager.getType(
  164. "com.rift.coad.rdf.objmapping.base.serial.GenericSerialNumber"),false)};
  165. } else if (name.equals("com.rift.coad.rdf.objmapping.base.serial.ISBN")) {
  166. nodes = new DataTypeTreeNode[] {
  167. new DataTypeTreeNode("ISBN","rdf/applications-system.png",
  168. com.rift.coad.rdf.objmapping.util.client.type.TypeManager.getType(
  169. "com.rift.coad.rdf.objmapping.base.serial.ISBN"),false)};
  170. } else if (name.equals("com.rift.coad.rdf.objmapping.base.str.ValidatedString")) {
  171. nodes = new DataTypeTreeNode[] {
  172. new DataTypeTreeNode("Validated String", "rdf/applications-system.png",
  173. com.rift.coad.rdf.objmapping.util.client.type.TypeManager.getType(
  174. "com.rift.coad.rdf.objmapping.base.str.ValidatedString"),false)};
  175. } else if (name.equals("com.rift.coad.rdf.objmapping.base.str.GenericString")) {
  176. nodes = new DataTypeTreeNode[] {
  177. new DataTypeTreeNode("Generic String","rdf/applications-system.png",
  178. com.rift.coad.rdf.objmapping.util.client.type.TypeManager.getType(
  179. "com.rift.coad.rdf.objmapping.base.str.GenericString"),false)};
  180. } else if (name.equals("com.rift.coad.rdf.objmapping.base.Domain")) {
  181. nodes = new DataTypeTreeNode[] {
  182. new DataTypeTreeNode("Domain","rdf/applications-system.png",
  183. com.rift.coad.rdf.objmapping.util.client.type.TypeManager.getType(
  184. "com.rift.coad.rdf.objmapping.base.Domain"),false)};
  185. } else if (name.equals("com.rift.coad.rdf.objmapping.base.name.FirstNames")) {
  186. nodes = new DataTypeTreeNode[] {
  187. new DataTypeTreeNode("First Names","rdf/applications-system.png",
  188. com.rift.coad.rdf.objmapping.util.client.type.TypeManager.getType(
  189. "com.rift.coad.rdf.objmapping.base.name.FirstNames"),false)};
  190. } else if (name.equals("com.rift.coad.rdf.objmapping.base.name.Username")) {
  191. nodes = new DataTypeTreeNode[] {
  192. new DataTypeTreeNode("Username","rdf/applications-system.png",
  193. com.rift.coad.rdf.objmapping.util.client.type.TypeManager.getType(
  194. "com.rift.coad.rdf.objmapping.base.name.Username"),false)};
  195. } else if (name.equals("com.rift.coad.rdf.objmapping.base.name.Surname")) {
  196. nodes = new DataTypeTreeNode[] {
  197. new DataTypeTreeNode("Surname","rdf/applications-system.png",
  198. com.rift.coad.rdf.objmapping.util.client.type.TypeManager.getType(
  199. "com.rift.coad.rdf.objmapping.base.name.Surname"),false)};
  200. } else if (name.equals("com.rift.coad.rdf.objmapping.base.Email")) {
  201. nodes = new DataTypeTreeNode[] {
  202. new DataTypeTreeNode("Email","rdf/internet-mail.png",
  203. com.rift.coad.rdf.objmapping.util.client.type.TypeManager.getType(
  204. "com.rift.coad.rdf.objmapping.base.Email"),false)};
  205. } else if (name.equals("com.rift.coad.rdf.objmapping.base.ip.IPv6")) {
  206. nodes = new DataTypeTreeNode[] {
  207. new DataTypeTreeNode("IPv6","rdf/applications-system.png",
  208. com.rift.coad.rdf.objmapping.util.client.type.TypeManager.getType(
  209. "com.rift.coad.rdf.objmapping.base.ip.IPv6"),false)};
  210. } else if (name.equals("com.rift.coad.rdf.objmapping.base.ip.IPv4")) {
  211. nodes = new DataTypeTreeNode[] {
  212. new DataTypeTreeNode("IPv4","rdf/applications-system.png",
  213. com.rift.coad.rdf.objmapping.util.client.type.TypeManager.getType(
  214. "com.rift.coad.rdf.objmapping.base.ip.IPv4"),false)};
  215. } else if (name.equals("com.rift.coad.rdf.objmapping.base.Password")) {
  216. throw new TypeException(
  217. "The type com.rift.coad.rdf.objmapping.base.Password is abstract and cannot be instanciated");
  218. } else if (name.equals("com.rift.coad.rdf.objmapping.base.Country")) {
  219. nodes = new DataTypeTreeNode[] {
  220. new DataTypeTreeNode("Country","rdf/applications-system.png",
  221. com.rift.coad.rdf.objmapping.util.client.type.TypeManager.getType(
  222. "com.rift.coad.rdf.objmapping.base.Country"),false)};
  223. } else if (name.equals("com.rift.coad.rdf.objmapping.base.IPAddress")) {
  224. throw new TypeException(
  225. "The type com.rift.coad.rdf.objmapping.base.IPAddress is abstract and cannot be instanciated");
  226. } else if (name.equals("com.rift.coad.rdf.objmapping.base.password.ClearTextPassword")) {
  227. nodes = new DataTypeTreeNode[] {
  228. new DataTypeTreeNode("Clear Text Password","rdf/system-lock-screen.png",
  229. com.rift.coad.rdf.objmapping.util.client.type.TypeManager.getType(
  230. "com.rift.coad.rdf.objmapping.base.password.ClearTextPassword"),false)};
  231. } else if (name.equals("com.rift.coad.rdf.objmapping.base.password.MD5Password")) {
  232. nodes = new DataTypeTreeNode[] {
  233. new DataTypeTreeNode("MD5 Password","rdf/system-lock-screen.png",
  234. com.rift.coad.rdf.objmapping.util.client.type.TypeManager.getType(
  235. "com.rift.coad.rdf.objmapping.base.password.MD5Password"),false)};
  236. } else if (name.equals("com.rift.coad.rdf.objmapping.base.password.SHAPassword")) {
  237. nodes = new DataTypeTreeNode[] {
  238. new DataTypeTreeNode("SSHA Password","rdf/system-lock-screen.png",
  239. com.rift.coad.rdf.objmapping.util.client.type.TypeManager.getType(
  240. "com.rift.coad.rdf.objmapping.base.password.SHAPassword"),false)};
  241. } else if (name.equals("com.rift.coad.rdf.objmapping.base.Phone")) {
  242. nodes = new DataTypeTreeNode[] {
  243. new DataTypeTreeNode("Phone","rdf/applications-system.png",
  244. com.rift.coad.rdf.objmapping.util.client.type.TypeManager.getType(
  245. "com.rift.coad.rdf.objmapping.base.Phone"),false)};
  246. } else if (name.equals("com.rift.coad.rdf.objmapping.base.DataType")) {
  247. throw new TypeException(
  248. "The type com.rift.coad.rdf.objmapping.base.DataType is abstract and cannot be instanciated");
  249. } else if (name.equals("com.rift.coad.rdf.objmapping.base.phone.CellPhone")) {
  250. nodes = new DataTypeTreeNode[] {
  251. new DataTypeTreeNode("Cell Phone","rdf/applications-system.png",
  252. com.rift.coad.rdf.objmapping.util.client.type.TypeManager.getType(
  253. "com.rift.coad.rdf.objmapping.base.phone.CellPhone"),false)};
  254. } else if (name.equals("com.rift.coad.rdf.objmapping.base.phone.Fax")) {
  255. nodes = new DataTypeTreeNode[] {
  256. new DataTypeTreeNode("Fax","rdf/applications-system.png",
  257. com.rift.coad.rdf.objmapping.util.client.type.TypeManager.getType(
  258. "com.rift.coad.rdf.objmapping.base.phone.Fax"),false)};
  259. } else if (name.equals("com.rift.coad.rdf.objmapping.base.Title")) {
  260. nodes = new DataTypeTreeNode[] {
  261. new DataTypeTreeNode("Title","rdf/applications-system.png",
  262. com.rift.coad.rdf.objmapping.util.client.type.TypeManager.getType(
  263. "com.rift.coad.rdf.objmapping.base.Title"),false)};
  264. } else if (name.equals("com.rift.coad.rdf.objmapping.resource.ResourceBase")) {
  265. throw new TypeException(
  266. "The type com.rift.coad.rdf.objmapping.resource.ResourceBase is abstract and cannot be instanciated");
  267. } else if (name.equals("com.rift.coad.rdf.objmapping.resource.GenericResource")) {
  268. nodes = new DataTypeTreeNode[] {
  269. new DataTypeTreeNode("Generic Resource","rdf/applications-system.png",
  270. com.rift.coad.rdf.objmapping.util.client.type.TypeManager.getType(
  271. "com.rift.coad.rdf.objmapping.resource.GenericResource"),true,
  272. new DataTypeTreeNode("Id", "rdf/x-office-address-book.png", false),
  273. new DataTypeTreeNode("Name", "rdf/system-users.png", false))};
  274. } else if (name.equals("com.rift.coad.rdf.objmapping.person.Person")) {
  275. nodes = new DataTypeTreeNode[] {
  276. new DataTypeTreeNode("Person","rdf/system-users.png",
  277. com.rift.coad.rdf.objmapping.util.client.type.TypeManager.getType(
  278. "com.rift.coad.rdf.objmapping.person.Person"),true,
  279. new DataTypeTreeNode("Id", "rdf/x-office-address-book.png", false),
  280. new DataTypeTreeNode("First Names", "rdf/system-users.png", false),
  281. new DataTypeTreeNode("Surname","rdf/system-users.png", false))};
  282. } else if (name.equals("com.rift.coad.rdf.objmapping.person.User")) {
  283. nodes = new DataTypeTreeNode[] {
  284. new DataTypeTreeNode("User","rdf/system-users.png",
  285. com.rift.coad.rdf.objmapping.util.client.type.TypeManager.getType(
  286. "com.rift.coad.rdf.objmapping.person.User"),true,
  287. new DataTypeTreeNode("Id", "rdf/x-office-address-book.png", false),
  288. new DataTypeTreeNode("Forename", "rdf/system-users.png", false),
  289. new DataTypeTreeNode("Surname","rdf/system-users.png", false),
  290. new DataTypeTreeNode("Username","rdf/system-users.png", false),
  291. new DataTypeTreeNode("Password","rdf/system-lock-screen.png", false))};
  292. } else if (name.equals("com.rift.coad.rdf.objmapping.service.IPService")) {
  293. nodes = new DataTypeTreeNode[] {
  294. new DataTypeTreeNode("IP Service","rdf/applications-system.png",
  295. com.rift.coad.rdf.objmapping.util.client.type.TypeManager.getType(
  296. "com.rift.coad.rdf.objmapping.service.IPService"),false,
  297. new DataTypeTreeNode("Id","rdf/x-office-address-book.png", false),
  298. new DataTypeTreeNode("Hostname", "rdf/network-server.png", false),
  299. new DataTypeTreeNode("Name", "rdf/system-users.png", false))};
  300. } else if (name.equals("com.rift.coad.rdf.objmapping.service.SoftwareService")) {
  301. nodes = new DataTypeTreeNode[] {
  302. new DataTypeTreeNode("Software Service","rdf/applications-system.png",
  303. com.rift.coad.rdf.objmapping.util.client.type.TypeManager.getType(
  304. "com.rift.coad.rdf.objmapping.service.SoftwareService"),false,
  305. new DataTypeTreeNode("Id","rdf/x-office-address-book.png", false),
  306. new DataTypeTreeNode("Hostname","rdf/network-server.png", false),
  307. new DataTypeTreeNode("Name","rdf/system-users.png", false))};
  308. } else if (name.equals("com.rift.coad.rdf.objmapping.base.RDFNumber")) {
  309. throw new TypeException(
  310. "The type com.rift.coad.rdf.objmapping.client.base.RDFNumber is abstract and cannot be instanciated");
  311. } else if (name.equals("com.rift.coad.rdf.objmapping.base.number.RDFLong")) {
  312. nodes = new DataTypeTreeNode[] {
  313. new DataTypeTreeNode("Long","rdf/applications-system.png",
  314. com.rift.coad.rdf.objmapping.util.client.type.TypeManager.getType(
  315. "com.rift.coad.rdf.objmapping.base.number.RDFLong"),false)};
  316. } else if (name.equals("com.rift.coad.rdf.objmapping.base.number.RDFInteger")) {
  317. nodes = new DataTypeTreeNode[] {
  318. new DataTypeTreeNode("Integer","rdf/applications-system.png",
  319. com.rift.coad.rdf.objmapping.util.client.type.TypeManager.getType(
  320. "com.rift.coad.rdf.objmapping.base.number.RDFInteger"),false)};
  321. } else if (name.equals("com.rift.coad.rdf.objmapping.base.number.RDFFloat")) {
  322. nodes = new DataTypeTreeNode[] {
  323. new DataTypeTreeNode("Float","rdf/applications-system.png",
  324. com.rift.coad.rdf.objmapping.util.client.type.TypeManager.getType(
  325. "com.rift.coad.rdf.objmapping.base.number.RDFFloat"),false)};
  326. } else if (name.equals("com.rift.coad.rdf.objmapping.base.number.RDFDouble")) {
  327. nodes = new DataTypeTreeNode[] {
  328. new DataTypeTreeNode("Double","rdf/applications-system.png",
  329. com.rift.coad.rdf.objmapping.util.client.type.TypeManager.getType(
  330. "com.rift.coad.rdf.objmapping.base.number.RDFDouble"),false)};
  331. } else if (name.equals("com.rift.coad.rdf.objmapping.base.RDFDate")) {
  332. throw new TypeException(
  333. "The type com.rift.coad.rdf.objmapping.client.base.RDFDate is abstract and cannot be instanciated");
  334. } else if (name.equals("com.rift.coad.rdf.objmapping.base.date.DateTime")) {
  335. nodes = new DataTypeTreeNode[] {
  336. new DataTypeTreeNode("dateTime","rdf/applications-system.png",
  337. com.rift.coad.rdf.objmapping.util.client.type.TypeManager.getType(
  338. "com.rift.coad.rdf.objmapping.base.date.DateTime"),false)};
  339. }
  340. if (nodes != null) {
  341. tree.addList(nodes, tree.findById("root"));
  342. }
  343. } catch (TypeException ex) {
  344. SC.say("Failed to add the node : " + ex.getMessage());
  345. throw ex;
  346. } catch (Exception ex) {
  347. SC.say("Failed to add the node : " + ex.getMessage());
  348. throw new TypeException("Failed to instanciate a new type : " + ex.getMessage(), ex);
  349. }
  350. }
  351. /**
  352. * This method returns the tree
  353. *
  354. * @param name The name of the type.
  355. * @return The tree nodes.
  356. * @throws com.rift.coad.rdf.objmapping.util.client.type.TypeException
  357. */
  358. public static DataTypeTreeNode[] getTree(DataType dataType) throws TypeException {
  359. try {
  360. DataTypeTreeNode[] nodes = null;
  361. String name = dataType.getBasicType();
  362. String nodeName = dataType.getDataName();
  363. if (name.equals("com.rift.coad.rdf.objmapping.inventory.Hardware")) {
  364. nodes = new DataTypeTreeNode[] {
  365. new DataTypeTreeNode(nodeName, "rdf/network-server.png",dataType ,false,
  366. new DataTypeTreeNode("Id", "rdf/x-office-address-book.png", false),
  367. new DataTypeTreeNode("Name", "rdf/system-users.png", false))};
  368. } else if (name.equals("com.rift.coad.rdf.objmapping.inventory.Network")) {
  369. nodes = new DataTypeTreeNode[] {
  370. new DataTypeTreeNode(nodeName, "rdf/network-workgroup.png",dataType,false,
  371. new DataTypeTreeNode("Id","rdf/x-office-address-book.png", false),
  372. new DataTypeTreeNode("Name", "rdf/system-users.png", false))};
  373. } else if (name.equals("com.rift.coad.rdf.objmapping.inventory.Stock")) {
  374. nodes = new DataTypeTreeNode[] {
  375. new DataTypeTreeNode(nodeName, "rdf/package-x-generic.png",dataType,false,
  376. new DataTypeTreeNode("Id", "rdf/x-office-address-book.png", false),
  377. new DataTypeTreeNode("Name", "rdf/system-users.png", false))};
  378. } else if (name.equals("com.rift.coad.rdf.objmapping.inventory.Software")) {
  379. nodes = new DataTypeTreeNode[] {
  380. new DataTypeTreeNode(nodeName, "rdf/media-optical.png",dataType,false,
  381. new DataTypeTreeNode("Id", "rdf/x-office-address-book.png", false),
  382. new DataTypeTreeNode("Name", "rdf/system-users.png", false))};
  383. } else if (name.equals("com.rift.coad.rdf.objmapping.inventory.Inventory")) {
  384. nodes = new DataTypeTreeNode[] {
  385. new DataTypeTreeNode(nodeName, "rdf/edit-paste.png",dataType,false,
  386. new DataTypeTreeNode("Id", "rdf/x-office-address-book.png", false),
  387. new DataTypeTreeNode("Name", "rdf/system-users.png", false))};
  388. } else if (name.equals("com.rift.coad.rdf.objmapping.inventory.Rack")) {
  389. nodes = new DataTypeTreeNode[] {
  390. new DataTypeTreeNode(nodeName,"rdf/applications-system.png",dataType,false,
  391. new DataTypeTreeNode("Id", "rdf/x-office-address-book.png", false),
  392. new DataTypeTreeNode("Name", "rdf/system-users.png",false))};
  393. } else if (name.equals("com.rift.coad.rdf.objmapping.inventory.Host")) {
  394. nodes = new DataTypeTreeNode[] {
  395. new DataTypeTreeNode(nodeName,"rdf/network-server.png",dataType,false,
  396. new DataTypeTreeNode("Hostname", "rdf/network-server.png", false))};
  397. } else if (name.equals("com.rift.coad.rdf.objmapping.base.Str")) {
  398. throw new TypeException(
  399. "The type com.rift.coad.rdf.objmapping.base.Str is abstract and cannot be instanciated");
  400. } else if (name.equals("com.rift.coad.rdf.objmapping.base.SerialNumber")) {
  401. throw new TypeException(
  402. "The type com.rift.coad.rdf.objmapping.base.SerialNumber is abstract and cannot be instanciated");
  403. } else if (name.equals("com.rift.coad.rdf.objmapping.base.Name")) {
  404. nodes = new DataTypeTreeNode[] {
  405. new DataTypeTreeNode(nodeName,"rdf/system-users.png",dataType,false)};
  406. } else if (name.equals("com.rift.coad.rdf.objmapping.base.AddressCode")) {
  407. throw new TypeException(
  408. "The type com.rift.coad.rdf.objmapping.base.AddressCode is abstract and cannot be instanciated");
  409. } else if (name.equals("com.rift.coad.rdf.objmapping.base.address.PostalCode")) {
  410. nodes = new DataTypeTreeNode[] {
  411. new DataTypeTreeNode(nodeName, "rdf/internet-mail.png",dataType,false)};
  412. } else if (name.equals("com.rift.coad.rdf.objmapping.base.address.ZipCode")) {
  413. nodes = new DataTypeTreeNode[] {
  414. new DataTypeTreeNode(nodeName, "rdf/internet-mail.png",dataType,false)};
  415. } else if (name.equals("com.rift.coad.rdf.objmapping.base.RDFBase")) {
  416. throw new TypeException(
  417. "The type com.rift.coad.rdf.objmapping.base.RDFBase is abstract and cannot be instanciated");
  418. } else if (name.equals("com.rift.coad.rdf.objmapping.base.Address")) {
  419. nodes = new DataTypeTreeNode[] {
  420. new DataTypeTreeNode(nodeName,"rdf/internet-mail.png",dataType,false,
  421. new DataTypeTreeNode("Id", "rdf/x-office-address-book.png", false),
  422. new DataTypeTreeNode("Value","rdf/edit-paste.png", false),
  423. new DataTypeTreeNode("Code", "rdf/internet-mail.png", false),
  424. new DataTypeTreeNode("Country", "rdf/internet-web-browser.png", false))};
  425. } else if (name.equals("com.rift.coad.rdf.objmapping.organisation.Organisation")) {
  426. nodes = new DataTypeTreeNode[] {
  427. new DataTypeTreeNode(nodeName, "rdf/system-users.png",dataType,false,
  428. new DataTypeTreeNode("Id", "rdf/x-office-address-book.png", false),
  429. new DataTypeTreeNode("Name","rdf/system-users.png", false))};
  430. } else if (name.equals("com.rift.coad.rdf.objmapping.base.Description")) {
  431. nodes = new DataTypeTreeNode[] {
  432. new DataTypeTreeNode(nodeName,"rdf/edit-paste.png",dataType,false)};
  433. } else if (name.equals("com.rift.coad.rdf.objmapping.base.UniqueId")) {
  434. throw new TypeException(
  435. "The type com.rift.coad.rdf.objmapping.base.UniqueId is abstract and cannot be instanciated");
  436. } else if (name.equals("com.rift.coad.rdf.objmapping.base.URL")) {
  437. nodes = new DataTypeTreeNode[] {
  438. new DataTypeTreeNode(nodeName, "rdf/preferences-system-network-proxy.png",
  439. dataType,false)};
  440. } else if (name.equals("com.rift.coad.rdf.objmapping.base.id.IdNumber")) {
  441. nodes = new DataTypeTreeNode[] {
  442. new DataTypeTreeNode(nodeName,"rdf/system-users.png",dataType,false)};
  443. } else if (name.equals("com.rift.coad.rdf.objmapping.base.serial.ISSN")) {
  444. nodes = new DataTypeTreeNode[] {
  445. new DataTypeTreeNode(nodeName,"rdf/applications-system.png",dataType,false)};
  446. } else if (name.equals("com.rift.coad.rdf.objmapping.base.serial.GenericSerialNumber")) {
  447. nodes = new DataTypeTreeNode[] {
  448. new DataTypeTreeNode(nodeName,"rdf/applications-system.png",dataType,false)};
  449. } else if (name.equals("com.rift.coad.rdf.objmapping.base.serial.ISBN")) {
  450. nodes = new DataTypeTreeNode[] {
  451. new DataTypeTreeNode(nodeName,"rdf/applications-system.png",dataType,false)};
  452. } else if (name.equals("com.rift.coad.rdf.objmapping.base.str.ValidatedString")) {
  453. nodes = new DataTypeTreeNode[] {
  454. new DataTypeTreeNode(nodeName, "rdf/applications-system.png",dataType,false)};
  455. } else if (name.equals("com.rift.coad.rdf.objmapping.base.str.GenericString")) {
  456. nodes = new DataTypeTreeNode[] {
  457. new DataTypeTreeNode(nodeName,"rdf/applications-system.png",dataType,false)};
  458. } else if (name.equals("com.rift.coad.rdf.objmapping.base.Domain")) {
  459. nodes = new DataTypeTreeNode[] {
  460. new DataTypeTreeNode(nodeName,"rdf/applications-system.png",dataType,false)};
  461. } else if (name.equals("com.rift.coad.rdf.objmapping.base.name.FirstNames")) {
  462. nodes = new DataTypeTreeNode[] {
  463. new DataTypeTreeNode(nodeName,"rdf/applications-system.png",dataType,false)};
  464. } else if (name.equals("com.rift.coad.rdf.objmapping.base.name.Username")) {
  465. nodes = new DataTypeTreeNode[] {
  466. new DataTypeTreeNode(nodeName,"rdf/applications-system.png",dataType,false)};
  467. } else if (name.equals("com.rift.coad.rdf.objmapping.base.name.Surname")) {
  468. nodes = new DataTypeTreeNode[] {
  469. new DataTypeTreeNode(nodeName,"rdf/applications-system.png",dataType,false)};
  470. } else if (name.equals("com.rift.coad.rdf.objmapping.base.Email")) {
  471. nodes = new DataTypeTreeNode[] {
  472. new DataTypeTreeNode(nodeName,"rdf/internet-mail.png",dataType,false)};
  473. } else if (name.equals("com.rift.coad.rdf.objmapping.base.ip.IPv6")) {
  474. nodes = new DataTypeTreeNode[] {
  475. new DataTypeTreeNode(nodeName,"rdf/applications-system.png",dataType,false)};
  476. } else if (name.equals("com.rift.coad.rdf.objmapping.base.ip.IPv4")) {
  477. nodes = new DataTypeTreeNode[] {
  478. new DataTypeTreeNode(nodeName,"rdf/applications-system.png",dataType,false)};
  479. } else if (name.equals("com.rift.coad.rdf.objmapping.base.Password")) {
  480. throw new TypeException(
  481. "The type com.rift.coad.rdf.objmapping.base.Password is abstract and cannot be instanciated");
  482. } else if (name.equals("com.rift.coad.rdf.objmapping.base.Country")) {
  483. nodes = new DataTypeTreeNode[] {
  484. new DataTypeTreeNode(nodeName,"rdf/applications-system.png",dataType,false)};
  485. } else if (name.equals("com.rift.coad.rdf.objmapping.base.IPAddress")) {
  486. throw new TypeException(
  487. "The type com.rift.coad.rdf.objmapping.base.IPAddress is abstract and cannot be instanciated");
  488. } else if (name.equals("com.rift.coad.rdf.objmapping.base.password.ClearTextPassword")) {
  489. nodes = new DataTypeTreeNode[] {
  490. new DataTypeTreeNode(nodeName,"rdf/system-lock-screen.png",dataType,false)};
  491. } else if (name.equals("com.rift.coad.rdf.objmapping.base.password.MD5Password")) {
  492. nodes = new DataTypeTreeNode[] {
  493. new DataTypeTreeNode(nodeName,"rdf/system-lock-screen.png",dataType,false)};
  494. } else if (name.equals("com.rift.coad.rdf.objmapping.base.password.SHAPassword")) {
  495. nodes = new DataTypeTreeNode[] {
  496. new DataTypeTreeNode(nodeName,"rdf/system-lock-screen.png",dataType,false)};
  497. } else if (name.equals("com.rift.coad.rdf.objmapping.base.Phone")) {
  498. nodes = new DataTypeTreeNode[] {
  499. new DataTypeTreeNode(nodeName,"rdf/applications-system.png",dataType,false)};
  500. } else if (name.equals("com.rift.coad.rdf.objmapping.base.DataType")) {
  501. throw new TypeException(
  502. "The type com.rift.coad.rdf.objmapping.base.DataType is abstract and cannot be instanciated");
  503. } else if (name.equals("com.rift.coad.rdf.objmapping.base.phone.CellPhone")) {
  504. nodes = new DataTypeTreeNode[] {
  505. new DataTypeTreeNode(nodeName,"rdf/applications-system.png",dataType,false)};
  506. } else if (name.equals("com.rift.coad.rdf.objmapping.base.phone.Fax")) {
  507. nodes = new DataTypeTreeNode[] {
  508. new DataTypeTreeNode(nodeName,"rdf/applications-system.png",dataType,false)};
  509. } else if (name.equals("com.rift.coad.rdf.objmapping.base.Title")) {
  510. nodes = new DataTypeTreeNode[] {
  511. new DataTypeTreeNode(nodeName,"rdf/applications-system.png",dataType,false)};
  512. } else if (name.equals("com.rift.coad.rdf.objmapping.resource.ResourceBase")) {
  513. throw new TypeException(
  514. "The type com.rift.coad.rdf.objmapping.resource.ResourceBase is abstract and cannot be instanciated");
  515. } else if (name.equals("com.rift.coad.rdf.objmapping.resource.GenericResource")) {
  516. nodes = new DataTypeTreeNode[] {
  517. new DataTypeTreeNode(nodeName, "rdf/applications-system.png",dataType,true,
  518. new DataTypeTreeNode("Id", "rdf/x-office-address-book.png", false),
  519. new DataTypeTreeNode("Name", "rdf/system-users.png", false))};
  520. } else if (name.equals("com.rift.coad.rdf.objmapping.person.Person")) {
  521. nodes = new DataTypeTreeNode[] {
  522. new DataTypeTreeNode(nodeName,"rdf/system-users.png",dataType,true,
  523. new DataTypeTreeNode("Id", "rdf/x-office-address-book.png", false),
  524. new DataTypeTreeNode("First Names", "rdf/system-users.png", false),
  525. new DataTypeTreeNode("Surname","rdf/system-users.png", false))};
  526. } else if (name.equals("com.rift.coad.rdf.objmapping.person.User")) {
  527. nodes = new DataTypeTreeNode[] {
  528. new DataTypeTreeNode(nodeName,"rdf/system-users.png",dataType,true,
  529. new DataTypeTreeNode("Id", "rdf/x-office-address-book.png", false),
  530. new DataTypeTreeNode("Forename", "rdf/system-users.png", false),
  531. new DataTypeTreeNode("Surname","rdf/system-users.png", false),
  532. new DataTypeTreeNode("Username","rdf/system-users.png", false),
  533. new DataTypeTreeNode("Password","rdf/system-lock-screen.png", false))};
  534. } else if (name.equals("com.rift.coad.rdf.objmapping.service.IPService")) {
  535. nodes = new DataTypeTreeNode[] {
  536. new DataTypeTreeNode(nodeName,"rdf/applications-system.png",dataType,true,
  537. new DataTypeTreeNode("Id","rdf/x-office-address-book.png", false),
  538. new DataTypeTreeNode("Hostname", "rdf/network-server.png", false),
  539. new DataTypeTreeNode("Name", "rdf/system-users.png", false))};
  540. } else if (name.equals("com.rift.coad.rdf.objmapping.service.SoftwareService")) {
  541. nodes = new DataTypeTreeNode[] {
  542. new DataTypeTreeNode(nodeName,"rdf/applications-system.png",dataType,true,
  543. new DataTypeTreeNode("Id","rdf/x-office-address-book.png", false),
  544. new DataTypeTreeNode("Hostname","rdf/network-server.png", false),
  545. new DataTypeTreeNode("Name","rdf/system-users.png", false))};
  546. } else if (name.equals("com.rift.coad.rdf.objmapping.base.RDFNumber")) {
  547. throw new TypeException(
  548. "The type com.rift.coad.rdf.objmapping.client.base.RDFNumber is abstract and cannot be instanciated");
  549. } else if (name.equals("com.rift.coad.rdf.objmapping.base.number.RDFLong")) {
  550. nodes = new DataTypeTreeNode[] {
  551. new DataTypeTreeNode(nodeName,"rdf/applications-system.png",dataType,false)};
  552. } else if (name.equals("com.rift.coad.rdf.objmapping.base.number.RDFInteger")) {
  553. nodes = new DataTypeTreeNode[] {
  554. new DataTypeTreeNode(nodeName,"rdf/applications-system.png",dataType,false)};
  555. } else if (name.equals("com.rift.coad.rdf.objmapping.base.number.RDFFloat")) {
  556. nodes = new DataTypeTreeNode[] {
  557. new DataTypeTreeNode(nodeName,"rdf/applications-system.png",dataType,false)};
  558. } else if (name.equals("com.rift.coad.rdf.objmapping.base.number.RDFDouble")) {
  559. nodes = new DataTypeTreeNode[] {
  560. new DataTypeTreeNode(nodeName,"rdf/applications-system.png",dataType,false)};
  561. } else if (name.equals("com.rift.coad.rdf.objmapping.base.RDFDate")) {
  562. throw new TypeException(
  563. "The type com.rift.coad.rdf.objmapping.client.base.RDFDate is abstract and cannot be instanciated");
  564. } else if (name.equals("com.rift.coad.rdf.objmapping.base.date.DateTime")) {
  565. nodes = new DataTypeTreeNode[] {
  566. new DataTypeTreeNode(nodeName,"rdf/applications-system.png",dataType,false)};
  567. }
  568. return nodes;
  569. } catch (TypeException ex) {
  570. SC.say("Failed to add the node : " + ex.getMessage());
  571. throw ex;
  572. } catch (Exception ex) {
  573. SC.say("Failed to add the node : " + ex.getMessage());
  574. throw new TypeException("Failed to instanciate a new type : " + ex.getMessage(), ex);
  575. }
  576. }
  577. /**
  578. * This method returns the icon path
  579. *
  580. * @param name The name of the icon.
  581. * @return The string containing the icon.
  582. */
  583. public static String getIcon(String name) throws TypeException {
  584. try {
  585. if (name.equals("com.rift.coad.rdf.objmapping.inventory.Hardware")) {
  586. return "rdf/network-server.png";
  587. } else if (name.equals("com.rift.coad.rdf.objmapping.inventory.Network")) {
  588. return "rdf/network-workgroup.png";
  589. } else if (name.equals("com.rift.coad.rdf.objmapping.inventory.Stock")) {
  590. return "rdf/package-x-generic.png";
  591. } else if (name.equals("com.rift.coad.rdf.objmapping.inventory.Software")) {
  592. return "rdf/media-optical.png";
  593. } else if (name.equals("com.rift.coad.rdf.objmapping.inventory.Inventory")) {
  594. return "rdf/edit-paste.png";
  595. } else if (name.equals("com.rift.coad.rdf.objmapping.inventory.Rack")) {
  596. return "rdf/applications-system.png";
  597. } else if (name.equals("com.rift.coad.rdf.objmapping.inventory.Host")) {
  598. return "rdf/network-server.png";
  599. } else if (name.equals("com.rift.coad.rdf.objmapping.base.Str")) {
  600. throw new TypeException(
  601. "The type com.rift.coad.rdf.objmapping.base.Str is abstract and cannot be instanciated");
  602. } else if (name.equals("com.rift.coad.rdf.objmapping.base.SerialNumber")) {
  603. throw new TypeException(
  604. "The type com.rift.coad.rdf.objmapping.base.SerialNumber is abstract and cannot be instanciated");
  605. } else if (name.equals("com.rift.coad.rdf.objmapping.base.Name")) {
  606. return "rdf/system-users.png";
  607. } else if (name.equals("com.rift.coad.rdf.objmapping.base.AddressCode")) {
  608. throw new TypeException(
  609. "The type com.rift.coad.rdf.objmapping.base.AddressCode is abstract and cannot be instanciated");
  610. } else if (name.equals("com.rift.coad.rdf.objmapping.base.address.PostalCode")) {
  611. return "rdf/internet-mail.png";
  612. } else if (name.equals("com.rift.coad.rdf.objmapping.base.address.ZipCode")) {
  613. return "rdf/internet-mail.png";
  614. } else if (name.equals("com.rift.coad.rdf.objmapping.base.RDFBase")) {
  615. throw new TypeException(
  616. "The type com.rift.coad.rdf.objmapping.base.RDFBase is abstract and cannot be instanciated");
  617. } else if (name.equals("com.rift.coad.rdf.objmapping.base.Address")) {
  618. return "rdf/internet-mail.png";
  619. } else if (name.equals("com.rift.coad.rdf.objmapping.organisation.Organisation")) {
  620. return "rdf/system-users.png";
  621. } else if (name.equals("com.rift.coad.rdf.objmapping.base.Description")) {
  622. return "rdf/edit-paste.png";
  623. } else if (name.equals("com.rift.coad.rdf.objmapping.base.UniqueId")) {
  624. throw new TypeException(
  625. "The type com.rift.coad.rdf.objmapping.base.UniqueId is abstract and cannot be instanciated");
  626. } else if (name.equals("com.rift.coad.rdf.objmapping.base.URL")) {
  627. return "rdf/preferences-system-network-proxy.png";
  628. } else if (name.equals("com.rift.coad.rdf.objmapping.base.id.IdNumber")) {
  629. return "rdf/system-users.png";
  630. } else if (name.equals("com.rift.coad.rdf.objmapping.base.serial.ISSN")) {
  631. return "rdf/applications-system.png";
  632. } else if (name.equals("com.rift.coad.rdf.objmapping.base.serial.GenericSerialNumber")) {
  633. return "rdf/applications-system.png";
  634. } else if (name.equals("com.rift.coad.rdf.objmapping.base.serial.ISBN")) {
  635. return "rdf/applications-system.png";
  636. } else if (name.equals("com.rift.coad.rdf.objmapping.base.str.ValidatedString")) {
  637. return "rdf/applications-system.png";
  638. } else if (name.equals("com.rift.coad.rdf.objmapping.base.str.GenericString")) {
  639. return "rdf/applications-system.png";
  640. } else if (name.equals("com.rift.coad.rdf.objmapping.base.Domain")) {
  641. return "rdf/applications-system.png";
  642. } else if (name.equals("com.rift.coad.rdf.objmapping.base.name.FirstNames")) {
  643. return "rdf/applications-system.png";
  644. } else if (name.equals("com.rift.coad.rdf.objmapping.base.name.Username")) {
  645. return "rdf/applications-system.png";
  646. } else if (name.equa