All streams
Search
Write a publication
Pull to refresh
50
0
Валерий Квертовский @Qwertovsky

Full-Stack Software Engineer

Send message
Для Todo использую WorkFlowy. Текстовые заметки делать удобнее, чем в текущем Keep.
Ghostery вырезает не только рекламу. Иногда он убирает очень полезные блоки со страниц. А с этим плагином вы о них и не узнаете.
Проверяйте: как выглядит сайт с ним и без него.
Сомневаюсь, что рекурсия здесь нужна. Количество вариантов ограничено, и оно не большое.
Пример
if(content instanceof Multipart
				&& ((Multipart)content).getContentType().startsWith("multipart/mixed"))
{
	//get html part of message
	Object body = ((Multipart)content).getBodyPart(0).getContent();
	if(body instanceof Multipart
			&& ((Multipart)body).getContentType().startsWith("multipart/alternative"))
	{
		//get alternative text
		BodyPart altPart = ((Multipart)body).getBodyPart(0);
		
		//get main part (html or related)
		Object mainPart = ((Multipart)body).getBodyPart(1).getContent();
		if(mainPart instanceof Multipart)
		{
			/*
			 * -mixed
			 * \-alternative (body)
			 * 		\-text
			 * 		|-related (mainPart)
			 * 			\-html
			 * 			|-attachment
			 * |-attachments
			 */
			
			//html
			String html = (String)  ((Multipart)mainPart).getBodyPart(0).getContent();
			
			//related
			...
		}
		else
		{
			/*
			 * -mixed
			 * \-alternative (body)
			 * 		\-text
			 * 		|-html 
			 * |-attachments
			 */
			...
					
			//html
			String html = (String)  ((Multipart)body).getBodyPart(1).getContent();
			...
		}
		
		
	}
	else if(body instanceof Multipart
			&& ((Multipart)body).getContentType().startsWith("multipart/related"))
	{
		/*
		 * -mixed
		 * \-related (body)
		 * 		\-html
		 * 		|-attachment 
		 * |-attachments
		 */
		
		//html
		String html = (String) ((Multipart)body).getBodyPart(0).getContent();
		...
	}
	else
	{
		/*
		 * -mixed
		 * \-html (body)
		 * |-attachments
		 */
		
		//html
		String html = (String) ((Multipart)content).getBodyPart(0).getContent();
		...
	}
}
else 
{
	if(content instanceof Multipart
			&& ((Multipart)content).getContentType().startsWith("multipart/alternative"))
	{
		//get alternative text
		BodyPart altPart = ((Multipart)content).getBodyPart(0);
		
		
		//get html part of message
		Object body = ((Multipart)content).getBodyPart(1).getContent();
		if(body instanceof Multipart)
		{
			/*
			 * -alternative (content)
			 * \-text
			 * |-related (body)
			 * 		\-html
			 * 		|-attachment
			 */
			
			//html
			String html = (String) ((Multipart)body).getBodyPart(0).getContent();
			...
		}
		else
		{
			/*
			 * -alternative (content)
			 * \-text
			 * |-html
			 */
			
			...
			//html
			String html = (String) ((Multipart)content).getBodyPart(1).getContent();
			
		}
	}
	else if(content instanceof Multipart
			&& ((Multipart)content).getContentType().startsWith("multipart/related"))
	{
		/*
		 * -related (content)
		 * \-html
		 * |-attachment
		 */
		
		//html
		String html = (String) ((Multipart)content).getBodyPart(0).getContent();
		...
	}
	else 
	{
		/*
		 * -html (content)
		 */
		
		//html
		String html = (String) content;
		
	}
}
Тело сообщения может содержать несколько вложенных друг в друга частей multipart. Сначала mixed, в нем alternative, в нем related. У Вас только пара вариантов писем обрабатывается в примере.
Первый пункт не только в малом бизнесе. Начальство спускает автоматизацию и заставляет работать по-новому. Но сотрудники постоянно изворачиваются и преподносят файлы, которые явно выгружены не из CRM, а набиты вручную в ужасном формате, который трудно обработать. На вопрос: откуда, — гробовое молчание или враньё.
На замену Swing предлагают JavaFX 2.
Там уже есть FXML.
Пример: На NetBeans не обращайте внимание (оно и без него работает)
И действия указываются в дереве.
Хотелось бы, что бы в словарь добавлялись слова в начальной форме, единственном числе.
А то тренировать глагол по его третьей форме или существительное в множественном числе не удобно.
Из-за этого многие слова пропускаю без добавления в словарь.
Как быть с тем, что во время тренировок не хочется, чтобы часы сжимали руку. У меня они всегда слегка шевелятся. Точность падает.
А в холодную погоду часы одевают поверх согревающих рукавов. (фотография с сайта производителя — www.mioglobal.com/pages/performance, космический марафон — img-fotki.yandex.ru/get/4520/87365939.4d/0_a254f_f43816f1_orig)
Непрерывный мониторинг пульса — это датчик под одежду на грудь. Остальное — это обман, тем более про точность.
Точность скорости и растояния будет не удовлетворительная. Придётся для разных тренировок иметь разные часы.
На какой сегмент нацелены часы? На профессионалов или на тех, кто хочет эффективно сбросить жирок без последствий для сердечной мышцы?
Я, например, уже знаю как у меня меняется пульс в зависимости от нагрузки, и монитором не пользуюсь.
Акселерометр встроен в часы?
Будет foot pod?
Не увидел в статье связи между классом Count и LifeLogger. В частности интересует: почему на getMultiplyResult срабатывает только LifeLogger, а на getSummResult срабатывают оба интерцептора? У getMultiplyResult у Вас нет аннотации, указывающей на интерцептор. Правильно я понимаю, что в этом случае LifeLogger у Вас объявлен в дескрипторе развертывания?
Если Вы про рендеринг на события ajax, их надо разделять регионами.
>К сожалению, RichFaces и PrimeFaces не понимают, что при рендерении набора табов
не надо рендрить то, что в «Second tab», если выбранный таб — «First tab». RichFaces и PrimeFaces всегда создают дерево объектов, включая всё содержимое TabSet, т.е. все невыбранные табы в том числе.

У RichFaces есть атрибут для настройки этого. Разве он не работает?
<rich:tabPanel switchType="ajax">

</rich:tabPanel>
Мне кажется это нереальным. Или я ошибся где-то?
Средний европеец потребляет 2000 000 ВТ*Ч в год (228,31 вт*ч за час). Это потребление 1,776 60-тиватных лампочек за 28 минут.
Если компьютер человека будет делать 7 запросов в минуту к Google, то Google будет тратить на человека больше, чем сам человек.
В песочнице была статья
Так чем закончилась история? Или Вы ещё не обращались к Орловой Елене Олеговне?
2

Information

Rating
Does not participate
Location
Тверь, Тверская обл., Россия
Date of birth
Registered
Activity