/*
* Copyright 2000-2013 Enonic AS
* http://www.enonic.com/license
*/
package com.enonic.cms.core.portal.livetrace;
import org.joda.time.DateTime;
import com.google.common.base.Strings;
public class ContentIndexQueryTrace
extends BaseTrace
implements Trace
{
private int index;
private int count;
private int matchCount;
private MaxLengthedString query = new MaxLengthedString();
private MaxLengthedString translatedQuery = new MaxLengthedString();
private String contentFilter;
private String sectionFilter;
private String categoryFilter;
private String contentTypeFilter;
private String securityFilter;
private String categoryAccessTypeFilter;
private Duration durationInElasticSearch = new Duration();
ContentIndexQueryTrace()
{
}
@SuppressWarnings("UnusedDeclaration")
public int getIndex()
{
return index;
}
void setIndex( int index )
{
this.index = index;
}
@SuppressWarnings("UnusedDeclaration")
public int getCount()
{
return count;
}
void setCount( int count )
{
this.count = count;
}
@SuppressWarnings("UnusedDeclaration")
public String getQuery()
{
return query != null ? query.toString() : null;
}
void setQuery( String query )
{
this.query = new MaxLengthedString( query, 6000 );
}
@SuppressWarnings("UnusedDeclaration")
public String getTranslatedQuery()
{
return translatedQuery.toString();
}
public void setTranslatedQuery( final String translatedQuery )
{
this.translatedQuery =
new MaxLengthedString( Strings.isNullOrEmpty( translatedQuery ) ? "" : stripGarbageFromTranslatedQuery( translatedQuery ),
6000 );
}
private String stripGarbageFromTranslatedQuery( final String translatedQuery )
{
return translatedQuery.replace( "\n", "" );
}
@SuppressWarnings("UnusedDeclaration")
public String getContentFilter()
{
return contentFilter;
}
void setContentFilter( String contentFilter )
{
this.contentFilter = contentFilter;
}
@SuppressWarnings("UnusedDeclaration")
public String getSectionFilter()
{
return sectionFilter;
}
void setSectionFilter( String sectionFilter )
{
this.sectionFilter = sectionFilter;
}
@SuppressWarnings("UnusedDeclaration")
public String getCategoryFilter()
{
return categoryFilter;
}
void setCategoryFilter( String categoryFilter )
{
this.categoryFilter = categoryFilter;
}
@SuppressWarnings("UnusedDeclaration")
public String getContentTypeFilter()
{
return contentTypeFilter;
}
void setContentTypeFilter( String contentTypeFilter )
{
this.contentTypeFilter = contentTypeFilter;
}
@SuppressWarnings("UnusedDeclaration")
public String getSecurityFilter()
{
return securityFilter;
}
void setSecurityFilter( String securityFilter )
{
this.securityFilter = securityFilter;
}
@SuppressWarnings("UnusedDeclaration")
public String getCategoryAccessTypeFilter()
{
return categoryAccessTypeFilter;
}
void setCategoryAccessTypeFilter( String categoryAccessTypeFilter )
{
this.categoryAccessTypeFilter = categoryAccessTypeFilter;
}
@SuppressWarnings("UnusedDeclaration")
public int getMatchCount()
{
return matchCount;
}
void setMatchCount( int matchCount )
{
this.matchCount = matchCount;
}
public void setElasticSearchStartTime( final DateTime time )
{
this.durationInElasticSearch.setStartTime( time );
}
public void setElasticSearchStopTime( final DateTime time )
{
this.durationInElasticSearch.setStopTime( time );
}
@SuppressWarnings("UnusedDeclaration")
public Duration getDurationInElasticSearch()
{
return this.durationInElasticSearch;
}
}