Add support for nested type of query parameter
[smart-dao.git] / smart-exim / smart-exim-api / src / test / java / com / smartitengineering / exim / impl / data / IResource.java
blob649d99694cfa5f43739d8a0da72954268e8fac51
1 /*
2 * This is a common dao with basic CRUD operations and is not limited to any
3 * persistent layer implementation
5 * Copyright (C) 2008 Imran M Yousuf (imyousuf@smartitengineering.com)
7 * This library is free software; you can redistribute it and/or
8 * modify it under the terms of the GNU Lesser General Public
9 * License as published by the Free Software Foundation; either
10 * version 3 of the License, or (at your option) any later version.
11 * This library is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 * Lesser General Public License for more details.
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
19 package com.smartitengineering.exim.impl.data;
21 import com.smartitengineering.domain.annotations.Eager;
22 import com.smartitengineering.domain.annotations.Id;
23 import com.smartitengineering.domain.annotations.Name;
24 import com.smartitengineering.domain.annotations.ResourceDomain;
25 import com.smartitengineering.domain.exim.StringValueProvider;
26 import java.util.Collection;
27 import java.util.List;
28 import java.util.Map;
29 import java.util.Set;
31 /**
33 * @author imyousuf
35 @ResourceDomain(priority = IResource.PRIORITY,
36 exportAsURIByDefault = true,
37 exportBasicTypesInTypeElementEnabled=true)
38 public interface IResource
39 extends StringValueProvider {
41 static final int PRIORITY = 12;
42 static final String RESOURCE_ID = "resourceId";
43 static final String LIST = "list";
44 static final String SET = "set";
45 static final String SET_NAME = "setName";
46 static final String COLLECTION = "collection";
47 static final String MAP = "map";
48 static final String ARRAY = "array";
49 static final String VALID = "valid";
51 @Id
52 int getResourceId();
54 List<Integer> getList();
56 @Name(value = IResource.SET_NAME)
57 Set<Long> getSet();
59 Collection<Double> getCollection();
61 @Eager
62 Map<String, Float> getMap();
64 Number[] getArray();
66 boolean isValid();