@@ -160,6 +160,12 @@ public class GetCapabilitiesRemoteOperation extends RemoteOperation {
160160 private static final String NODE_SECURITY_GUARD = "security_guard" ;
161161 private static final String NODE_DIAGNOSTICS = "diagnostics" ;
162162
163+ // needed for checking compatible filenames
164+ private static final String FORBIDDEN_FILENAME_CHARACTERS = "forbidden_filename_characters" ;
165+ private static final String FORBIDDEN_FILENAMES = "forbidden_filenames" ;
166+ private static final String FORBIDDEN_FILENAME_EXTENSIONS = "forbidden_filename_extensions" ;
167+ private static final String FORBIDDEN_FILENAME_BASE_NAMES = "forbidden_filename_basenames" ;
168+
163169 private OCCapability currentCapability = null ;
164170
165171 public GetCapabilitiesRemoteOperation () {
@@ -438,6 +444,28 @@ private OCCapability parseResponse(String response) throws JSONException {
438444 capability .setDirectEditingEtag (respDirectEditing .getString ("etag" ));
439445 }
440446
447+ // region compatible file names
448+ if (respFiles .has (FORBIDDEN_FILENAME_CHARACTERS )) {
449+ JSONArray result = respFiles .getJSONArray (FORBIDDEN_FILENAME_CHARACTERS );
450+ capability .setForbiddenFilenameCharactersJson (result .toString ());
451+ }
452+
453+ if (respFiles .has (FORBIDDEN_FILENAMES )) {
454+ JSONArray result = respFiles .getJSONArray (FORBIDDEN_FILENAMES );
455+ capability .setForbiddenFilenamesJson (result .toString ());
456+ }
457+
458+ if (respFiles .has (FORBIDDEN_FILENAME_EXTENSIONS )) {
459+ JSONArray result = respFiles .getJSONArray (FORBIDDEN_FILENAME_EXTENSIONS );
460+ capability .setForbiddenFilenameExtensionJson (result .toString ());
461+ }
462+
463+ if (respFiles .has (FORBIDDEN_FILENAME_BASE_NAMES )) {
464+ JSONArray result = respFiles .getJSONArray (FORBIDDEN_FILENAME_BASE_NAMES );
465+ capability .setForbiddenFilenameBaseNamesJson (result .toString ());
466+ }
467+ // endregion
468+
441469 Log_OC .d (TAG , "*** Added " + NODE_FILES );
442470 }
443471
0 commit comments