| /************************************************************** |
| * |
| * 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. |
| * |
| *************************************************************/ |
| |
| |
| #ifndef __com_sun_star_ucb_HierarchyDataReadWriteAccess_idl__ |
| #define __com_sun_star_ucb_HierarchyDataReadWriteAccess_idl__ |
| |
| #ifndef __com_sun_star_ucb_HierarchyDataReadAccess_idl__ |
| #include <com/sun/star/ucb/HierarchyDataReadAccess.idl> |
| #endif |
| #ifndef __com_sun_star_container_XNameContainer_idl__ |
| #include <com/sun/star/container/XNameContainer.idl> |
| #endif |
| #ifndef __com_sun_star_lang_XSingleServiceFactory_idl__ |
| #include <com/sun/star/lang/XSingleServiceFactory.idl> |
| #endif |
| #ifndef __com_sun_star_util_XChangesBatch_idl__ |
| #include <com/sun/star/util/XChangesBatch.idl> |
| #endif |
| |
| //============================================================================= |
| |
| module com { module sun { module star { module ucb { |
| |
| //============================================================================= |
| /** provides read and write access to a fragment of the hierarchy data. |
| */ |
| published service HierarchyDataReadWriteAccess |
| { |
| //------------------------------------------------------------------------- |
| /** provides read access to a fragment of the hierarchy data |
| */ |
| service HierarchyDataReadAccess; |
| |
| //------------------------------------------------------------------------- |
| /** allows adding and removing of hierarchy data nodes, replacing of |
| the value of hierarchy data node members, as well as obtaining the |
| value of hieryrchy data node members. |
| |
| <p>Adding and removing must only be supported if the access object |
| points to the "Children" data member of a node or to the root node. |
| It will insert a new node or or remove an existing one. If supported |
| on data nodes, adding must add new data members to the node, removing |
| must remove data members. However, the mandatory data members (Title, |
| TargetURL, Children) must never be removable. |
| |
| <p>Replacing and getting values must be supported be every data node. |
| */ |
| interface com::sun::star::container::XNameContainer; |
| |
| //------------------------------------------------------------------------- |
| /** gives access to all contents provided by this provider. |
| |
| <p><member scope="com::sun::star::lang">XSingleServiceFactory::createInstance</member> |
| will create a new empty hierarchy data node. After it was created |
| it's data members can be filled. Last, the node can be inserted as child |
| of another node using |
| <member scope="com::sun::star::container">XNameContainer::insertByName</member>. |
| |
| <p>There are no special arguments that must be supported by |
| <member scope="com::sun::star::lang">XSingleServiceFactory::createInstanceWithArguments</member> |
| */ |
| interface com::sun::star::lang::XSingleServiceFactory; |
| |
| //------------------------------------------------------------------------- |
| /** allows managing changes within the hierarchy. |
| |
| <p><member scope="com::sun::star::util">XChangesBatch::getPendingChanges</member> |
| reports all changes within the hierarchy that are done through (direct |
| or indirect) descendants of this element. The same set of changes is |
| committed to persistent storage and/or made visible to other objects |
| accessing the same data set, when |
| <member scope="com::sun::star::util">XChangesBatch::commitChanges</member> |
| is invoked. |
| */ |
| interface com::sun::star::util::XChangesBatch; |
| }; |
| |
| //============================================================================= |
| |
| }; }; }; }; |
| |
| #endif |