public プロダクトディスカッション NowReady(ディスカッション記述子 descriptor) { if (descriptor == null || descriptor.IsUndefined) throw new ArgumentException("The discussion descriptor must be defined."); if (this.Availability != ディスカッションアベイラビリティ.Requested) throw new InvalidOperationException("The discussion must be requested first."); return new プロダクトディスカッション(descriptor, ディスカッションアベイラビリティ.Ready); }
public static プロダクトディスカッション FromAvailability( ディスカッションアベイラビリティ availability) { if (availability == ディスカッションアベイラビリティ.Ready) throw new InvalidOperationException("Cannot be created ready."); var descriptor = new ディスカッション記述子(ディスカッション記述子.UNDEFINED_ID); return new プロダクトディスカッション(descriptor, availability); }
public void InitiateDiscussion(ディスカッション記述子 descriptor) { AssertionConcern.AssertArgumentNotNull(descriptor, "The descriptor must not be null."); if (this.Discussion.Availability == ディスカッションアベイラビリティ.Requested) { this.Discussion = this.Discussion.NowReady(descriptor); DomainEventPublisher.Instance.Publish( new バックログアイテムディスカッション初期化時(this.TenantId, this.BacklogItemId, this.Discussion)); } }
public バックログアイテムディスカッション(ディスカッション記述子 descriptor, ディスカッションアベイラビリティ availability) { this.Descriptor = descriptor; this.Availability = availability; }
public プロダクトディスカッション(ディスカッション記述子 descriptor, ディスカッションアベイラビリティ availability) { AssertionConcern.AssertArgumentNotNull(descriptor, "The descriptor must be provided."); this.Availability = availability; this.Descriptor = descriptor; }