Start line:  
End line:  

Snippet Preview

Snippet HTML Code

Stack Overflow Questions
  /* Copyright 2013 David Wolverton
   * 
   * Licensed under the Apache License, Version 2.0 (the "License");
   * you may not use this file except in compliance with the License.
   * You may obtain a copy of the License at
   * 
   *     http://www.apache.org/licenses/LICENSE-2.0
   * 
   * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS,
  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
 package com.googlecode.genericdao.dao.hibernate.original;
 
 import java.util.List;
 
General Remote DAO for Adobe Flex.

Author(s):
dwolverton
 
 @SuppressWarnings("unchecked")
 public class FlexDAOAdapter {
 	private static long mockDelay = 0;
 	
 	private GeneralDAO dao;
 
 	public void setDAO(GeneralDAO dao) {
 		this. = dao;
 	}

Here is an example of one DAO method that could be exposed remotely. The ID of the object and the class of the object to get are passed in and the object from the datastore is returned.

Notice that the implementation first checks for a specific DAO for the class, and if none is found defaults to the general DAO.

 
 	public Object fetch(Serializable idString classNamethrows Exception {
 		if ( != 0) Thread.sleep();
 		Class<?> klass;
 		try {
 			klass = Class.forName(className);
 		} catch (ClassNotFoundException e) {
 			throw e;
 		}
 		
 		return .fetch(klassid);
 	}
 
 	public List fetchAll(String classNamethrows Exception {
 		if ( != 0) Thread.sleep();
 		Class<?> klass;
 		try {
 			klass = Class.forName(className);
 		} catch (ClassNotFoundException e) {
 			throw e;
 		}
 
 		return .fetchAll(klass);
 	}
 
 	public Object create(Object objectthrows Exception {
 		if ( != 0) Thread.sleep();
 		.create(object);
 		return object;
 	}
 
 	public Object update(Object objectthrows Exception {
 		if ( != 0) Thread.sleep();
 		.update(object);
 		return object;
 	}
 	
 	public Object createOrUpdate(Object objectthrows Exception {
 		if ( != 0) Thread.sleep();
 		.createOrUpdate(object);
 		return object;
 	}	
 
 	public void deleteById(Serializable idString classNamethrows Exception {
 		if ( != 0) Thread.sleep();
 		Class<?> klass;
 		try {
 			klass = Class.forName(className);
 		} catch (ClassNotFoundException e) {
 			throw e;
		}
		.deleteById(klassid);
	}
	public void deleteEntity(Object objectthrows Exception {
		if ( != 0) Thread.sleep();
	}
	public void deleteList(Object[] listthrows Exception {
		if ( != 0) Thread.sleep();
		for(int i = 0; i < list.lengthi++) {
			deleteEntity(list[i]);
		}
	}
	public void deleteListById(Serializable[] idsString classNamethrows Exception {
		if ( != 0) Thread.sleep();
		for(int i = 0; i < ids.lengthi++) {
			deleteById(ids[i], className);
		}		
	}
	public List search(FlexSearch flexSearchthrows Exception {
		if ( != 0) Thread.sleep();
		return .search(new FlexSearchWrapper(flexSearch));
	}
	public int searchLength(FlexSearch flexSearchthrows Exception {
		if ( != 0) Thread.sleep();
		return .count(new FlexSearchWrapper(flexSearch));
	}
	public SearchResult searchAndLength(FlexSearch flexSearchthrows Exception {
		if ( != 0) Thread.sleep();
		return .searchAndCount(new FlexSearchWrapper(flexSearch));
	}
	public Object searchUnique(FlexSearch flexSearchthrows Exception {
		if ( != 0) Thread.sleep();
		return .searchUnique(new FlexSearchWrapper(flexSearch));
	}
New to GrepCode? Check out our FAQ X