FDO .NET API Reference Feature Data Objects

mgIReleaseLockImp.h

Go to the documentation of this file.
00001 /*
00002 * Copyright (C) 2004-2006  Autodesk, Inc.
00003 * 
00004 * This library is free software; you can redistribute it and/or
00005 * modify it under the terms of version 2.1 of the GNU Lesser
00006 * General Public License as published by the Free Software Foundation.
00007 * 
00008 * This library is distributed in the hope that it will be useful,
00009 * but WITHOUT ANY WARRANTY; without even the implied warranty of
00010 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00011 * Lesser General Public License for more details.
00012 * 
00013 * You should have received a copy of the GNU Lesser General Public
00014 * License along with this library; if not, write to the Free Software
00015 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301  USA
00016 *
00017 */
00018 
00019 #pragma once
00020 
00021 #include "FDO\Commands\Locking\mgIReleaseLock.h"
00022 #include "FDO\Commands\mgIFeatureCommandImp.h"
00023 
00024 class FdoIReleaseLock;
00025 
00026 BEGIN_NAMESPACE_OSGEO_FDO_COMMANDS_LOCKING
00027 public __gc __interface ILockConflictReader;
00028 
00029 /// \ingroup (OSGeoFDOCommandsLocking)
00030 /// \brief
00031 /// The IReleaseLockImp class is a concrete implementation of IReleaseLock.
00032 /// The IReleaseLock interface defines the ReleaseLock command, which releases
00033 /// locks from feature instances of a given class that match the specified
00034 /// criteria. Input to the release lock command includes the name of the class
00035 /// and filter criteria by which to identify the instances to be unlocked. The
00036 /// filter may be specified either as text or as an expression tree (most likely
00037 /// produced by a query builder). The ability to successfully execute the command 
00038 /// might be restricted by the datastore security if the lock doesn’t belong to the 
00039 /// user executing the command.
00040 private __gc class IReleaseLockImp : public NAMESPACE_OSGEO_FDO_COMMANDS::IFeatureCommandImp, public NAMESPACE_OSGEO_FDO_COMMANDS_LOCKING::IReleaseLock
00041 {
00042 public:
00043     /// \brief
00044     /// Gets the name of the user who owns the lock to release.
00045     /// 
00046     /// \return
00047     /// Returns name of the lock owner. If the name was not set, it returns the name of the caller.
00048     /// 
00049     __property System::String* get_LockOwner();
00050 
00051     /// \brief
00052     /// Sets the name of the user who owns the lock to release.
00053     /// 
00054     /// \param value 
00055     /// Input the name of the user.
00056     /// 
00057     /// \return
00058     /// Returns nothing
00059     /// 
00060     __property System::Void set_LockOwner(System::String* value);
00061 
00062     /// \brief
00063     /// Executes the release lock command, returning an ILockConflictReader.
00064     /// 
00065     /// \return
00066     /// Returns a list of feature instances whose lock is owned by someone else.
00067     /// 
00068     NAMESPACE_OSGEO_FDO_COMMANDS_LOCKING::ILockConflictReader* Execute();
00069 
00070 public private:
00071     IReleaseLockImp(System::IntPtr unmanaged, System::Boolean autoDelete) : NAMESPACE_OSGEO_FDO_COMMANDS::IFeatureCommandImp(unmanaged, autoDelete)
00072     {
00073 
00074     }
00075 
00076     inline FdoIReleaseLock* GetImpObj();
00077 };
00078 
00079 END_NAMESPACE_OSGEO_FDO_COMMANDS_LOCKING
00080 
00081 

Comments or suggestions? Send us feedback.