/* * Licensed to the Apache Software Foundation (ASF) under one * or more contributor license agreements. See the NOTICE file * distributed with this work for additional information * regarding copyright ownership. The ASF licenses this file * to you 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 org.apache.isis.core.metamodel.consent; import org.apache.isis.core.metamodel.interactions.InteractionContext; /** * Powertype for the {@link InteractionContext} hierarchy. * */ public enum InteractionContextType { /** * Persisting the object. */ OBJECT_VALIDATE("Saving or updating object"), /** * Viewing the object. */ OBJECT_VISIBILITY("Viewing the object"), /** * Accessing the object's title. */ OBJECT_TITLE("Reading object's title"), /** * Determining whether the property of the object is visible (or has been * hidden). */ PROPERTY_VISIBLE("View property"), /** * Determining whether the property of the object is either readable or * modifiable (or has been disabled). */ PROPERTY_USABLE("Use property"), /** * Reading the current value of the property of the object. */ PROPERTY_READ("Read property"), /** * Modifying (or attempting to modify) the value of a property. */ PROPERTY_MODIFY("Modify property"), /** * Determining whether the collection of the object is visible (or has been * hidden). */ COLLECTION_VISIBLE("View collection"), /** * Determining whether the collection of the object is either readable or * modifiable (or has been disabled). */ COLLECTION_USABLE("Use collection"), /** * Reading the contents of the collection. */ COLLECTION_READ("Read contents of collection"), /** * Adding to (or attempting to add to) a collection. */ COLLECTION_ADD_TO("Add to collection"), /** * Removing from (or attempting to remove from) a collection. */ COLLECTION_REMOVE_FROM("Remove from collection"), /** * Whether the action of the object is visible (or has been hidden). */ ACTION_VISIBLE("View action"), /** * Whether the action of the object is usable (or has been disabled). */ ACTION_USABLE("Use action"), /** * Whether this particular proposed argument for an action invocation is * valid (or if it is in fact invalid). * * <p> * For example, ensuring that a regular expression match or number range is * correct. */ ACTION_PROPOSED_ARGUMENT("Proposed argument"), /** * Invoking (or attempting to invoke) an action. * * <p> * Even if each of the {@link #ACTION_PROPOSED_ARGUMENT proposed arguments} * are valid, it may not be possible to invoke the action if there the * arguments together are invalid (for example, * <tt>startDate > endDate</tt>). */ ACTION_INVOKE("Invoke action"), /** * Parsing a value (could be an property or an action argument). */ PARSE_VALUE("Parsing value"); private final String description; private InteractionContextType(final String description) { this.description = description; } public String getDescription() { return description; } }