001/*******************************************************************************
002 * Copyright 2017 The MIT Internet Trust Consortium
003 *
004 * Licensed under the Apache License, Version 2.0 (the "License");
005 * you may not use this file except in compliance with the License.
006 * You may obtain a copy of the License at
007 *
008 *   http://www.apache.org/licenses/LICENSE-2.0
009 *
010 * Unless required by applicable law or agreed to in writing, software
011 * distributed under the License is distributed on an "AS IS" BASIS,
012 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
013 * See the License for the specific language governing permissions and
014 * limitations under the License.
015 *******************************************************************************/
016
017package org.mitre.oauth2.model.convert;
018
019import javax.persistence.AttributeConverter;
020import javax.persistence.Converter;
021
022import org.springframework.security.core.authority.SimpleGrantedAuthority;
023
024/**
025 * @author jricher
026 *
027 */
028@Converter
029public class SimpleGrantedAuthorityStringConverter implements AttributeConverter<SimpleGrantedAuthority, String> {
030
031        @Override
032        public String convertToDatabaseColumn(SimpleGrantedAuthority attribute) {
033                if (attribute != null) {
034                        return attribute.getAuthority();
035                } else {
036                        return null;
037                }
038        }
039
040        @Override
041        public SimpleGrantedAuthority convertToEntityAttribute(String dbData) {
042                if (dbData != null) {
043                        return new SimpleGrantedAuthority(dbData);
044                } else {
045                        return null;
046                }
047        }
048
049}