package com.yoursway.ide.application.view.impl;
import static com.yoursway.utils.DebugOutputHelper.reflectionBasedToString;
import com.google.common.base.Function;
import com.yoursway.ide.application.view.ViewDefinition;
import com.yoursway.utils.UniqueId;
public class ViewDefinitionImpl implements ViewDefinition {
private final UniqueId uniqueId;
private final ViewArea area;
public ViewDefinitionImpl(UniqueId uniqueId, ViewArea area) {
if (uniqueId == null)
throw new NullPointerException("uniqueId is null");
if (area == null)
throw new NullPointerException("area is null");
this.uniqueId = uniqueId;
this.area = area;
}
@Override
public String toString() {
return reflectionBasedToString(this);
}
public UniqueId uniqueId() {
return uniqueId;
}
public ViewArea area() {
return area;
}
public static final Function<ViewDefinitionImpl, UniqueId> VIEW_DEFINITION_IMPL_TO_UID = new Function<ViewDefinitionImpl, UniqueId>() {
public UniqueId apply(ViewDefinitionImpl from) {
return from.uniqueId();
}
};
}