Passed
Push — master ( 65fd24...fc096a )
by Joas
17:08 queued 14s
created
lib/public/Calendar/Resource/IResource.php 1 patch
Indentation   +42 added lines, -42 removed lines patch added patch discarded remove patch
@@ -31,50 +31,50 @@
 block discarded – undo
31 31
  */
32 32
 interface IResource {
33 33
 
34
-	/**
35
-	 * get the resource id
36
-	 *
37
-	 * This id has to be unique within the backend
38
-	 *
39
-	 * @return string
40
-	 * @since 14.0.0
41
-	 */
42
-	public function getId():string;
34
+    /**
35
+     * get the resource id
36
+     *
37
+     * This id has to be unique within the backend
38
+     *
39
+     * @return string
40
+     * @since 14.0.0
41
+     */
42
+    public function getId():string;
43 43
 
44
-	/**
45
-	 * get the display name for a resource
46
-	 *
47
-	 * @return string
48
-	 * @since 14.0.0
49
-	 */
50
-	public function getDisplayName():string;
44
+    /**
45
+     * get the display name for a resource
46
+     *
47
+     * @return string
48
+     * @since 14.0.0
49
+     */
50
+    public function getDisplayName():string;
51 51
 
52
-	/**
53
-	 * Get a list of groupIds that are allowed to access this resource
54
-	 *
55
-	 * If an empty array is returned, no group restrictions are
56
-	 * applied.
57
-	 *
58
-	 * @return string[]
59
-	 * @since 14.0.0
60
-	 */
61
-	public function getGroupRestrictions():array;
52
+    /**
53
+     * Get a list of groupIds that are allowed to access this resource
54
+     *
55
+     * If an empty array is returned, no group restrictions are
56
+     * applied.
57
+     *
58
+     * @return string[]
59
+     * @since 14.0.0
60
+     */
61
+    public function getGroupRestrictions():array;
62 62
 
63
-	/**
64
-	 * get email-address for resource
65
-	 *
66
-	 * The email address has to be globally unique
67
-	 *
68
-	 * @return string
69
-	 * @since 14.0.0
70
-	 */
71
-	public function getEMail():string;
63
+    /**
64
+     * get email-address for resource
65
+     *
66
+     * The email address has to be globally unique
67
+     *
68
+     * @return string
69
+     * @since 14.0.0
70
+     */
71
+    public function getEMail():string;
72 72
 
73
-	/**
74
-	 * Get corresponding backend object
75
-	 *
76
-	 * @return IBackend
77
-	 * @since 14.0.0
78
-	 */
79
-	public function getBackend():IBackend;
73
+    /**
74
+     * Get corresponding backend object
75
+     *
76
+     * @return IBackend
77
+     * @since 14.0.0
78
+     */
79
+    public function getBackend():IBackend;
80 80
 }
Please login to merge, or discard this patch.
lib/public/Calendar/Resource/IBackend.php 1 patch
Indentation   +32 added lines, -32 removed lines patch added patch discarded remove patch
@@ -32,39 +32,39 @@
 block discarded – undo
32 32
  */
33 33
 interface IBackend {
34 34
 
35
-	/**
36
-	 * get a list of all resources in this backend
37
-	 *
38
-	 * @throws BackendTemporarilyUnavailableException
39
-	 * @return IResource[]
40
-	 * @since 14.0.0
41
-	 */
42
-	public function getAllResources():array;
35
+    /**
36
+     * get a list of all resources in this backend
37
+     *
38
+     * @throws BackendTemporarilyUnavailableException
39
+     * @return IResource[]
40
+     * @since 14.0.0
41
+     */
42
+    public function getAllResources():array;
43 43
 
44
-	/**
45
-	 * get a list of all resource identifiers in this backend
46
-	 *
47
-	 * @throws BackendTemporarilyUnavailableException
48
-	 * @return string[]
49
-	 * @since 14.0.0
50
-	 */
51
-	public function listAllResources():array;
44
+    /**
45
+     * get a list of all resource identifiers in this backend
46
+     *
47
+     * @throws BackendTemporarilyUnavailableException
48
+     * @return string[]
49
+     * @since 14.0.0
50
+     */
51
+    public function listAllResources():array;
52 52
 
53
-	/**
54
-	 * get a resource by it's id
55
-	 *
56
-	 * @param string $id
57
-	 * @throws BackendTemporarilyUnavailableException
58
-	 * @return IResource|null
59
-	 * @since 14.0.0
60
-	 */
61
-	public function getResource($id);
53
+    /**
54
+     * get a resource by it's id
55
+     *
56
+     * @param string $id
57
+     * @throws BackendTemporarilyUnavailableException
58
+     * @return IResource|null
59
+     * @since 14.0.0
60
+     */
61
+    public function getResource($id);
62 62
 
63
-	/**
64
-	 * Get unique identifier of the backend
65
-	 *
66
-	 * @return string
67
-	 * @since 14.0.0
68
-	 */
69
-	public function getBackendIdentifier():string;
63
+    /**
64
+     * Get unique identifier of the backend
65
+     *
66
+     * @return string
67
+     * @since 14.0.0
68
+     */
69
+    public function getBackendIdentifier():string;
70 70
 }
Please login to merge, or discard this patch.
lib/public/Calendar/Room/IBackend.php 1 patch
Indentation   +32 added lines, -32 removed lines patch added patch discarded remove patch
@@ -32,39 +32,39 @@
 block discarded – undo
32 32
  */
33 33
 interface IBackend {
34 34
 
35
-	/**
36
-	 * get a list of all rooms in this backend
37
-	 *
38
-	 * @throws BackendTemporarilyUnavailableException
39
-	 * @return IRoom[]
40
-	 * @since 14.0.0
41
-	 */
42
-	public function getAllRooms():array;
35
+    /**
36
+     * get a list of all rooms in this backend
37
+     *
38
+     * @throws BackendTemporarilyUnavailableException
39
+     * @return IRoom[]
40
+     * @since 14.0.0
41
+     */
42
+    public function getAllRooms():array;
43 43
 
44
-	/**
45
-	 * get a list of all room identifiers in this backend
46
-	 *
47
-	 * @throws BackendTemporarilyUnavailableException
48
-	 * @return string[]
49
-	 * @since 14.0.0
50
-	 */
51
-	public function listAllRooms():array;
44
+    /**
45
+     * get a list of all room identifiers in this backend
46
+     *
47
+     * @throws BackendTemporarilyUnavailableException
48
+     * @return string[]
49
+     * @since 14.0.0
50
+     */
51
+    public function listAllRooms():array;
52 52
 
53
-	/**
54
-	 * get a room by it's id
55
-	 *
56
-	 * @param string $id
57
-	 * @throws BackendTemporarilyUnavailableException
58
-	 * @return IRoom|null
59
-	 * @since 14.0.0
60
-	 */
61
-	public function getRoom($id);
53
+    /**
54
+     * get a room by it's id
55
+     *
56
+     * @param string $id
57
+     * @throws BackendTemporarilyUnavailableException
58
+     * @return IRoom|null
59
+     * @since 14.0.0
60
+     */
61
+    public function getRoom($id);
62 62
 
63
-	/**
64
-	 * Get unique identifier of the backend
65
-	 *
66
-	 * @return string
67
-	 * @since 14.0.0
68
-	 */
69
-	public function getBackendIdentifier():string;
63
+    /**
64
+     * Get unique identifier of the backend
65
+     *
66
+     * @return string
67
+     * @since 14.0.0
68
+     */
69
+    public function getBackendIdentifier():string;
70 70
 }
Please login to merge, or discard this patch.
lib/public/Federation/ICloudFederationProvider.php 1 patch
Indentation   +43 added lines, -43 removed lines patch added patch discarded remove patch
@@ -39,51 +39,51 @@
 block discarded – undo
39 39
 
40 40
 interface ICloudFederationProvider {
41 41
 
42
-	/**
43
-	 * get the name of the share type, handled by this provider
44
-	 *
45
-	 * @return string
46
-	 *
47
-	 * @since 14.0.0
48
-	 */
49
-	public function getShareType();
42
+    /**
43
+     * get the name of the share type, handled by this provider
44
+     *
45
+     * @return string
46
+     *
47
+     * @since 14.0.0
48
+     */
49
+    public function getShareType();
50 50
 
51
-	/**
52
-	 * share received from another server
53
-	 *
54
-	 * @param ICloudFederationShare $share
55
-	 * @return string provider specific unique ID of the share
56
-	 *
57
-	 * @throws ProviderCouldNotAddShareException
58
-	 *
59
-	 * @since 14.0.0
60
-	 */
61
-	public function shareReceived(ICloudFederationShare $share);
51
+    /**
52
+     * share received from another server
53
+     *
54
+     * @param ICloudFederationShare $share
55
+     * @return string provider specific unique ID of the share
56
+     *
57
+     * @throws ProviderCouldNotAddShareException
58
+     *
59
+     * @since 14.0.0
60
+     */
61
+    public function shareReceived(ICloudFederationShare $share);
62 62
 
63
-	/**
64
-	 * notification received from another server
65
-	 *
66
-	 * @param string $notificationType (e.g SHARE_ACCEPTED)
67
-	 * @param string $providerId share ID
68
-	 * @param array $notification provider specific notification
69
-	 * @return array $data send back to sender
70
-	 *
71
-	 * @throws ShareNotFound
72
-	 * @throws ActionNotSupportedException
73
-	 * @throws BadRequestException
74
-	 * @throws AuthenticationFailedException
75
-	 *
76
-	 * @since 14.0.0
77
-	 */
78
-	public function notificationReceived($notificationType, $providerId, array $notification);
63
+    /**
64
+     * notification received from another server
65
+     *
66
+     * @param string $notificationType (e.g SHARE_ACCEPTED)
67
+     * @param string $providerId share ID
68
+     * @param array $notification provider specific notification
69
+     * @return array $data send back to sender
70
+     *
71
+     * @throws ShareNotFound
72
+     * @throws ActionNotSupportedException
73
+     * @throws BadRequestException
74
+     * @throws AuthenticationFailedException
75
+     *
76
+     * @since 14.0.0
77
+     */
78
+    public function notificationReceived($notificationType, $providerId, array $notification);
79 79
 
80
-	/**
81
-	 * get the supported share types, e.g. "user", "group", etc.
82
-	 *
83
-	 * @return array
84
-	 *
85
-	 * @since 14.0.0
86
-	 */
87
-	public function getSupportedShareTypes();
80
+    /**
81
+     * get the supported share types, e.g. "user", "group", etc.
82
+     *
83
+     * @return array
84
+     *
85
+     * @since 14.0.0
86
+     */
87
+    public function getSupportedShareTypes();
88 88
 
89 89
 }
Please login to merge, or discard this patch.
lib/public/IL10N.php 2 patches
Spacing   +1 added lines, -1 removed lines patch added patch discarded remove patch
@@ -107,7 +107,7 @@
 block discarded – undo
107 107
 	 * @return string language
108 108
 	 * @since 7.0.0
109 109
 	 */
110
-	public function getLanguageCode(): string ;
110
+	public function getLanguageCode(): string;
111 111
 
112 112
 	/**
113 113
 	 * * The code (en_US, fr_CA, ...) of the locale that is used for this IL10N object
Please login to merge, or discard this patch.
Indentation   +68 added lines, -68 removed lines patch added patch discarded remove patch
@@ -43,77 +43,77 @@
 block discarded – undo
43 43
  * @since 6.0.0
44 44
  */
45 45
 interface IL10N {
46
-	/**
47
-	 * Translating
48
-	 * @param string $text The text we need a translation for
49
-	 * @param array|string $parameters default:array() Parameters for sprintf
50
-	 * @return string Translation or the same text
51
-	 *
52
-	 * Returns the translation. If no translation is found, $text will be
53
-	 * returned.
54
-	 * @since 6.0.0
55
-	 */
56
-	public function t(string $text, $parameters = []): string;
46
+    /**
47
+     * Translating
48
+     * @param string $text The text we need a translation for
49
+     * @param array|string $parameters default:array() Parameters for sprintf
50
+     * @return string Translation or the same text
51
+     *
52
+     * Returns the translation. If no translation is found, $text will be
53
+     * returned.
54
+     * @since 6.0.0
55
+     */
56
+    public function t(string $text, $parameters = []): string;
57 57
 
58
-	/**
59
-	 * Translating
60
-	 * @param string $text_singular the string to translate for exactly one object
61
-	 * @param string $text_plural the string to translate for n objects
62
-	 * @param integer $count Number of objects
63
-	 * @param array $parameters default:array() Parameters for sprintf
64
-	 * @return string Translation or the same text
65
-	 *
66
-	 * Returns the translation. If no translation is found, $text will be
67
-	 * returned. %n will be replaced with the number of objects.
68
-	 *
69
-	 * The correct plural is determined by the plural_forms-function
70
-	 * provided by the po file.
71
-	 * @since 6.0.0
72
-	 *
73
-	 */
74
-	public function n(string $text_singular, string $text_plural, int $count, array $parameters = []): string;
58
+    /**
59
+     * Translating
60
+     * @param string $text_singular the string to translate for exactly one object
61
+     * @param string $text_plural the string to translate for n objects
62
+     * @param integer $count Number of objects
63
+     * @param array $parameters default:array() Parameters for sprintf
64
+     * @return string Translation or the same text
65
+     *
66
+     * Returns the translation. If no translation is found, $text will be
67
+     * returned. %n will be replaced with the number of objects.
68
+     *
69
+     * The correct plural is determined by the plural_forms-function
70
+     * provided by the po file.
71
+     * @since 6.0.0
72
+     *
73
+     */
74
+    public function n(string $text_singular, string $text_plural, int $count, array $parameters = []): string;
75 75
 
76
-	/**
77
-	 * Localization
78
-	 * @param string $type Type of localization
79
-	 * @param \DateTime|int|string $data parameters for this localization
80
-	 * @param array $options currently supports following options:
81
-	 * 			- 'width': handed into \Punic\Calendar::formatDate as second parameter
82
-	 * @return string|int|false
83
-	 *
84
-	 * Returns the localized data.
85
-	 *
86
-	 * Implemented types:
87
-	 *  - date
88
-	 *    - Creates a date
89
-	 *    - l10n-field: date
90
-	 *    - params: timestamp (int/string)
91
-	 *  - datetime
92
-	 *    - Creates date and time
93
-	 *    - l10n-field: datetime
94
-	 *    - params: timestamp (int/string)
95
-	 *  - time
96
-	 *    - Creates a time
97
-	 *    - l10n-field: time
98
-	 *    - params: timestamp (int/string)
99
-	 * @since 6.0.0 - parameter $options was added in 8.0.0
100
-	 */
101
-	public function l(string $type, $data, array $options = []);
76
+    /**
77
+     * Localization
78
+     * @param string $type Type of localization
79
+     * @param \DateTime|int|string $data parameters for this localization
80
+     * @param array $options currently supports following options:
81
+     * 			- 'width': handed into \Punic\Calendar::formatDate as second parameter
82
+     * @return string|int|false
83
+     *
84
+     * Returns the localized data.
85
+     *
86
+     * Implemented types:
87
+     *  - date
88
+     *    - Creates a date
89
+     *    - l10n-field: date
90
+     *    - params: timestamp (int/string)
91
+     *  - datetime
92
+     *    - Creates date and time
93
+     *    - l10n-field: datetime
94
+     *    - params: timestamp (int/string)
95
+     *  - time
96
+     *    - Creates a time
97
+     *    - l10n-field: time
98
+     *    - params: timestamp (int/string)
99
+     * @since 6.0.0 - parameter $options was added in 8.0.0
100
+     */
101
+    public function l(string $type, $data, array $options = []);
102 102
 
103 103
 
104
-	/**
105
-	 * The code (en, de, ...) of the language that is used for this IL10N object
106
-	 *
107
-	 * @return string language
108
-	 * @since 7.0.0
109
-	 */
110
-	public function getLanguageCode(): string ;
104
+    /**
105
+     * The code (en, de, ...) of the language that is used for this IL10N object
106
+     *
107
+     * @return string language
108
+     * @since 7.0.0
109
+     */
110
+    public function getLanguageCode(): string ;
111 111
 
112
-	/**
113
-	 * * The code (en_US, fr_CA, ...) of the locale that is used for this IL10N object
114
-	 *
115
-	 * @return string locale
116
-	 * @since 14.0.0
117
-	 */
118
-	public function getLocaleCode(): string;
112
+    /**
113
+     * * The code (en_US, fr_CA, ...) of the locale that is used for this IL10N object
114
+     *
115
+     * @return string locale
116
+     * @since 14.0.0
117
+     */
118
+    public function getLocaleCode(): string;
119 119
 }
Please login to merge, or discard this patch.
lib/private/Updater/ChangesResult.php 1 patch
Indentation   +14 added lines, -14 removed lines patch added patch discarded remove patch
@@ -40,22 +40,22 @@
 block discarded – undo
40 40
  * @method void setData(string $data)
41 41
  */
42 42
 class ChangesResult extends Entity {
43
-	/** @var string */
44
-	protected $version = '';
43
+    /** @var string */
44
+    protected $version = '';
45 45
 
46
-	/** @var string */
47
-	protected $etag = '';
46
+    /** @var string */
47
+    protected $etag = '';
48 48
 
49
-	/** @var int */
50
-	protected $lastCheck = 0;
49
+    /** @var int */
50
+    protected $lastCheck = 0;
51 51
 
52
-	/** @var string */
53
-	protected $data = '';
52
+    /** @var string */
53
+    protected $data = '';
54 54
 
55
-	public function __construct() {
56
-		$this->addType('version', 'string');
57
-		$this->addType('etag', 'string');
58
-		$this->addType('lastCheck', 'int');
59
-		$this->addType('data', 'string');
60
-	}
55
+    public function __construct() {
56
+        $this->addType('version', 'string');
57
+        $this->addType('etag', 'string');
58
+        $this->addType('lastCheck', 'int');
59
+        $this->addType('data', 'string');
60
+    }
61 61
 }
Please login to merge, or discard this patch.
core/Command/Base.php 2 patches
Spacing   +5 added lines, -5 removed lines patch added patch discarded remove patch
@@ -73,19 +73,19 @@
 block discarded – undo
73 73
 			default:
74 74
 				foreach ($items as $key => $item) {
75 75
 					if (is_array($item)) {
76
-						$output->writeln($prefix . $key . ':');
77
-						$this->writeArrayInOutputFormat($input, $output, $item, '  ' . $prefix);
76
+						$output->writeln($prefix.$key.':');
77
+						$this->writeArrayInOutputFormat($input, $output, $item, '  '.$prefix);
78 78
 						continue;
79 79
 					}
80 80
 					if (!is_int($key) || ListCommand::class === get_class($this)) {
81 81
 						$value = $this->valueToString($item);
82 82
 						if (!is_null($value)) {
83
-							$output->writeln($prefix . $key . ': ' . $value);
83
+							$output->writeln($prefix.$key.': '.$value);
84 84
 						} else {
85
-							$output->writeln($prefix . $key);
85
+							$output->writeln($prefix.$key);
86 86
 						}
87 87
 					} else {
88
-						$output->writeln($prefix . $this->valueToString($item));
88
+						$output->writeln($prefix.$this->valueToString($item));
89 89
 					}
90 90
 				}
91 91
 				break;
Please login to merge, or discard this patch.
Indentation   +162 added lines, -162 removed lines patch added patch discarded remove patch
@@ -35,166 +35,166 @@
 block discarded – undo
35 35
 use Symfony\Component\Console\Output\OutputInterface;
36 36
 
37 37
 class Base extends Command implements CompletionAwareInterface {
38
-	public const OUTPUT_FORMAT_PLAIN = 'plain';
39
-	public const OUTPUT_FORMAT_JSON = 'json';
40
-	public const OUTPUT_FORMAT_JSON_PRETTY = 'json_pretty';
41
-
42
-	protected string $defaultOutputFormat = self::OUTPUT_FORMAT_PLAIN;
43
-	private bool $php_pcntl_signal = false;
44
-	private bool $interrupted = false;
45
-
46
-	protected function configure() {
47
-		$this
48
-			->addOption(
49
-				'output',
50
-				null,
51
-				InputOption::VALUE_OPTIONAL,
52
-				'Output format (plain, json or json_pretty, default is plain)',
53
-				$this->defaultOutputFormat
54
-			)
55
-		;
56
-	}
57
-
58
-	protected function writeArrayInOutputFormat(InputInterface $input, OutputInterface $output, array $items, string $prefix = '  - '): void {
59
-		switch ($input->getOption('output')) {
60
-			case self::OUTPUT_FORMAT_JSON:
61
-				$output->writeln(json_encode($items));
62
-				break;
63
-			case self::OUTPUT_FORMAT_JSON_PRETTY:
64
-				$output->writeln(json_encode($items, JSON_PRETTY_PRINT));
65
-				break;
66
-			default:
67
-				foreach ($items as $key => $item) {
68
-					if (is_array($item)) {
69
-						$output->writeln($prefix . $key . ':');
70
-						$this->writeArrayInOutputFormat($input, $output, $item, '  ' . $prefix);
71
-						continue;
72
-					}
73
-					if (!is_int($key) || ListCommand::class === get_class($this)) {
74
-						$value = $this->valueToString($item);
75
-						if (!is_null($value)) {
76
-							$output->writeln($prefix . $key . ': ' . $value);
77
-						} else {
78
-							$output->writeln($prefix . $key);
79
-						}
80
-					} else {
81
-						$output->writeln($prefix . $this->valueToString($item));
82
-					}
83
-				}
84
-				break;
85
-		}
86
-	}
87
-
88
-	protected function writeTableInOutputFormat(InputInterface $input, OutputInterface $output, array $items): void {
89
-		switch ($input->getOption('output')) {
90
-			case self::OUTPUT_FORMAT_JSON:
91
-				$output->writeln(json_encode($items));
92
-				break;
93
-			case self::OUTPUT_FORMAT_JSON_PRETTY:
94
-				$output->writeln(json_encode($items, JSON_PRETTY_PRINT));
95
-				break;
96
-			default:
97
-				$table = new Table($output);
98
-				$table->setRows($items);
99
-				if (!empty($items) && is_string(array_key_first(reset($items)))) {
100
-					$table->setHeaders(array_keys(reset($items)));
101
-				}
102
-				$table->render();
103
-				break;
104
-		}
105
-	}
106
-
107
-
108
-	/**
109
-	 * @param mixed $item
110
-	 */
111
-	protected function writeMixedInOutputFormat(InputInterface $input, OutputInterface $output, $item) {
112
-		if (is_array($item)) {
113
-			$this->writeArrayInOutputFormat($input, $output, $item, '');
114
-			return;
115
-		}
116
-
117
-		switch ($input->getOption('output')) {
118
-			case self::OUTPUT_FORMAT_JSON:
119
-				$output->writeln(json_encode($item));
120
-				break;
121
-			case self::OUTPUT_FORMAT_JSON_PRETTY:
122
-				$output->writeln(json_encode($item, JSON_PRETTY_PRINT));
123
-				break;
124
-			default:
125
-				$output->writeln($this->valueToString($item, false));
126
-				break;
127
-		}
128
-	}
129
-
130
-	protected function valueToString($value, bool $returnNull = true): ?string {
131
-		if ($value === false) {
132
-			return 'false';
133
-		} elseif ($value === true) {
134
-			return 'true';
135
-		} elseif ($value === null) {
136
-			return $returnNull ? null : 'null';
137
-		} else {
138
-			return $value;
139
-		}
140
-	}
141
-
142
-	/**
143
-	 * Throw InterruptedException when interrupted by user
144
-	 *
145
-	 * @throws InterruptedException
146
-	 */
147
-	protected function abortIfInterrupted() {
148
-		if ($this->php_pcntl_signal === false) {
149
-			return;
150
-		}
151
-
152
-		pcntl_signal_dispatch();
153
-
154
-		if ($this->interrupted === true) {
155
-			throw new InterruptedException('Command interrupted by user');
156
-		}
157
-	}
158
-
159
-	/**
160
-	 * Changes the status of the command to "interrupted" if ctrl-c has been pressed
161
-	 *
162
-	 * Gives a chance to the command to properly terminate what it's doing
163
-	 */
164
-	protected function cancelOperation() {
165
-		$this->interrupted = true;
166
-	}
167
-
168
-	public function run(InputInterface $input, OutputInterface $output) {
169
-		// check if the php pcntl_signal functions are accessible
170
-		$this->php_pcntl_signal = function_exists('pcntl_signal');
171
-		if ($this->php_pcntl_signal) {
172
-			// Collect interrupts and notify the running command
173
-			pcntl_signal(SIGTERM, [$this, 'cancelOperation']);
174
-			pcntl_signal(SIGINT, [$this, 'cancelOperation']);
175
-		}
176
-
177
-		return parent::run($input, $output);
178
-	}
179
-
180
-	/**
181
-	 * @param string $optionName
182
-	 * @param CompletionContext $context
183
-	 * @return string[]
184
-	 */
185
-	public function completeOptionValues($optionName, CompletionContext $context) {
186
-		if ($optionName === 'output') {
187
-			return ['plain', 'json', 'json_pretty'];
188
-		}
189
-		return [];
190
-	}
191
-
192
-	/**
193
-	 * @param string $argumentName
194
-	 * @param CompletionContext $context
195
-	 * @return string[]
196
-	 */
197
-	public function completeArgumentValues($argumentName, CompletionContext $context) {
198
-		return [];
199
-	}
38
+    public const OUTPUT_FORMAT_PLAIN = 'plain';
39
+    public const OUTPUT_FORMAT_JSON = 'json';
40
+    public const OUTPUT_FORMAT_JSON_PRETTY = 'json_pretty';
41
+
42
+    protected string $defaultOutputFormat = self::OUTPUT_FORMAT_PLAIN;
43
+    private bool $php_pcntl_signal = false;
44
+    private bool $interrupted = false;
45
+
46
+    protected function configure() {
47
+        $this
48
+            ->addOption(
49
+                'output',
50
+                null,
51
+                InputOption::VALUE_OPTIONAL,
52
+                'Output format (plain, json or json_pretty, default is plain)',
53
+                $this->defaultOutputFormat
54
+            )
55
+        ;
56
+    }
57
+
58
+    protected function writeArrayInOutputFormat(InputInterface $input, OutputInterface $output, array $items, string $prefix = '  - '): void {
59
+        switch ($input->getOption('output')) {
60
+            case self::OUTPUT_FORMAT_JSON:
61
+                $output->writeln(json_encode($items));
62
+                break;
63
+            case self::OUTPUT_FORMAT_JSON_PRETTY:
64
+                $output->writeln(json_encode($items, JSON_PRETTY_PRINT));
65
+                break;
66
+            default:
67
+                foreach ($items as $key => $item) {
68
+                    if (is_array($item)) {
69
+                        $output->writeln($prefix . $key . ':');
70
+                        $this->writeArrayInOutputFormat($input, $output, $item, '  ' . $prefix);
71
+                        continue;
72
+                    }
73
+                    if (!is_int($key) || ListCommand::class === get_class($this)) {
74
+                        $value = $this->valueToString($item);
75
+                        if (!is_null($value)) {
76
+                            $output->writeln($prefix . $key . ': ' . $value);
77
+                        } else {
78
+                            $output->writeln($prefix . $key);
79
+                        }
80
+                    } else {
81
+                        $output->writeln($prefix . $this->valueToString($item));
82
+                    }
83
+                }
84
+                break;
85
+        }
86
+    }
87
+
88
+    protected function writeTableInOutputFormat(InputInterface $input, OutputInterface $output, array $items): void {
89
+        switch ($input->getOption('output')) {
90
+            case self::OUTPUT_FORMAT_JSON:
91
+                $output->writeln(json_encode($items));
92
+                break;
93
+            case self::OUTPUT_FORMAT_JSON_PRETTY:
94
+                $output->writeln(json_encode($items, JSON_PRETTY_PRINT));
95
+                break;
96
+            default:
97
+                $table = new Table($output);
98
+                $table->setRows($items);
99
+                if (!empty($items) && is_string(array_key_first(reset($items)))) {
100
+                    $table->setHeaders(array_keys(reset($items)));
101
+                }
102
+                $table->render();
103
+                break;
104
+        }
105
+    }
106
+
107
+
108
+    /**
109
+     * @param mixed $item
110
+     */
111
+    protected function writeMixedInOutputFormat(InputInterface $input, OutputInterface $output, $item) {
112
+        if (is_array($item)) {
113
+            $this->writeArrayInOutputFormat($input, $output, $item, '');
114
+            return;
115
+        }
116
+
117
+        switch ($input->getOption('output')) {
118
+            case self::OUTPUT_FORMAT_JSON:
119
+                $output->writeln(json_encode($item));
120
+                break;
121
+            case self::OUTPUT_FORMAT_JSON_PRETTY:
122
+                $output->writeln(json_encode($item, JSON_PRETTY_PRINT));
123
+                break;
124
+            default:
125
+                $output->writeln($this->valueToString($item, false));
126
+                break;
127
+        }
128
+    }
129
+
130
+    protected function valueToString($value, bool $returnNull = true): ?string {
131
+        if ($value === false) {
132
+            return 'false';
133
+        } elseif ($value === true) {
134
+            return 'true';
135
+        } elseif ($value === null) {
136
+            return $returnNull ? null : 'null';
137
+        } else {
138
+            return $value;
139
+        }
140
+    }
141
+
142
+    /**
143
+     * Throw InterruptedException when interrupted by user
144
+     *
145
+     * @throws InterruptedException
146
+     */
147
+    protected function abortIfInterrupted() {
148
+        if ($this->php_pcntl_signal === false) {
149
+            return;
150
+        }
151
+
152
+        pcntl_signal_dispatch();
153
+
154
+        if ($this->interrupted === true) {
155
+            throw new InterruptedException('Command interrupted by user');
156
+        }
157
+    }
158
+
159
+    /**
160
+     * Changes the status of the command to "interrupted" if ctrl-c has been pressed
161
+     *
162
+     * Gives a chance to the command to properly terminate what it's doing
163
+     */
164
+    protected function cancelOperation() {
165
+        $this->interrupted = true;
166
+    }
167
+
168
+    public function run(InputInterface $input, OutputInterface $output) {
169
+        // check if the php pcntl_signal functions are accessible
170
+        $this->php_pcntl_signal = function_exists('pcntl_signal');
171
+        if ($this->php_pcntl_signal) {
172
+            // Collect interrupts and notify the running command
173
+            pcntl_signal(SIGTERM, [$this, 'cancelOperation']);
174
+            pcntl_signal(SIGINT, [$this, 'cancelOperation']);
175
+        }
176
+
177
+        return parent::run($input, $output);
178
+    }
179
+
180
+    /**
181
+     * @param string $optionName
182
+     * @param CompletionContext $context
183
+     * @return string[]
184
+     */
185
+    public function completeOptionValues($optionName, CompletionContext $context) {
186
+        if ($optionName === 'output') {
187
+            return ['plain', 'json', 'json_pretty'];
188
+        }
189
+        return [];
190
+    }
191
+
192
+    /**
193
+     * @param string $argumentName
194
+     * @param CompletionContext $context
195
+     * @return string[]
196
+     */
197
+    public function completeArgumentValues($argumentName, CompletionContext $context) {
198
+        return [];
199
+    }
200 200
 }
Please login to merge, or discard this patch.
lib/public/AppFramework/Http/StrictEvalContentSecurityPolicy.php 1 patch
Indentation   +6 added lines, -6 removed lines patch added patch discarded remove patch
@@ -42,10 +42,10 @@
 block discarded – undo
42 42
  */
43 43
 class StrictEvalContentSecurityPolicy extends ContentSecurityPolicy {
44 44
 
45
-	/**
46
-	 * @since 14.0.0
47
-	 */
48
-	public function __construct() {
49
-		$this->evalScriptAllowed = false;
50
-	}
45
+    /**
46
+     * @since 14.0.0
47
+     */
48
+    public function __construct() {
49
+        $this->evalScriptAllowed = false;
50
+    }
51 51
 }
Please login to merge, or discard this patch.
apps/files/lib/Activity/Filter/FileChanges.php 1 patch
Indentation   +60 added lines, -60 removed lines patch added patch discarded remove patch
@@ -30,72 +30,72 @@
 block discarded – undo
30 30
 
31 31
 class FileChanges implements IFilter {
32 32
 
33
-	/** @var IL10N */
34
-	protected $l;
33
+    /** @var IL10N */
34
+    protected $l;
35 35
 
36
-	/** @var IURLGenerator */
37
-	protected $url;
36
+    /** @var IURLGenerator */
37
+    protected $url;
38 38
 
39
-	/**
40
-	 * @param IL10N $l
41
-	 * @param IURLGenerator $url
42
-	 */
43
-	public function __construct(IL10N $l, IURLGenerator $url) {
44
-		$this->l = $l;
45
-		$this->url = $url;
46
-	}
39
+    /**
40
+     * @param IL10N $l
41
+     * @param IURLGenerator $url
42
+     */
43
+    public function __construct(IL10N $l, IURLGenerator $url) {
44
+        $this->l = $l;
45
+        $this->url = $url;
46
+    }
47 47
 
48
-	/**
49
-	 * @return string Lowercase a-z only identifier
50
-	 * @since 11.0.0
51
-	 */
52
-	public function getIdentifier() {
53
-		return 'files';
54
-	}
48
+    /**
49
+     * @return string Lowercase a-z only identifier
50
+     * @since 11.0.0
51
+     */
52
+    public function getIdentifier() {
53
+        return 'files';
54
+    }
55 55
 
56
-	/**
57
-	 * @return string A translated string
58
-	 * @since 11.0.0
59
-	 */
60
-	public function getName() {
61
-		return $this->l->t('File changes');
62
-	}
56
+    /**
57
+     * @return string A translated string
58
+     * @since 11.0.0
59
+     */
60
+    public function getName() {
61
+        return $this->l->t('File changes');
62
+    }
63 63
 
64
-	/**
65
-	 * @return int
66
-	 * @since 11.0.0
67
-	 */
68
-	public function getPriority() {
69
-		return 30;
70
-	}
64
+    /**
65
+     * @return int
66
+     * @since 11.0.0
67
+     */
68
+    public function getPriority() {
69
+        return 30;
70
+    }
71 71
 
72
-	/**
73
-	 * @return string Full URL to an icon, empty string when none is given
74
-	 * @since 11.0.0
75
-	 */
76
-	public function getIcon() {
77
-		return $this->url->getAbsoluteURL($this->url->imagePath('core', 'places/files.svg'));
78
-	}
72
+    /**
73
+     * @return string Full URL to an icon, empty string when none is given
74
+     * @since 11.0.0
75
+     */
76
+    public function getIcon() {
77
+        return $this->url->getAbsoluteURL($this->url->imagePath('core', 'places/files.svg'));
78
+    }
79 79
 
80
-	/**
81
-	 * @param string[] $types
82
-	 * @return string[] An array of allowed apps from which activities should be displayed
83
-	 * @since 11.0.0
84
-	 */
85
-	public function filterTypes(array $types) {
86
-		return array_intersect([
87
-			'file_created',
88
-			'file_changed',
89
-			'file_deleted',
90
-			'file_restored',
91
-		], $types);
92
-	}
80
+    /**
81
+     * @param string[] $types
82
+     * @return string[] An array of allowed apps from which activities should be displayed
83
+     * @since 11.0.0
84
+     */
85
+    public function filterTypes(array $types) {
86
+        return array_intersect([
87
+            'file_created',
88
+            'file_changed',
89
+            'file_deleted',
90
+            'file_restored',
91
+        ], $types);
92
+    }
93 93
 
94
-	/**
95
-	 * @return string[] An array of allowed apps from which activities should be displayed
96
-	 * @since 11.0.0
97
-	 */
98
-	public function allowedApps() {
99
-		return ['files'];
100
-	}
94
+    /**
95
+     * @return string[] An array of allowed apps from which activities should be displayed
96
+     * @since 11.0.0
97
+     */
98
+    public function allowedApps() {
99
+        return ['files'];
100
+    }
101 101
 }
Please login to merge, or discard this patch.