/*
 * Copyright 2017 Amit Kumar.
 *
 * 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.github.amitkma.boilerplate.presentation.mapper;

import com.github.amitkma.boilerplate.domain.model.User;
import com.github.amitkma.boilerplate.presentation.vo.UserView;

import javax.inject.Inject;

public class UserMapper implements Mapper<UserView, User> {

    @Inject
    public UserMapper() {

    }

    @Override
    public UserView mapToView(User user) {
        UserView userView = null;
        if (user != null) {
            userView.id = user.getUserId();
            userView.coverUrl = user.getCoverUrl();
            userView.description = user.getDescription();
            userView.followers = user.getFollowers();
            userView.name = user.getFullName();
            userView.email = user.getEmail();
        }
        return userView;
    }
}

/*
 * Copyright 2017 Amit Kumar.
 *
 * 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.github.amitkma.boilerplate.presentation.mapper;

import com.github.amitkma.boilerplate.domain.model.User;
import com.github.amitkma.boilerplate.presentation.vo.UserView;

import javax.inject.Inject;

public class UserMapper implements Mapper<UserView, User> {

    @Inject
    public UserMapper() {

    }

    @Override
    public UserView mapToView(User user) {
        UserView userView = null;
        if (user != null) {
            userView = new UserView();
            userView.id = user.getUserId();
            userView.coverUrl = user.getCoverUrl();
            userView.description = user.getDescription();
            userView.followers = user.getFollowers();
            userView.name = user.getFullName();
            userView.email = user.getEmail();
        }
        return userView;
    }
}

Fix null user