/* * Copyright 2000-2013 Enonic AS * http://www.enonic.com/license */ package com.enonic.cms.store.hibernate.type; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Types; import org.hibernate.HibernateException; import com.enonic.cms.core.preference.PreferenceKey; public class PreferenceKeyUserType extends AbstractKeyType { public PreferenceKeyUserType() { super( "preference_key", PreferenceKey.class, Types.VARCHAR ); } public Object get( ResultSet rs, String name ) throws HibernateException, SQLException { String key = rs.getString( name ); if ( key == null ) { return null; } return new PreferenceKey( key ); } public void set( PreparedStatement st, Object value, int index ) throws HibernateException, SQLException { st.setString( index, value.toString() ); } public String toString( Object value ) throws HibernateException { return value.toString(); } public Object fromStringValue( String s ) { return new PreferenceKey( s ); } }