From 2e18581ba2bdda0bb423988f3a747062041c4a25 Mon Sep 17 00:00:00 2001 From: Eike Stepper Date: Sat, 18 Oct 2008 14:04:27 +0000 Subject: [249847] Store resources in a hierarchical structure https://bugs.eclipse.org/bugs/show_bug.cgi?id=249847 --- .../internal/db/HorizontalMappingStrategy.java | 35 ++++++++++++++-------- 1 file changed, 23 insertions(+), 12 deletions(-) diff --git a/plugins/org.eclipse.emf.cdo.server.db/src/org/eclipse/emf/cdo/server/internal/db/HorizontalMappingStrategy.java b/plugins/org.eclipse.emf.cdo.server.db/src/org/eclipse/emf/cdo/server/internal/db/HorizontalMappingStrategy.java index 9ada759e7f..982c5da1dc 100644 --- a/plugins/org.eclipse.emf.cdo.server.db/src/org/eclipse/emf/cdo/server/internal/db/HorizontalMappingStrategy.java +++ b/plugins/org.eclipse.emf.cdo.server.db/src/org/eclipse/emf/cdo/server/internal/db/HorizontalMappingStrategy.java @@ -186,19 +186,30 @@ public class HorizontalMappingStrategy extends MappingStrategy builder.append(CDODBSchema.ATTRIBUTES_CONTAINER); builder.append("="); builder.append(CDOIDUtil.getLong(folderID)); - builder.append(" AND "); - builder.append(nameField); - if (exactMatch) + if (exactMatch || name != null) { - builder.append("=\'"); - builder.append(name); - builder.append("\'"); - } - else - { - builder.append(" LIKE \'"); - builder.append(name); - builder.append("%\'"); + builder.append(" AND "); + builder.append(nameField); + if (exactMatch) + { + if (name == null) + { + builder.append(" IS NULL"); + } + else + { + builder.append("=\'"); + builder.append(name); + builder.append("\'"); + } + } + else + { + // Here: name != null + builder.append(" LIKE \'"); + builder.append(name); + builder.append("%\'"); + } } String sql = builder.toString(); -- cgit v1.2.3