Measure measure = new Measure(metricFinder.findById(manualMeasure.getMetricId()));
measure.setValue(manualMeasure.getValue(), 5);
measure.setData(manualMeasure.getTextValue());
+ measure.setDescription(manualMeasure.getDescription());
+ measure.setUrl(manualMeasure.getUrl());
return measure;
}
enabled="true" worst_value="[null]" optimized_best_value="[null]" best_value="[null]" direction="0" hidden="false"/>
- <manual_measures id="1" metric_id="2" resource_id="30" value="3.14" text_value="pi" created_at="[null]" updated_at="[null]"/>
- <manual_measures id="2" metric_id="2" resource_id="40" value="6" text_value="six" created_at="[null]" updated_at="[null]"/>
+ <manual_measures id="1" metric_id="2" resource_id="30" value="3.14" text_value="pi" created_at="[null]" updated_at="[null]" description="this is pi" url="http://pi"/>
+ <manual_measures id="2" metric_id="2" resource_id="40" value="6" text_value="six" created_at="[null]" updated_at="[null]" description="this is six" url="http://six"/>
</dataset>
\ No newline at end of file
@Entity
@Table(name = "manual_measures")
public final class ManualMeasure {
+ private static final int MAX_TEXT_SIZE = 4000;
+
@Id
@Column(name = "id")
@GeneratedValue
@Column(name = "value", updatable = true, nullable = true, precision = 30, scale = 20)
private Double value = null;
- @Column(name = "text_value", updatable = true, nullable = true, length = 4000)
+ @Column(name = "text_value", updatable = true, nullable = true, length = MAX_TEXT_SIZE)
private String textValue;
@Column(name = "metric_id", updatable = false, nullable = false)
@Column(name = "resource_id", updatable = true, nullable = true)
private Integer resourceId;
+ @Column(name = "description", updatable = true, nullable = true, length = MAX_TEXT_SIZE)
+ private String description;
+
+ @Column(name = "url", updatable = true, nullable = true, length = MAX_TEXT_SIZE)
+ private String url;
+
@Column(name = "created_at", updatable = true, nullable = true)
private Date createdAt;
return textValue;
}
+ public String getDescription() {
+ return description;
+ }
+
+ public String getUrl() {
+ return url;
+ }
+
public Integer getMetricId() {
return metricId;
}
measure.value = value
measure.text_value = params[:text]
+ measure.description = params[:desc]
+ measure.url = params[:url]
measure.save!
respond_to do |format|
hash={:id => manual_measure.id, :metric => manual_measure.metric.key}
hash[:val]=manual_measure.value if manual_measure.value
hash[:text]=manual_measure.text_value if manual_measure.text_value
+ hash[:desc]=manual_measure.description if manual_measure.description
+ hash[:url]=manual_measure.url if manual_measure.url
hash[:created_at]=format_datetime(manual_measure.created_at)
hash[:updated_at]=format_datetime(manual_measure.updated_at) if manual_measure.updated_at
if manual_measure.user
belongs_to :user
validates_uniqueness_of :metric_id, :scope => :resource_id
validates_length_of :text_value, :maximum => 4000, :allow_nil => true, :allow_blank => true
+ validates_length_of :url, :maximum => 4000, :allow_nil => true, :allow_blank => true
+ validates_length_of :description, :maximum => 4000, :allow_nil => true, :allow_blank => true
validate :validate_metric
def metric
t.column 'value', :decimal, :null => true, :precision => 30, :scale => 20
t.column 'text_value', :string, :null => true, :limit => 4000
t.column 'user_id', :integer, :null => true
+ t.column 'description', :string, :null => true, :limit => 4000
+ t.column 'url', :string, :null => true, :limit => 4000
t.timestamps
end
alter_to_big_primary_key('manual_measures')