All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.amdocs.zusammen.sdk.state.StateStore Maven / Gradle / Ivy

The newest version!
/*
 * Add Copyright © 2016-2017 European Support Limited
 *
 * 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.amdocs.zusammen.sdk.state;


import com.amdocs.zusammen.datatypes.Id;
import com.amdocs.zusammen.datatypes.Namespace;
import com.amdocs.zusammen.datatypes.SessionContext;
import com.amdocs.zusammen.datatypes.Space;
import com.amdocs.zusammen.datatypes.item.ElementContext;
import com.amdocs.zusammen.datatypes.item.Info;
import com.amdocs.zusammen.datatypes.item.Item;
import com.amdocs.zusammen.datatypes.item.ItemVersion;
import com.amdocs.zusammen.datatypes.item.ItemVersionData;
import com.amdocs.zusammen.datatypes.response.Response;
import com.amdocs.zusammen.sdk.health.IHealthCheck;
import com.amdocs.zusammen.sdk.state.types.StateElement;

import java.util.Collection;
import java.util.Date;

public interface StateStore extends IHealthCheck {

  Response> listItems(SessionContext context);

  Response isItemExist(SessionContext context, Id itemId);

  Response getItem(SessionContext context, Id itemId);

  Response createItem(SessionContext context, Id itemId, Info itemInfo, Date creationTime);

  Response updateItem(SessionContext context, Id itemId, Info itemInfo,
                            Date modificationTime);

  Response deleteItem(SessionContext context, Id itemId);

  Response> listItemVersions(SessionContext context, Space space,
                                                     Id itemId);

  Response isItemVersionExist(SessionContext context, Space space, Id itemId,
                                       Id versionId);

  Response getItemVersion(SessionContext context, Space space, Id itemId,
                                       Id versionId);

  Response createItemVersion(SessionContext context, Space space, Id itemId, Id baseVersionId,
                                   Id versionId, ItemVersionData data, Date creationTime);

  Response updateItemVersion(SessionContext context, Space space, Id itemId, Id versionId,
                                   ItemVersionData data, Date modificationTime);

  Response deleteItemVersion(SessionContext context, Space space, Id itemId, Id versionId);

  Response> listElements(SessionContext context,
                                                  ElementContext elementContext, Id elementId);

  Response isElementExist(SessionContext context, ElementContext elementContext,
                                   Id elementId);

  Response getElementNamespace(SessionContext context, Id itemId, Id elementId);

  Response getElement(SessionContext context, ElementContext elementContext,
                                    Id elementId);

  Response createElement(SessionContext context, StateElement element);

  Response updateElement(SessionContext context, StateElement element);

  Response deleteElement(SessionContext context, StateElement element);

  Response updateItemModificationTime(SessionContext context, Id itemId, Date
      modificationTime);

  Response updateItemVersionModificationTime(SessionContext context, Space space, Id itemId,
                                                   Id versionId, Date modificationTime);

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy