00001 /*----------------------------------------------------------------------------+ 00002 | ___ _ _ | 00003 | / | | | | | | 00004 | / /| | __| | ___ | |__ ___ | 00005 | / /_| |/ _ |/ _ \| _ \ / _ \ | 00006 | / ___ | (_| | (_) | |_) | __/ | 00007 | /_/ |_|\__,_|\___/|____/ \___| | 00008 | | 00009 | | 00010 | ADOBE CONFIDENTIAL | 00011 | __________________ | 00012 | | 00013 | Copyright (c) 2003 - 2007, Adobe Systems Incorporated. | 00014 | All rights reserved. | 00015 | | 00016 | NOTICE: All information contained herein is, and remains the property | 00017 | of Adobe Systems Incorporated and its suppliers, if any. The intellectual | 00018 | and technical concepts contained herein are proprietary to Adobe Systems | 00019 | Incorporated and its suppliers and may be covered by U.S. and Foreign | 00020 | Patents, patents in process, and are protected by trade secret or | 00021 | copyright law. Dissemination of this information or reproduction of this | 00022 | material is strictly forbidden unless prior written permission is | 00023 | obtained from Adobe Systems Incorporated. | 00024 | | 00025 | Adobe Systems Incorporated 415.832.2000 | 00026 | 601 Townsend Street 415.832.2020 fax | 00027 | San Francisco, CA 94103 | 00028 | | 00029 +----------------------------------------------------------------------------*/ 00030 00031 #pragma once 00032 00033 #include "FmsAdaptor.h" 00034 #include "FmsAuthEvents.h" 00035 00061 class IFmsAuthServerContext; 00062 class IFmsAuthAdaptor; 00063 class IFmsServerContext; 00064 class IFmsAuthEvent; 00065 00066 00082 extern "C" void FCExport FmsCreateAuthAdaptor(IFmsAuthServerContext* pAuthServerCtx, IFmsAuthAdaptor*& pAuthAdaptor); 00092 extern "C" void FCExport FmsDestroyAuthAdaptor( 00093 IFmsAuthAdaptor* pAuthAdaptor ); 00094 00105 class IFmsAuthServerContext : public IFmsServerContext 00106 { 00107 public: 00108 00121 virtual void onAuthorize(IFmsAuthEvent* pAev, bool bAuthorized) = 0; 00122 00123 00132 virtual void onNotify(const IFmsAuthEvent* pAev) = 0; 00133 00155 virtual void excludeEvents(I32 aevBit[], int count, IFmsAuthEvent::EventType eventId[], int count1) = 0; 00156 00162 protected: 00163 virtual ~IFmsAuthServerContext() {} 00164 }; 00165 00171 class IFmsAuthAdaptor 00172 { 00173 public: 00174 00184 virtual void authorize(IFmsAuthEvent* pAev) = 0; 00185 00194 virtual void notify(IFmsAuthEvent* pAev) = 0; 00195 00222 virtual void getEvents(I32 aevBitAuth[], I32 aevBitNotf[], unsigned int count) = 0; 00223 00228 virtual ~IFmsAuthAdaptor() {} 00229 }; 00230