1 /* SOGoSystemDefaults.h - this file is part of SOGo
2  *
3  * Copyright (C) 2009-2015 Inverse inc.
4  *
5  * This file is free software; you can redistribute it and/or modify
6  * it under the terms of the GNU General Public License as published by
7  * the Free Software Foundation; either version 2, or (at your option)
8  * any later version.
9  *
10  * This file is distributed in the hope that it will be useful,
11  * but WITHOUT ANY WARRANTY; without even the implied warranty of
12  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13  * GNU General Public License for more details.
14  *
15  * You should have received a copy of the GNU General Public License
16  * along with this program; see the file COPYING.  If not, write to
17  * the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
18  * Boston, MA 02111-1307, USA.
19  */
20 
21 #ifndef SOGOSYSTEMDEFAULTS_H
22 #define SOGOSYSTEMDEFAULTS_H
23 
24 #import <SOGo/SOGoDomainDefaults.h>
25 
26 @interface SOGoSystemDefaults : SOGoDomainDefaults
27 {
28   NSArray *loginDomains;
29 }
30 
31 + (SOGoSystemDefaults *) sharedSystemDefaults;
32 
33 - (NSArray *) domainIds;
34 - (BOOL) enableDomainBasedUID;
35 - (NSArray *) loginDomains;
36 - (NSArray *) visibleDomainsForDomain: (NSString *) domain;
37 
38 - (BOOL) crashOnSessionCreate;
39 - (BOOL) debugRequests;
40 - (BOOL) debugLeaks;
41 - (int) vmemLimit;
42 - (BOOL) trustProxyAuthentication;
43 - (NSString *) encryptionKey;
44 - (BOOL) useRelativeURLs;
45 - (NSString *) sieveFolderEncoding;
46 
47 - (BOOL) isWebAccessEnabled;
48 - (BOOL) isCalendarDAVAccessEnabled;
49 - (BOOL) isAddressBookDAVAccessEnabled;
50 
51 - (BOOL) enableEMailAlarms;
52 
53 - (NSString *) faviconRelativeURL;
54 - (NSString *) zipPath;
55 - (int) port;
56 - (int) workers;
57 - (NSString *) logFile;
58 - (NSString *) pidFile;
59 
60 - (NSTimeInterval) cacheCleanupInterval;
61 - (NSString *) memcachedHost;
62 
63 - (BOOL) userCanChangePassword;
64 - (BOOL) uixAdditionalPreferences;
65 
66 - (BOOL) uixDebugEnabled;
67 - (BOOL) easDebugEnabled;
68 
69 - (NSString *) pageTitle;
70 
71 - (NSArray *) supportedLanguages;
72 - (NSString *) loginSuffix;
73 
74 - (NSString *) authenticationType;
75 - (NSString *) davAuthenticationType;
76 
77 - (NSString *) CASServiceURL;
78 - (BOOL) CASLogoutEnabled;
79 
80 - (NSString *) SAML2PrivateKeyLocation;
81 - (NSString *) SAML2CertificateLocation;
82 - (NSString *) SAML2IdpMetadataLocation;
83 - (NSString *) SAML2IdpPublicKeyLocation;
84 - (NSString *) SAML2IdpCertificateLocation;
85 - (NSString *) SAML2LoginAttribute;
86 - (BOOL) SAML2LogoutEnabled;
87 - (NSString *) SAML2LogoutURL;
88 
89 - (BOOL) enablePublicAccess;
90 
91 - (int) maximumFailedLoginCount;
92 - (int) maximumFailedLoginInterval;
93 - (int) failedLoginBlockInterval;
94 
95 - (int) maximumMessageSizeLimit;
96 
97 - (NSUInteger) maximumMessageSubmissionCount;
98 - (NSUInteger) maximumRecipientCount;
99 - (int) maximumSubmissionInterval;
100 - (int) messageSubmissionBlockInterval;
101 
102 - (int) maximumRequestCount;
103 - (int) maximumRequestInterval;
104 - (int) requestBlockInterval;
105 
106 
107 - (int) maximumPingInterval;
108 - (int) maximumSyncInterval;
109 - (int) internalSyncInterval;
110 - (int) maximumSyncWindowSize;
111 - (int) maximumSyncResponseSize;
112 - (int) maximumPictureSize;
113 
114 @end
115 
116 #endif /* SOGOSYSTEMDEFAULTS_H */
117