То, как автоматически генерировать комментарии для метода считывания/метода set на основе поля, комментирует в Eclipse?

Я использую следующую логику при работе с SOAPClient:

public function executeSoapCall($method, $params)
{
    try {
        $client = $this->tryGetSoapClient();

        $timeout = ini_get('default_socket_timeout');
        ini_set('default_socket_timeout', 60);//set new timeout value - 60 seconds
        $client->__soapCall($method, $params);//execute SOAP call
        ini_set('default_socket_timeout', $timeout);//revert timeout back
    } catch (\Throwable $e) {
        if (isset($timeout)) {
            ini_set('default_socket_timeout', $timeout);//revert timeout back
        }
    }
}
protected function tryGetSoapClient()
{
    $timeout = ini_get('default_socket_timeout');//get timeout (need to be reverted back afterwards)
    ini_set('default_socket_timeout', 10);//set new timeout value - 10 seconds
    try {
        $client = new \SoapClient($this->wsdl, $this->options);//get SOAP client
    } catch (\Throwable $e) {
        ini_set('default_socket_timeout', 10);//revert back in case of exception
        throw $e;
    }
    $this->iniSetTimeout($timeout);//revert back

    return $client;
}

Это помогает мне ждать до 10 секунд для установления соединения и 60 секунд для выполнения вызова.

26
задан räph 16 June 2009 в 05:05
поделиться

5 ответов

Наконец-то я сам нашел решение (или, по крайней мере, обходной путь). Я читал о Spoon на SO. Это программный процессор Java, который позволяет читать и изменять исходные файлы Java. Его даже можно использовать как плагин Eclipse или скрипт Ant / Maven.

Все, что вам нужно сделать, это расширить AbstractProcessor, который будет обрабатывать метод. Если имя метода начинается с get / set, он ищет соответствующее поле, извлекает его комментарий и заменяет или расширяет им комментарий аксессоров.

У меня есть небольшой скрипт ant, который берет все мои исходники и обрабатывает их.

Что-то интегрированное в шаблоны кода eclipses, конечно, было бы удобнее, но пока этот способ подходит!

5
ответ дан 28 November 2019 в 07:49
поделиться

if you use Eclipse's tool to override/implement methods... from the source menu, there is an option to automatically generate javadoc comments. there are comment templates that you can modify in preferences->java->code style -> code templates -> comments.

4
ответ дан 28 November 2019 в 07:49
поделиться

Если бы у вас был язык макросов, вы могли бы написать такую ​​функцию, как «открыть всплывающее окно, которое позволяет мне ввести некоторый текст, а затем сгенерирует методы получения и установки, включая его javadoc, на основе шаблонов. ".

Eclipse на самом деле не имеет реальной поддержки такого макроязыка, но, может быть, вы все равно могли бы взглянуть на: Есть ли средство записи макросов для Eclipse?

Если вы не хотите переключаться между eclipse и другой инструмент, тогда вы можете попробовать JEdit (jedit.org), который включает мощный макроязык beanshell. Таким образом, вы можете открыть eclipse и jedit, перетащить файл, который хотите обработать, из eclipse в jedit, вы используете мощность макросов jedit, затем сохраните файл и, наконец, обновите файл в eclipse.

Это немного раздражает , но для некоторых обработок я успешно применил этот способ.

2
ответ дан 28 November 2019 в 07:49
поделиться

Плагин JavadocWriter для IntelliJ IDEA говорит, что он выполняет «умное копирование javadoc из поля в средство доступа». Предостережение, утилита: я сам не пробовал плагин, и он не обновлялся уже 3 года.

1
ответ дан 28 November 2019 в 07:49
поделиться

IMHO Если комментарии могут быть созданы автоматически, они не добавляют особой ценности.
Если вы вызвали свой метод getDynamicStrategyName (), вам не нужно его комментировать, так как имя содержит всю информацию, которую вы поместили бы в комментарий.

1
ответ дан 28 November 2019 в 07:49
поделиться
Другие вопросы по тегам:

Похожие вопросы: